summaryrefslogtreecommitdiffstats
path: root/kubernetes
diff options
context:
space:
mode:
Diffstat (limited to 'kubernetes')
-rw-r--r--kubernetes/config/docker/init/src/config/consul/consul-agent-config/aai-hbase-health.json21
-rwxr-xr-xkubernetes/config/docker/init/src/config/consul/consul-agent-config/scripts/sdnc-dbhost-script.sh13
-rw-r--r--kubernetes/config/docker/init/src/config/consul/consul-agent-config/sdnc-dbhost.json14
-rw-r--r--kubernetes/config/docker/init/src/config/consul/consul-agent-config/sdnc-portal-health.json21
-rwxr-xr-xkubernetes/config/prepull_docker.sh145
-rwxr-xr-xkubernetes/vfc/templates/all-services.yaml28
-rwxr-xr-xkubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml22
-rw-r--r--kubernetes/vfc/values.yaml4
8 files changed, 241 insertions, 27 deletions
diff --git a/kubernetes/config/docker/init/src/config/consul/consul-agent-config/aai-hbase-health.json b/kubernetes/config/docker/init/src/config/consul/consul-agent-config/aai-hbase-health.json
new file mode 100644
index 0000000000..07828431fc
--- /dev/null
+++ b/kubernetes/config/docker/init/src/config/consul/consul-agent-config/aai-hbase-health.json
@@ -0,0 +1,21 @@
+{
+ "service": {
+ "name": "A&AI HBase Health Check",
+ "checks": [
+ {
+ "id": "hbase-aai",
+ "name": "HBase Health Check",
+ "http": "http://hbase.onap-aai:8080/status/cluster",
+ "method": "GET",
+ "header": {
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ }
+ ]
+ }
+}
diff --git a/kubernetes/config/docker/init/src/config/consul/consul-agent-config/scripts/sdnc-dbhost-script.sh b/kubernetes/config/docker/init/src/config/consul/consul-agent-config/scripts/sdnc-dbhost-script.sh
new file mode 100755
index 0000000000..6bb07f80eb
--- /dev/null
+++ b/kubernetes/config/docker/init/src/config/consul/consul-agent-config/scripts/sdnc-dbhost-script.sh
@@ -0,0 +1,13 @@
+SDNC_DBHOST_POD=$(/consul/config/bin/kubectl -n onap-sdnc get pod | grep -o "sdnc-dbhost-[^[:space:]]*")
+if [ -n "$SDNC_DBHOST_POD" ]; then
+ if /consul/config/bin/kubectl -n onap-sdnc exec -it $SDNC_DBHOST_POD -- ./healthcheck.sh |grep -i "mysqld is alive"; then
+ echo Success. SDNC DBHost is running. 2>&1
+ exit 0
+ else
+ echo Failed. SDNC DBHost is not running. 2>&1
+ exit 1
+ fi
+else
+ echo Failed. SDNC DBHost is offline. 2>&1
+ exit 1
+fi
diff --git a/kubernetes/config/docker/init/src/config/consul/consul-agent-config/sdnc-dbhost.json b/kubernetes/config/docker/init/src/config/consul/consul-agent-config/sdnc-dbhost.json
new file mode 100644
index 0000000000..28d711b72f
--- /dev/null
+++ b/kubernetes/config/docker/init/src/config/consul/consul-agent-config/sdnc-dbhost.json
@@ -0,0 +1,14 @@
+{
+ "service": {
+ "name": "Health Check: SDNC - DB Host",
+ "checks": [
+ {
+ "id": "sdnc-dbhost-healthcheck",
+ "name": "SDNC DBHOST Health Check",
+ "script": "/consul/config/scripts/sdnc-dbhost-script.sh",
+ "interval": "10s",
+ "timeout": "1s"
+ }
+ ]
+ }
+}
diff --git a/kubernetes/config/docker/init/src/config/consul/consul-agent-config/sdnc-portal-health.json b/kubernetes/config/docker/init/src/config/consul/consul-agent-config/sdnc-portal-health.json
new file mode 100644
index 0000000000..3ecc1b3f53
--- /dev/null
+++ b/kubernetes/config/docker/init/src/config/consul/consul-agent-config/sdnc-portal-health.json
@@ -0,0 +1,21 @@
+{
+ "service": {
+ "name": "Health Check: SDNC Portal",
+ "checks": [
+ {
+ "id": "sdnc-portal",
+ "name": "SDNC Portal Health Check",
+ "http": "http://sdnc-portal.onap-sdnc:8843/login",
+ "method": "HEAD",
+ "header": {
+ "Cache-Control": ["no-cache"],
+ "Content-Type": ["application/json"],
+ "Accept": ["application/json"]
+ },
+ "tls_skip_verify": true,
+ "interval": "15s",
+ "timeout": "1s"
+ }
+ ]
+ }
+}
diff --git a/kubernetes/config/prepull_docker.sh b/kubernetes/config/prepull_docker.sh
new file mode 100755
index 0000000000..e456c3e016
--- /dev/null
+++ b/kubernetes/config/prepull_docker.sh
@@ -0,0 +1,145 @@
+#!/bin/bash
+
+#function to provide help
+#desc: this function provide help menu
+#argument: -h for help, -p for path, -r for repository
+#calling syntax: options
+
+options() {
+ cat <<EOF
+Usage: $0 [PARAMs]
+-h : help
+-l (Location) : path for searching values.yaml
+ [in case no path is provided then is will scan current directories for values.yml]
+-r (Repository) : name of image repository
+ [format [repository name/url]:(port)]
+ [in case no repository is provided then defualt image repository will be nexus3.onap.org:10001]
+-u (User) : user name for login
+ [in case no user name is provided then default user will be docker]
+-p (Password) : password for login
+ [in case no password is provided then default user will be docker]
+EOF
+}
+
+#function to parse yaml file
+#desc: this function convert yaml file to dotted notion
+#argument: yaml file
+#calling syntax: parse_yaml <yaml_file_name>
+
+function parse_yaml {
+ local prefix=$2
+ local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
+ sed -ne "s|^\($s\):|\1|" \
+ -e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \
+ -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 |
+ awk -F$fs '{
+ indent = length($1)/2;
+ vname[indent] = $2;
+ for (i in vname) {if (i > indent) {delete vname[i]}}
+ if (length($3) > 0) {
+ vn=""; for (i=0; i<indent; i++) {vn=(vn)(vname[i])(".")}
+ printf("%s%s%s=\"%s\"\n", "'$prefix'",vn, $2, $3);
+ }
+ }'
+}
+
+#algorithmic steps
+#start
+#scan all values.yaml files
+#parse yaml file into dotted format
+#for each lines check there is image tag in line
+#store image name and check next line for version information
+#if in next line version is not present as a subtag then call docker pull with imageName
+#if version is present in next line then call docker pull with imageName and imageVersion
+#end
+
+
+#start processing for finding images and version
+IMAGE_TEXT="image"
+IMAGE_VERSION_TEXT="Version"
+LOCATION="."
+VALUES_FILE_NAME="values.yaml"
+IMAGE_REPOSITORY="nexus3.onap.org:10001"
+USER_NAME="docker"
+PASSWORD="docker"
+
+#scan for options menu
+while getopts ":h:l:r:u:p:" PARAM; do
+ case $PARAM in
+ h)
+ options
+ exit 1
+ ;;
+ l)
+ LOCATION=${OPTARG}
+ ;;
+ r)
+ IMAGE_REPOSITORY=${OPTARG}
+ ;;
+ u)
+ USER_NAME=${OPTARG}
+ ;;
+ p)
+ PASSWORD=${OPTARG}
+ ;;
+ ?)
+ options
+ exit
+ ;;
+ esac
+done
+
+
+#docker login to nexus repo
+echo docker login -u $USER_NAME -p $PASSWORD $IMAGE_REPOSITORY
+docker login -u $USER_NAME -p $PASSWORD $IMAGE_REPOSITORY
+
+#scan all values.yaml files recursively
+for filename in `find $LOCATION -name $VALUES_FILE_NAME`
+do
+ imageNameWithVersion=" ";
+ #parse yaml files
+ for line in `parse_yaml $filename`
+ do
+ #find all image subtag inside converted values.yaml file's lines
+ if echo $line | grep -q $IMAGE_TEXT ; then
+ #find imageName inside line
+ imageName=`echo $line | awk -F "=" '{print $2}'`
+ #remove attional prefix and postfix
+ imageNameFinal=`echo "$imageName" | sed -e 's/^"//' -e 's/"$//' `
+
+ #check if line contain Version as a subtag in lines if yes then call docker pull with version
+ if echo $line | grep -q $IMAGE_VERSION_TEXT ; then
+ echo docker pull "$imageNameWithVersion":"$imageNameFinal"
+ docker pull $imageNameWithVersion:$imageNameFinal &
+ imageNameWithVersion=" "
+ else
+ #check Version is not in subtag and old scanned value is present then call docker pull without version
+ if [ "$imageNameWithVersion" != " " ]; then
+ echo docker pull "$imageNameWithVersion"
+ docker pull $imageNameWithVersion &
+ imageNameWithVersion=$imageNameFinal
+ else
+ imageNameWithVersion=$imageNameFinal
+ fi
+ fi
+
+
+ fi
+
+
+ done
+done
+# complete processing
+echo "finished launching pulls"
+#MAX_WAIT_INTERVALS=300
+INTERVAL_COUNT=300
+while [ $(ps -ef | grep docker | grep pull | grep -v $0 | wc -l) -gt 0 ]; do
+ sleep 10
+ INTERVAL_COUNT=$((INTERVAL_COUNT - 1))
+ echo "waiting for last pull"
+ if [ "$INTERVAL_COUNT" -eq 0 ]; then
+ break
+ fi
+done
+
diff --git a/kubernetes/vfc/templates/all-services.yaml b/kubernetes/vfc/templates/all-services.yaml
index 98a0c4b0a1..ff9eea4587 100755
--- a/kubernetes/vfc/templates/all-services.yaml
+++ b/kubernetes/vfc/templates/all-services.yaml
@@ -84,36 +84,36 @@ spec:
app: vfc-gvnfmdriver
type: NodePort
#{{ end }}
-#{{ if not .Values.disableVfcVfcZtevmanagerdriver }}
+#{{ if not .Values.disableVfcVfcztevnfmdriver }}
---
apiVersion: v1
kind: Service
metadata:
labels:
- app: vfc-ztevmanagerdriver
- name: vfc-ztevmanagerdriver
+ app: vfc-ztevnfmdriver
+ name: vfc-ztevnfmdriver
namespace: "{{ .Values.nsPrefix }}-vfc"
annotations:
msb.onap.org/service-info: '[
{
- "serviceName": "ztevmanagerdriver",
+ "serviceName": "ztevnfmdriver",
"version": "v1",
- "url": "/api/ztevmanagerdriver/v1",
+ "url": "/api/ztevnfmdriver/v1",
"protocol": "REST",
- "port": "{{.Values.ztevmanagerdriver.port}}",
+ "port": "{{.Values.ztevnfmdriver.port}}",
"visualRange":"1"
}
]'
spec:
ports:
- - name: vfc-ztevmanagerdriver
- port: {{.Values.ztevmanagerdriver.port}}
- nodePort: {{.Values.ztevmanagerdriver.nodePort}}
+ - name: vfc-ztevnfmdriver
+ port: {{.Values.ztevnfmdriver.port}}
+ nodePort: {{.Values.ztevnfmdriver.nodePort}}
selector:
- app: vfc-ztevmanagerdriver
+ app: vfc-ztevnfmdriver
type: NodePort
#{{ end }}
-#{{ if not .Values.disableVfcVfcHwvnfmdriver }}
+#{{ if not .Values.disableVfcVfcNokiavnfmdriver }}
---
apiVersion: v1
kind: Service
@@ -139,10 +139,10 @@ spec:
port: {{.Values.nokiavnfmdriver.port}}
nodePort: {{.Values.nokiavnfmdriver.nodePort}}
selector:
- app: vfc-ztevmanagerdriver
+ app: vfc-nokiavnfmdriver
type: NodePort
#{{ end }}
-#{{ if not .Values.disableVfcNokiaVnfmDriver }}
+#{{ if not .Values.disableVfcVfcHwvnfmdriver }}
---
apiVersion: v1
kind: Service
@@ -164,7 +164,7 @@ metadata:
]'
spec:
ports:
- - name: vfc-ztevmanagerdriver
+ - name: vfc-hwvnfmdriver
port: {{.Values.hwvnfmdriver.port}}
nodePort: {{.Values.hwvnfmdriver.nodePort}}
selector:
diff --git a/kubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml b/kubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml
index 5559cd05ac..aed359eceb 100755
--- a/kubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml
+++ b/kubernetes/vfc/templates/vfc-ztevmanagerdriver-deployment.yaml
@@ -1,33 +1,33 @@
-#{{ if not .Values.disableVfcVfcZtevmanagerdriver }}
+#{{ if not .Values.disableVfcVfcztevnfmdriver }}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
- name: vfc-ztevmanagerdriver
+ name: vfc-ztevnfmdriver
namespace: "{{ .Values.nsPrefix }}-{{ .Chart.Name }}"
spec:
- replicas: {{ .Values.ztevmanagerdriver.replicas }}
+ replicas: {{ .Values.ztevnfmdriver.replicas }}
selector:
matchLabels:
- app: vfc-ztevmanagerdriver
+ app: vfc-ztevnfmdriver
template:
metadata:
labels:
- app: vfc-ztevmanagerdriver
- name: vfc-ztevmanagerdriver
+ app: vfc-ztevnfmdriver
+ name: vfc-ztevnfmdriver
spec:
- hostname: vfc-ztevmanagerdriver
+ hostname: vfc-ztevnfmdriver
containers:
- args:
- image: {{.Values.ztevmanagerdriver.image}}
- name: "vfc-ztevmanagerdriver"
+ image: {{.Values.ztevnfmdriver.image}}
+ name: "vfc-ztevnfmdriver"
env:
- name: MSB_ADDR
value: {{ .Values.msbaddr }}
ports:
- - containerPort: {{ .Values.ztevmanagerdriver.port }}
+ - containerPort: {{ .Values.ztevnfmdriver.port }}
readinessProbe:
tcpSocket:
- port: {{ .Values.ztevmanagerdriver.port }}
+ port: {{ .Values.ztevnfmdriver.port }}
initialDelaySeconds: 5
periodSeconds: 10
imagePullPolicy: "{{ .Values.pullPolicy }}"
diff --git a/kubernetes/vfc/values.yaml b/kubernetes/vfc/values.yaml
index fe5acd634e..46aa9b71f8 100644
--- a/kubernetes/vfc/values.yaml
+++ b/kubernetes/vfc/values.yaml
@@ -16,8 +16,8 @@ gvnfmdriver:
port: 8484
nodePort: 30484
replicas: 1
-ztevmanagerdriver:
- image: nexus3.onap.org:10001/onap/vfc/ztevmanagerdriver:v1.0.2
+ztevnfmdriver:
+ image: nexus3.onap.org:10001/onap/vfc/ztevnfmdriver:v1.0.2
port: 8410
nodePort: 30410
replicas: 1