Benutzer-Werkzeuge

Webseiten-Werkzeuge


it-wiki:kubernetes:change_cluster_network

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
it-wiki:kubernetes:change_cluster_network [2023/08/12 09:14] – angelegt markoit-wiki:kubernetes:change_cluster_network [2023/10/05 12:03] (aktuell) – [Changing the default ip range] marko
Zeile 13: Zeile 13:
 <code bash> <code bash>
 /etc/kubernetes/manifests/kube-apiserver.yaml /etc/kubernetes/manifests/kube-apiserver.yaml
 +</code>
 +and this file:
 +<code bash>
 +/etc/kubernetes/manifests/kube-controller-manager.yaml
 </code> </code>
  
-After doing this in all master nodes and rebooting I can see that the services are using 172.26.0.0/16 range.+Backup the apiserver cert files: 
 +<code bash>mv /etc/kubernetes/pki/apiserver.{crt,key} /bak</code>
  
-Probably it will give an error for 172.26.0.as this ip is not recognized by the PKI.+Save all svcs and recreate svcs: 
 +<code bash> 
 +kubectl get svc --all-namespaces | grep -v -w kubernetes| awk '$4 !~ /None|CLUSTER/{print "kubectl get svc -n "$1" " $2 " -o yaml && echo ---"}' | bash | sed '/clusterIP: 10/d'  > all_svc.yaml
  
-In k8s 1.12 it can be fixed using:+kubectl get svc --all-namespaces | awk '$4 !~ /None|CLUSTER/{print "kubectl delete svc -n "$1" " $2}' | bash 
 + 
 +kubectl apply -f all_svc.yaml 
 +</code> 
 + 
 +update the cluster DNS:
 <code bash> <code bash>
-kubeadm alpha phase certs all --apiserver-advertise-address 0.0.0.0 +kubectl get svc -A |grep dns
---apiserver-cert-extra-sans=<leaderip>,<newserviceip>+
 </code> </code>
  
 +change entry in
 +/etc/cni/net.d/calico-kubeconfig
 +for the intern connecting to kube-api server
 +<code bash>
 +server: https://172.30.0.1:443
 +</code>
  
 +and change init.yml file
 +<code bash>
 +networking:
 +  serviceSubnet: 172.30.0.0/16
 +  podSubnet: 172.20.0.0/16
 +</code>
 +
 +# change kubelet config
 +<code bash>
 +kubectl -n kube-system edit cm kubelet-config
 +</code>
 +
 +update the apiserver certs:
 +<code bash>
 +kubeadm init phase certs apiserver --config=kubeadm.yaml
 +
 +kubeadm upgrade node phase kubelet-config
 +
 +systemctl restart kubelet
 +</code>
 +
 +
 +After doing this in all master nodes and rebooting I can see that the services are using 172.26.0.0/16 range.
it-wiki/kubernetes/change_cluster_network.1691831643.txt.gz · Zuletzt geändert: von marko