20.3. Création de la ressource personnalisée Node Observability
Vous devez créer et exécuter la ressource personnalisée (CR) NodeObservability avant d'exécuter la requête de profilage. Lorsque vous exécutez la CR NodeObservability, elle crée les CR machine config et machine config pool nécessaires pour activer le profilage CRI-O sur les nœuds de travail correspondant à la ressource nodeSelector.
Si le profilage CRI-O n'est pas activé sur les nœuds de travail, la ressource NodeObservabilityMachineConfig est créée. Les nœuds de travail correspondant à la ressource nodeSelector spécifiée dans NodeObservability CR redémarrent. Cette opération peut durer 10 minutes ou plus.
Le profilage des Kubelets est activé par défaut.
Le socket unix CRI-O du nœud est monté sur le pod de l'agent, ce qui permet à l'agent de communiquer avec le CRI-O pour exécuter la requête pprof. De même, la chaîne de certificats kubelet-serving-ca est montée sur le pod de l'agent, ce qui permet une communication sécurisée entre l'agent et le point de terminaison kubelet du nœud.
Conditions préalables
- Vous avez installé l'opérateur d'observabilité du nœud.
- Vous avez installé le CLI OpenShift (oc).
-
Vous avez accès au cluster avec les privilèges
cluster-admin.
Procédure
Connectez-vous au CLI de OpenShift Container Platform en exécutant la commande suivante :
$ oc login -u kubeadmin https://<HOSTNAME>:6443Revenez à l'espace de noms
node-observability-operatoren exécutant la commande suivante :$ oc project node-observability-operatorCréez un fichier CR nommé
nodeobservability.yamlqui contient le texte suivant :apiVersion: nodeobservability.olm.openshift.io/v1alpha2 kind: NodeObservability metadata: name: cluster1 spec: nodeSelector: kubernetes.io/hostname: <node_hostname>2 type: crio-kubeletExécutez le CR
NodeObservability:oc apply -f nodeobservability.yamlExemple de sortie
nodeobservability.olm.openshift.io/cluster createdVérifiez l'état de
NodeObservabilityCR en exécutant la commande suivante :$ oc get nob/cluster -o yaml | yq '.status.conditions'Exemple de sortie
conditions: conditions: - lastTransitionTime: "2022-07-05T07:33:54Z" message: 'DaemonSet node-observability-ds ready: true NodeObservabilityMachineConfig ready: true' reason: Ready status: "True" type: ReadyNodeObservabilityL'exécution du CR est terminée lorsque le motif estReadyet le statutTrue.