Export SEBAVALUES for known projects
[iec.git] / src / foundation / scripts / k8s_master.sh
index 5eb9082..67eecf5 100755 (executable)
@@ -1,7 +1,10 @@
 #!/bin/bash -ex
+# shellcheck source=/dev/null
 
 # For host setup as Kubernetes master
-MGMT_IP=$1
+# Use the src of the default route as the default local IP
+DEF_SRC_IP=$(ip route get 8.8.8.8 | awk '{ for (nn=1;nn<=NF;nn++) if ($nn~"src") print $(nn+1) }')
+MGMT_IP=${1:-${DEF_SRC_IP}}
 POD_NETWORK_CIDR=${2:-192.168.0.0/16}
 SERVICE_CIDR=${3:-172.16.1.0/24}
 
@@ -10,9 +13,6 @@ if [ -z "${MGMT_IP}" ]; then
   exit 1
 fi
 
-#Add extra flags to Kubelet
-sed '/Environment=\"KUBELET_CONFIG_ARGS/a\Environment=\"KUBELET_EXTRA_ARGS=--fail-swap-on=false --feature-gates HugePages=false\"' -i /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
-
 if ! kubectl get nodes; then
   sudo kubeadm config images pull
   sudo kubeadm init \
@@ -22,12 +22,16 @@ if ! kubectl get nodes; then
 
   if [ "$(id -u)" = 0 ]; then
     echo "export KUBECONFIG=/etc/kubernetes/admin.conf" | \
-      tee -a "${HOME}/.profile"
+      tee -a "${HOME}/.bashrc"
     # shellcheck disable=SC1090
-    source "${HOME}/.profile"
-  else
-    mkdir -p "${HOME}/.kube"
-    sudo cp -i /etc/kubernetes/admin.conf "${HOME}/.kube/config"
-    sudo chown "$(id -u)":"$(id -g)" "${HOME}/.kube/config"
+    source "${HOME}/.bashrc"
   fi
+
+  mkdir -p "${HOME}/.kube"
+  # shellcheck disable=SC2216
+  yes | sudo cp -rf /etc/kubernetes/admin.conf "${HOME}/.kube/config"
+  sudo chown "$(id -u)":"$(id -g)" "${HOME}/.kube/config"
+
+  sleep 5
+  sudo swapon -a
 fi