[практика k8s] Изменить pod cidr после инициализации кластера для поддержки компонентов CNI

Kubernetes
[практика k8s] Изменить pod cidr после инициализации кластера для поддержки компонентов CNI

задний план

Кластер k8s был инициализирован, а компонент CNI не выбран.Если вы хотите установить или заменить компонент CNI, вам необходимо изменить pod cidr, поскольку компоненты (такие какcalico  cilium flannel) необходимо добавить во время инициализации kubeadm--pod-network-cidrВ параметре указывается cidr, но переинициализация кластера слишком громоздка, трудоемка и требует много операций. Отсюда и эта статья.

Представление

казненkubeadm initИнициализировать кластер и выполнить kubectl apply -f <add-on.yaml>уже установленоflannel, обнаружил, что модули, связанные с kube-flannel, не находятся в состоянии Running:
image.png
Просматривая логи, мы обнаружили следующее:
image.png
Ключевая информацияError registering network: failed to acquire lease: node "vb-n2" pod cidr not assigned

решать

Позже я проверил документ и узнал следующую информацию:you must pass
截屏2020-09-02 下午6.54.52.jpg

Измените карту конфигурации кластера вnetworkingвниз увеличениеpodSubnet: 10.244.0.0/16

**ПРИМЕЧАНИЕ.** При необходимости измените CIDR, не копируйте

kube edit cm kubeadm-config -n kube-system

image.png

Измените параметры запуска статического модуля контроллера-менеджера и добавьте--allocate-node-cidrs=true --cluster-cidr=10.244.0.0/16

**ПРИМЕЧАНИЕ.** При необходимости измените CIDR, не копируйте

sudo vim /etc/kubernetes/manifests/kube-controller-manager.yaml 

image.png

Проверьте, вступила ли конфигурация в силу

kubectl cluster-info dump | grep -m 1 cluster-cidr

image.png
Если обновление идет медленно, вы можете вручную удалить соответствующий модуль, напримерkubectl delete pod -n kube-system kube-flannel-ds-amd64-***

Проверьте модули кластера и компонентов CNI.

image.png

намекать

Если аномалия обнаружена после установки компонента CNI без установки cidr пода, рекомендуется переустановить компонент CNI после установки cidr.

Ссылаться на