web-dev-qa-db-fra.com

Réseau d'exécution du conteneur non prêt: configuration du cni non initialisée

J'installe kubernetes (kubeadm) sur centos VM fonctionnant dans Virtualbox, donc avec miam, j'ai installé kubeadm, kubelet et docker

Maintenant, en essayant de configurer un cluster avec kubeadm init --pod-network-cidr=192.168.56.0/24 --apiserver-advertise-address=192.168.56.33/32, je rencontre l'erreur suivante: 

Unable to update cni config: No networks found in /etc/cni/net.d

Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized

Donc j'ai vérifié, pas de dossier cni dans /etc même si kubernetes-cni-0.6.0-0.x86_64 est installé. J'ai essayé de commenter KUBELET_NETWORK_ARGS dans /etc/systemd/system/kubelet.service.d/10-kubeadm.conf mais cela n'a pas fonctionné.

PS: 

  • Je suis en train d'installer derrière un proxy.

  • J'ai plusieurs adaptateurs réseau: 

    • NAT: 10.0.2.15/24 pour Internet 

    • Hôte seulement: 192.168.56.33/32

    • Et interface de menu fixe: 172.17.0.1/16

Version Docker: 17.12.1-ce
Version kubectl: Major: "1", Mineure: "9", GitVersion: "v1.9.3"
Centos 7

3

Lors de la configuration du cluster avec "kubeadm init", vous devez vous souvenir de plusieurs éléments. Il est clairement documenté sur le site Kubernetes Le cluster kubeadm create :

  • "kubeadm reset" si vous avez déjà créé un cluster précédent
  • Supprimez le dossier ".kube" du répertoire principal ou racine
  • (Arrêter également le kubelet avec systemctl permettra une configuration en douceur)
  • Désactiver le swap de manière permanente sur la machine, surtout si vous redémarrez votre système Linux
  • Et pour ne pas oublier, installez un add-on de réseau pod conformément aux instructions fournies sur l’ajout sur site (pas le site Kubernetes)
  • Suivez les étapes de post-initialisation données dans la fenêtre de commande par kubeadm.

Si toutes ces étapes sont suivies correctement, votre cluster fonctionnera correctement.

Et n'oubliez pas de faire la commande suivante pour activer la planification sur le cluster créé:

kubectl taint nodes --all node-role.kubernetes.io/master-
1
i-tms

C’était une erreur de proxy mentionnée dans Githubhttps://github.com/kubernetes/kubernetes/issues/34695

Ils ont suggéré d'utiliser kubeadm init --use-kubernetes-version v1.4.1 mais je change complètement mon réseau (pas de proxy) et je parviens à configurer mon cluster.

Après cela, nous pouvons configurer le réseau pod avec kubectl apply -f ... voir https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/#pod-network

0

Vérifiez cette réponse .

Utilisez ce PR (jusqu'à ce qu'il soit approuvé):

kubectl -n kube-system apply -f https://raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml

c'est un problème connu: coreos/flannel # 1044

0
Vishrant