[EXTAPI] Make NBI ServiceMesh compatible 62/131462/6
authorAndreas Geissler <andreas-geissler@telekom.de>
Thu, 13 Oct 2022 11:15:29 +0000 (13:15 +0200)
committerAndreas Geissler <andreas-geissler@telekom.de>
Thu, 20 Oct 2022 13:44:38 +0000 (15:44 +0200)
Enable HTTP connections to SDC, DMAPP, AAI and provide
own HTTP service, allign chart to the common templates

Issue-ID: OOM-3007

Signed-off-by: Andreas Geissler <andreas-geissler@telekom.de>
Change-Id: I8d984c1ac8a93b154b458b1306b6b0f814e47a4f

kubernetes/nbi/templates/deployment.yaml
kubernetes/nbi/templates/service.yaml
kubernetes/nbi/values.yaml

index b9ed35b..6a246a6 100644 (file)
 
 apiVersion: apps/v1
 kind: Deployment
-metadata:
-  name: {{ include "common.fullname" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ include "common.release" . }}
-    heritage: {{ .Release.Service }}
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
 spec:
-  selector:
-    matchLabels:
-      app: {{ include "common.name" . }}
+  selector: {{- include "common.selectors" . | nindent 4 }}
   replicas: {{ .Values.replicaCount }}
   template:
-    metadata:
-      labels:
-        app: {{ include "common.name" . }}
-        release: {{ include "common.release" . }}
-      name: {{ include "common.fullname" . }}
+    metadata: {{- include "common.templateMetadata" . | nindent 6 }}
     spec:
 {{- if .Values.global.aafEnabled }}
       initContainers: {{ include "common.certInitializer.initContainer" . | nindent 6 }}
@@ -45,8 +32,7 @@ spec:
         - name: {{ include "common.name" . }}
           image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
           imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
-          ports:
-            - containerPort: {{ .Values.service.internalPort }}
+          ports: {{ include "common.containerPorts" . | nindent 12 }}
           # disable liveness probe when breakpoints set in debugger
           # so K8s doesn't restart unresponsive container
           {{- if .Values.global.aafEnabled }}
@@ -68,17 +54,17 @@ spec:
           {{ if .Values.liveness.enabled }}
           livenessProbe:
             httpGet:
-              port: {{ .Values.liveness.port }}
+              port: {{ if (include "common.needTLS" .) }}{{ .Values.service.internalPort }}{{ else }}{{ .Values.service.internalPlainPort }}{{ end }}
               path: {{ .Values.liveness.path }}
-              scheme: HTTPS
+              scheme: {{ if (include "common.needTLS" .) }}HTTPS{{ else }}HTTP{{ end }}
             initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
           {{ end }}
           readinessProbe:
             httpGet:
-              port: {{ .Values.readiness.port }}
+              port: {{ if (include "common.needTLS" .) }}{{ .Values.service.internalPort }}{{ else }}{{ .Values.service.internalPlainPort }}{{ end }}
               path: {{ .Values.readiness.path }}
-              scheme: HTTPS
+              scheme: {{ if (include "common.needTLS" .) }}HTTPS{{ else }}HTTP{{ end }}
             initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
           env:
@@ -105,15 +91,15 @@ spec:
             - name: ONAP_K8SCLOUDOWNER
               value: {{ .Values.config.k8sCloudOwner }}
             - name: NBI_URL
-              value: "https://nbi.{{ include "common.namespace" . }}:8443/nbi/api/v4"
+              value: "{{ if (include "common.needTLS" .) }}https{{ else }}http{{ end }}://nbi.{{ include "common.namespace" . }}:{{ if (include "common.needTLS" .) }}{{ .Values.service.internalPort }}{{ else }}{{ .Values.service.internalPlainPort }}{{ end }}/nbi/api/v4"
             - name: SDC_HOST
-              value: "https://sdc-be.{{ include "common.namespace" . }}:8443"
+              value: "{{ if (include "common.needTLS" .) }}https{{ else }}http{{ end }}://sdc-be.{{ include "common.namespace" . }}:{{ if (include "common.needTLS" .) }}8443{{ else }}8080{{ end }}"
             - name: SDC_HEADER_ECOMPINSTANCEID
               value: {{ .Values.config.ecompInstanceId }}
             - name: SDC_HEADER_AUTHORIZATION
               value: {{ .Values.sdc_authorization }}
             - name: AAI_HOST
-              value: "https://aai.{{ include "common.namespace" . }}:8443"
+              value: "{{ if (include "common.needTLS" .) }}https{{ else }}http{{ end }}://aai.{{ include "common.namespace" . }}:{{ if (include "common.needTLS" .) }}8443{{ else }}80{{ end }}"
             - name: AAI_HEADER_AUTHORIZATION
               value: {{ .Values.aai_authorization }}
             - name: SO_HOST
@@ -123,11 +109,11 @@ spec:
               value: {{ .Values.so_authorization }}
             {{- end }}
             - name: DMAAP_HOST
-              value: "https://message-router.{{ include "common.namespace" . }}:3905"
+              value: "{{ if (include "common.needTLS" .) }}https{{ else }}http{{ end }}://message-router.{{ include "common.namespace" . }}:{{ if (include "common.needTLS" .) }}3905{{ else }}3904{{ end }}"
             - name: LOGGING_LEVEL_ORG_ONAP_NBI
               value: {{ .Values.config.loglevel }}
             - name: MSB_ENABLED
-              value: "true"
+              value: "{{ .Values.global.msbEnabled }}"
             - name: MSB_DISCOVERY_HOST
               value: "msb-discovery.{{ include "common.namespace" . }}"
             - name: MSB_DISCOVERY_PORT
index 4d5359c..11fae18 100644 (file)
 # limitations under the License.
 */}}
 
-apiVersion: v1
-kind: Service
-metadata:
-  name: {{ include "common.servicename" . }}
-  namespace: {{ include "common.namespace" . }}
-  labels:
-    app: {{ include "common.name" . }}
-    chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
-    release: {{ include "common.release" . }}
-    heritage: {{ .Release.Service }}
-spec:
-  type: {{ .Values.service.type }}
-  ports:
-    {{if eq .Values.service.type "NodePort" -}}
-    - port: {{ .Values.service.internalPort }}
-      nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
-      name: {{ .Values.service.portName }}-{{ .Values.service.internalPort }}
-    {{- else -}}
-    - port: {{ .Values.service.externalPort }}
-      targetPort: {{ .Values.service.internalPort }}
-      name: {{ .Values.service.portName }}
-    {{- end}}
-  selector:
-    app: {{ include "common.name" . }}
-    release: {{ include "common.release" . }}
+{{ include "common.service" . }}
\ No newline at end of file
index 9b69a43..a2111c2 100644 (file)
@@ -25,6 +25,7 @@ global:
     internalPort: 3306
     nameOverride: mariadb-galera
   aafEnabled: true
+  msbEnabled: true
 
 #################################################################
 # AAF part
@@ -134,7 +135,6 @@ affinity: {}
 # probe configuration parameters
 liveness:
   path: /nbi/api/v4/status
-  port: 8443
   initialDelaySeconds: 180
   periodSeconds: 30
   # necessary to disable liveness probe when setting breakpoints
@@ -143,7 +143,6 @@ liveness:
 
 readiness:
   path: /nbi/api/v4/status
-  port: 8443
   initialDelaySeconds: 185
   periodSeconds: 30
 
@@ -151,8 +150,13 @@ service:
   type: NodePort
   portName: api
   name: nbi
-  nodePort: 74
   internalPort: 8443
+  internalPlainPort: 8080
+  ports:
+    - name: http
+      port: 8443
+      plain_port: 8080
+      nodePort: '74'
 
 ingress:
   enabled: false
@@ -160,6 +164,7 @@ ingress:
     - baseaddr: "nbi.api"
       name: "nbi"
       port: 8443
+      plain_port: 8080
   config:
     ssl: "redirect"
 # Resource Limit flavor -By Default using small