[SDNC] SDNC ServiceMesh compatibility
SDNC charts and properties file changes to make it work with servicemesh
Issue-ID: OOM-2983
Signed-off-by: Radoslaw Chmiel <r.chmiel@partner.samsung.com>
Change-Id: I30bf8948f65d6a1b912c3f840ca44cead03bdc96
diff --git a/kubernetes/sdnc/components/sdnc-ansible-server/values.yaml b/kubernetes/sdnc/components/sdnc-ansible-server/values.yaml
index c89f03b..7689dcc 100644
--- a/kubernetes/sdnc/components/sdnc-ansible-server/values.yaml
+++ b/kubernetes/sdnc/components/sdnc-ansible-server/values.yaml
@@ -101,7 +101,7 @@
service:
type: ClusterIP
name: sdnc-ansible-server
- portName: sdnc-ansible-server
+ portName: http
internalPort: 8000
externalPort: 8000
diff --git a/kubernetes/sdnc/components/sdnc-web/templates/deployment.yaml b/kubernetes/sdnc/components/sdnc-web/templates/deployment.yaml
index 21416c9..03432d3 100644
--- a/kubernetes/sdnc/components/sdnc-web/templates/deployment.yaml
+++ b/kubernetes/sdnc/components/sdnc-web/templates/deployment.yaml
@@ -49,32 +49,34 @@
{{ if .Values.liveness.enabled }}
livenessProbe:
tcpSocket:
- port: {{ .Values.service.internalPort }}
+ port: {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.service.internalPort .Values.service.internalPlainPort }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
{{ end }}
readinessProbe:
tcpSocket:
- port: {{ .Values.service.internalPort }}
+ port: {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.service.internalPort .Values.service.internalPlainPort }}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: WEBPROTOCOL
- value: {{ .Values.config.webProtocol }}
+ value: {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.config.webProtocol .Values.config.webPlainProtocol }}
- name: WEBPORT
- value: {{ .Values.config.webPort | quote }}
+ value : {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.config.webPort .Values.config.webPlainPort | quote }}
- name: SDNRPROTOCOL
- value: {{ .Values.config.sdnrProtocol }}
+ value : {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.config.sdnrProtocol .Values.config.sdnrPlainProtocol }}
- name: SDNRHOST
- value: {{ .Values.config.sdnrHost }}.{{ include "common.namespace" . }}
+ value : {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.config.sdnrHost .Values.config.sdnrPlainHost }}.{{ include "common.namespace" . }}
- name: SDNRPORT
- value: {{ .Values.config.sdnrPort | quote }}
+ value : {{ (eq "true" (include "common.needTLS" .)) | ternary .Values.config.sdnrPort .Values.config.sdnrPlainPort | quote }}
+ {{ if (include "common.needTLS" .) }}
- name: SSL_CERT_DIR
value: {{ .Values.config.sslCertDir }}
- name: SSL_CERTIFICATE
value: {{ .Values.config.sslCertiticate }}
- name: SSL_CERTIFICATE_KEY
value: {{ .Values.config.sslCertKey }}
+ {{ end }}
{{ if .Values.config.transportpce.enabled }}
- name: TRPCEURL
value: {{ .Values.config.transportpce.transportpceUrl }}
diff --git a/kubernetes/sdnc/components/sdnc-web/values.yaml b/kubernetes/sdnc/components/sdnc-web/values.yaml
index c066b5e..ecc5573 100644
--- a/kubernetes/sdnc/components/sdnc-web/values.yaml
+++ b/kubernetes/sdnc/components/sdnc-web/values.yaml
@@ -29,10 +29,15 @@
config:
sdncChartName: sdnc
webProtocol: HTTPS
+ webPlainProtocol: HTTP
webPort: 8443
+ webPlainPort: 8080
sdnrProtocol: https
+ sdnrPlainProtocol: http
sdnrHost: "sdnc"
+ sdnrPlainHost: "sdnc"
sdnrPort: "8443"
+ sdnrPlainPort : "8080"
sslCertDir: "/opt/app/osaaf/local/certs"
sslCertiticate: "cert.pem"
sslCertKey: "key.pem"
@@ -100,9 +105,12 @@
# for liveness and readiness probe only
# internalPort:
internalPort: 8443
+ internalPlainPort: 8080
ports:
- - name: "sdnc-web"
+ - name: http-sdnc-web
port: "8443"
+ plain_port: "8080"
+ port_protocol: http
nodePort: "05"
#ingress:
diff --git a/kubernetes/sdnc/components/ueb-listener/resources/config/ueb-listener.properties b/kubernetes/sdnc/components/ueb-listener/resources/config/ueb-listener.properties
index 946773b..45a80af 100644
--- a/kubernetes/sdnc/components/ueb-listener/resources/config/ueb-listener.properties
+++ b/kubernetes/sdnc/components/ueb-listener/resources/config/ueb-listener.properties
@@ -1,4 +1,9 @@
+{{- if (include "common.needTLS" .) }}
org.onap.ccsdk.sli.northbound.uebclient.asdc-address=sdc-be.{{.Release.Namespace}}:8443
+{{- else }}
+org.onap.ccsdk.sli.northbound.uebclient.asdc-address=sdc-be.{{.Release.Namespace}}:8080
+org.onap.ccsdk.sli.northbound.uebclient.use-https=false
+{{- end }}
org.onap.ccsdk.sli.northbound.uebclient.consumer-group=sdc-OpenSource-Env1-sdnc-dockero
org.onap.ccsdk.sli.northbound.uebclient.consumer-id=sdc-COpenSource-Env11-sdnc-dockero
org.onap.ccsdk.sli.northbound.uebclient.environment-name=AUTO
diff --git a/kubernetes/sdnc/resources/config/conf/aaiclient.properties b/kubernetes/sdnc/resources/config/conf/aaiclient.properties
index 7021990..5108a9d 100755
--- a/kubernetes/sdnc/resources/config/conf/aaiclient.properties
+++ b/kubernetes/sdnc/resources/config/conf/aaiclient.properties
@@ -38,7 +38,11 @@
#
# Configuration file for A&AI Client
#
+{{- if (include "common.needTLS" .) }}
org.onap.ccsdk.sli.adaptors.aai.uri=https://aai.{{.Release.Namespace}}:8443
+{{- else }}
+org.onap.ccsdk.sli.adaptors.aai.uri=http://aai.{{.Release.Namespace}}:80
+{{- end }}
connection.timeout=60000
read.timeout=60000
diff --git a/kubernetes/sdnc/templates/job.yaml b/kubernetes/sdnc/templates/job.yaml
index 11b1a87..b6dc32b 100755
--- a/kubernetes/sdnc/templates/job.yaml
+++ b/kubernetes/sdnc/templates/job.yaml
@@ -131,8 +131,28 @@
command:
- /bin/bash
args:
- - {{.Values.config.binDir }}/installSdncDb.sh
+ - -c
+ - |
+ sleep 60; {{.Values.config.binDir }}/installSdncDb.sh
resources: {{ include "common.resources" . | nindent 10 }}
+ {{- if include "common.onServiceMesh" . }}
+ - name: sdnc-service-mesh-wait-for-job-container
+ image: {{ include "repositoryGenerator.image.quitQuit" . }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /bin/sh
+ - "-c"
+ args:
+ - |
+ echo "waiting 20s for istio side cars to be up"; sleep 20s;
+ /app/ready.py --service-mesh-check sdnc -t 45;
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ {{- end }}
{{- if .Values.nodeSelector }}
nodeSelector: {{ toYaml .Values.nodeSelector | nindent 8 }}
{{- end }}
diff --git a/kubernetes/sdnc/templates/sdnrdb-init-job.yaml b/kubernetes/sdnc/templates/sdnrdb-init-job.yaml
index cb8d757..665e16c 100755
--- a/kubernetes/sdnc/templates/sdnrdb-init-job.yaml
+++ b/kubernetes/sdnc/templates/sdnrdb-init-job.yaml
@@ -53,7 +53,10 @@
image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command: ["/bin/bash"]
- args: ["-c", "{{ .Values.config.binDir }}/startODL.sh"]
+ args:
+ - -c
+ - |
+ sleep 90; "{{ .Values.config.binDir }}/startODL.sh"
env:
- name: SDNC_AAF_ENABLED
value: "{{ .Values.global.aafEnabled}}"
@@ -76,6 +79,24 @@
value: "-k"
volumeMounts: {{ include "common.certInitializer.volumeMount" . | nindent 10 }}
resources: {{ include "common.resources" . | nindent 12 }}
+ {{- if include "common.onServiceMesh" . }}
+ - name: sdnrdb-service-mesh-wait-for-job-container
+ image: {{ include "repositoryGenerator.image.quitQuit" . }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /bin/sh
+ - "-c"
+ args:
+ - |
+ echo "waiting 30s for istio side cars to be up"; sleep 30s;
+ /app/ready.py --service-mesh-check sdnc-sdnrdb-init-job -t 45;
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ {{- end }}
{{- if .Values.nodeSelector }}
nodeSelector: {{ toYaml .Values.nodeSelector | nindent 10 }}
{{- end -}}
diff --git a/kubernetes/sdnc/values.yaml b/kubernetes/sdnc/values.yaml
index 9539d01..83a30ca 100644
--- a/kubernetes/sdnc/values.yaml
+++ b/kubernetes/sdnc/values.yaml
@@ -543,7 +543,7 @@
service:
type: NodePort
name: sdnc
- portName: sdnc
+ portName: http
internalPort: 8181
internalPort2: 8101
internalPort3: 8080