summaryrefslogtreecommitdiffstats
path: root/kubernetes
diff options
context:
space:
mode:
Diffstat (limited to 'kubernetes')
-rw-r--r--kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml2
-rw-r--r--kubernetes/aaf/charts/aaf-cs/values.yaml5
-rw-r--r--kubernetes/aaf/charts/sms/Chart.yaml (renamed from kubernetes/aai/charts/champ/templates/secrets.yaml)12
-rw-r--r--kubernetes/aaf/charts/sms/charts/vault/Chart.yaml19
-rw-r--r--kubernetes/aaf/charts/sms/charts/vault/templates/configmap.yaml41
-rw-r--r--kubernetes/aaf/charts/sms/charts/vault/templates/pv.yaml37
-rw-r--r--kubernetes/aaf/charts/sms/charts/vault/templates/pvc.yaml48
-rw-r--r--kubernetes/aaf/charts/sms/charts/vault/templates/service.yaml39
-rw-r--r--kubernetes/aaf/charts/sms/charts/vault/templates/statefulset.yaml78
-rw-r--r--kubernetes/aaf/charts/sms/charts/vault/values.yaml112
-rw-r--r--kubernetes/aaf/charts/sms/templates/configmap.yaml27
-rw-r--r--kubernetes/aaf/charts/sms/templates/deployment.yaml81
-rw-r--r--kubernetes/aaf/charts/sms/templates/service.yaml39
-rw-r--r--kubernetes/aaf/charts/sms/values.yaml95
-rw-r--r--kubernetes/aaf/templates/deployment.yaml2
-rw-r--r--kubernetes/aaf/values.yaml1
-rw-r--r--kubernetes/aai/charts/aai-champ/Chart.yaml (renamed from kubernetes/aai/charts/champ/Chart.yaml)4
-rw-r--r--kubernetes/aai/charts/aai-champ/requirements.yaml (renamed from kubernetes/aai/charts/champ/requirements.yaml)0
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/champ_policy.json (renamed from kubernetes/aai/charts/champ/resources/config/appconfig/auth/champ_policy.json)0
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore (renamed from kubernetes/aai/charts/champ/resources/config/appconfig/auth/tomcat_keystore)bin2214 -> 2214 bytes
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/appconfig/champ-api.properties (renamed from kubernetes/aai/charts/champ/resources/config/appconfig/champ-api.properties)0
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml (renamed from kubernetes/aai/charts/champ/resources/config/dynamic/conf/champ-beans.xml)2
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/configmap.yaml (renamed from kubernetes/aai/charts/champ/templates/configmap.yaml)4
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/deployment.yaml (renamed from kubernetes/aai/charts/champ/templates/deployment.yaml)16
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/secrets.yaml38
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/service.yaml (renamed from kubernetes/aai/charts/champ/templates/service.yaml)0
-rw-r--r--kubernetes/aai/charts/aai-champ/values.yaml (renamed from kubernetes/aai/charts/champ/values.yaml)8
-rw-r--r--kubernetes/aai/charts/aai-gizmo/.helmignore (renamed from kubernetes/aai/charts/gizmo/.helmignore)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/Chart.yaml (renamed from kubernetes/aai/charts/gizmo/Chart.yaml)4
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/README.txt (renamed from kubernetes/aai/charts/gizmo/resources/config/README.txt)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/auth/champ-cert.p12 (renamed from kubernetes/aai/charts/gizmo/resources/config/auth/champ-cert.p12)bin2556 -> 2556 bytes
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/auth/crud_policy.json (renamed from kubernetes/aai/charts/gizmo/resources/config/auth/crud_policy.json)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/auth/datarouter-cert.p12 (renamed from kubernetes/aai/charts/gizmo/resources/config/auth/datarouter-cert.p12)bin2556 -> 2556 bytes
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/auth/tomcat_keystore (renamed from kubernetes/aai/charts/gizmo/resources/config/auth/tomcat_keystore)bin2214 -> 2214 bytes
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/crud-api.properties (renamed from kubernetes/aai/charts/gizmo/resources/config/crud-api.properties)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/crud-beans.xml (renamed from kubernetes/aai/charts/gizmo/resources/config/crud-beans.xml)4
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/log/filebeat/filebeat.yml (renamed from kubernetes/aai/charts/gizmo/resources/config/log/filebeat/filebeat.yml)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/log/logback.xml (renamed from kubernetes/aai/charts/gizmo/resources/config/log/logback.xml)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v11.json (renamed from kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v11.json)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v12.json (renamed from kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v12.json)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v13.json (renamed from kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v13.json)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/NOTES.txt (renamed from kubernetes/aai/charts/gizmo/templates/NOTES.txt)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/configmap.yaml (renamed from kubernetes/aai/charts/gizmo/templates/configmap.yaml)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/deployment.yaml (renamed from kubernetes/aai/charts/gizmo/templates/deployment.yaml)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/secrets.yaml (renamed from kubernetes/aai/charts/gizmo/templates/secrets.yaml)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/templates/service.yaml (renamed from kubernetes/aai/charts/gizmo/templates/service.yaml)0
-rw-r--r--kubernetes/aai/charts/aai-gizmo/values.yaml (renamed from kubernetes/aai/charts/gizmo/values.yaml)0
-rw-r--r--kubernetes/common/common/templates/_repository.tpl31
-rw-r--r--kubernetes/common/mysql/templates/service.yaml24
-rw-r--r--kubernetes/common/mysql/templates/statefulset.yaml6
-rw-r--r--kubernetes/common/mysql/values.yaml3
-rw-r--r--kubernetes/common/postgres/.helmignore21
-rw-r--r--kubernetes/common/postgres/Chart.yaml18
-rw-r--r--kubernetes/common/postgres/requirements.yaml18
-rw-r--r--kubernetes/common/postgres/templates/pv.yaml58
-rw-r--r--kubernetes/common/postgres/templates/secrets.yaml31
-rw-r--r--kubernetes/common/postgres/templates/service.yaml95
-rw-r--r--kubernetes/common/postgres/templates/statefulset.yaml147
-rw-r--r--kubernetes/common/postgres/values.yaml127
-rwxr-xr-xkubernetes/config/docker/init/src/config/message-router/dmaap/MsgRtrApi.properties140
-rwxr-xr-xkubernetes/config/docker/init/src/config/message-router/dmaap/cadi.properties21
-rwxr-xr-xkubernetes/config/docker/init/src/config/message-router/dmaap/mykey27
-rw-r--r--kubernetes/consul/resources/config/consul-agent-config/vfc-health.json7
-rw-r--r--kubernetes/helm/starters/onap-app/templates/deployment.yaml2
-rw-r--r--kubernetes/helm/starters/onap-app/values.yaml1
-rw-r--r--kubernetes/message-router/.helmignore21
-rw-r--r--kubernetes/message-router/Chart.yaml5
-rw-r--r--kubernetes/message-router/charts/kafka/.helmignore21
-rw-r--r--kubernetes/message-router/charts/kafka/Chart.yaml19
-rw-r--r--kubernetes/message-router/charts/kafka/templates/NOTES.txt19
-rw-r--r--kubernetes/message-router/charts/kafka/templates/deployment.yaml (renamed from kubernetes/message-router/templates/message-router-kafka.yaml)69
-rw-r--r--kubernetes/message-router/charts/kafka/templates/pv.yaml37
-rw-r--r--kubernetes/message-router/charts/kafka/templates/pvc.yaml48
-rw-r--r--kubernetes/message-router/charts/kafka/templates/service.yaml32
-rw-r--r--kubernetes/message-router/charts/kafka/values.yaml115
-rw-r--r--kubernetes/message-router/charts/zookeeper/.helmignore21
-rw-r--r--kubernetes/message-router/charts/zookeeper/Chart.yaml19
-rw-r--r--kubernetes/message-router/charts/zookeeper/templates/NOTES.txt19
-rw-r--r--kubernetes/message-router/charts/zookeeper/templates/deployment.yaml79
-rw-r--r--kubernetes/message-router/charts/zookeeper/templates/pv.yaml37
-rw-r--r--kubernetes/message-router/charts/zookeeper/templates/pvc.yaml48
-rw-r--r--kubernetes/message-router/charts/zookeeper/templates/service.yaml32
-rw-r--r--kubernetes/message-router/charts/zookeeper/values.yaml110
-rw-r--r--kubernetes/message-router/requirements.yaml22
-rwxr-xr-xkubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties25
-rwxr-xr-xkubernetes/message-router/resources/config/dmaap/cadi.properties14
-rw-r--r--kubernetes/message-router/templates/NOTES.txt19
-rw-r--r--kubernetes/message-router/templates/all-services.yaml80
-rw-r--r--kubernetes/message-router/templates/configmap.yaml15
-rw-r--r--kubernetes/message-router/templates/deployment.yaml95
-rw-r--r--kubernetes/message-router/templates/dmaap-configmap.yaml23
-rw-r--r--kubernetes/message-router/templates/message-router-dmaap.yaml91
-rw-r--r--kubernetes/message-router/templates/message-router-pv-pvc.yaml81
-rw-r--r--kubernetes/message-router/templates/message-router-zookeeper.yaml72
-rw-r--r--kubernetes/message-router/templates/secrets.yaml27
-rw-r--r--kubernetes/message-router/templates/service.yaml54
-rw-r--r--kubernetes/message-router/values.yaml92
-rw-r--r--kubernetes/msb/charts/kube2msb/values.yaml2
-rw-r--r--kubernetes/msb/charts/msb-discovery/templates/deployment.yaml2
-rw-r--r--kubernetes/msb/charts/msb-eag/templates/deployment.yaml4
-rw-r--r--kubernetes/msb/charts/msb-iag/templates/deployment.yaml4
-rw-r--r--kubernetes/onap/requirements.yaml2
-rw-r--r--kubernetes/onap/resources/environments/dev.yaml26
-rw-r--r--kubernetes/onap/resources/environments/disable-allcharts.yaml73
-rw-r--r--kubernetes/onap/values.yaml24
-rw-r--r--kubernetes/sdnc/templates/service.yaml72
-rw-r--r--kubernetes/sdnc/values.yaml13
-rw-r--r--kubernetes/vfc/templates/all-services.yaml31
-rw-r--r--kubernetes/vfc/templates/vfc-nokiav2vnfmdriver-deployment.yaml50
-rw-r--r--kubernetes/vfc/values.yaml5
110 files changed, 2617 insertions, 647 deletions
diff --git a/kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml
index 80b99b20b6..15e574f511 100644
--- a/kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml
+++ b/kubernetes/aaf/charts/aaf-cs/templates/deployment.yaml
@@ -36,7 +36,7 @@ spec:
hostname: {{ include "common.name" . }}
containers:
- args:
- image: "{{ .Values.repository | default .Values.global.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
name: {{ include "common.name" . }}
volumeMounts:
diff --git a/kubernetes/aaf/charts/aaf-cs/values.yaml b/kubernetes/aaf/charts/aaf-cs/values.yaml
index ea5445fa2e..89b83cd169 100644
--- a/kubernetes/aaf/charts/aaf-cs/values.yaml
+++ b/kubernetes/aaf/charts/aaf-cs/values.yaml
@@ -18,10 +18,7 @@
global:
nodePortPrefix: 302
repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
-
-# If mountPath is over NFS (e.g. /dockerdata-nfs is NFS mounted between the nodes), uncomment following lines.
-# persistence:
-# mountPath: /dockerdata
+
#################################################################
# Application configuration defaults.
diff --git a/kubernetes/aai/charts/champ/templates/secrets.yaml b/kubernetes/aaf/charts/sms/Chart.yaml
index e939eb904b..962ef38650 100644
--- a/kubernetes/aai/charts/champ/templates/secrets.yaml
+++ b/kubernetes/aaf/charts/sms/Chart.yaml
@@ -1,4 +1,4 @@
-# Copyright © 2018 Amdocs, AT&T
+# Copyright 2018 Intel Corporation, Inc
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,10 +13,6 @@
# limitations under the License.
apiVersion: v1
-kind: Secret
-metadata:
- name: {{ include "common.fullname" . }}-champ-secrets
- namespace: {{ include "common.namespace" . }}
-type: Opaque
-data:
-{{ tpl (.Files.Glob "resources/config/appconfig/auth/*").AsSecrets . | indent 2 }}
+description: ONAP Secret Management Service
+name: sms
+version: 2.0.0
diff --git a/kubernetes/aaf/charts/sms/charts/vault/Chart.yaml b/kubernetes/aaf/charts/sms/charts/vault/Chart.yaml
new file mode 100644
index 0000000000..bf1af999d4
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/charts/vault/Chart.yaml
@@ -0,0 +1,19 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: Chart to launch Vault as SMS backend
+name: vault
+appVersion: 0.9.5
+version: 2.0.0
diff --git a/kubernetes/aaf/charts/sms/charts/vault/templates/configmap.yaml b/kubernetes/aaf/charts/sms/charts/vault/templates/configmap.yaml
new file mode 100644
index 0000000000..daf8cadc46
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/charts/vault/templates/configmap.yaml
@@ -0,0 +1,41 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-vault
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ config.json: |
+ {{ .Values.config.vault | toJson }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-consul
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ config.json: |
+ {{ .Values.config.consul | toJson }}
diff --git a/kubernetes/aaf/charts/sms/charts/vault/templates/pv.yaml b/kubernetes/aaf/charts/sms/charts/vault/templates/pv.yaml
new file mode 100644
index 0000000000..37ed28ee9d
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/charts/vault/templates/pv.yaml
@@ -0,0 +1,37 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}} \ No newline at end of file
diff --git a/kubernetes/aaf/charts/sms/charts/vault/templates/pvc.yaml b/kubernetes/aaf/charts/sms/charts/vault/templates/pvc.yaml
new file mode 100644
index 0000000000..e6aacd1b96
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/charts/vault/templates/pvc.yaml
@@ -0,0 +1,48 @@
+{{/*
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
diff --git a/kubernetes/aaf/charts/sms/charts/vault/templates/service.yaml b/kubernetes/aaf/charts/sms/charts/vault/templates/service.yaml
new file mode 100644
index 0000000000..cb2f286a29
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/charts/vault/templates/service.yaml
@@ -0,0 +1,39 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - name: {{ .Values.service.name }}
+ {{if eq .Values.service.type "NodePort" -}}
+ port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ protocol: TCP
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/aaf/charts/sms/charts/vault/templates/statefulset.yaml b/kubernetes/aaf/charts/sms/charts/vault/templates/statefulset.yaml
new file mode 100644
index 0000000000..26f03044ac
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/charts/vault/templates/statefulset.yaml
@@ -0,0 +1,78 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ serviceName:
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image.vault }}"
+ name: {{ include "common.name" . }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["vault","server","-config","/vault/config/config.json"]
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ volumeMounts:
+ - mountPath: /vault/config/config.json
+ name: {{ include "common.fullname" . }}-vault
+ subPath: config.json
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+
+ - image: "{{ include "common.repository" . }}/{{ .Values.image.consul }}"
+ name: {{ include "common.name" . }}-backend
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command: ["consul","agent","-server","-client","0.0.0.0","-bootstrap-expect=1","-config-file","/consul/config/config.json"]
+ ports:
+ - name: http
+ containerPort: 8500
+ volumeMounts:
+ - mountPath: /consul/data
+ name: {{ include "common.fullname" . }}-consuldata
+ - mountPath: /consul/config/config.json
+ name: {{ include "common.fullname" . }}-consulconfiguration
+ subPath: config.json
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ volumes:
+ - name: {{ include "common.fullname" . }}-consuldata
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ - name: {{ include "common.fullname" . }}-consulconfiguration
+ configMap:
+ name: {{ include "common.fullname" . }}-consul
+ - name: {{ include "common.fullname" . }}-vault
+ configMap:
+ name: {{ include "common.fullname" . }}-vault
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+
diff --git a/kubernetes/aaf/charts/sms/charts/vault/values.yaml b/kubernetes/aaf/charts/sms/charts/vault/values.yaml
new file mode 100644
index 0000000000..c65e6e19e4
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/charts/vault/values.yaml
@@ -0,0 +1,112 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ persistence: {}
+
+# application image
+repository: docker.io
+image:
+ consul: consul:1.0.6
+ vault: vault:0.9.6
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+config:
+ consul:
+ server: true
+ log_level: INFO
+ server: true
+ data_dir: '/consul/data'
+ ports:
+ http: 8500
+ https: -1
+
+ vault:
+ storage:
+ consul:
+ address: localhost:8500
+ path: smsvault
+ listener:
+ tcp:
+ address: '[::]:8200'
+ tls_disable: true
+ disable_mlock: true
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+persistence:
+ enabled: true
+
+ volumeReclaimPolicy: Retain
+
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: sms/consul/data
+
+service:
+ type: NodePort
+ name: vault
+ internalPort: 8200
+ nodePort: 44
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/aaf/charts/sms/templates/configmap.yaml b/kubernetes/aaf/charts/sms/templates/configmap.yaml
new file mode 100644
index 0000000000..72ce6fbadb
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/templates/configmap.yaml
@@ -0,0 +1,27 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+ smsconfig.json: |
+ {{ .Values.config | toJson }}
diff --git a/kubernetes/aaf/charts/sms/templates/deployment.yaml b/kubernetes/aaf/charts/sms/templates/deployment.yaml
new file mode 100644
index 0000000000..66c649cab4
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/templates/deployment.yaml
@@ -0,0 +1,81 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ containers:
+ - image: "{{ .Values.repository }}/{{ .Values.image }}"
+ name: {{ include "common.name" . }}
+ imagePullPolicy: {{ .Values.pullPolicy }}
+ command: ["/sms/bin/sms"]
+ workingDir: /sms/
+ env:
+ - name: {{ .Values.config.smsdburlenv }}
+ value: "http://{{ include "common.namespace" . }}-smsdb:8200"
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /sms/smsconfig.json
+ name: {{ include "common.name" .}}
+ subPath: smsconfig.json
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name : {{ include "common.name" . }}
+ configMap:
+ name: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/aaf/charts/sms/templates/service.yaml b/kubernetes/aaf/charts/sms/templates/service.yaml
new file mode 100644
index 0000000000..cb2f286a29
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/templates/service.yaml
@@ -0,0 +1,39 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ - name: {{ .Values.service.name }}
+ {{if eq .Values.service.type "NodePort" -}}
+ port: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default "302" }}{{ .Values.service.nodePort }}
+ {{- else -}}
+ port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ {{- end}}
+ protocol: TCP
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/aaf/charts/sms/values.yaml b/kubernetes/aaf/charts/sms/values.yaml
new file mode 100644
index 0000000000..3db9b9ace8
--- /dev/null
+++ b/kubernetes/aaf/charts/sms/values.yaml
@@ -0,0 +1,95 @@
+# Copyright 2018 Intel Corporation, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.1.1
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/aaf/sms
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+# Example:
+config:
+ smsdburlenv: "SMSDB_URL"
+ cafile: "/sms/auth/selfsignedca.pem"
+ servercert: "/sms/auth/server.cert"
+ serverkey: "/sms/auth/server.key"
+ disable_tls: true
+
+# subchart configuration
+vault:
+ nameOverride: smsdb
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 20
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 20
+
+service:
+ type: NodePort
+ name: sms
+ internalPort: 10443
+ nodePort: 43
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/aaf/templates/deployment.yaml b/kubernetes/aaf/templates/deployment.yaml
index 03506b52eb..2a4e7d2348 100644
--- a/kubernetes/aaf/templates/deployment.yaml
+++ b/kubernetes/aaf/templates/deployment.yaml
@@ -52,7 +52,7 @@ spec:
- env:
- name: CASSANDRA_CLUSTER
value: cassandra_container
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
- mountPath: /data
diff --git a/kubernetes/aaf/values.yaml b/kubernetes/aaf/values.yaml
index 4f9c1c6da0..ffdfaa54cf 100644
--- a/kubernetes/aaf/values.yaml
+++ b/kubernetes/aaf/values.yaml
@@ -17,7 +17,6 @@
#################################################################
global:
nodePortPrefix: 302
- repository: nexus3.onap.org:10001
repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
readinessImage: readiness-check:1.1.0
diff --git a/kubernetes/aai/charts/champ/Chart.yaml b/kubernetes/aai/charts/aai-champ/Chart.yaml
index a4ee888fce..1704337efa 100644
--- a/kubernetes/aai/charts/champ/Chart.yaml
+++ b/kubernetes/aai/charts/aai-champ/Chart.yaml
@@ -13,6 +13,6 @@
# limitations under the License.
apiVersion: v1
-description: Champ microservice
-name: champ
+description: ONAP AAI Champ microservice
+name: aai-champ
version: 2.0.0
diff --git a/kubernetes/aai/charts/champ/requirements.yaml b/kubernetes/aai/charts/aai-champ/requirements.yaml
index 9552dfd9e0..9552dfd9e0 100644
--- a/kubernetes/aai/charts/champ/requirements.yaml
+++ b/kubernetes/aai/charts/aai-champ/requirements.yaml
diff --git a/kubernetes/aai/charts/champ/resources/config/appconfig/auth/champ_policy.json b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/champ_policy.json
index ee04a714be..ee04a714be 100644
--- a/kubernetes/aai/charts/champ/resources/config/appconfig/auth/champ_policy.json
+++ b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/champ_policy.json
diff --git a/kubernetes/aai/charts/champ/resources/config/appconfig/auth/tomcat_keystore b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore
index 9eec841aa2..9eec841aa2 100644
--- a/kubernetes/aai/charts/champ/resources/config/appconfig/auth/tomcat_keystore
+++ b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/auth/tomcat_keystore
Binary files differ
diff --git a/kubernetes/aai/charts/champ/resources/config/appconfig/champ-api.properties b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/champ-api.properties
index 3b90c5522f..3b90c5522f 100644
--- a/kubernetes/aai/charts/champ/resources/config/appconfig/champ-api.properties
+++ b/kubernetes/aai/charts/aai-champ/resources/config/appconfig/champ-api.properties
diff --git a/kubernetes/aai/charts/champ/resources/config/dynamic/conf/champ-beans.xml b/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
index cdf3aada40..f97ac16864 100644
--- a/kubernetes/aai/charts/champ/resources/config/dynamic/conf/champ-beans.xml
+++ b/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
@@ -23,7 +23,7 @@ xsi:schemaLocation="
<entry key="graph.name" value="aaigraph.dev"/>
<entry key="storage.backend" value="hbase"/>
- <entry key="storage.hostname" value="hbase.{{.Release.Namespace}}"/>
+ <entry key="storage.hostname" value="aai-hbase.{{.Release.Namespace}}"/>
<!-- Hbase Config -->
<entry key="storage.hbase.ext.hbase.zookeeper.property.clientPort" value="2181"/>
diff --git a/kubernetes/aai/charts/champ/templates/configmap.yaml b/kubernetes/aai/charts/aai-champ/templates/configmap.yaml
index 8f48f199f8..a085839cc1 100644
--- a/kubernetes/aai/charts/champ/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-champ/templates/configmap.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-configmap
+ name: {{ include "common.fullname" . }}
namespace: {{ include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/appconfig/*").AsConfig . | indent 2 }}
@@ -23,7 +23,7 @@ data:
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-dynamic-configmap
+ name: {{ include "common.fullname" . }}-dynamic
namespace: {{ include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/dynamic/conf/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/aai/charts/champ/templates/deployment.yaml b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
index 23314aeee4..ccb90213d9 100644
--- a/kubernetes/aai/charts/champ/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
@@ -55,6 +55,16 @@ spec:
value: "/opt/app/champ-service/appconfig"
- name: GRAPHIMPL
value: "janus-deps"
+ - name: KEY_STORE_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-pass
+ key: KEY_STORE_PASSWORD
+ - name: KEY_MANAGER_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}-pass
+ key: KEY_MANAGER_PASSWORD
- name: SERVICE_BEANS
value: "/opt/app/champ-service/dynamic/conf"
volumeMounts:
@@ -88,16 +98,16 @@ spec:
path: /etc/localtime
- name: {{ include "common.fullname" . }}-config
configMap:
- name: {{ include "common.fullname" . }}-configmap
+ name: {{ include "common.fullname" . }}
items:
- key: champ-api.properties
path: champ-api.properties
- name: {{ include "common.fullname" . }}-secrets
secret:
- secretName: {{ include "common.fullname" . }}-champ-secrets
+ secretName: {{ include "common.fullname" . }}-champ
- name: {{ include "common.fullname" . }}-dynamic-config
configMap:
- name: {{ include "common.fullname" . }}-dynamic-configmap
+ name: {{ include "common.fullname" . }}-dynamic
items:
- key: champ-beans.xml
path: champ-beans.xml
diff --git a/kubernetes/aai/charts/aai-champ/templates/secrets.yaml b/kubernetes/aai/charts/aai-champ/templates/secrets.yaml
new file mode 100644
index 0000000000..c0e2559db9
--- /dev/null
+++ b/kubernetes/aai/charts/aai-champ/templates/secrets.yaml
@@ -0,0 +1,38 @@
+# Copyright © 2018 Amdocs, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-champ
+ namespace: {{ include "common.namespace" . }}
+type: Opaque
+data:
+{{ tpl (.Files.Glob "resources/config/appconfig/auth/*").AsSecrets . | indent 2 }}
+---
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-pass
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ KEY_STORE_PASSWORD: {{ .Values.config.keyStorePassword | b64enc | quote }}
+ KEY_MANAGER_PASSWORD: {{ .Values.config.keyManagerPassword | b64enc | quote }}
+
diff --git a/kubernetes/aai/charts/champ/templates/service.yaml b/kubernetes/aai/charts/aai-champ/templates/service.yaml
index 93b0fd1254..93b0fd1254 100644
--- a/kubernetes/aai/charts/champ/templates/service.yaml
+++ b/kubernetes/aai/charts/aai-champ/templates/service.yaml
diff --git a/kubernetes/aai/charts/champ/values.yaml b/kubernetes/aai/charts/aai-champ/values.yaml
index 91a1e52091..d5d9b39423 100644
--- a/kubernetes/aai/charts/champ/values.yaml
+++ b/kubernetes/aai/charts/aai-champ/values.yaml
@@ -24,7 +24,12 @@ global:
#################################################################
# application image
-image: onap/champ:1.2.0
+image: onap/champ:1.2-STAGING-latest
+
+# application configuration
+config:
+ keyStorePassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
+ keyManagerPassword: OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10
# default number of instances
replicaCount: 1
@@ -48,7 +53,6 @@ readiness:
service:
type: NodePort
name: champ
- externalPort: 78
internalPort: 9522
nodePort: 78
diff --git a/kubernetes/aai/charts/gizmo/.helmignore b/kubernetes/aai/charts/aai-gizmo/.helmignore
index f0c1319444..f0c1319444 100644
--- a/kubernetes/aai/charts/gizmo/.helmignore
+++ b/kubernetes/aai/charts/aai-gizmo/.helmignore
diff --git a/kubernetes/aai/charts/gizmo/Chart.yaml b/kubernetes/aai/charts/aai-gizmo/Chart.yaml
index 4633b06dff..86f364331e 100644
--- a/kubernetes/aai/charts/gizmo/Chart.yaml
+++ b/kubernetes/aai/charts/aai-gizmo/Chart.yaml
@@ -14,5 +14,5 @@
apiVersion: v1
description: Gizmo service
-name: gizmo
-version: 2.0.0 \ No newline at end of file
+name: aai-gizmo
+version: 2.0.0
diff --git a/kubernetes/aai/charts/gizmo/resources/config/README.txt b/kubernetes/aai/charts/aai-gizmo/resources/config/README.txt
index 5cc01497f5..5cc01497f5 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/README.txt
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/README.txt
diff --git a/kubernetes/aai/charts/gizmo/resources/config/auth/champ-cert.p12 b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/champ-cert.p12
index dbf4fcacec..dbf4fcacec 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/auth/champ-cert.p12
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/champ-cert.p12
Binary files differ
diff --git a/kubernetes/aai/charts/gizmo/resources/config/auth/crud_policy.json b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/crud_policy.json
index d8b065e7f6..d8b065e7f6 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/auth/crud_policy.json
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/crud_policy.json
diff --git a/kubernetes/aai/charts/gizmo/resources/config/auth/datarouter-cert.p12 b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/datarouter-cert.p12
index dbf4fcacec..dbf4fcacec 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/auth/datarouter-cert.p12
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/datarouter-cert.p12
Binary files differ
diff --git a/kubernetes/aai/charts/gizmo/resources/config/auth/tomcat_keystore b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/tomcat_keystore
index 9eec841aa2..9eec841aa2 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/auth/tomcat_keystore
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/auth/tomcat_keystore
Binary files differ
diff --git a/kubernetes/aai/charts/gizmo/resources/config/crud-api.properties b/kubernetes/aai/charts/aai-gizmo/resources/config/crud-api.properties
index a86d47203a..a86d47203a 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/crud-api.properties
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/crud-api.properties
diff --git a/kubernetes/aai/charts/gizmo/resources/config/crud-beans.xml b/kubernetes/aai/charts/aai-gizmo/resources/config/crud-beans.xml
index 04f1210433..a6cac628db 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/crud-beans.xml
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/crud-beans.xml
@@ -9,7 +9,7 @@
">
<bean id="champDao" class="org.onap.crud.dao.champ.ChampDao">
- <constructor-arg name="champUrl" value="https://{{.Release.Name}}-champ.{{.Release.Namespace}}:9522/services/champ-service/v1/"/>
+ <constructor-arg name="champUrl" value="https://{{.Release.Name}}-aai-champ.{{.Release.Namespace}}:9522/services/champ-service/v1/"/>
<constructor-arg name="certPassword" value="OBF:1y0q1uvc1uum1uvg1pil1pjl1uuq1uvk1uuu1y10"/>
</bean>
@@ -32,4 +32,4 @@
<constructor-arg name="graphDataService" ref="graphDataService" />
</bean>
-</beans> \ No newline at end of file
+</beans>
diff --git a/kubernetes/aai/charts/gizmo/resources/config/log/filebeat/filebeat.yml b/kubernetes/aai/charts/aai-gizmo/resources/config/log/filebeat/filebeat.yml
index 9ad559c027..9ad559c027 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/log/filebeat/filebeat.yml
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/log/filebeat/filebeat.yml
diff --git a/kubernetes/aai/charts/gizmo/resources/config/log/logback.xml b/kubernetes/aai/charts/aai-gizmo/resources/config/log/logback.xml
index f63afd3c6b..f63afd3c6b 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/log/logback.xml
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/log/logback.xml
diff --git a/kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v11.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v11.json
index 8d00636d27..8d00636d27 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v11.json
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v11.json
diff --git a/kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v12.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v12.json
index 8d00636d27..8d00636d27 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v12.json
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v12.json
diff --git a/kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v13.json b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v13.json
index 8d00636d27..8d00636d27 100644
--- a/kubernetes/aai/charts/gizmo/resources/config/model/edge_properties_v13.json
+++ b/kubernetes/aai/charts/aai-gizmo/resources/config/model/edge_properties_v13.json
diff --git a/kubernetes/aai/charts/gizmo/templates/NOTES.txt b/kubernetes/aai/charts/aai-gizmo/templates/NOTES.txt
index 24371d08ab..24371d08ab 100644
--- a/kubernetes/aai/charts/gizmo/templates/NOTES.txt
+++ b/kubernetes/aai/charts/aai-gizmo/templates/NOTES.txt
diff --git a/kubernetes/aai/charts/gizmo/templates/configmap.yaml b/kubernetes/aai/charts/aai-gizmo/templates/configmap.yaml
index b988d31fd9..b988d31fd9 100644
--- a/kubernetes/aai/charts/gizmo/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-gizmo/templates/configmap.yaml
diff --git a/kubernetes/aai/charts/gizmo/templates/deployment.yaml b/kubernetes/aai/charts/aai-gizmo/templates/deployment.yaml
index 80b5390d08..80b5390d08 100644
--- a/kubernetes/aai/charts/gizmo/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-gizmo/templates/deployment.yaml
diff --git a/kubernetes/aai/charts/gizmo/templates/secrets.yaml b/kubernetes/aai/charts/aai-gizmo/templates/secrets.yaml
index f5d8ec8ba5..f5d8ec8ba5 100644
--- a/kubernetes/aai/charts/gizmo/templates/secrets.yaml
+++ b/kubernetes/aai/charts/aai-gizmo/templates/secrets.yaml
diff --git a/kubernetes/aai/charts/gizmo/templates/service.yaml b/kubernetes/aai/charts/aai-gizmo/templates/service.yaml
index f88a4e9533..f88a4e9533 100644
--- a/kubernetes/aai/charts/gizmo/templates/service.yaml
+++ b/kubernetes/aai/charts/aai-gizmo/templates/service.yaml
diff --git a/kubernetes/aai/charts/gizmo/values.yaml b/kubernetes/aai/charts/aai-gizmo/values.yaml
index de842859fe..de842859fe 100644
--- a/kubernetes/aai/charts/gizmo/values.yaml
+++ b/kubernetes/aai/charts/aai-gizmo/values.yaml
diff --git a/kubernetes/common/common/templates/_repository.tpl b/kubernetes/common/common/templates/_repository.tpl
new file mode 100644
index 0000000000..e054b571ad
--- /dev/null
+++ b/kubernetes/common/common/templates/_repository.tpl
@@ -0,0 +1,31 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{/*
+ Resolve the name of the common image repository.
+ The value for .Values.repository is used by default,
+ unless either override mechanism is used.
+
+ - .Values.global.repository : override default image repository for all images
+ - .Values.repositoryOverride : override global and default image repository on a per image basis
+*/}}
+{{- define "common.repository" -}}
+ {{if .Values.repositoryOverride }}
+ {{- printf "%s" .Values.repositoryOverride -}}
+ {{else}}
+ {{- default .Values.repository .Values.global.repository -}}
+ {{end}}
+{{- end -}} \ No newline at end of file
diff --git a/kubernetes/common/mysql/templates/service.yaml b/kubernetes/common/mysql/templates/service.yaml
index c6a28c4605..db08c3a454 100644
--- a/kubernetes/common/mysql/templates/service.yaml
+++ b/kubernetes/common/mysql/templates/service.yaml
@@ -88,3 +88,27 @@ spec:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
clusterIP: None
+---
+{{ if .Values.geoEnabled }}
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}-nodeport
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+spec:
+ ports:
+ - name: {{ .Values.service.internalPort }}
+ port: {{ .Values.service.internalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort1 }}
+ - name: {{ .Values.xtrabackup.internalPort }}
+ port: {{ .Values.xtrabackup.internalPort }}
+ targetPort: {{ .Values.xtrabackup.internalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.externalPort2 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+ release: {{ .Release.Name }}
+{{ end }}
diff --git a/kubernetes/common/mysql/templates/statefulset.yaml b/kubernetes/common/mysql/templates/statefulset.yaml
index 7b55bf2be0..e3f3428fbd 100644
--- a/kubernetes/common/mysql/templates/statefulset.yaml
+++ b/kubernetes/common/mysql/templates/statefulset.yaml
@@ -45,10 +45,11 @@ spec:
# Generate mysql server-id from pod ordinal index.
[[ `hostname` =~ -([0-9]+)$ ]] || exit 1
ordinal=${BASH_REMATCH[1]}
+ siteId={{ .Values.geoSiteId }}
echo BASH_REMATCH=${BASH_REMATCH}
echo [mysqld] > /mnt/conf.d/server-id.cnf
# Add an offset to avoid reserved server-id=0 value.
- echo server-id=$((100 + $ordinal)) >> /mnt/conf.d/server-id.cnf
+ echo server-id=$(($siteId*100 + $ordinal)) >> /mnt/conf.d/server-id.cnf
# Copy appropriate conf.d files from config-map to emptyDir.
if [[ $ordinal -eq 0 ]]; then
cp /mnt/config-map/master.cnf /mnt/conf.d/
@@ -93,7 +94,7 @@ spec:
subPath: mysql
- name: conf
mountPath: /etc/mysql/conf.d
-
+
containers:
#sdnc-db-container
- name: {{ include "common.name" . }}
@@ -236,3 +237,4 @@ spec:
#{{ else }}
emptyDir: {}
#{{ end }}
+
diff --git a/kubernetes/common/mysql/values.yaml b/kubernetes/common/mysql/values.yaml
index c0beb6fd22..43b690aa94 100644
--- a/kubernetes/common/mysql/values.yaml
+++ b/kubernetes/common/mysql/values.yaml
@@ -109,3 +109,6 @@ nfsprovisionerImage: kubernetes_incubator/nfs-provisioner:v1.0.8
nfsprovisionerPrefix: mysql
sdnctlPrefix: mysql
+
+geoEnabled: false
+geoSiteId: 1
diff --git a/kubernetes/common/postgres/.helmignore b/kubernetes/common/postgres/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/common/postgres/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/common/postgres/Chart.yaml b/kubernetes/common/postgres/Chart.yaml
new file mode 100644
index 0000000000..1d00b8526b
--- /dev/null
+++ b/kubernetes/common/postgres/Chart.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: ONAP Postgres Server
+name: postgres
+version: 2.0.0
diff --git a/kubernetes/common/postgres/requirements.yaml b/kubernetes/common/postgres/requirements.yaml
new file mode 100644
index 0000000000..e597fca563
--- /dev/null
+++ b/kubernetes/common/postgres/requirements.yaml
@@ -0,0 +1,18 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ repository: '@local'
diff --git a/kubernetes/common/postgres/templates/pv.yaml b/kubernetes/common/postgres/templates/pv.yaml
new file mode 100644
index 0000000000..e08c934a6c
--- /dev/null
+++ b/kubernetes/common/postgres/templates/pv.yaml
@@ -0,0 +1,58 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data0
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}0
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-data1
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-data"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}1
+{{- end -}}
diff --git a/kubernetes/common/postgres/templates/secrets.yaml b/kubernetes/common/postgres/templates/secrets.yaml
new file mode 100644
index 0000000000..29de3af260
--- /dev/null
+++ b/kubernetes/common/postgres/templates/secrets.yaml
@@ -0,0 +1,31 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.fullname" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+type: Opaque
+data:
+ pg-primary-password: {{ .Values.config.pgPrimaryPassword | b64enc | quote }}
+ pg-user-password: {{ .Values.config.pgUserPassword | b64enc | quote }}
+ pg-root-password: {{ .Values.config.pgRootPassword | b64enc | quote }}
+
diff --git a/kubernetes/common/postgres/templates/service.yaml b/kubernetes/common/postgres/templates/service.yaml
new file mode 100644
index 0000000000..2a4e369ef4
--- /dev/null
+++ b/kubernetes/common/postgres/templates/service.yaml
@@ -0,0 +1,95 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name2 }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type2 }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort2 }}
+ targetPort: {{ .Values.service.internalPort2 }}
+ name: {{ .Values.service.name2 }}
+ {{- end}}
+ selector:
+ name: "{{.Values.container.name.primary}}"
+ release: {{ .Release.Name }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name3 }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+spec:
+ type: {{ .Values.service.type3 }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort3 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
+ name: {{ .Values.service.name3 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort3 }}
+ targetPort: {{ .Values.service.internalPort3 }}
+ name: {{ .Values.service.name3 }}
+ {{- end}}
+ selector:
+ name: "{{.Values.container.name.replica}}"
+ release: {{ .Release.Name }}
diff --git a/kubernetes/common/postgres/templates/statefulset.yaml b/kubernetes/common/postgres/templates/statefulset.yaml
new file mode 100644
index 0000000000..e42e9eb924
--- /dev/null
+++ b/kubernetes/common/postgres/templates/statefulset.yaml
@@ -0,0 +1,147 @@
+{{/*
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+# #
+# # Licensed under the Apache License, Version 2.0 (the "License");
+# # you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+*/}}
+apiVersion: apps/v1beta1
+kind: StatefulSet
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ serviceName: {{ .Values.service.name }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /bin/sh
+ - -c
+ - |
+ for i in $(seq 0 $(({{ .Values.replicaCount }}-1))); do mkdir -p /podroot/data$i; done
+ chmod 777 /podroot/*
+ env:
+ - name: POD_NAME
+ valueFrom: { fieldRef: { fieldPath: metadata.name } }
+ securityContext:
+ privileged: true
+ image: {{ .Values.global.busyboxRepository | default .Values.busyboxRepository }}/{{ .Values.busyboxImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: init-sysctl
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-init
+ mountPath: /podroot/
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ .Values.postgresRepository }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ name: postgres
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
+ {{end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: PGHOST
+ value: /tmp
+ - name: PG_PRIMARY_USER
+ value: primaryuser
+ - name: PG_MODE
+ value: set
+ - name: PG_PRIMARY_HOST
+ value: "{{.Values.container.name.primary}}"
+ - name: PG_REPLICA_HOST
+ value: "{{.Values.container.name.replica}}"
+ - name: PG_PRIMARY_PORT
+ value: "{{.Values.service.internalPort}}"
+ - name: PG_PRIMARY_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-primary-password
+ - name: PG_USER
+ value: "{{.Values.config.pgUserName}}"
+ - name: PG_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-user-password
+ - name: PG_DATABASE
+ value: "{{.Values.config.pgDatabase}}"
+ - name: PG_ROOT_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: {{ template "common.fullname" . }}
+ key: pg-root-password
+ volumeMounts:
+ - mountPath: /pgdata
+ name: {{ include "common.fullname" . }}-data
+ - mountPath: /backup
+ name: {{ include "common.fullname" . }}-backup
+ readOnly: true
+ resources:
+{{ toYaml .Values.resources | indent 12 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 10 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 10 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-init
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountInitPath }}
+ - name: {{ include "common.fullname" . }}-backup
+ emptyDir: {}
+#{{ if not .Values.persistence.enabled }}
+ - name: {{ include "common.fullname" . }}-data
+ emptyDir: {}
+#{{ else }}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-data
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-data
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+#{{ end }}
diff --git a/kubernetes/common/postgres/values.yaml b/kubernetes/common/postgres/values.yaml
new file mode 100644
index 0000000000..781345a0e4
--- /dev/null
+++ b/kubernetes/common/postgres/values.yaml
@@ -0,0 +1,127 @@
+# Copyright © 2018 Amdocs, AT&T, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ persistence: {}
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.0.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+
+# BusyBox image
+busyboxRepository: registry.hub.docker.com
+busyboxImage: library/busybox:latest
+
+postgresRepository: crunchydata
+image: crunchy-postgres:centos7-10.3-1.8.2
+pullPolicy: Always
+
+# application configuration
+config:
+ pgUserName: testuser
+ pgDatabase: userdb
+ pgPrimaryPassword: password
+ pgUserPassword: password
+ pgRootPassword: password
+
+container:
+ name:
+ primary: pgset-primary
+ replica: pgset-replica
+
+# default number of instances
+replicaCount: 2
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ timeoutSeconds: 5
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 5
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ accessMode: ReadWriteOnce
+ size: 1Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: postgres/data
+ mountInitPath: postgres
+
+service:
+ type: ClusterIP
+ name: pgset
+ externalPort: 5432
+ internalPort: 5432
+ type2: ClusterIP
+ name2: pgset-primary
+ externalPort2: 5432
+ internalPort2: 5432
+ type3: ClusterIP
+ name3: pgset-replica
+ externalPort3: 5432
+ internalPort3: 5432
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
+
diff --git a/kubernetes/config/docker/init/src/config/message-router/dmaap/MsgRtrApi.properties b/kubernetes/config/docker/init/src/config/message-router/dmaap/MsgRtrApi.properties
deleted file mode 100755
index db8d911248..0000000000
--- a/kubernetes/config/docker/init/src/config/message-router/dmaap/MsgRtrApi.properties
+++ /dev/null
@@ -1,140 +0,0 @@
-###############################################################################
-##
-## Cambria API Server config
-##
-## - Default values are shown as commented settings.
-##
-
-###############################################################################
-##
-## HTTP service
-##
-## - 3904 is standard as of 7/29/14.
-#
-## Zookeeper Connection
-##
-## Both Cambria and Kafka make use of Zookeeper.
-##
-config.zk.servers=zookeeper.namespace-placeholder:2181
-#config.zk.servers=172.17.0.1:2181
-#dmaap.namespace-placeholder:2181
-#10.208.128.229:2181
-#config.zk.root=/fe3c/cambria/config
-
-
-###############################################################################
-##
-## Kafka Connection
-##
-## Items below are passed through to Kafka's producer and consumer
-## configurations (after removing "kafka.")
-## if you want to change request.required.acks it can take this one value
-#kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list=global-kafka.namespace-placeholder:9092
-#kafka.metadata.broker.list=172.17.0.1:9092
-#dmaap.namespace-placeholder:9092
-#10.208.128.229:9092
-##kafka.request.required.acks=-1
-#kafka.client.zookeeper=${config.zk.servers}
-consumer.timeout.ms=100
-zookeeper.connection.timeout.ms=6000
-zookeeper.session.timeout.ms=6000
-zookeeper.sync.time.ms=2000
-auto.commit.interval.ms=1000
-fetch.message.max.bytes =1000000
-auto.commit.enable=false
-
-
-###############################################################################
-##
-## Secured Config
-##
-## Some data stored in the config system is sensitive -- API keys and secrets,
-## for example. to protect it, we use an encryption layer for this section
-## of the config.
-##
-## The key is a base64 encode AES key. This must be created/configured for
-## each installation.
-#cambria.secureConfig.key=
-##
-## The initialization vector is a 16 byte value specific to the secured store.
-## This must be created/configured for each installation.
-#cambria.secureConfig.iv=
-
-## Southfield Sandbox
-cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q==
-cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw==
-authentication.adminSecret=fe3cCompound
-#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw==
-#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q==
-
-
-###############################################################################
-##
-## Consumer Caching
-##
-## Kafka expects live connections from the consumer to the broker, which
-## obviously doesn't work over connectionless HTTP requests. The Cambria
-## server proxies HTTP requests into Kafka consumer sessions that are kept
-## around for later re-use. Not doing so is costly for setup per request,
-## which would substantially impact a high volume consumer's performance.
-##
-## This complicates Cambria server failover, because we often need server
-## A to close its connection before server B brings up the replacement.
-##
-
-## The consumer cache is normally enabled.
-#cambria.consumer.cache.enabled=true
-
-## Cached consumers are cleaned up after a period of disuse. The server inspects
-## consumers every sweepFreqSeconds and will clean up any connections that are
-## dormant for touchFreqMs.
-#cambria.consumer.cache.sweepFreqSeconds=15
-#cambria.consumer.cache.touchFreqMs=120000
-
-## The cache is managed through ZK. The default value for the ZK connection
-## string is the same as config.zk.servers.
-#cambria.consumer.cache.zkConnect=${config.zk.servers}
-
-##
-## Shared cache information is associated with this node's name. The default
-## name is the hostname plus the HTTP service port this host runs on. (The
-## hostname is determined via InetAddress.getLocalHost ().getCanonicalHostName(),
-## which is not always adequate.) You can set this value explicitly here.
-##
-#cambria.api.node.identifier=<use-something-unique-to-this-instance>
-
-###############################################################################
-##
-## Metrics Reporting
-##
-## This server can report its metrics periodically on a topic.
-##
-#metrics.send.cambria.enabled=true
-#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap
-#metrics.send.cambria.sendEverySeconds=60
-
-cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache
-
-##############################################################################
-#100mb
-maxcontentlength=10000
-
-
-##############################################################################
-#AAF Properties
-msgRtr.namespace.aaf=org.openecomp.dcae.dmaap.mtnje2.mr.topic
-msgRtr.topicfactory.aaf=org.openecomp.dcae.dmaap.topicFactory|:org.openecomp.dcae.dmaap.mtnje2.mr.topic:
-enforced.topic.name.AAF=org.openecomp
-forceAAF=false
-transidUEBtopicreqd=false
-defaultNSforUEB=org.openecomp.dmaap.mr.ueb
-##############################################################################
-#Mirror Maker Agent
-msgRtr.mirrormakeradmin.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|admin
-msgRtr.mirrormakeruser.aaf=org.openecomp.dmaap.mr.dev.mirrormaker|*|user
-msgRtr.mirrormakeruser.aaf.create=org.openecomp.dmaap.mr.dev.topicFactory|:org.openecomp.dmaap.mr.dev.topic:
-msgRtr.mirrormaker.timeout=15000
-msgRtr.mirrormaker.topic=org.openecomp.dmaap.mr.prod.mm.agent
-msgRtr.mirrormaker.consumergroup=mmagentserver
-msgRtr.mirrormaker.consumerid=1
diff --git a/kubernetes/config/docker/init/src/config/message-router/dmaap/cadi.properties b/kubernetes/config/docker/init/src/config/message-router/dmaap/cadi.properties
deleted file mode 100755
index 1cb00a5cda..0000000000
--- a/kubernetes/config/docker/init/src/config/message-router/dmaap/cadi.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-basic_realm=openecomp.org
-basic_warn=TRUE
-
-cadi_loglevel=DEBUG
-#cadi_keyfile=target/swm/package/nix/dist_files/appl/${artifactId}/etc/keyfile2
-cadi_keyfile=/appl/dmaapMR1/etc/keyfile
-# Configure AAF
-aaf_url=https://DME2RESOLVE/service=org.openecomp.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=BAU_SE
-
-aaf_id=dgl@openecomp.org
-aaf_password=enc:f2u5br1mh29M02-
-aaf_timeout=5000
-aaf_clean_interval=1200000
-aaf_user_expires=60000
-aaf_high_count=1000000
-
-
-# The following properties are being set by the AJSC Container and should NOT need to be set here.
-AFT_LATITUDE=33.823589
-AFT_LONGITUDE=-84.366982
-AFT_ENVIRONMENT=AFTUAT
diff --git a/kubernetes/config/docker/init/src/config/message-router/dmaap/mykey b/kubernetes/config/docker/init/src/config/message-router/dmaap/mykey
deleted file mode 100755
index c2b8b8779b..0000000000
--- a/kubernetes/config/docker/init/src/config/message-router/dmaap/mykey
+++ /dev/null
@@ -1,27 +0,0 @@
-_sNOLphPzrU7L0L3oWv0pYwgV_ddGF1XoBsQEIAp34jfP-fGJFPfFYaMpDEZ3gwH59rNw6qyMZHk
-k-4irklvVcWk36lC3twNvc0DueRCVrws1bkuhOLCXdxHJx-YG-1xM8EJfRmzh79WPlPkbAdyPmFF
-Ah44V0GjAnInPOFZA6MHP9rNx9B9qECHRfmvzU13vJCcgTsrmOr-CEiWfRsnzPjsICxpq9OaVT_D
-zn6rNaroGm1OiZNCrCgvRkCUHPOOCw3j9G1GeaImoZNYtozbz9u4sj13PU-MxIIAa64b1bMMMjpz
-Upc8lVPI4FnJKg6axMmEGn5zJ6JUq9mtOVyPj__2GEuDgpx5H4AwodXXVjFsVgR8UJwI_BvS2JVp
-JoQk0J1RqXmAXVamlsMAfzmmbARXgmrBfnuhveZnh9ymFVU-YZeujdANniXAwBGI7c6hG_BXkH7i
-Eyf4Fn41_SV78PskP6qgqJahr9r3bqdjNbKBztIKCOEVrE_w3IM5r02l-iStk_NBRkj6cq_7VCpG
-afxZ2CtZMwuZMiypO_wOgbdpCSKNzsL-NH2b4b08OlKiWb263gz634KJmV5WEfCl-6eH-JUFbWOS
-JwQfActLNT2ZQPl2MyZQNBzJEWoJRgS6k7tPRO-zqeUtYYHGHVMCxMuMHGQcoilNNHEFeBCG_fBh
-yAKb9g9F86Cbx9voMLiyTX2T3rwVHiSJFOzfNxGmfN5JWOthIun_c5hEY1tLQ15BomzkDwk7BAj7
-VbRCrVD45B6xrmSTMBSWYmLyr6mnQxQqeh9cMbD-0ZAncE3roxRnRvPKjFFa208ykYUp2V83r_PJ
-fV5I9ZPKSjk9DwFyrjkcQQEYDhdK6IFqcd6nEthjYVkmunu2fsX0bIOm9GGdIbKGqBnpdgBO5hyT
-rBr9HSlZrHcGdti1R823ckDF0Ekcl6kioDr5NLIpLtg9zUEDRm3QrbX2mv5Zs8W0pYnOqglxy3lz
-bJZTN7oR7VasHUtjmp0RT9nLZkUs5TZ6MHhlIq3ZsQ6w_Q9Rv1-ofxfwfCC4EBrWKbWAGCf6By4K
-Ew8321-2YnodhmsK5BrT4zQ1DZlmUvK8BmYjZe7wTljKjgYcsLTBfX4eMhJ7MIW1kpnl8AbiBfXh
-QzN56Mki51Q8PSQWHm0W9tnQ0z6wKdck6zBJ8JyNzewZahFKueDTn-9DOqIDfr3YHvQLLzeXyJ8e
-h4AgjW-hvlLzRGtkCknjLIgXVa3rMTycseAwbW-mgdCqqkw3SdEG8feAcyntmvE8j2jbtSDStQMB
-9JdvyNLuQdNG4pxpusgvVso0-8NQF0YVa9VFwg9U6IPSx5p8FcW68OAHt_fEgT4ZtiH7o9aur4o9
-oYqUh2lALCY-__9QLq1KkNjMKs33Jz9E8LbRerG9PLclkTrxCjYAeUWBjCwSI7OB7xkuaYDSjkjj
-a46NLpdBN1GNcsFFcZ79GFAK0_DsyxGLX8Tq6q0Bvhs8whD8wlSxpTGxYkyqNX-vcb7SDN_0WkCE
-XSdZWkqTHXcYbOvoCOb_e6SFAztuMenuHWY0utX0gBfx_X5lPDFyoYXErxFQHiA7t27keshXNa6R
-ukQRRS8kMjre1U74sc-fRNXkXpl57rG4rgxaEX0eBeowa53KAsVvUAoSac2aC_nfzXrDvoyf9Xi3
-JpEZNhUDLpFCEycV4I7jGQ9wo9qNaosvlsr6kbLDNdb_1xrGVgjT3xEvRNJNPqslSAu-yD-UFhC3
-AmCdYUnugw_eEFqXCHTARcRkdPPvl2XsmEKY2IqEeO5tz4DyXQFaL-5hEVh6lYEU1EOWHk3UGIXe
-Vc5_Ttp82qNLmlJPbZvgmNTJzYTHDQ_27KBcp7IVVZgPDjVKdWqQvZ18KhxvfF3Idgy82LBZniFV
-IbtxllXiPRxoPQriSXMnXjh3XkvSDI2pFxXfEvLRn1tvcFOwPNCz3QfPIzYg8uYXN5bRt3ZOrR_g
-ZhIlrc7HO0VbNbeqEVPKMZ-cjkqGj4VAuDKoQc0eQ6X_wCoAGO78nPpLeIvZPx1X3z5YoqNA \ No newline at end of file
diff --git a/kubernetes/consul/resources/config/consul-agent-config/vfc-health.json b/kubernetes/consul/resources/config/consul-agent-config/vfc-health.json
index 5ace3e4d9b..25e670c7da 100644
--- a/kubernetes/consul/resources/config/consul-agent-config/vfc-health.json
+++ b/kubernetes/consul/resources/config/consul-agent-config/vfc-health.json
@@ -45,6 +45,13 @@
"timeout": "1s"
},
{
+ "id": "vfc-nokiav2vnfmdriver.{{ .Values.nsPrefix }}",
+ "name": "VFC nokiav2vnfmdriver Health Check",
+ "tcp": "vfc-nokiav2vnfmdriver.{{ .Values.nsPrefix }}:8089",
+ "interval": "15s",
+ "timeout": "1s"
+ },
+ {
"id": "vfc-nslcm.{{ .Values.nsPrefix }}",
"name": "VFC nslcm Health Check",
"tcp": "vfc-nslcm.{{ .Values.nsPrefix }}:8403",
diff --git a/kubernetes/helm/starters/onap-app/templates/deployment.yaml b/kubernetes/helm/starters/onap-app/templates/deployment.yaml
index 8b2bb4e516..71aae08f31 100644
--- a/kubernetes/helm/starters/onap-app/templates/deployment.yaml
+++ b/kubernetes/helm/starters/onap-app/templates/deployment.yaml
@@ -48,7 +48,7 @@ spec:
# name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
- image: "{{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}"
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
diff --git a/kubernetes/helm/starters/onap-app/values.yaml b/kubernetes/helm/starters/onap-app/values.yaml
index 60b4682c5e..2e0d7b7762 100644
--- a/kubernetes/helm/starters/onap-app/values.yaml
+++ b/kubernetes/helm/starters/onap-app/values.yaml
@@ -17,6 +17,7 @@
#################################################################
global:
nodePortPrefix: 302
+ repository: nexus3.onap.org:10001
repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
readinessRepository: oomk8s
readinessImage: readiness-check:1.0.0
diff --git a/kubernetes/message-router/.helmignore b/kubernetes/message-router/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/message-router/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/message-router/Chart.yaml b/kubernetes/message-router/Chart.yaml
index 109cce20fe..b3a7491d78 100644
--- a/kubernetes/message-router/Chart.yaml
+++ b/kubernetes/message-router/Chart.yaml
@@ -13,6 +13,7 @@
# limitations under the License.
apiVersion: v1
-description: A Helm chart for Kubernetes
+appVersion: "1.0"
+description: ONAP Message Router
name: message-router
-version: 0.1.0
+version: 2.0.0
diff --git a/kubernetes/message-router/charts/kafka/.helmignore b/kubernetes/message-router/charts/kafka/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/message-router/charts/kafka/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/message-router/charts/kafka/Chart.yaml b/kubernetes/message-router/charts/kafka/Chart.yaml
new file mode 100644
index 0000000000..b26f91a04e
--- /dev/null
+++ b/kubernetes/message-router/charts/kafka/Chart.yaml
@@ -0,0 +1,19 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: ONAP Global Kafka Service
+name: kafka
+version: 2.0.0
+
diff --git a/kubernetes/message-router/charts/kafka/templates/NOTES.txt b/kubernetes/message-router/charts/kafka/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/message-router/charts/kafka/templates/NOTES.txt
@@ -0,0 +1,19 @@
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/message-router/templates/message-router-kafka.yaml b/kubernetes/message-router/charts/kafka/templates/deployment.yaml
index 844de040d4..cc3ae59e40 100644
--- a/kubernetes/message-router/templates/message-router-kafka.yaml
+++ b/kubernetes/message-router/charts/kafka/templates/deployment.yaml
@@ -12,22 +12,23 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
- name: message-router-global-kafka
- namespace: "{{ .Values.nsPrefix }}"
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
spec:
- replicas: {{ .Values.kafkaReplicas }}
- selector:
- matchLabels:
- app: global-kafka
+ replicas: {{ .Values.replicaCount }}
template:
metadata:
labels:
- app: global-kafka
- name: message-router-global-kafka
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
spec:
initContainers:
- command:
@@ -35,8 +36,8 @@ spec:
args:
- -c
- "if [ -d /var/tmp/SDC-DISTR-NOTIF-TOPIC-SDC-OPENSOURCE-ENV1-0 ]; then echo nothing to do; else cp -a /opt/config/src/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/* /var/tmp/; fi"
- image: {{ .Values.image.config }}
- imagePullPolicy: {{ .Values.pullPolicy }}
+ image: "{{ .Values.global.configRepository }}/{{ .Values.global.configImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
- mountPath: /var/tmp
name: kafka-data
@@ -45,38 +46,47 @@ spec:
- /root/ready.py
args:
- --container-name
- - zookeeper
+ - {{ .Values.zookeeper.nameOverride }}
env:
- name: NAMESPACE
valueFrom:
fieldRef:
apiVersion: v1
fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: kafka-readiness
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
containers:
- - image: {{ .Values.image.kafka }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: global-kafka
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- - containerPort: 9092
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
readinessProbe:
tcpSocket:
- port: 9092
- initialDelaySeconds: 5
- periodSeconds: 10
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: KAFKA_ZOOKEEPER_CONNECT
- value: "zookeeper.{{ .Values.nsPrefix }}:2181"
+ value: "{{.Values.zookeeper.nameOverride}}:{{.Values.config.zookeeperPort}}"
- name: KAFKA_ADVERTISED_HOST_NAME
- value: "global-kafka"
+ value: "{{ include "common.fullname" . }}"
- name: KAFKA_BROKER_ID
value: "1"
- name: KAFKA_ADVERTISED_PORT
- value: "9092"
+ value: "{{.Values.service.internalPort}}"
- name: KAFKA_PORT
- value: "9092"
+ value: "{{.Values.service.internalPort}}"
volumeMounts:
- mountPath: /etc/localtime
name: localtime
@@ -85,7 +95,6 @@ spec:
name: docker-socket
- mountPath: /kafka
name: kafka-data
- restartPolicy: Always
volumes:
- name: localtime
hostPath:
@@ -95,8 +104,6 @@ spec:
path: /var/run/docker.sock
- name: kafka-data
persistentVolumeClaim:
- claimName: message-router-kafka
+ claimName: {{ include "common.fullname" . }}
imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
-
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/message-router/charts/kafka/templates/pv.yaml b/kubernetes/message-router/charts/kafka/templates/pv.yaml
new file mode 100644
index 0000000000..8be3d4c9cb
--- /dev/null
+++ b/kubernetes/message-router/charts/kafka/templates/pv.yaml
@@ -0,0 +1,37 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
diff --git a/kubernetes/message-router/charts/kafka/templates/pvc.yaml b/kubernetes/message-router/charts/kafka/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/message-router/charts/kafka/templates/pvc.yaml
@@ -0,0 +1,48 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
diff --git a/kubernetes/message-router/charts/kafka/templates/service.yaml b/kubernetes/message-router/charts/kafka/templates/service.yaml
new file mode 100644
index 0000000000..c57d190bb9
--- /dev/null
+++ b/kubernetes/message-router/charts/kafka/templates/service.yaml
@@ -0,0 +1,32 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/message-router/charts/kafka/values.yaml b/kubernetes/message-router/charts/kafka/values.yaml
new file mode 100644
index 0000000000..ff05104599
--- /dev/null
+++ b/kubernetes/message-router/charts/kafka/values.yaml
@@ -0,0 +1,115 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.1.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ configRepository: oomk8s
+ configImage: config-init:2.0.0-SNAPSHOT
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: wurstmeister
+image: kafka:latest
+pullPolicy: Always
+
+zookeeper:
+ nameOverride: zookeeper
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ zookeeperPort: 2181
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: message-router/data-kafka
+
+service:
+ type: NodePort
+ name: global-kafka
+ internalPort: 9092
+ externalPort: 9092
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/message-router/charts/zookeeper/.helmignore b/kubernetes/message-router/charts/zookeeper/.helmignore
new file mode 100644
index 0000000000..f0c1319444
--- /dev/null
+++ b/kubernetes/message-router/charts/zookeeper/.helmignore
@@ -0,0 +1,21 @@
+# Patterns to ignore when building packages.
+# This supports shell glob matching, relative path matching, and
+# negation (prefixed with !). Only one pattern per line.
+.DS_Store
+# Common VCS dirs
+.git/
+.gitignore
+.bzr/
+.bzrignore
+.hg/
+.hgignore
+.svn/
+# Common backup files
+*.swp
+*.bak
+*.tmp
+*~
+# Various IDEs
+.project
+.idea/
+*.tmproj
diff --git a/kubernetes/message-router/charts/zookeeper/Chart.yaml b/kubernetes/message-router/charts/zookeeper/Chart.yaml
new file mode 100644
index 0000000000..dd999e5314
--- /dev/null
+++ b/kubernetes/message-router/charts/zookeeper/Chart.yaml
@@ -0,0 +1,19 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+description: ONAP Dmaap Zookeeper Service
+name: zookeeper
+version: 2.0.0
+
diff --git a/kubernetes/message-router/charts/zookeeper/templates/NOTES.txt b/kubernetes/message-router/charts/zookeeper/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/message-router/charts/zookeeper/templates/NOTES.txt
@@ -0,0 +1,19 @@
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/message-router/charts/zookeeper/templates/deployment.yaml b/kubernetes/message-router/charts/zookeeper/templates/deployment.yaml
new file mode 100644
index 0000000000..678b83e3bd
--- /dev/null
+++ b/kubernetes/message-router/charts/zookeeper/templates/deployment.yaml
@@ -0,0 +1,79 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - bash
+ args:
+ - -c
+ - "if [ -d /var/tmp/version-2 ]; then echo nothing to do; else cp -a /opt/config/src/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/* /var/tmp/; fi"
+ image: "{{ .Values.global.configRepository }}/{{ .Values.global.configImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: /var/tmp
+ name: zookeeper-data
+ name: zookeeper-primer
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ # disable liveness probe when breakpoints set in debugger
+ # so K8s doesn't restart unresponsive container
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/zookeeper-3.4.9/data
+ name: zookeeper-data
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: zookeeper-data
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/message-router/charts/zookeeper/templates/pv.yaml b/kubernetes/message-router/charts/zookeeper/templates/pv.yaml
new file mode 100644
index 0000000000..8be3d4c9cb
--- /dev/null
+++ b/kubernetes/message-router/charts/zookeeper/templates/pv.yaml
@@ -0,0 +1,37 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Namespace }}/{{ .Values.persistence.mountSubPath }}
+{{- end -}}
diff --git a/kubernetes/message-router/charts/zookeeper/templates/pvc.yaml b/kubernetes/message-router/charts/zookeeper/templates/pvc.yaml
new file mode 100644
index 0000000000..e27c3311e9
--- /dev/null
+++ b/kubernetes/message-router/charts/zookeeper/templates/pvc.yaml
@@ -0,0 +1,48 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+{{- if .Values.persistence.annotations }}
+ annotations:
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
diff --git a/kubernetes/message-router/charts/zookeeper/templates/service.yaml b/kubernetes/message-router/charts/zookeeper/templates/service.yaml
new file mode 100644
index 0000000000..2386125587
--- /dev/null
+++ b/kubernetes/message-router/charts/zookeeper/templates/service.yaml
@@ -0,0 +1,32 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ ports:
+ - port: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ clusterIP: None
diff --git a/kubernetes/message-router/charts/zookeeper/values.yaml b/kubernetes/message-router/charts/zookeeper/values.yaml
new file mode 100644
index 0000000000..66dc67e831
--- /dev/null
+++ b/kubernetes/message-router/charts/zookeeper/values.yaml
@@ -0,0 +1,110 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.1.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ configRepository: oomk8s
+ configImage: config-init:2.0.0-SNAPSHOT
+ persistence: {}
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: wurstmeister
+image: zookeeper:latest
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config: {}
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: true
+
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+ mountPath: /dockerdata-nfs
+ mountSubPath: message-router/data-zookeeper/
+
+service:
+ type: NodePort
+ name: zookeeper
+ internalPort: 2181
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/message-router/requirements.yaml b/kubernetes/message-router/requirements.yaml
new file mode 100644
index 0000000000..7beecb385c
--- /dev/null
+++ b/kubernetes/message-router/requirements.yaml
@@ -0,0 +1,22 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+dependencies:
+ - name: common
+ version: ~2.0.0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
+
diff --git a/kubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties b/kubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties
index 568d0d4ce0..ed3999d36e 100755
--- a/kubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties
+++ b/kubernetes/message-router/resources/config/dmaap/MsgRtrApi.properties
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
###############################################################################
##
## Cambria API Server config
@@ -5,7 +19,7 @@
## - Default values are shown as commented settings.
##
-###############################################################################
+##############################################################################
##
## HTTP service
##
@@ -15,10 +29,9 @@
##
## Both Cambria and Kafka make use of Zookeeper.
##
-# config.zk.servers=zookeeper.namespace-placeholder:2181
-config.zk.servers=zookeeper:2181
+config.zk.servers={{.Values.zookeeper.nameOverride}}:{{.Values.config.zookeeperPort}}
#config.zk.servers=172.17.0.1:2181
-#dmaap.namespace-placeholder:2181
+#dmaap.onap-message-router:2181
#10.208.128.229:2181
#config.zk.root=/fe3c/cambria/config
@@ -31,9 +44,9 @@ config.zk.servers=zookeeper:2181
## configurations (after removing "kafka.")
## if you want to change request.required.acks it can take this one value
#kafka.metadata.broker.list=localhost:9092,localhost:9093
-kafka.metadata.broker.list=global-kafka:9092
+kafka.metadata.broker.list={{.Values.kafka.nameOverride}}:{{.Values.config.kafkaPort}}
#kafka.metadata.broker.list=172.17.0.1:9092
-#dmaap.namespace-placeholder:9092
+#dmaap.onap-message-router:9092
#10.208.128.229:9092
##kafka.request.required.acks=-1
#kafka.client.zookeeper=${config.zk.servers}
diff --git a/kubernetes/message-router/resources/config/dmaap/cadi.properties b/kubernetes/message-router/resources/config/dmaap/cadi.properties
index 1cb00a5cda..9079794517 100755
--- a/kubernetes/message-router/resources/config/dmaap/cadi.properties
+++ b/kubernetes/message-router/resources/config/dmaap/cadi.properties
@@ -1,3 +1,17 @@
+# Copyright © 2017 Amdocs, Bell Canada, AT&T
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
basic_realm=openecomp.org
basic_warn=TRUE
diff --git a/kubernetes/message-router/templates/NOTES.txt b/kubernetes/message-router/templates/NOTES.txt
new file mode 100644
index 0000000000..c60c745ca3
--- /dev/null
+++ b/kubernetes/message-router/templates/NOTES.txt
@@ -0,0 +1,19 @@
+1. Get the application URL by running these commands:
+{{- if .Values.ingress.enabled }}
+{{- range .Values.ingress.hosts }}
+ http://{{ . }}
+{{- end }}
+{{- else if contains "NodePort" .Values.service.type }}
+ export NODE_PORT=$(kubectl get --namespace {{ include "common.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.name" . }})
+ export NODE_IP=$(kubectl get nodes --namespace {{ include "common.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}")
+ echo http://$NODE_IP:$NODE_PORT
+{{- else if contains "LoadBalancer" .Values.service.type }}
+ NOTE: It may take a few minutes for the LoadBalancer IP to be available.
+ You can watch the status of by running 'kubectl get svc -w {{ include "common.name" . }}'
+ export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.namespace" . }} {{ include "common.name" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
+ echo http://$SERVICE_IP:{{ .Values.service.externalPort }}
+{{- else if contains "ClusterIP" .Values.service.type }}
+ export POD_NAME=$(kubectl get pods --namespace {{ include "common.namespace" . }} -l "app={{ include "common.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
+ echo "Visit http://127.0.0.1:8080 to use your application"
+ kubectl port-forward $POD_NAME 8080:{{ .Values.service.internalPort }}
+{{- end }}
diff --git a/kubernetes/message-router/templates/all-services.yaml b/kubernetes/message-router/templates/all-services.yaml
deleted file mode 100644
index da6fee117d..0000000000
--- a/kubernetes/message-router/templates/all-services.yaml
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMessageRouterZookeeper }}
-apiVersion: v1
-kind: Service
-metadata:
- name: zookeeper
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: zookeeper
-spec:
- ports:
- - name: zookeeper1
- port: 2181
- selector:
- app: zookeeper
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: global-kafka
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: global-kafka
-spec:
- ports:
- - name: kafka1
- port: 9092
- selector:
- app: global-kafka
- clusterIP: None
-#{{ end }}
-#{{ if not .Values.disableMessageRouterDmaap }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: dmaap
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- app: dmaap
- version: 1.0.0
- annotations:
- msb.onap.org/service-info: '[
- {
- "serviceName": "message-router",
- "version": "v1",
- "url": "/",
- "protocol": "REST",
- "port": "3904",
- "visualRange":"1"
- }
- ]'
-spec:
- ports:
- - name: mr1
- port: 3904
- nodePort: {{ .Values.nodePortPrefix }}27
- - name: mr2
- port: 3905
- nodePort: {{ .Values.nodePortPrefix }}26
- selector:
- app: dmaap
- type: NodePort
-#{{ end }} \ No newline at end of file
diff --git a/kubernetes/message-router/templates/configmap.yaml b/kubernetes/message-router/templates/configmap.yaml
new file mode 100644
index 0000000000..911d2e9c0e
--- /dev/null
+++ b/kubernetes/message-router/templates/configmap.yaml
@@ -0,0 +1,15 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-msgrtrapi-prop-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/dmaap/MsgRtrApi.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-cadi-prop-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/dmaap/cadi.properties").AsConfig . | indent 2 }}
diff --git a/kubernetes/message-router/templates/deployment.yaml b/kubernetes/message-router/templates/deployment.yaml
new file mode 100644
index 0000000000..ed3c4ebb7a
--- /dev/null
+++ b/kubernetes/message-router/templates/deployment.yaml
@@ -0,0 +1,95 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+spec:
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.kafka.nameOverride }}
+ - --container-name
+ - {{ .Values.zookeeper.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
+ containers:
+ - name: {{ include "common.name" . }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ ports:
+ - containerPort: {{ .Values.service.externalPort }}
+ - containerPort: {{ .Values.service.externalPort2 }}
+ {{- if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end -}}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.externalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
+ subPath: MsgRtrApi.properties
+ name: appprops
+ - mountPath: /appl/dmaapMR1/etc/cadi.properties
+ subPath: cadi.properties
+ name: cadi
+ - mountPath: /appl/dmaapMR1/etc/keyfile
+ subPath: mykey
+ name: mykey
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: appprops
+ configMap:
+ name: {{ include "common.fullname" . }}-msgrtrapi-prop-configmap
+ - name: cadi
+ configMap:
+ name: {{ include "common.fullname" . }}-cadi-prop-configmap
+ - name: mykey
+ secret:
+ secretName: {{ include "common.fullname" . }}-secret
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/message-router/templates/dmaap-configmap.yaml b/kubernetes/message-router/templates/dmaap-configmap.yaml
deleted file mode 100644
index bd1e629b21..0000000000
--- a/kubernetes/message-router/templates/dmaap-configmap.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-cadi-prop-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/cadi.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-msgrtrapi-prop-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/MsgRtrApi.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: mr-dmaap-mykey-configmap
- namespace: {{ .Values.nsPrefix }}
-data:
-{{ tpl (.Files.Glob "resources/config/dmaap/mykey").AsConfig . | indent 2 }}
diff --git a/kubernetes/message-router/templates/message-router-dmaap.yaml b/kubernetes/message-router/templates/message-router-dmaap.yaml
deleted file mode 100644
index a0c13802bb..0000000000
--- a/kubernetes/message-router/templates/message-router-dmaap.yaml
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMessageRouterDmaap }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: message-router-dmaap
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.dmaapReplicas }}
- selector:
- matchLabels:
- app: dmaap
- template:
- metadata:
- labels:
- app: dmaap
- name: message-router-dmaap
- spec:
- initContainers:
- - command:
- - /root/ready.py
- args:
- - --container-name
- - global-kafka
- - --container-name
- - zookeeper
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- image: {{ .Values.image.readiness }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: dmaap-readiness
- containers:
- - image: {{ .Values.image.dmaap }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: dmaap
- ports:
- - containerPort: 3904
- - containerPort: 3905
- readinessProbe:
- tcpSocket:
- port: 3904
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
- subPath: MsgRtrApi.properties
- name: appprops
- - mountPath: /appl/dmaapMR1/etc/cadi.properties
- subPath: cadi.properties
- name: cadi
- - mountPath: /appl/dmaapMR1/etc/keyfile
- subPath: mykey
- name: mykey
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: appprops
- configMap:
- name: mr-dmaap-msgrtrapi-prop-configmap
- - name: cadi
- configMap:
- name: mr-dmaap-cadi-prop-configmap
- - name: mykey
- configMap:
- name: mr-dmaap-mykey-configmap
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-{{ end }}
-
diff --git a/kubernetes/message-router/templates/message-router-pv-pvc.yaml b/kubernetes/message-router/templates/message-router-pv-pvc.yaml
deleted file mode 100644
index a39a975f33..0000000000
--- a/kubernetes/message-router/templates/message-router-pv-pvc.yaml
+++ /dev/null
@@ -1,81 +0,0 @@
-{{/*
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-*/}}
-
-#{{ if not .Values.disableMessageRouterGlobalKafka }}
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/message-router/dcae-startup-vm-message-router/docker_files/data-kafka/
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: message-router-kafka
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-message-router-kafka"
-#{{ end }}
-#{{ if not .Values.disableMessageRouterZookeeper }}
----
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
- namespace: "{{ .Values.nsPrefix }}"
- labels:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
-spec:
- capacity:
- storage: 2Gi
- accessModes:
- - ReadWriteMany
- persistentVolumeReclaimPolicy: Retain
- hostPath:
- path: {{ .Values.dataRootDir }}/{{ .Values.nsPrefix }}/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper
----
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: message-router-zookeeper
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- accessModes:
- - ReadWriteMany
- resources:
- requests:
- storage: 2Gi
- selector:
- matchLabels:
- name: "{{ .Values.nsPrefix }}-message-router-zookeeper"
-#{{ end }}
diff --git a/kubernetes/message-router/templates/message-router-zookeeper.yaml b/kubernetes/message-router/templates/message-router-zookeeper.yaml
deleted file mode 100644
index 1b3e8f8ed9..0000000000
--- a/kubernetes/message-router/templates/message-router-zookeeper.yaml
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if not .Values.disableMessageRouterZookeeper }}
-apiVersion: extensions/v1beta1
-kind: Deployment
-metadata:
- name: message-router-zookeeper
- namespace: "{{ .Values.nsPrefix }}"
-spec:
- replicas: {{ .Values.zookeeperReplicas }}
- selector:
- matchLabels:
- app: zookeeper
- template:
- metadata:
- labels:
- app: zookeeper
- name: message-router-zookeeper
- spec:
- initContainers:
- - command:
- - bash
- args:
- - -c
- - "if [ -d /var/tmp/version-2 ]; then echo nothing to do; else cp -a /opt/config/src/message-router/dcae-startup-vm-message-router/docker_files/data-zookeeper/* /var/tmp/; fi"
- image: {{ .Values.image.config }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /var/tmp
- name: zookeeper-data
- name: zookeeper-primer
- containers:
- - image: {{ .Values.image.zookeeper }}
- imagePullPolicy: {{ .Values.pullPolicy }}
- name: zookeeper
- ports:
- - containerPort: 2181
- readinessProbe:
- tcpSocket:
- port: 2181
- initialDelaySeconds: 5
- periodSeconds: 10
- volumeMounts:
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /opt/zookeeper-3.4.9/data
- name: zookeeper-data
- restartPolicy: Always
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: zookeeper-data
- persistentVolumeClaim:
- claimName: message-router-zookeeper
- imagePullSecrets:
- - name: "{{ .Values.nsPrefix }}-docker-registry-key"
-#{{ end }}
-
diff --git a/kubernetes/message-router/templates/secrets.yaml b/kubernetes/message-router/templates/secrets.yaml
new file mode 100644
index 0000000000..a7f6e18b39
--- /dev/null
+++ b/kubernetes/message-router/templates/secrets.yaml
@@ -0,0 +1,27 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Secret
+metadata:
+ name: {{ include "common.fullname" . }}-secret
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ (.Files.Glob "resources/config/dmaap/mykey").AsSecrets | indent 2 }}
+type: Opaque
diff --git a/kubernetes/message-router/templates/service.yaml b/kubernetes/message-router/templates/service.yaml
new file mode 100644
index 0000000000..7265ecb544
--- /dev/null
+++ b/kubernetes/message-router/templates/service.yaml
@@ -0,0 +1,54 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Values.service.name }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "{{ include "common.fullname" . }}",
+ "version": "v1",
+ "url": "/",
+ "protocol": "REST",
+ "port": "{{.Values.service.internalPort}}",
+ "visualRange":"1"
+ }
+ ]'
+
+spec:
+ type: {{ .Values.service.type }}
+ ports:
+ {{if eq .Values.service.type "NodePort" -}}
+ - port: {{ .Values.service.externalPort }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
+ name: {{ .Values.service.name }}-{{ .Values.service.externalPort }}
+ - port: {{ .Values.service.externalPort2 }}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
+ name: {{ .Values.service.name }}-{{ .Values.service.externalPort2 }}
+ {{- else -}}
+ - port: {{ .Values.service.externalPort }}
+ targetPort: {{ .Values.service.internalPort }}
+ name: {{ .Values.service.name }}
+ {{- end}}
+ selector:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
diff --git a/kubernetes/message-router/values.yaml b/kubernetes/message-router/values.yaml
index 68251471e6..df3cefae2a 100644
--- a/kubernetes/message-router/values.yaml
+++ b/kubernetes/message-router/values.yaml
@@ -12,17 +12,85 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-nsPrefix: onap
+#################################################################
+# Global configuration defaults.
+#################################################################
+global:
+ nodePortPrefix: 302
+ repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:1.1.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/dmaap/dmaap-mr:latest
pullPolicy: Always
-nodePortPrefix: 302
-dmaapReplicas: 1
-kafkaReplicas: 1
-zookeeperReplicas: 1
-dataRootDir: /dockerdata-nfs
-image:
- readiness: oomk8s/readiness-check:1.1.0
- dmaap: attos/dmaap:latest
- kafka: wurstmeister/kafka:latest
- zookeeper: wurstmeister/zookeeper:latest
- config: oomk8s/config-init:2.0.0-SNAPSHOT
+nameOverride: dmaap
+
+kafka:
+ nameOverride: global-kafka
+zookeeper:
+ nameOverride: zookeeper
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration
+config:
+ zookeeperPort: 2181
+ kafkaPort: 9092
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 10
+ periodSeconds: 10
+
+service:
+ type: NodePort
+ name: message-router
+ externalPort: 3904
+ nodePort: 27
+ externalPort2: 3905
+ nodePort2: 26
+
+ingress:
+ enabled: false
+
+resources: {}
+ # We usually recommend not to specify default resources and to leave this as a conscious
+ # choice for the user. This also increases chances charts run on environments with little
+ # resources, such as Minikube. If you do want to specify resources, uncomment the following
+ # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
+ #
+ # Example:
+ # Configure resource requests and limits
+ # ref: http://kubernetes.io/docs/user-guide/compute-resources/
+ # Minimum memory for development is 2 CPU cores and 4GB memory
+ # Minimum memory for production is 4 CPU cores and 8GB memory
+#resources:
+# limits:
+# cpu: 2
+# memory: 4Gi
+# requests:
+# cpu: 2
+# memory: 4Gi
diff --git a/kubernetes/msb/charts/kube2msb/values.yaml b/kubernetes/msb/charts/kube2msb/values.yaml
index 43810a9781..8c494c0ee8 100644
--- a/kubernetes/msb/charts/kube2msb/values.yaml
+++ b/kubernetes/msb/charts/kube2msb/values.yaml
@@ -19,7 +19,7 @@ pullPolicy: Always
config:
routeLabels: "visualRange:1"
kubeMasterUrl: https://kubernetes.default:443
- discoveryUrl: http://{{.Release.Name}}-msb-discovery.{{include "common.namespace" .}}:10081
+ discoveryUrl: http://msb-discovery.{{include "common.namespace" .}}:10081
# default number of instances
replicaCount: 1
diff --git a/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml b/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml
index f32a5d1544..0fb2cc6604 100644
--- a/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml
+++ b/kubernetes/msb/charts/msb-discovery/templates/deployment.yaml
@@ -53,7 +53,7 @@ spec:
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
volumeMounts:
- mountPath: /etc/localtime
name: localtime
diff --git a/kubernetes/msb/charts/msb-eag/templates/deployment.yaml b/kubernetes/msb/charts/msb-eag/templates/deployment.yaml
index d41518d662..2df82aca59 100644
--- a/kubernetes/msb/charts/msb-eag/templates/deployment.yaml
+++ b/kubernetes/msb/charts/msb-eag/templates/deployment.yaml
@@ -56,9 +56,9 @@ spec:
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
- name: SDCLIENT_IP
- value: {{.Release.Name}}-msb-discovery.{{ include "common.namespace" . }}
+ value: msb-discovery.{{ include "common.namespace" . }}
- name: ROUTE_LABELS
value: {{ .Values.config.routeLabels }}
volumeMounts:
diff --git a/kubernetes/msb/charts/msb-iag/templates/deployment.yaml b/kubernetes/msb/charts/msb-iag/templates/deployment.yaml
index d41518d662..2df82aca59 100644
--- a/kubernetes/msb/charts/msb-iag/templates/deployment.yaml
+++ b/kubernetes/msb/charts/msb-iag/templates/deployment.yaml
@@ -56,9 +56,9 @@ spec:
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: CONSUL_IP
- value: {{.Release.Name}}-msb-consul.{{ include "common.namespace" . }}
+ value: msb-consul.{{ include "common.namespace" . }}
- name: SDCLIENT_IP
- value: {{.Release.Name}}-msb-discovery.{{ include "common.namespace" . }}
+ value: msb-discovery.{{ include "common.namespace" . }}
- name: ROUTE_LABELS
value: {{ .Values.config.routeLabels }}
volumeMounts:
diff --git a/kubernetes/onap/requirements.yaml b/kubernetes/onap/requirements.yaml
index 0049265841..c36158829e 100644
--- a/kubernetes/onap/requirements.yaml
+++ b/kubernetes/onap/requirements.yaml
@@ -57,7 +57,7 @@ dependencies:
repository: '@local'
condition: log.enabled
- name: message-router
- version: ~0.1.0
+ version: ~2.0.0
repository: '@local'
condition: message-router.enabled
- name: mock
diff --git a/kubernetes/onap/resources/environments/dev.yaml b/kubernetes/onap/resources/environments/dev.yaml
index 308c7ca647..61a7546db0 100644
--- a/kubernetes/onap/resources/environments/dev.yaml
+++ b/kubernetes/onap/resources/environments/dev.yaml
@@ -23,12 +23,17 @@ global:
# with other instances running within the same k8s cluster
nodePortPrefix: 302
- # image repositories
- repository: nexus3.onap.org:10001
- repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
- # readiness check
+ # ONAP Repository
+ # Uncomment the following to enable the use of a single docker
+ # repository but ONLY if your repository mirrors all ONAP
+ # docker images. This includes all images from dockerhub and
+ # any other repository that hosts images for ONAP components.
+ #repository: nexus3.onap.org:10001
+ #repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
+
+ # readiness check - temporary repo until images migrated to nexus3
readinessRepository: oomk8s
- # logging agent
+ # logging agent - temporary repo until images migrated to nexus3
loggingRepository: docker.elastic.co
# image pull policy
@@ -56,7 +61,7 @@ clamp:
enabled: true
cli:
enabled: false
-consul: # Consul Health Check Monitoring
+consul:
enabled: false
dcaegen2:
enabled: false
@@ -76,18 +81,17 @@ policy:
enabled: false
portal:
enabled: false
-robot: # Robot Health Check
+robot:
enabled: true
sdc:
enabled: false
sdnc:
enabled: false
-
+
dmaap-listener:
config:
- dmaapPort: 3904
-
-so: # Service Orchestrator
+ dmaapPort: 3904
+so:
enabled: true
replicaCount: 1
diff --git a/kubernetes/onap/resources/environments/disable-allcharts.yaml b/kubernetes/onap/resources/environments/disable-allcharts.yaml
new file mode 100644
index 0000000000..7e27a316cb
--- /dev/null
+++ b/kubernetes/onap/resources/environments/disable-allcharts.yaml
@@ -0,0 +1,73 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+# This override file is useful to test one or more subcharts.
+# It overrides the default ONAP parent chart behaviour to deploy
+# all of ONAP.
+#
+# Example use to enable a single subchart (from this directory):
+#
+# helm install local/onap -n onap --namespace onap -f disable-allcharts.yaml --set so.enabled=true
+
+#################################################################
+# Enable/disable and configure helm charts (ie. applications)
+# to customize the ONAP deployment.
+#################################################################
+aaf:
+ enabled: false
+aai:
+ enabled: false
+appc:
+ enabled: false
+clamp:
+ enabled: false
+cli:
+ enabled: false
+consul:
+ enabled: false
+dcaegen2:
+ enabled: false
+esr:
+ enabled: false
+log:
+ enabled: false
+message-router:
+ enabled: false
+mock:
+ enabled: false
+msb:
+ enabled: false
+multicloud:
+ enabled: false
+policy:
+ enabled: false
+portal:
+ enabled: false
+robot:
+ enabled: false
+sdc:
+ enabled: false
+sdnc:
+ enabled: false
+so:
+ enabled: false
+uui:
+ enabled: false
+vfc:
+ enabled: false
+vid:
+ enabled: false
+vnfsdk:
+ enabled: false \ No newline at end of file
diff --git a/kubernetes/onap/values.yaml b/kubernetes/onap/values.yaml
index c4a73c8a96..f784eebe30 100644
--- a/kubernetes/onap/values.yaml
+++ b/kubernetes/onap/values.yaml
@@ -23,12 +23,17 @@ global:
# with other instances running within the same k8s cluster
nodePortPrefix: 302
- # image repositories
- repository: nexus3.onap.org:10001
+ # ONAP Repository
+ # Uncomment the following to enable the use of a single docker
+ # repository but ONLY if your repository mirrors all ONAP
+ # docker images. This includes all images from dockerhub and
+ # any other repository that hosts images for ONAP components.
+ #repository: nexus3.onap.org:10001
repositorySecret: eyJuZXh1czMub25hcC5vcmc6MTAwMDEiOnsidXNlcm5hbWUiOiJkb2NrZXIiLCJwYXNzd29yZCI6ImRvY2tlciIsImVtYWlsIjoiQCIsImF1dGgiOiJaRzlqYTJWeU9tUnZZMnRsY2c9PSJ9fQ==
- # readiness check
+
+ # readiness check - temporary repo until images migrated to nexus3
readinessRepository: oomk8s
- # logging agent
+ # logging agent - temporary repo until images migrated to nexus3
loggingRepository: docker.elastic.co
# image pull policy
@@ -57,13 +62,13 @@ clamp:
enabled: true
cli:
enabled: true
-consul: # Consul Health Check Monitoring
+consul:
enabled: true
dcaegen2:
enabled: true
esr:
enabled: true
-log: # ONAP Logging ElasticStack
+log:
enabled: true
message-router:
enabled: true
@@ -77,7 +82,7 @@ policy:
enabled: true
portal:
enabled: true
-robot: # Robot Health Check
+robot:
enabled: true
sdc:
enabled: true
@@ -86,9 +91,8 @@ sdnc:
dmaap-listener:
config:
- dmaapPort: 3904
-
-so: # Service Orchestrator
+ dmaapPort: 3904
+so:
enabled: true
replicaCount: 1
diff --git a/kubernetes/sdnc/templates/service.yaml b/kubernetes/sdnc/templates/service.yaml
index 7744499e97..487368e721 100644
--- a/kubernetes/sdnc/templates/service.yaml
+++ b/kubernetes/sdnc/templates/service.yaml
@@ -79,3 +79,75 @@ spec:
release: {{ .Release.Name }}
sessionAffinity: None
type: ClusterIP
+
+{{ if .Values.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.fullname" . }}-0
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+spec:
+ ports:
+ - name: {{ include "common.fullname" . }}-0-port-{{ .Values.service.internalPort4 }}
+ port: {{ .Values.service.clusterPort2 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.nodePortPrefix }}{{ .Values.service.geoNodePort4 }}
+ - name: {{ include "common.fullname" . }}-0-port-{{ .Values.service.internalPort }}
+ port: {{ .Values.service.clusterPort3 }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.nodePortPrefix }}{{ .Values.service.geoNodePort1 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-0
+{{ end }}
+{{ if .Values.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.fullname" . }}-1
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-1
+spec:
+ ports:
+ - name: {{ include "common.fullname" . }}-1-port-{{ .Values.service.internalPort4 }}
+ port: {{ .Values.service.clusterPort2 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.nodePortPrefix }}{{ .Values.service.geoNodePort5 }}
+ - name: {{ include "common.fullname" . }}-1-port-{{ .Values.service.internalPort }}
+ port: {{ .Values.service.clusterPort3 }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.nodePortPrefix }}{{ .Values.service.geoNodePort2 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-1
+{{ end }}
+{{ if .Values.geoEnabled }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: sdnhost-{{ include "common.fullname" . }}-2
+ namespace: {{ .Release.Namespace }}
+ labels:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-2
+spec:
+ ports:
+ - name: {{ include "common.fullname" . }}-2-port-{{ .Values.service.internalPort4 }}
+ port: {{ .Values.service.clusterPort2 }}
+ targetPort: {{ .Values.service.internalPort4 }}
+ nodePort: {{ .Values.nodePortPrefix }}{{ .Values.service.geoNodePort6 }}
+ - name: {{ include "common.fullname" . }}-2-port-{{ .Values.service.internalPort }}
+ port: {{ .Values.service.clusterPort3 }}
+ targetPort: {{ .Values.service.internalPort }}
+ nodePort: {{ .Values.nodePortPrefix }}{{ .Values.service.geoNodePort3 }}
+ type: NodePort
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ include "common.fullname" . }}-2
+---
+{{ end }}
+
diff --git a/kubernetes/sdnc/values.yaml b/kubernetes/sdnc/values.yaml
index 6606e1765d..38d6424755 100644
--- a/kubernetes/sdnc/values.yaml
+++ b/kubernetes/sdnc/values.yaml
@@ -37,6 +37,8 @@ image: onap/sdnc-image:1.3-STAGING-latest
# flag to enable debugging - application support required
debugEnabled: false
+geoEnabled: false
+
# application configuration
config:
dbRootPassword: openECOMP1.0
@@ -115,6 +117,8 @@ service:
internalPort: 8181
internalPort2: 8101
internalPort3: 8080
+ internalPort4: 2550
+
#port
externalPort: 8282
nodePort: "02"
@@ -126,6 +130,15 @@ service:
nodePort3: 46
clusterPort: 2550
+ clusterPort2: 2650
+ clusterPort3: 2681
+
+ geoNodePort1: 61
+ geoNodePort2: 62
+ geoNodePort3: 63
+ geoNodePort4: 64
+ geoNodePort5: 65
+ geoNodePort6: 66
ingress:
enabled: false
diff --git a/kubernetes/vfc/templates/all-services.yaml b/kubernetes/vfc/templates/all-services.yaml
index 819ecffeb8..1e8abe2ec3 100644
--- a/kubernetes/vfc/templates/all-services.yaml
+++ b/kubernetes/vfc/templates/all-services.yaml
@@ -156,6 +156,35 @@ spec:
app: vfc-nokiavnfmdriver
type: NodePort
#{{ end }}
+#{{ if not .Values.disableVfcVfcNokiav2vnfmdriver }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ labels:
+ app: vfc-nokiav2vnfmdriver
+ name: vfc-nokiav2vnfmdriver
+ namespace: "{{ .Values.nsPrefix }}"
+ annotations:
+ msb.onap.org/service-info: '[
+ {
+ "serviceName": "NokiaSVNFM",
+ "version": "v1",
+ "url": "/api/NokiaSVNFM/v1",
+ "protocol": "REST",
+ "port": "{{.Values.nokiav2vnfmdriver.port}}",
+ "visualRange":"1"
+ }
+ ]'
+spec:
+ ports:
+ - name: vfc-nokiav2vnfmdriver
+ port: {{.Values.nokiav2vnfmdriver.port}}
+ nodePort: {{.Values.nokiav2vnfmdriver.nodePort}}
+ selector:
+ app: vfc-nokiav2vnfmdriver
+ type: NodePort
+#{{ end }}
#{{ if not .Values.disableVfcVfcHwvnfmdriver }}
---
apiVersion: v1
@@ -445,4 +474,4 @@ spec:
selector:
app: vfc-catalog
type: NodePort
-#{{ end }} \ No newline at end of file
+#{{ end }}
diff --git a/kubernetes/vfc/templates/vfc-nokiav2vnfmdriver-deployment.yaml b/kubernetes/vfc/templates/vfc-nokiav2vnfmdriver-deployment.yaml
new file mode 100644
index 0000000000..7c021fddc2
--- /dev/null
+++ b/kubernetes/vfc/templates/vfc-nokiav2vnfmdriver-deployment.yaml
@@ -0,0 +1,50 @@
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#{{ if not .Values.disableVfcNokiav2VnfmDriver }}
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ name: vfc-nokiav2vnfmdriver
+ namespace: "{{ .Values.nsPrefix }}"
+spec:
+ replicas: {{ .Values.nokiav2vnfmdriver.replicas }}
+ selector:
+ matchLabels:
+ app: vfc-nokiav2vnfmdriver
+ template:
+ metadata:
+ labels:
+ app: vfc-nokiav2vnfmdriver
+ name: vfc-nokiav2vnfmdriver
+ spec:
+ hostname: vfc-nokiav2vnfmdriver
+ containers:
+ - args:
+ image: {{.Values.nokiav2vnfmdriver.image}}
+ name: "vfc-nokiav2vnfmdriver"
+ env:
+ - name: MSB_ADDR
+ value: {{ tpl .Values.msbaddr . }}
+ ports:
+ - containerPort: {{ .Values.nokiav2vnfmdriver.port }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.nokiav2vnfmdriver.port }}
+ initialDelaySeconds: 5
+ periodSeconds: 10
+ imagePullPolicy: "{{ .Values.pullPolicy }}"
+ imagePullSecrets:
+ - name: "{{ .Values.nsPrefix }}-docker-registry-key"
+#{{ end }}
diff --git a/kubernetes/vfc/values.yaml b/kubernetes/vfc/values.yaml
index b301d2de4c..5bd6b09f62 100644
--- a/kubernetes/vfc/values.yaml
+++ b/kubernetes/vfc/values.yaml
@@ -50,6 +50,11 @@ nokiavnfmdriver:
port: 8486
nodePort: 30412
replicas: 1
+nokiav2vnfmdriver:
+ image: nexus3.onap.org:10001/onap/vfc/nfvo/svnfm/nokiav2:1.1.0-STAGING-latest
+ port: 8089
+ nodePort: 30413
+ replicas: 1
jujudriver:
image: nexus3.onap.org:10001/onap/vfc/jujudriver:v1.0.0
port: 8483