X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=src%2Ffoundation%2Fscripts%2Fk8s_master.sh;h=5cce155e76800411c97fbc3d4209d8cf0d0b4aff;hb=12880df8a245f9b91631c4ee2c8681a55a33458a;hp=5eb90824fe5ba515c22d0be323a84fc18bab950b;hpb=9c50c90d2074080bd5bdb46589fe3fdc82a45688;p=iec.git diff --git a/src/foundation/scripts/k8s_master.sh b/src/foundation/scripts/k8s_master.sh index 5eb9082..5cce155 100755 --- a/src/foundation/scripts/k8s_master.sh +++ b/src/foundation/scripts/k8s_master.sh @@ -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,10 +13,7 @@ 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 +if ! kubectl get nodes --request-timeout=3s; then sudo kubeadm config images pull sudo kubeadm init \ --pod-network-cidr="${POD_NETWORK_CIDR}" \ @@ -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