переключение кубернетес CNI с переплетения на ситцевое - PullRequest
0 голосов
/ 28 февраля 2020

Первоначально я установил кластер kubeadm v1.17 с переплетением. Я хотел бы переключить его на использование ситца. Однако, поскольку я изначально не устанавливал кластер с

kubeadm init --pod-network-cidr=192.168.0.0/16

согласно документам, а с простым

kubeadm init

, мне было интересно, какие шаги мне нужно выполнить для достижения переход от плетения к ситцу?

1 Ответ

0 голосов
/ 28 февраля 2020

Чтобы изменить CNI с Weave Net на Calico в кластере, вы можете сделать следующее:

Удалить weave- net конфигурацию pods:

kubectl delete -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"

Затем изменить podCIDR с помощью Выполнение следующей команды на главном узле:

sudo kubeadm init phase control-plane controller-manager --pod-network-cidr=192.168.0.0/16

192.168.0.0/16 - это podCIDR по умолчанию, используемый Calico, и его можно изменить только один раз.

Если вы попытаетесь измените его впоследствии, он покажет ошибку:

spe c .podCIDRs: Запрещено: обновления узла не могут изменять podCIDR, кроме как "", действительным

, поэтому оно равно способ эксплуатации.

После этого вы можете применить ситце:

kubectl apply -f https://docs.projectcalico.org/v3.11/manifests/calico.yaml

Кроме того, если вы решили установить другой podCIDR, вы должны указать podCIDR в kubeadm init:

sudo kubeadm init phase control-plane all --pod-network-cidr=<your_podCIDR>

затем измените Calico DaemonSet:

...
- name: CALICO_IPV4POOL_CIDR
value: "<your_podCIDR>"
...

и примените его. Но, как упоминалось ранее, вы не можете сделать это, если указан podCIDR. Его можно добавить, но нельзя изменить позже.

...