X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Ffull_install_osm.sh;h=3a59416ed99864b49ef15a4820c9953dbe04bc9c;hb=7e4e7d0ed50731215c2097c0564ca76f9fe16815;hp=8d0c13bd2371491bc4411f6f120c892e11705f21;hpb=04812569044e21e47025e833336bce9c4169203d;p=osm%2Fdevops.git diff --git a/installers/full_install_osm.sh b/installers/full_install_osm.sh index 8d0c13bd..3a59416e 100755 --- a/installers/full_install_osm.sh +++ b/installers/full_install_osm.sh @@ -554,6 +554,7 @@ function generate_docker_images() { if [ -z "$TO_REBUILD" ] || echo $TO_REBUILD | grep -q GRAFANA ; then sg docker -c "docker pull grafana/grafana:${GRAFANA_TAG}" || FATAL "cannot get grafana docker image" + sg docker -c "docker pull kiwigrid/k8s-sidecar:${KIWIGRID_K8S_SIDECAR_TAG}" || FATAL "cannot get kiwigrid k8s-sidecar docker image" fi if [ -z "$TO_REBUILD" ] || echo $TO_REBUILD | grep -q NBI || echo $TO_REBUILD | grep -q KEYSTONE-DB ; then @@ -803,8 +804,11 @@ function install_kube() { sudo add-apt-repository "deb https://apt.kubernetes.io/ kubernetes-xenial main" sudo apt-get update echo "Installing Kubernetes Packages ..." - K8S_VERSION=1.20.11-00 + K8S_VERSION=1.23.3-00 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 } @@ -824,10 +828,14 @@ function kube_config_dir() { } function install_k8s_storageclass() { + echo "Installing open-iscsi" + sudo apt-get update + sudo apt-get install open-iscsi + sudo systemctl enable --now iscsid echo "Installing OpenEBS" helm repo add openebs https://openebs.github.io/charts helm repo update - helm install --create-namespace --namespace openebs openebs openebs/openebs --version 1.12.0 + helm install --create-namespace --namespace openebs openebs openebs/openebs --version 3.1.0 helm ls -n openebs local storageclass_timeout=400 local counter=0 @@ -851,7 +859,7 @@ function install_k8s_storageclass() { } function install_k8s_metallb() { - METALLB_IP_RANGE=$DEFAULT_IP-$DEFAULT_IP + METALLB_IP_RANGE=$DEFAULT_IP/32 kubectl apply -f ${OSM_DEVOPS}/installers/k8s/metallb/metallb.yaml \ || FATAL "Cannot install MetalLB" echo "apiVersion: v1 @@ -871,7 +879,7 @@ data: #installs metallb from helm function install_helm_metallb() { - METALLB_IP_RANGE=$DEFAULT_IP-$DEFAULT_IP + METALLB_IP_RANGE=$DEFAULT_IP/32 echo "configInline: address-pools: - name: default @@ -879,6 +887,7 @@ function install_helm_metallb() { addresses: - $METALLB_IP_RANGE" | sudo tee -a $OSM_DOCKER_WORK_DIR/metallb-config.yaml helm repo add metallb https://metallb.github.io/metallb + helm repo update helm install --create-namespace --namespace metallb-system metallb metallb/metallb -f $OSM_DOCKER_WORK_DIR/metallb-config.yaml } @@ -1000,13 +1009,7 @@ function deploy_osm_services() { #deploy charmed services function deploy_charmed_services() { juju add-model $OSM_STACK_NAME $OSM_VCA_K8S_CLOUDNAME - # deploy mongodb charm - namespace=$OSM_STACK_NAME - juju deploy cs:~charmed-osm/mongodb-k8s \ - --config enable-sidecar=true \ - --config replica-set=rs0 \ - --config namespace=$namespace \ - -m $namespace + juju deploy ch:mongodb-k8s -m $OSM_STACK_NAME } function deploy_osm_pla_service() { @@ -1017,19 +1020,22 @@ function deploy_osm_pla_service() { } #Install Helm v3 +#Helm releases can be found here: https://github.com/helm/helm/releases function install_helm() { - 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 } function parse_yaml() { @@ -1628,8 +1634,8 @@ function parse_docker_registry_url() { } LXD_VERSION=4.0 -JUJU_VERSION=2.8 -JUJU_AGENT_VERSION=2.8.11 +JUJU_VERSION=2.9 +JUJU_AGENT_VERSION=2.9.29 UNINSTALL="" DEVELOP="" UPDATE="" @@ -1687,8 +1693,9 @@ OSM_DOCKER_TAG=latest DOCKER_USER=opensourcemano PULL_IMAGES="y" KAFKA_TAG=2.11-1.0.2 -PROMETHEUS_TAG=v2.4.3 -GRAFANA_TAG=latest +KIWIGRID_K8S_SIDECAR_TAG="1.15.6" +PROMETHEUS_TAG=v2.28.1 +GRAFANA_TAG=8.1.1 PROMETHEUS_NODE_EXPORTER_TAG=0.18.1 PROMETHEUS_CADVISOR_TAG=latest KEYSTONEDB_TAG=10 @@ -1882,19 +1889,28 @@ done [ -n "$TO_REBUILD" ] && [ "$TO_REBUILD" != " NONE" ] && echo $TO_REBUILD | grep -q NONE && FATAL "Incompatible option: -m NONE cannot be used with other -m options" [ -n "$TO_REBUILD" ] && [ "$TO_REBUILD" == " PLA" ] && [ -z "$INSTALL_PLA" ] && FATAL "Incompatible option: -m PLA cannot be used without --pla option" -if [ -n "$SHOWOPTS" ]; then - dump_vars +# Uninstall if "--uninstall" +if [ -n "$UNINSTALL" ]; then + if [ -n "$CHARMED" ]; then + ${OSM_DEVOPS}/installers/charmed_uninstall.sh -R $RELEASE -r $REPOSITORY -u $REPOSITORY_BASE -D $OSM_DEVOPS -t $DOCKER_TAG "$@" || \ + FATAL_TRACK charmed_uninstall "charmed_uninstall.sh failed" + else + ${OSM_DEVOPS}/installers/uninstall_osm.sh "$@" || \ + FATAL_TRACK community_uninstall "uninstall_osm.sh failed" + fi + echo -e "\nDONE" exit 0 fi if [ -n "$CHARMED" ]; then - if [ -n "$UNINSTALL" ]; then - ${OSM_DEVOPS}/installers/charmed_uninstall.sh -R $RELEASE -r $REPOSITORY -u $REPOSITORY_BASE -D /usr/share/osm-devops -t $DOCKER_TAG "$@" - else - ${OSM_DEVOPS}/installers/charmed_install.sh -R $RELEASE -r $REPOSITORY -u $REPOSITORY_BASE -D /usr/share/osm-devops -t $DOCKER_TAG "$@" - fi - - exit 0 + export OSM_TRACK_INSTALLATION_ID="$(date +%s)-$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 16)" + track start release $RELEASE none none docker_tag $OSM_DOCKER_TAG none none installation_type $OSM_INSTALLATION_TYPE none none + ${OSM_DEVOPS}/installers/charmed_install.sh --tag $OSM_DOCKER_TAG "$@" || \ + FATAL_TRACK charmed_install "charmed_install.sh failed" + wget -q -O- https://osm-download.etsi.org/ftp/osm-11.0-eleven/README2.txt &> /dev/null + track end installation_type $OSM_INSTALLATION_TYPE + echo -e "\nDONE" + exit 0 fi # if develop, we force master