Increase K8s cluster CIDR
Note
Calico IPPools have to be inside the cluster-cidr
Hint
The extended cluster-cidr could be 10.224.0.0/11
which contains
our old cluster-cidr (10.244.0.0/16
)
Steps to change the cluster-cidr:
Change podSubnet in kubeadm configmap: kube-system/kubeadm-config
Change clusterCIDR in kube-proxy configmap: kube-system/kube-proxy
Change cluster-cidr on every master node:
/etc/kubernetes/manifests/kube-controller-manager.yaml
kubelet will automatically recreate the kube-controller container
add additional calico ippools:
apiVersion: projectcalico.org/v3 kind: IPPool metadata: name: additional-ippool-10.224 spec: blockSize: 26 cidr: 10.224.0.0/16 ipipMode: Always natOutgoing: true nodeSelector: all() vxlanMode: Never
=> IPPools have to be applied with calicoctl instead of kubectl.
Optional: change pod_subnet in
/var/lib/metal-controller/{CLUSTER}/config/config.toml
in the metal-controller running in the deploy cluster.Hint
This is just for documentation purposes because kubeadm picks for new masternodes the range specified in the kubeadm configmap