web-dev-qa-db-fra.com

Comment puis-je déterminer une valeur CIDR de pod appropriée pour un cluster Kubernetes?

J'initie un cluster kubernetes avec:

kubeadm init --pod-network-cidr=192.168.1.0/16 --apiserver-advertise-address=192.168.0.33

Je ne suis pas trop familier avec les concepts de mise en réseau ou CIDR, comment puis-je déterminer une valeur appropriée pour le pod CIDR?

J'ai déjà utilisé 10.244.0.0/16 mais cela s'est traduit par:

Failed create pod sandbox: rpc error: code = Unknown desc = failed to set up sandbox container "78cf556b2e87e15cc5ec8827ca3a397c16dcfb90f045e225a17028f072db6e5f" network for pod "coredns-78fcdf6894-c7kq2": NetworkPlugin cni failed to set up pod "coredns-78fcdf6894-c7kq2_kube-system" network: failed to set bridge addr: "cni0" already has an IP address different from 10.244.1.1/24
8
Chris Stryczynski

Concernant le CIDR (Classless Inter-Domain Routing): C'est juste une notation pour définir le sous-réseau/plage d'adresses IP que vous souhaitez utiliser dans votre réseau.

Si vous souhaitez utiliser /16, vous devez planifier la création d'un cluster Kubernetes assez important car cela vous donnera >65k adresses IP virtuelles (Notez que nous parlons du réseau SDN/virtuel, c'est-à-dire des adresses IP que vous définirez pour vos kubernetes POD, pas de vos nœuds/hôtes réels). Voici un tableau CIDR que vous pouvez utiliser comme référence pour décider d'une plage plus appropriée: https://kb.wisc.edu/ns/page.php?id=349

Maintenant, en termes de votre échec qui dépend du CNI (Container Networking Interface) plugin que vous utilisez dans votre cluster Kubernetes. Si vous utilisez celui par défaut qui doit être Kubenet, qui a des limitations. Plus d'informations ici: https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/ et ici: https: // chrislovecnm. com/kubernetes/cni/choisir un fournisseur cni /

J'espère que ça aide.

11
the_marcelo_r