X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Finstall_kubeadm_cluster.sh;h=70f6d9daf7c6b764c0d954891b536198333ae457;hb=169cead7acf4c9d9c569d384945d75f41eaac81d;hp=c0f067a4c8bc5bfe51f20999238f13c455490ef6;hpb=4d89c37a776f88b7db5719ccad964e719ab4a244;p=osm%2Fdevops.git diff --git a/installers/install_kubeadm_cluster.sh b/installers/install_kubeadm_cluster.sh index c0f067a4..70f6d9da 100755 --- a/installers/install_kubeadm_cluster.sh +++ b/installers/install_kubeadm_cluster.sh @@ -18,7 +18,8 @@ set +eux #installs kubernetes packages function install_kube() { [ -z "${DEBUG_INSTALL}" ] || DEBUG beginning of function - K8S_VERSION=1.20.11-00 + K8S_VERSION=1.23.3-00 + # Kubernetes releases can be found here: https://kubernetes.io/releases/ # To check other available versions, run the following command # curl -s https://packages.cloud.google.com/apt/dists/kubernetes-xenial/main/binary-amd64/Packages | grep Version | awk '{print $2}' sudo apt-get update && sudo apt-get install -y apt-transport-https @@ -28,6 +29,9 @@ function install_kube() { sudo apt-get update echo "Installing Kubernetes Packages ..." sudo apt-get install -y kubelet=${K8S_VERSION} kubeadm=${K8S_VERSION} kubectl=${K8S_VERSION} + cat << EOF | sudo tee -a /etc/default/kubelet + KUBELET_EXTRA_ARGS="--cgroup-driver=cgroupfs" +EOF sudo apt-mark hold kubelet kubeadm kubectl [ -z "${DEBUG_INSTALL}" ] || DEBUG end of function } @@ -57,7 +61,8 @@ function deploy_cni_provider() { [ -z "${DEBUG_INSTALL}" ] || DEBUG beginning of function CNI_DIR="$(mktemp -d -q --tmpdir "flannel.XXXXXX")" trap 'rm -rf "${CNI_DIR}"' EXIT - wget -q https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml -P $CNI_DIR + wget --retry-on-host-error --retry-on-http-error 404,429,503 --tries=5 https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml -P $CNI_DIR + [ ! -f $CNI_DIR/kube-flannel.yml ] && FATAL "Cannot Install Flannel because $CNI_DIR/kube-flannel.yml was not found. Maybe the file https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml is temporarily not accessible" kubectl apply -f $CNI_DIR [ $? -ne 0 ] && FATAL "Cannot Install Flannel" [ -z "${DEBUG_INSTALL}" ] || DEBUG end of function @@ -73,26 +78,33 @@ function taint_master_node() { } #Install Helm v3 +#Helm releases can be found here: https://github.com/helm/helm/releases function install_helm() { [ -z "${DEBUG_INSTALL}" ] || DEBUG beginning of function - helm > /dev/null 2>&1 - if [ $? != 0 ] ; then + HELM_VERSION="v3.7.2" + if ! [[ "$(helm version --short 2>/dev/null)" =~ ^v3.* ]]; then # Helm is not installed. Install helm - echo "Helm is not installed, installing ..." - curl https://get.helm.sh/helm-v3.6.3-linux-amd64.tar.gz --output helm-v3.6.3.tar.gz - tar -zxvf helm-v3.6.3.tar.gz + echo "Helm3 is not installed, installing ..." + curl https://get.helm.sh/helm-${HELM_VERSION}-linux-amd64.tar.gz --output helm-${HELM_VERSION}.tar.gz + tar -zxvf helm-${HELM_VERSION}.tar.gz sudo mv linux-amd64/helm /usr/local/bin/helm rm -r linux-amd64 - rm helm-v3.6.3.tar.gz - helm repo add stable https://charts.helm.sh/stable - helm repo update + rm helm-${HELM_VERSION}.tar.gz + else + echo "Helm3 is already installed. Skipping installation..." fi + helm repo add stable https://charts.helm.sh/stable + helm repo update [ -z "${DEBUG_INSTALL}" ] || DEBUG end of function } function install_k8s_storageclass() { [ -z "${DEBUG_INSTALL}" ] || DEBUG beginning of function - OPENEBS_VERSION="1.12.0" + echo "Installing open-iscsi" + sudo apt-get update + sudo apt-get install open-iscsi + sudo systemctl enable --now iscsid + OPENEBS_VERSION="3.1.0" echo "Installing OpenEBS" helm repo add openebs https://openebs.github.io/charts helm repo update @@ -225,7 +237,7 @@ function check_for_readiness() { #removes osm deployments and services function remove_k8s_namespace() { [ -z "${DEBUG_INSTALL}" ] || DEBUG beginning of function - kubectl delete ns $1 + kubectl delete ns $1 2>&1 >/dev/null [ -z "${DEBUG_INSTALL}" ] || DEBUG end of function }