Add support for IPv6 to machine and cluster chart
[icn.git] / deploy / cluster / templates / kubeadmconfigtemplate.yaml
index 33afc28..9250cc5 100644 (file)
@@ -9,16 +9,15 @@ spec:
       joinConfiguration:
         nodeRegistration:
           kubeletExtraArgs:
+            {{- include "cluster.nodeIP" .Values.networkData | nindent 12 }}
             node-labels: metal3.io/uuid={{ "{{" }} ds.meta_data.uuid {{ "}}" }}
             cpu-manager-policy: static
             topology-manager-policy: best-effort
             kube-reserved: cpu=100m,memory=256Mi
           name: '{{ "{{" }} ds.meta_data.name {{ "}}" }}'
       preKubeadmCommands:
-{{- if .Values.networks }}
-      # Without touching up /etc/hosts, kubeadm may pick the wrong
-      # (i.e. provisioning network) address for the node IP
-      - sed -i "1i $(ip -4 addr show dev {{ .Values.networks.baremetal.interface }} | grep -oP '(?<=inet\s)\d+(\.\d+){3}' | head -1) $(hostname)" /etc/hosts
+{{- if .Values.preKubeadmCommands }}
+{{ toYaml .Values.preKubeadmCommands | indent 6 }}
 {{- end }}
       - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
       - add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
@@ -47,6 +46,11 @@ spec:
         permissions: '0777'
         content: |
 {{ $.Files.Get "resources/set_kernel_cmdline.sh" | indent 10 }}
+{{- if eq .Values.cni "calico" }}
+      - path: /etc/NetworkManager/conf.d/calico.conf
+        content: |
+{{ $.Files.Get "resources/calico.conf" | indent 10 }}
+{{- end }}
 {{- if .Values.userData }}
       users:
       - name: {{ .Values.userData.name }}