kubeadm
最初に weave を使用して v1.17 クラスターをインストールしました。calico を使用するように切り替えたいと思います。ただし、最初はクラスターをインストールしなかったため、
kubeadm init --pod-network-cidr=192.168.0.0/16
ドキュメントに従って、しかし単純な
kubeadm init
織りからキャリコへの移行を達成するには、どのような手順を実行する必要があるのか 疑問に思っていましたか?
kubeadm
最初に weave を使用して v1.17 クラスターをインストールしました。calico を使用するように切り替えたいと思います。ただし、最初はクラスターをインストールしなかったため、
kubeadm init --pod-network-cidr=192.168.0.0/16
ドキュメントに従って、しかし単純な
kubeadm init
織りからキャリコへの移行を達成するには、どのような手順を実行する必要があるのか 疑問に思っていましたか?
クラスターで CNI を Weave Net から Calico に変更するには、次の手順を実行します。
weave-net ポッド構成を削除します。
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
Calico が使用するデフォルトの podCIDR であり、一度だけ変更できます。
後で変更しようとすると、エラーが表示されます。
spec.podCIDRs: Forbidden: ノードの更新では、「」から有効なものを除き、podCIDR が変更されない場合があります
したがって、一方通行の操作です。
その後、calico を適用できます。
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 が指定されると、それを行うことはできません。追加はできますが、後で変更することはできません。