Pourquoi l'état du réseau indique-t-il une erreur NHC003 ?
Cloud privé virtuel Infrastructure classique
Dépannage de l'erreur NHC003 lors du contrôle de l'état du réseau.
Lorsque vous vérifiez l'état de santé de votre cluster en exécutant la commande ibmcloud oc cluster health issues --cluster <CLUSTER_ID>, vous obtenez une erreur similaire à l'exemple suivant.
ID Component Severity Description
NHC003 Network Warning Some worker nodes in the cluster can not reach container image registries to pull images.
Si vous vérifiez les détails du problème, vous verrez quel registre n'est pas accessible à partir de quel nœud de travail.
ibmcloud ks cluster health issue get --cluster <CLUSTER_ID> --issue NHC003
Cet avertissement signifie que certains nœuds de travail ne peuvent pas accéder aux registres de conteneurs externes, tels que Docker Hub, Quay ou IBM Cloud Container Registry, ce qui les empêche d'extraire les images requises par vos charges de travail.
S'assurer que les nœuds de travail ont accès à l'internet et peuvent accéder aux registres de conteneurs externes. Vérifiez également les stratégies de réseau, les groupes de sécurité et les paramètres du pare-feu.
-
À partir d'un pod fonctionnant sur le nœud affecté, vérifiez si le nœud peut accéder au registre. Démarrer un pod de débogage.
kubectl run -i --tty debug \ --image=us.icr.io/armada-master/network-alpine:latest \ --restart=Never \ --overrides=' { "apiVersion": "v1", "spec": { "nodeName": "<node-name>" } }' -- shEnsuite, à l'intérieur du pod, essayez d'accéder à un registre de conteneur.
wget <registry_address>Ou utilisez
curlsi vous en disposez :curl -I <registry_address> -
Vérifiez que les nœuds de travail disposent d'un accès Internet sortant en exécutant une commande
tracerouteou ping à partir du pod de débogage.traceroute <registry_address>ping <registry_address> -
Vérifier s'il existe des politiques de réseau restrictives et des politiques de réseau globales.
kubectl get networkpolicies --all-namespaceskubectl get globalnetworkpolicies.crd.projectcalico.orgRecherchez les stratégies qui bloquent le trafic de sortie des nœuds de travail vers l'internet ou vers les domaines de registre spécifiques.
-
Vérifiez les groupes de sécurité de votre cluster et assurez-vous que le trafic sortant est autorisé. Pour chaque nœud de travailleur, vérifiez le groupe de sécurité. Assurez-vous qu'aucune règle ne bloque HTTPS ( TCP port 443) ou DNS ( UDP port 53).
-
Examinez votre infrastructure (appareils réseau, groupes de sécurité, ACL, etc.) et activez l'accès sortant si nécessaire.
-
Si vous utilisez des registres de conteneurs privés, vérifiez que la résolution DNS et l'authentification fonctionnent.
-
Après avoir appliqué les correctifs, attendez quelques minutes et vérifiez à nouveau l'état de la grappe.
-
Si le problème persiste, contactez le service d'assistance pour obtenir de l'aide. Ouverture d'un cas de support. Dans les détails de l'affaire, veillez à inclure tout fichier journal, message d'erreur ou résultat de commande pertinent.