Fix installation of Kubernetes metrics server by updating the URL
[osm/devops.git] / installers / k8s / install_osm_k8s_monitoring.sh
index ca134e3..57af8ce 100755 (executable)
@@ -37,7 +37,8 @@ function usage(){
     echo -e "usage: $0 [OPTIONS]"
     echo -e "Install OSM Monitoring"
     echo -e "  OPTIONS"
     echo -e "usage: $0 [OPTIONS]"
     echo -e "Install OSM Monitoring"
     echo -e "  OPTIONS"
-    echo -e "     -n <namespace>   :   use specified kubernetes namespace - default: monitoring"
+    echo -e "     -n <namespace>   :   namespace to deploy k8s cluster monitoring - default: monitoring"
+    echo -e "     -o <osm_namespace> : namespace where OSM is installed - default: osm"
     echo -e "     -s <service_type>:   service type (ClusterIP|NodePort|LoadBalancer) - default: NodePort"
     echo -e "     --debug          :   debug script"
     echo -e "     --dump           :   dump arguments and versions"
     echo -e "     -s <service_type>:   service type (ClusterIP|NodePort|LoadBalancer) - default: NodePort"
     echo -e "     --debug          :   debug script"
     echo -e "     --dump           :   dump arguments and versions"
@@ -45,11 +46,12 @@ function usage(){
 }
 
 NAMESPACE=monitoring
 }
 
 NAMESPACE=monitoring
+OSM_NAMESPACE=osm
 HELM=""
 DEBUG=""
 DUMP_VARS=""
 SERVICE_TYPE=""
 HELM=""
 DEBUG=""
 DUMP_VARS=""
 SERVICE_TYPE=""
-while getopts ":h-:n:s:" o; do
+while getopts ":h-:n:o:s:" o; do
     case "${o}" in
         h)
             usage && exit 0
     case "${o}" in
         h)
             usage && exit 0
@@ -57,11 +59,12 @@ while getopts ":h-:n:s:" o; do
         n)
             NAMESPACE="${OPTARG}"
             ;;
         n)
             NAMESPACE="${OPTARG}"
             ;;
-
+        o)
+            OSM_NAMESPACE="${OPTARG}"
+            ;;
         s)
             SERVICE_TYPE="${OPTARG}"
             ;;
         s)
             SERVICE_TYPE="${OPTARG}"
             ;;
-
         -)
             [ "${OPTARG}" == "help" ] && usage && exit 0
             [ "${OPTARG}" == "debug" ] && DEBUG="y" && continue
         -)
             [ "${OPTARG}" == "help" ] && usage && exit 0
             [ "${OPTARG}" == "debug" ] && DEBUG="y" && continue
@@ -83,6 +86,7 @@ done
 function dump_vars(){
     echo "Args...."
     echo "NAMESPACE=$NAMESPACE"
 function dump_vars(){
     echo "Args...."
     echo "NAMESPACE=$NAMESPACE"
+    echo "OSM_NAMESPACE=$OSM_NAMESPACE"
     echo "SERVICE_TYPE=$SERVICE_TYPE"
     echo "DEBUG=$DEBUG"
     echo "Versions...."
     echo "SERVICE_TYPE=$SERVICE_TYPE"
     echo "DEBUG=$DEBUG"
     echo "Versions...."
@@ -118,17 +122,6 @@ if [ -n "$DUMP_VARS" ] ; then
     dump_vars
 fi
 
     dump_vars
 fi
 
-# Check if helm is installed
-helm > /dev/null 2>&1
-if [ $? != 0 ] ; then
-    echo "Helm is not installed, installing ....."
-    curl https://get.helm.sh/helm-v3.7.2-linux-amd64.tar.gz --output helm-v3.7.2.tar.gz
-    tar -zxvf helm-v3.7.2.tar.gz
-    sudo mv linux-amd64/helm /usr/local/bin/helm
-    rm -r linux-amd64
-    rm helm-v3.7.2.tar.gz
-fi
-
 # Create monitoring namespace
 echo "Creating namespace $NAMESPACE"
 kubectl create namespace $NAMESPACE
 # Create monitoring namespace
 echo "Creating namespace $NAMESPACE"
 kubectl create namespace $NAMESPACE
@@ -213,7 +206,7 @@ kubectl -n $NAMESPACE apply -f $HERE/mongodb-exporter-dashboard.yaml
 # Mysql
 # exporter
 echo "Creating prometheus-community/prometheus-mysql-exporter"
 # Mysql
 # exporter
 echo "Creating prometheus-community/prometheus-mysql-exporter"
-helm install osm-mysql-exporter --namespace $NAMESPACE --version=$V_MYSQL_EXPORTER --set serviceMonitor.enabled=true,serviceMonitor.additionalLabels.release=osm-monitoring,mysql.user="root",mysql.pass=`kubectl -n osm get secret ro-db-secret -o yaml | grep -i -A1 '^data:$' | grep MYSQL_ROOT_PASSWORD | awk '{print $2}' | base64 -d`,mysql.host="mysql.osm",mysql.port="3306",'collectors.info_schema\.tables=true' prometheus-community/prometheus-mysql-exporter
+helm install osm-mysql-exporter --namespace $NAMESPACE --version=$V_MYSQL_EXPORTER --set serviceMonitor.enabled=true,serviceMonitor.additionalLabels.release=osm-monitoring,mysql.user="root",mysql.pass=`kubectl -n ${OSM_NAMESPACE} get secret ro-db-secret -o yaml | grep -i -A1 '^data:$' | grep MYSQL_ROOT_PASSWORD | awk '{print $2}' | base64 -d`,mysql.host="mysql.osm",mysql.port="3306",'collectors.info_schema\.tables=true' prometheus-community/prometheus-mysql-exporter
 #dashboard:
 kubectl -n $NAMESPACE apply -f $HERE/mysql-exporter-dashboard.yaml
 # Kafka
 #dashboard:
 kubectl -n $NAMESPACE apply -f $HERE/mysql-exporter-dashboard.yaml
 # Kafka