summaryrefslogtreecommitdiffstats
path: root/kubernetes/dmaap
diff options
context:
space:
mode:
Diffstat (limited to 'kubernetes/dmaap')
-rw-r--r--kubernetes/dmaap/Chart.yaml2
-rw-r--r--kubernetes/dmaap/Makefile17
-rw-r--r--kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/DefaultPM.json16
-rw-r--r--kubernetes/dmaap/charts/dmaap-data-router/values.yaml70
-rw-r--r--kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/.helmignore21
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/.helmignore (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/.helmignore)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/Chart.yaml (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/Chart.yaml)4
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/README.md (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/README.md)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/requirements.yaml (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/requirements.yaml)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/resources/config/buscontroller.env (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/buscontroller.env)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/resources/config/dmaapbc.properties (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/dmaapbc.properties)10
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/resources/dcaeLocations/san-francisco.json (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/dcaeLocations/san-francisco.json)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/resources/dmaap/onap.json (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/dmaap/onap.json)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/resources/mr_clusters/san-francisco.json (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/mr_clusters/san-francisco.json)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/templates/NOTES.txt (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/templates/NOTES.txt)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/templates/configmap.yaml53
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/templates/deployment.yaml (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/templates/deployment.yaml)26
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/templates/post-install-job.yaml72
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/templates/service.yaml (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/templates/service.yaml)0
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/values.yaml (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml)9
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/.helmignore (renamed from kubernetes/dmaap/charts/dmaap-data-router/.helmignore)0
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/Chart.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/Chart.yaml)2
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/requirements.yaml24
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/createFeed.sh)2
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json)0
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/resources/config/log/filebeat/filebeat.yml60
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/resources/config/logback.xml148
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/node.properties)14
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/resources/dr_nodes/central.yaml6
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/resources/dr_nodes/edge.yaml6
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/templates/NOTES.txt (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/NOTES.txt)10
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/templates/configmap.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/configmap.yaml)29
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/templates/post-install-job.yaml67
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/templates/pv.yaml61
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/templates/service.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/service.yaml)34
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml)100
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/values.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/values.yaml)33
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/.helmignore (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/.helmignore)0
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/Chart.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/Chart.yaml)2
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/requirements.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/requirements.yaml)13
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/resources/config/log/filebeat/filebeat.yml60
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/resources/config/logback.xml148
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/resources/config/provserver.properties)12
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/DefaultPM.json31
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/README (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/README)0
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/templates/NOTES.txt (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/NOTES.txt)10
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/templates/configmap.yaml (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/templates/configmap.yaml)37
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml)41
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/templates/post-install-job.yaml77
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/templates/service.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/service.yaml)38
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/values.yaml121
-rw-r--r--kubernetes/dmaap/components/message-router/.helmignore (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/.helmignore)0
-rw-r--r--kubernetes/dmaap/components/message-router/Chart.yaml (renamed from kubernetes/dmaap/charts/message-router/Chart.yaml)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/.helmignore (renamed from kubernetes/dmaap/charts/message-router/.helmignore)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/Chart.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-kafka/Chart.yaml)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/NOTES.txt (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/NOTES.txt)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/poddisruptionbudget.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/poddisruptionbudget.yaml)2
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/pv.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pv.yaml)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/service-hs.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/service.yaml)4
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/service.yaml39
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/statefulset.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/statefulset.yaml)50
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-kafka/values.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-kafka/values.yaml)27
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/Chart.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/Chart.yaml)8
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/templates/NOTES.txt (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/NOTES.txt)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/templates/deployment.yaml103
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/values.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/values.yaml)38
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/.helmignore (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-kafka/.helmignore)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/Chart.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/Chart.yaml)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/NOTES.txt (renamed from kubernetes/dmaap/charts/message-router/templates/NOTES.txt)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/poddisruptionbudget.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/poddisruptionbudget.yaml)4
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/pv.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pv.yaml)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/service.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/service.yaml)0
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/statefulset.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/statefulset.yaml)8
-rw-r--r--kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/values.yaml (renamed from kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/values.yaml)8
-rw-r--r--kubernetes/dmaap/components/message-router/requirements.yaml (renamed from kubernetes/dmaap/charts/message-router/requirements.yaml)0
-rwxr-xr-xkubernetes/dmaap/components/message-router/resources/config/dmaap/MsgRtrApi.properties (renamed from kubernetes/dmaap/charts/message-router/resources/config/dmaap/MsgRtrApi.properties)11
-rwxr-xr-xkubernetes/dmaap/components/message-router/resources/config/dmaap/cadi.properties (renamed from kubernetes/dmaap/charts/message-router/resources/config/dmaap/cadi.properties)4
-rwxr-xr-xkubernetes/dmaap/components/message-router/resources/config/dmaap/mykey (renamed from kubernetes/dmaap/charts/message-router/resources/config/dmaap/mykey)0
-rw-r--r--kubernetes/dmaap/components/message-router/resources/mr_clusters/san-francisco.json6
-rw-r--r--kubernetes/dmaap/components/message-router/resources/topics/PM_MAPPER.json14
-rw-r--r--kubernetes/dmaap/components/message-router/resources/topics/PNF_READY.json (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_READY.json)0
-rw-r--r--kubernetes/dmaap/components/message-router/resources/topics/PNF_REGISTRATION.json (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_REGISTRATION.json)0
-rw-r--r--kubernetes/dmaap/components/message-router/resources/topics/README (renamed from kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/README)0
-rw-r--r--kubernetes/dmaap/components/message-router/resources/topics/mirrormakeragent.json42
-rw-r--r--kubernetes/dmaap/components/message-router/templates/NOTES.txt34
-rw-r--r--kubernetes/dmaap/components/message-router/templates/configmap.yaml (renamed from kubernetes/dmaap/charts/message-router/templates/configmap.yaml)27
-rw-r--r--kubernetes/dmaap/components/message-router/templates/post-install-job.yaml71
-rw-r--r--kubernetes/dmaap/components/message-router/templates/secrets.yaml (renamed from kubernetes/dmaap/charts/message-router/templates/secrets.yaml)0
-rw-r--r--kubernetes/dmaap/components/message-router/templates/service.yaml (renamed from kubernetes/dmaap/charts/message-router/templates/service.yaml)0
-rw-r--r--kubernetes/dmaap/components/message-router/templates/statefulset.yaml (renamed from kubernetes/dmaap/charts/message-router/templates/statefulset.yaml)2
-rw-r--r--kubernetes/dmaap/components/message-router/values.yaml (renamed from kubernetes/dmaap/charts/message-router/values.yaml)2
-rw-r--r--kubernetes/dmaap/requirements.yaml16
-rw-r--r--kubernetes/dmaap/resources/config/log/filebeat/filebeat.yml60
-rw-r--r--kubernetes/dmaap/templates/configmap.yaml (renamed from kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/configmap.yaml)20
-rw-r--r--kubernetes/dmaap/values.yaml14
95 files changed, 1757 insertions, 343 deletions
diff --git a/kubernetes/dmaap/Chart.yaml b/kubernetes/dmaap/Chart.yaml
index e3d629bb9a..810e863128 100644
--- a/kubernetes/dmaap/Chart.yaml
+++ b/kubernetes/dmaap/Chart.yaml
@@ -16,4 +16,4 @@
apiVersion: v1
description: ONAP DMaaP components
name: dmaap
-version: 4.0.0
+version: 4.0.1
diff --git a/kubernetes/dmaap/Makefile b/kubernetes/dmaap/Makefile
index b39b91f804..3a1931121a 100644
--- a/kubernetes/dmaap/Makefile
+++ b/kubernetes/dmaap/Makefile
@@ -1,5 +1,4 @@
# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
-# Modifications Copyright © 2018 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.
@@ -13,16 +12,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-make-dmaap: make-bus-controller make-message-router make-dmaap-data-router
+make-dmaap: make-dmaap-bc make-message-router make-dmaap-dr-node make-dmaap-dr-prov
-make-bus-controller:
- cd charts && helm dep up dmaap-bus-controller && helm lint dmaap-bus-controller
+make-dmaap-bc:
+ cd components && helm dep up dmaap-bc && helm lint dmaap-bc
make-message-router:
- cd charts && helm dep up message-router && helm lint message-router
+ cd components && helm dep up message-router && helm lint message-router
-make-dmaap-data-router:
- cd charts && helm dep up dmaap-data-router && helm lint dmaap-data-router
+make-dmaap-dr-node:
+ cd components && helm dep up dmaap-dr-node && helm lint dmaap-dr-node
+
+make-dmaap-dr-prov:
+ cd components && helm dep up dmaap-dr-prov && helm lint dmaap-dr-prov
clean:
@find . -type f -name '*.tgz' -delete
+ @find . -type f -name '*.lock' -delete
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/DefaultPM.json b/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/DefaultPM.json
deleted file mode 100644
index 411d7f41e1..0000000000
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/DefaultPM.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "feedName": "Default PM Feed",
- "feedVersion": "m1.1",
- "feedDescription": "Default feed provisioned for PM File collector",
- "asprClassification" : "unclassified",
- "owner": "onap",
- "pubs": [
- {
- "dcaeLocationName" : "san-francisco",
- "username": "dradmin",
- "userpwd": "dradmin"
- }
-
- ]
-}
-
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/values.yaml b/kubernetes/dmaap/charts/dmaap-data-router/values.yaml
deleted file mode 100644
index 1a4feec659..0000000000
--- a/kubernetes/dmaap/charts/dmaap-data-router/values.yaml
+++ /dev/null
@@ -1,70 +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.
-
-#################################################################
-# DMaap Data Router Global config defaults.
-#################################################################
-global:
- env:
- name: AUTO
- ubuntuInitRepository: oomk8s
- ubuntuInitImage: ubuntu-init:1.0.0
-
- config:
-# dr provisioning server configuration
- dmaapDrProv:
- servicetype: NodePort
- name: dmaap-dr-prov
- externalPort: 8080
- externalPort2: 8443
- internalPort: 8080
- internalPort2: 8443
- portName: dr-prov-port
- portName2: dr-prov-port2
- nodePort: 59
- nodePort2: 69
-# dr node server configuration
- dmaapDrNode:
- servicetype: ClusterIP
- name: dmaap-dr-node
- externalPort: 8080
- externalPort2: 8443
- internalPort: 8080
- internalPort2: 8443
- portName: dr-node-port
- portName2: dr-node-port2
-# dr-prov db configuration
- dmaapDrDb:
- mariadbServiceName: dmaap-dr-db-svc
- mariadbServicePort: 3306
- mariadbContName: dmaap-dr-db
-
-# mariadb-galera configuration
-mariadb:
- name: dmaap-dr-db
- nameOverride: dmaap-dr-db
- replicaCount: 2
- config:
- mariadbRootPassword: datarouter
- userName: datarouter
- userPassword: datarouter
- mysqlDatabase: datarouter
- service:
- name: dmaap-dr-db-svc
- portName: dmaap-dr-db-svc
- nfsprovisionerPrefix: dmaap-dr-db
- persistence:
- size: 1Gi
- mountSubPath: data-router/dr-db-data
- disableNfsProvisioner: true \ No newline at end of file
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/.helmignore b/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/.helmignore
deleted file mode 100644
index f0c1319444..0000000000
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/.helmignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# 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/dmaap/charts/dmaap-bus-controller/.helmignore b/kubernetes/dmaap/components/dmaap-bc/.helmignore
index f0c1319444..f0c1319444 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/.helmignore
+++ b/kubernetes/dmaap/components/dmaap-bc/.helmignore
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/Chart.yaml b/kubernetes/dmaap/components/dmaap-bc/Chart.yaml
index fc2ba21e29..37862dcc67 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/Chart.yaml
+++ b/kubernetes/dmaap/components/dmaap-bc/Chart.yaml
@@ -14,6 +14,6 @@
# limitations under the License.
apiVersion: v1
-description: a Helm chart to deploy ONAP DMaaP Bus Controller (aka dmaap-prov) in Kubernetes
-name: dmaap-bus-controller
+description: a Helm chart to deploy ONAP DMaaP Bus Controller (aka dmaap-bc) in Kubernetes
+name: dmaap-bc
version: 4.0.0
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/README.md b/kubernetes/dmaap/components/dmaap-bc/README.md
index a799fd44dd..a799fd44dd 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/README.md
+++ b/kubernetes/dmaap/components/dmaap-bc/README.md
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/requirements.yaml b/kubernetes/dmaap/components/dmaap-bc/requirements.yaml
index 61c265fe64..61c265fe64 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/requirements.yaml
+++ b/kubernetes/dmaap/components/dmaap-bc/requirements.yaml
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/buscontroller.env b/kubernetes/dmaap/components/dmaap-bc/resources/config/buscontroller.env
index cde43f95b7..cde43f95b7 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/buscontroller.env
+++ b/kubernetes/dmaap/components/dmaap-bc/resources/config/buscontroller.env
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/dmaapbc.properties b/kubernetes/dmaap/components/dmaap-bc/resources/config/dmaapbc.properties
index faa19c6f4d..f15b9a12d1 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/dmaapbc.properties
+++ b/kubernetes/dmaap/components/dmaap-bc/resources/config/dmaapbc.properties
@@ -25,7 +25,7 @@
#
#####################################################
# Indicator for whether to use AAF
-UseAAF: false
+UseAAF: true
# csit: stubs out some southbound APIs for csit
csit: No
@@ -198,10 +198,9 @@ KeyStoreType: jks
KeyStoreFile: etc/keystore
# password for the https keystore
-KeyStorePassword: *j&Z*Ma;.4My4M]W0eB*fal$
-
+KeyStorePassword: Y@Y5f&gm?PAz,CVQL,lk[VAF
# password for the private key in the https keystore
-KeyPassword: *j&Z*Ma;.4My4M]W0eB*fal$
+KeyPassword: Y@Y5f&gm?PAz,CVQL,lk[VAF
# type of truststore for https
TrustStoreType: jks
@@ -210,8 +209,9 @@ TrustStoreType: jks
TrustStoreFile: etc/org.onap.dmaap-bc.trust.jks
# password for the https truststore
-TrustStorePassword: pi8HuuSbN03MtQQ7(5TcyQ6;
+TrustStorePassword: 8b&R5%l$l:@jSWz@FCs;rhY*
# path to the file used to trigger an orderly shutdown
QuiesceFile: etc/SHUTDOWN
+inHttpsPort: 0
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/dcaeLocations/san-francisco.json b/kubernetes/dmaap/components/dmaap-bc/resources/dcaeLocations/san-francisco.json
index ca1e740dd8..ca1e740dd8 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/dcaeLocations/san-francisco.json
+++ b/kubernetes/dmaap/components/dmaap-bc/resources/dcaeLocations/san-francisco.json
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/dmaap/onap.json b/kubernetes/dmaap/components/dmaap-bc/resources/dmaap/onap.json
index 9099e046ed..9099e046ed 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/dmaap/onap.json
+++ b/kubernetes/dmaap/components/dmaap-bc/resources/dmaap/onap.json
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/mr_clusters/san-francisco.json b/kubernetes/dmaap/components/dmaap-bc/resources/mr_clusters/san-francisco.json
index 9e732d2af8..9e732d2af8 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/mr_clusters/san-francisco.json
+++ b/kubernetes/dmaap/components/dmaap-bc/resources/mr_clusters/san-francisco.json
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/NOTES.txt b/kubernetes/dmaap/components/dmaap-bc/templates/NOTES.txt
index 050853cfa2..050853cfa2 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/NOTES.txt
+++ b/kubernetes/dmaap/components/dmaap-bc/templates/NOTES.txt
diff --git a/kubernetes/dmaap/components/dmaap-bc/templates/configmap.yaml b/kubernetes/dmaap/components/dmaap-bc/templates/configmap.yaml
new file mode 100644
index 0000000000..1066c946af
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-bc/templates/configmap.yaml
@@ -0,0 +1,53 @@
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+# Modifications Copyright © 2018 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: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-config
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dbc-dmaap
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/dmaap/*.json").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dbc-dcaelocations
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/dcaeLocations/*.json").AsConfig . | indent 2 }}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/deployment.yaml b/kubernetes/dmaap/components/dmaap-bc/templates/deployment.yaml
index 4d009e9698..0ecdc1c0e8 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/deployment.yaml
+++ b/kubernetes/dmaap/components/dmaap-bc/templates/deployment.yaml
@@ -82,17 +82,6 @@ spec:
- name: {{ include "common.name" . }}-config
mountPath: /opt/app/config/conf/
-# NOTE: the basename of the subdirectory is important - it matches the DBCL API URI
- - name: {{ include "common.name" . }}-dmaap
- mountPath: /opt/app/config/dmaap/
- - name: {{ include "common.name" . }}-dcaelocations
- mountPath: /opt/app/config/dcaeLocations/
- - name: {{ include "common.name" . }}-mrclusters
- mountPath: /opt/app/config/mr_clusters/
- - name: {{ include "common.name" . }}-topics
- mountPath: /opt/app/config/topics/
- - name: {{ include "common.name" . }}-feeds
- mountPath: /opt/app/config/feeds/
resources:
{{ include "common.resources" . | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -110,20 +99,5 @@ spec:
- name: {{ include "common.name" . }}-config
configMap:
name: {{ include "common.fullname" . }}-config
- - name: {{ include "common.name" . }}-dmaap
- configMap:
- name: {{ include "common.fullname" . }}-dmaap
- - name: {{ include "common.name" . }}-dcaelocations
- configMap:
- name: {{ include "common.fullname" . }}-dcaelocations
- - name: {{ include "common.name" . }}-mrclusters
- configMap:
- name: {{ include "common.fullname" . }}-mrclusters
- - name: {{ include "common.name" . }}-topics
- configMap:
- name: {{ include "common.fullname" . }}-topics
- - name: {{ include "common.name" . }}-feeds
- configMap:
- name: {{ include "common.fullname" . }}-feeds
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/components/dmaap-bc/templates/post-install-job.yaml b/kubernetes/dmaap/components/dmaap-bc/templates/post-install-job.yaml
new file mode 100644
index 0000000000..ee24cfb548
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-bc/templates/post-install-job.yaml
@@ -0,0 +1,72 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-post-install
+ labels:
+ app.kubernetes.io/managed-by: {{.Release.Service | quote }}
+ app.kubernetes.io/instance: {{.Release.Name | quote }}
+ helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+ annotations:
+ # This is what defines this resource as a hook. Without this line, the
+ # job is considered part of the release.
+ "helm.sh/hook": post-install
+ "helm.sh/hook-weight": "-5"
+ "helm.sh/hook-delete-policy": hook-succeeded
+spec:
+ template:
+ metadata:
+ name: {{ include "common.fullname" . }}
+ labels:
+ app.kubernetes.io/managed-by: {{.Release.Service | quote }}
+ app.kubernetes.io/instance: {{.Release.Name | quote }}
+ helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+ spec:
+ restartPolicy: Never
+
+ containers:
+ - name: post-install-job
+ image: "{{ include "common.repository" . }}/{{ .Values.global.clientImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: DELAY
+ value: "0"
+ - name: PROTO
+ value: "http"
+ - name: PORT
+ value: "8080"
+ - name: REQUESTID
+ value: "{{.Chart.Name}}-post-install"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+
+# NOTE: on the following several configMaps, careful to include / at end
+# since there may be more than one file in each mountPath
+# NOTE: the basename of the subdirectory of mountPath is important - it matches the DBCL API URI
+ - name: {{ include "common.fullname" . }}-dbc-dmaap
+ mountPath: /opt/app/config/dmaap/
+ - name: {{ include "common.fullname" . }}-dbc-dcaelocations
+ mountPath: /opt/app/config/dcaeLocations/
+ resources:
+{{ include "common.resources" . | indent 10 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-dbc-dmaap
+ configMap:
+ name: {{ include "common.fullname" . }}-dbc-dmaap
+ - name: {{ include "common.fullname" . }}-dbc-dcaelocations
+ configMap:
+ name: {{ include "common.fullname" . }}-dbc-dcaelocations
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/service.yaml b/kubernetes/dmaap/components/dmaap-bc/templates/service.yaml
index 4b51d44fa2..4b51d44fa2 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/service.yaml
+++ b/kubernetes/dmaap/components/dmaap-bc/templates/service.yaml
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml b/kubernetes/dmaap/components/dmaap-bc/values.yaml
index 47a6f8ddb9..a7fc3d88db 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml
+++ b/kubernetes/dmaap/components/dmaap-bc/values.yaml
@@ -30,13 +30,16 @@ pullPolicy: Always
# application images
repository: nexus3.onap.org:10001
-
-image: onap/dmaap/buscontroller:1.0.26
+image: onap/dmaap/dmaap-bc:1.1.2
# application configuration
dmaapMessageRouterService: message-router
-aafURL: https://aaf-onap-test.osaaf.org:8095/proxy/
+# change the following value to point to Windriver instance maintained
+# but AAF team.
+# e.g.
+#aafURL: https://aaf-onap-test.osaaf.org:8095/proxy/
+aafURL: https://aaf-service:8100/
topicMgrUser: dmaap-bc-topic-mgr@dmaap-bc-topic-mgr.onap.org
topicMgrPwd: demo123456!
adminUser: aaf_admin@people.osaaf.org
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/.helmignore b/kubernetes/dmaap/components/dmaap-dr-node/.helmignore
index f0c1319444..f0c1319444 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/.helmignore
+++ b/kubernetes/dmaap/components/dmaap-dr-node/.helmignore
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/Chart.yaml b/kubernetes/dmaap/components/dmaap-dr-node/Chart.yaml
index 084aa58dc6..44bf9dfc80 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/Chart.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-node/Chart.yaml
@@ -15,4 +15,4 @@
apiVersion: v1
description: ONAP DMaaP Data Router Node Server
name: dmaap-dr-node
-version: 1.0
+version: 4.0.0
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/requirements.yaml b/kubernetes/dmaap/components/dmaap-dr-node/requirements.yaml
new file mode 100644
index 0000000000..0b6190657a
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-node/requirements.yaml
@@ -0,0 +1,24 @@
+#
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ================================================================================
+# 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.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+#
+
+dependencies:
+ - name: common
+ version: ~4.x-0
+ repository: '@local'
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/createFeed.sh b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh
index 8899f1bca2..1289ecae86 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/createFeed.sh
+++ b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/createFeed.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-dr_prov_url="{{.Values.global.config.dmaapDrProv.name}}:{{.Values.global.config.dmaapDrProv.internalPort2}}"
+dr_prov_url="{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.internalPort2}}"
ct_header="Content-Type:application/vnd.dmaap-dr.feed"
obo_header="X-DMAAP-DR-ON-BEHALF-OF:dradmin"
feed_payload=/opt/app/datartr/etc/dedicatedFeed.json
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json
index a96f46d528..a96f46d528 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json
+++ b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/feeds/dedicatedFeed.json
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/config/log/filebeat/filebeat.yml b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/log/filebeat/filebeat.yml
new file mode 100644
index 0000000000..f1cf7394b6
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/log/filebeat/filebeat.yml
@@ -0,0 +1,60 @@
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# ================================================================================
+# 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.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ - /opt/app/datartr/logs/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among available Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase \ No newline at end of file
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/config/logback.xml b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/logback.xml
new file mode 100644
index 0000000000..25a2c6e093
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/logback.xml
@@ -0,0 +1,148 @@
+<!--
+ ============LICENSE_START=======================================================
+ Copyright (C) 2019 Nordix Foundation.
+ ================================================================================
+ 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.
+
+ SPDX-License-Identifier: Apache-2.0
+ ============LICENSE_END=========================================================
+-->
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+
+ <property name="generalLogName" value="apicalls" />
+ <property name="errorLogName" value="errors" />
+ <property name="jettyAndNodeLogName" value="node"/>
+
+ <property name="defaultPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
+ <property name="jettyAndNodeLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
+ <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
+
+ <property name="logDirectory" value="/opt/app/datartr/logs" />
+
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${defaultPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+
+ <appender name="EELF"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${generalLogName}.log</file>
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>INFO</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${defaultPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELF" />
+ </appender>
+
+ <appender name="EELFError"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>ERROR</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${defaultPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFError"/>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <appender name="jettyAndNodelog"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${jettyAndNodeLogName}.log</file>
+ <filter class="org.onap.dmaap.datarouter.node.eelf.EELFFilter" />
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${jettyAndNodeLogName}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${jettyAndNodeLoggerPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="asyncEELFjettyAndNodelog" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="jettyAndNodelog" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <logger name="com.att.eelf" level="info" additivity="false">
+ <appender-ref ref="asyncEELF" />
+ </logger>
+
+ <logger name="com.att.eelf.error" level="error" additivity="false">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+
+ <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
+ <appender-ref ref="asyncEELFjettyAndNodelog"/>
+ </logger>
+
+ <root level="INFO">
+ <appender-ref ref="asyncEELF" />
+ <appender-ref ref="asyncEELFError" />
+ <appender-ref ref="asyncEELFjettyAndNodelog" />
+ </root>
+
+</configuration>
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/node.properties b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties
index 41062c77c8..2046dbfbf0 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/resources/config/node.properties
+++ b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties
@@ -26,23 +26,23 @@
# URL to retrieve dynamic configuration
#
#ProvisioningURL: ${DRTR_PROV_INTURL}
-ProvisioningURL=https://{{.Values.global.config.dmaapDrProv.name}}:{{.Values.global.config.dmaapDrProv.externalPort2}}/internal/prov
+ProvisioningURL=https://{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.externalPort2}}/internal/prov
#
# URL to upload PUB/DEL/EXP logs
#
#LogUploadURL: ${DRTR_LOG_URL}
-LogUploadURL=https://{{.Values.global.config.dmaapDrProv.name}}:{{.Values.global.config.dmaapDrProv.externalPort2}}/internal/logs
+LogUploadURL=https://{{.Values.config.dmaapDrProv.name}}:{{.Values.config.dmaapDrProv.externalPort2}}/internal/logs
#
# The port number for http as seen within the server
#
#IntHttpPort: ${DRTR_NODE_INTHTTPPORT:-8080}
-IntHttpPort={{.Values.global.config.dmaapDrNode.internalPort}}
+IntHttpPort={{.Values.config.dmaapDrNode.internalPort}}
#
# The port number for https as seen within the server
#
-IntHttpsPort={{.Values.global.config.dmaapDrNode.internalPort2}}
+IntHttpsPort={{.Values.config.dmaapDrNode.internalPort2}}
#
# The external port number for https taking port mapping into account
#
@@ -83,11 +83,11 @@ KeyStoreFile=/opt/app/datartr/aaf_certs/org.onap.dmaap-dr.jks
#
# The password for the https keystore
#
-KeyStorePassword=4*&GD+w58RUM]01No.CYY;z6
+KeyStorePassword=]3V)($O&.Mv]W{f8^]6SxGNL
#
# The password for the private key in the https keystore
#
-KeyPassword=4*&GD+w58RUM]01No.CYY;z6
+KeyPassword=]3V)($O&.Mv]W{f8^]6SxGNL
#
# The type of truststore for https
#
@@ -99,7 +99,7 @@ TrustStoreFile=/opt/app/datartr/aaf_certs/org.onap.dmaap-dr.trust.jks
#
# The password for the https truststore
#
-TrustStorePassword=UDXlT6Iu[F)k,Htk92+B,0Xj
+TrustStorePassword=(Rd,&{]%ePdp}4JZjqoJ2G+g
#
# The path to the file used to trigger an orderly shutdown
#
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/dr_nodes/central.yaml b/kubernetes/dmaap/components/dmaap-dr-node/resources/dr_nodes/central.yaml
new file mode 100644
index 0000000000..7ef2dcdb8f
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-node/resources/dr_nodes/central.yaml
@@ -0,0 +1,6 @@
+{
+ "dcaeLocationName" : "san-francisco",
+ "fqdn" : "dmaap-dr-node.san-francisco",
+ "hostName" : "dmaap-dr-node.pod",
+ "version" : "1.0.1"
+}
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/dr_nodes/edge.yaml b/kubernetes/dmaap/components/dmaap-dr-node/resources/dr_nodes/edge.yaml
new file mode 100644
index 0000000000..272cd75e52
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-node/resources/dr_nodes/edge.yaml
@@ -0,0 +1,6 @@
+{
+ "dcaeLocationName" : "edge1",
+ "fqdn" : "dmaap-dr-node.edge1",
+ "hostName" : "dmaap-dr-node.pod.edge1",
+ "version" : "1.0.1"
+}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/NOTES.txt b/kubernetes/dmaap/components/dmaap-dr-node/templates/NOTES.txt
index 42d7663182..65597e062f 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/NOTES.txt
+++ b/kubernetes/dmaap/components/dmaap-dr-node/templates/NOTES.txt
@@ -17,17 +17,17 @@
{{- range .Values.ingress.hosts }}
http://{{ . }}
{{- end }}
-{{- else if contains "NodePort" .Values.global.config.dmaapDrNode.servicetype }}
+{{- else if contains "NodePort" .Values.config.dmaapDrNode.servicetype }}
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.global.config.dmaapDrNode.servicetype }}
+{{- else if contains "LoadBalancer" .Values.config.dmaapDrNode.servicetype }}
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.global.config.dmaapDrNode.externalPort}}
-{{- else if contains "ClusterIP" .Values.global.config.dmaapDrNode.servicetype }}
+ echo http://$SERVICE_IP:{{.Values.config.dmaapDrNode.externalPort}}
+{{- else if contains "ClusterIP" .Values.config.dmaapDrNode.servicetype }}
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.global.config.dmaapDrNode.internalPort}}
+ kubectl port-forward $POD_NAME 8080:{{.Values.config.dmaapDrNode.internalPort}}
{{- end }} \ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/configmap.yaml b/kubernetes/dmaap/components/dmaap-dr-node/templates/configmap.yaml
index bd7418415a..cae0d71672 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/configmap.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-node/templates/configmap.yaml
@@ -37,3 +37,32 @@ metadata:
heritage: {{ .Release.Service }}
data:
{{ tpl (.Files.Glob "resources/config/feeds/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-log
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dbc-drnodes
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/dr_nodes/*.json").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+ namespace: {{ include "common.namespace" . }}
+data:
+{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/templates/post-install-job.yaml b/kubernetes/dmaap/components/dmaap-dr-node/templates/post-install-job.yaml
new file mode 100644
index 0000000000..096b51c094
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-node/templates/post-install-job.yaml
@@ -0,0 +1,67 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-post-install
+ labels:
+ app.kubernetes.io/managed-by: {{.Release.Service | quote }}
+ app.kubernetes.io/instance: {{.Release.Name | quote }}
+ helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+ annotations:
+ # This is what defines this resource as a hook. Without this line, the
+ # job is considered part of the release.
+ "helm.sh/hook": post-install
+ "helm.sh/hook-weight": "-2"
+ "helm.sh/hook-delete-policy": hook-succeeded
+spec:
+ template:
+ metadata:
+ name: {{ include "common.fullname" . }}
+ labels:
+ app.kubernetes.io/managed-by: {{.Release.Service | quote }}
+ app.kubernetes.io/instance: {{.Release.Name | quote }}
+ helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+ spec:
+ restartPolicy: Never
+ containers:
+ - name: post-install-job
+ image: "{{ include "common.repository" . }}/{{ .Values.global.clientImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: DELAY
+ value: "60"
+ - name: PROTO
+ value: "http"
+ - name: PORT
+ value: "8080"
+ - name: REQUESTID
+ value: "{{.Chart.Name}}-post-install"
+
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+
+# NOTE: on the following several configMaps, careful to include / at end
+# since there may be more than one file in each mountPath
+# NOTE: the basename of the subdirectory is important - it matches the DBCL API URI
+ - name: {{ include "common.fullname" . }}-dbc-drnodes
+ mountPath: /opt/app/config/dr_nodes/
+ resources:
+{{ include "common.resources" . | indent 10 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-dbc-drnodes
+ configMap:
+ name: {{ include "common.fullname" . }}-dbc-drnodes
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/templates/pv.yaml b/kubernetes/dmaap/components/dmaap-dr-node/templates/pv.yaml
new file mode 100644
index 0000000000..016a6ea023
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-node/templates/pv.yaml
@@ -0,0 +1,61 @@
+{{/*
+ # ============LICENSE_START=======================================================
+ # Copyright (C) 2019 Nordix Foundation.
+ # ================================================================================
+ # 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.
+ #
+ # SPDX-License-Identifier: Apache-2.0
+ # ============LICENSE_END=========================================================
+*/}}
+
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-spool-data-pv
+ 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" . }}-spool-data-pv
+spec:
+ capacity:
+ storage: {{ .Values.persistence.spoolSize }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-spool-data-stcl"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.spoolMountSubPath }}
+---
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-event-logs-pv
+ 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" . }}-event-logs-pv
+spec:
+ capacity:
+ storage: {{ .Values.persistence.eventLogSize }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ storageClassName: "{{ include "common.fullname" . }}-event-logs-stcl"
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.eventLogsMountSubPath }} \ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/service.yaml b/kubernetes/dmaap/components/dmaap-dr-node/templates/service.yaml
index e13e854d3b..b7207017da 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/service.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-node/templates/service.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{.Values.global.config.dmaapDrNode.name}}
+ name: {{.Values.config.dmaapDrNode.name}}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -25,24 +25,24 @@ metadata:
annotations:
service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
spec:
- type: {{.Values.global.config.dmaapDrNode.servicetype}}
+ type: {{.Values.config.dmaapDrNode.servicetype}}
ports:
- {{if eq .Values.global.config.dmaapDrNode.servicetype "NodePort" -}}
- - port: {{.Values.global.config.dmaapDrNode.externalPort}}
- targetPort: {{.Values.global.config.dmaapDrNode.internalPort}}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.global.config.dmaapDrNode.nodePort}}
- name: {{.Values.global.config.dmaapDrNode.name}}
- - port: {{.Values.global.config.dmaapDrNode.externalPort2}}
- targetPort: {{.Values.global.config.dmaapDrNode.internalPort2}}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.global.config.dmaapDrNode.nodePort2}}
- name: {{.Values.global.config.dmaapDrNode.name}}2
+ {{if eq .Values.config.dmaapDrNode.servicetype "NodePort" -}}
+ - port: {{.Values.config.dmaapDrNode.externalPort}}
+ targetPort: {{.Values.config.dmaapDrNode.internalPort}}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.config.dmaapDrNode.nodePort}}
+ name: {{.Values.config.dmaapDrNode.name}}
+ - port: {{.Values.config.dmaapDrNode.externalPort2}}
+ targetPort: {{.Values.config.dmaapDrNode.internalPort2}}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.config.dmaapDrNode.nodePort2}}
+ name: {{.Values.config.dmaapDrNode.name}}2
{{- else -}}
- - port: {{.Values.global.config.dmaapDrNode.externalPort}}
- targetPort: {{.Values.global.config.dmaapDrNode.internalPort}}
- name: {{.Values.global.config.dmaapDrNode.name}}
- - port: {{.Values.global.config.dmaapDrNode.externalPort2}}
- targetPort: {{.Values.global.config.dmaapDrNode.internalPort2}}
- name: {{.Values.global.config.dmaapDrNode.name}}2
+ - port: {{.Values.config.dmaapDrNode.externalPort}}
+ targetPort: {{.Values.config.dmaapDrNode.internalPort}}
+ name: {{.Values.config.dmaapDrNode.name}}
+ - port: {{.Values.config.dmaapDrNode.externalPort2}}
+ targetPort: {{.Values.config.dmaapDrNode.internalPort2}}
+ name: {{.Values.config.dmaapDrNode.name}}2
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml b/kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml
index 93fabe1292..3e0e69ecc2 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/templates/deployment.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml
@@ -11,8 +11,8 @@
# 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
+apiVersion: apps/v1beta1
+kind: StatefulSet
metadata:
name: {{ include "common.fullname" . }}
namespace: {{ include "common.namespace" . }}
@@ -23,13 +23,13 @@ metadata:
heritage: {{ .Release.Service }}
spec:
replicas: {{ .Values.replicaCount }}
+ serviceName: {{ .Values.config.dmaapDrNode.name }}
template:
metadata:
labels:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
- hostname: {{.Values.global.config.dmaapDrNode.name}}
initContainers:
- name: {{ include "common.name" . }}-readiness
image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
@@ -38,7 +38,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - {{.Values.global.config.dmaapDrProv.name}}
+ - dmaap-dr-prov
env:
- name: NAMESPACE
valueFrom:
@@ -50,21 +50,25 @@ spec:
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- - containerPort: {{.Values.global.config.dmaapDrNode.externalPort}}
- - containerPort: {{.Values.global.config.dmaapDrNode.externalPort2}}
+ - containerPort: {{.Values.config.dmaapDrNode.externalPort}}
+ - containerPort: {{.Values.config.dmaapDrNode.externalPort2}}
{{- if eq .Values.liveness.enabled true }}
livenessProbe:
tcpSocket:
- port: {{.Values.global.config.dmaapDrNode.internalPort}}
+ port: {{.Values.config.dmaapDrNode.internalPort}}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
{{ end -}}
readinessProbe:
tcpSocket:
- port: {{.Values.global.config.dmaapDrNode.internalPort}}
+ port: {{.Values.config.dmaapDrNode.internalPort}}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
volumeMounts:
+ - mountPath: {{ .Values.persistence.spoolPath }}
+ name: {{ include "common.fullname" . }}-spool-data-pvc
+ - mountPath: {{ .Values.persistence.eventLogsPath }}
+ name: {{ include "common.fullname" . }}-event-logs-pvc
- mountPath: /etc/localtime
name: localtime
readOnly: false
@@ -81,7 +85,7 @@ spec:
postStart:
exec:
command:
- - /opt/app/datartr/etc/createFeed.sh
+ - /opt/app/datartr/etc/createFeed.sh
resources:
{{ include "common.resources" . | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -92,23 +96,65 @@ spec:
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
- volumes:
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: create-feed
- configMap:
- name: {{ include "common.fullname" . }}-create-feed-configmap
- defaultMode: 0755
- - name: node-props
- configMap:
- name: {{ include "common.fullname" . }}-node-props-configmap
- - name: dr-node-data
- {{- if .Values.persistence.enabled }}
- persistentVolumeClaim:
- claimName: {{ include "common.fullname" . }}
- {{- else }}
- emptyDir: {}
- {{- end }}
+ # Filebeat sidecar container
+ - name: {{ include "common.fullname" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: {{ include "common.fullname" . }}-event-logs-pvc
+ mountPath: /var/log/onap/datarouter-node
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: create-feed
+ configMap:
+ name: {{ include "common.fullname" . }}-create-feed-configmap
+ defaultMode: 0755
+ - name: node-props
+ configMap:
+ name: {{ include "common.fullname" . }}-node-props-configmap
+ - name: {{ include "common.fullname" . }}-log-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-log
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-event-logs-pvc
+ emptyDir: {}
+ volumeClaimTemplates:
+ - metadata:
+ name: {{ include "common.fullname" . }}-spool-data-pvc
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-spool-data-stcl
+ resources:
+ requests:
+ storage: {{ .Values.persistence.spoolSize }}
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}-spool-data-pv
+ - metadata:
+ name: {{ include "common.fullname" . }}-event-logs-pvc
+ labels:
+ name: {{ include "common.fullname" . }}
+ spec:
+ accessModes: [ {{ .Values.persistence.accessMode }} ]
+ storageClassName: {{ include "common.fullname" . }}-event-logs-stcl
+ resources:
+ requests:
+ storage: {{ .Values.persistence.eventLogSize }}
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}-event-logs-pv
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/values.yaml b/kubernetes/dmaap/components/dmaap-dr-node/values.yaml
index 610b577e06..c6087e8852 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/values.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-node/values.yaml
@@ -20,13 +20,14 @@ global:
readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
+ loggingDirectory: /opt/app/datartr/logs
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/dmaap/datarouter-node:2.0.0
+image: onap/dmaap/datarouter-node:2.0.2
pullPolicy: Always
# flag to enable debugging - application support required
@@ -55,7 +56,17 @@ readiness:
## Persist data to a persitent volume
persistence:
- enabled: false
+ volumeReclaimPolicy: Retain
+ accessMode: ReadWriteMany
+ mountPath: /dockerdata-nfs
+
+ spoolMountSubPath: data-router/dr-node/spool-data
+ spoolSize: 1Gi
+ spoolPath: /opt/app/datartr/spool
+
+ eventLogsMountSubPath: data-router/dr-node/event-logs
+ eventLogSize: 1Gi
+ eventLogsPath: /opt/app/datartr/logs
ingress:
enabled: false
@@ -79,3 +90,21 @@ resources:
cpu: 1000m
memory: 2Gi
unlimited: {}
+
+config:
+ # dr node server configuration
+ dmaapDrNode:
+ servicetype: ClusterIP
+ name: dmaap-dr-node
+ externalPort: 8080
+ externalPort2: 8443
+ internalPort: 8080
+ internalPort2: 8443
+ portName: dr-node-port
+ portName2: dr-node-port2
+
+# dr provisioning server configuration
+ dmaapDrProv:
+ name: dmaap-dr-prov
+ externalPort2: 8443
+ internalPort2: 8443
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/.helmignore b/kubernetes/dmaap/components/dmaap-dr-prov/.helmignore
index f0c1319444..f0c1319444 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-node/.helmignore
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/.helmignore
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/Chart.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/Chart.yaml
index 591e9e011d..fd9a51a6ef 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/Chart.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/Chart.yaml
@@ -15,4 +15,4 @@
apiVersion: v1
description: ONAP DMaaP Data Router Provisioning Server
name: dmaap-dr-prov
-version: 1.0
+version: 4.0.0
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/requirements.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/requirements.yaml
index 020808ed36..949b5bbdc6 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/requirements.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/requirements.yaml
@@ -1,16 +1,22 @@
-# Copyright © 2017 Amdocs, Bell Canada
#
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ================================================================================
# 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
+# 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.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+#
dependencies:
- name: common
@@ -19,5 +25,4 @@ dependencies:
- name: mariadb-galera
alias: mariadb
version: ~4.x-0
- repository: '@local'
-
+ repository: '@local' \ No newline at end of file
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/log/filebeat/filebeat.yml b/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/log/filebeat/filebeat.yml
new file mode 100644
index 0000000000..f1cf7394b6
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/log/filebeat/filebeat.yml
@@ -0,0 +1,60 @@
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# ================================================================================
+# 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.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ - /opt/app/datartr/logs/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among available Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase \ No newline at end of file
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/logback.xml b/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/logback.xml
new file mode 100644
index 0000000000..942d898695
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/logback.xml
@@ -0,0 +1,148 @@
+<!--
+ ============LICENSE_START=======================================================
+ Copyright (C) 2019 Nordix Foundation.
+ ================================================================================
+ 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.
+
+ SPDX-License-Identifier: Apache-2.0
+ ============LICENSE_END=========================================================
+-->
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+
+ <property name="generalLogName" value="apicalls" />
+ <property name="errorLogName" value="errors" />
+ <property name="jettyLogName" value="jetty"/>
+
+ <property name="defaultPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
+ <property name="jettyLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
+ <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
+
+ <property name="logDirectory" value="/opt/app/datartr/logs" />
+
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <pattern>${defaultPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <!-- EELF Appenders -->
+ <!-- ============================================================================ -->
+
+ <appender name="EELF"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${generalLogName}.log</file>
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>INFO</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${defaultPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELF" />
+ </appender>
+
+ <appender name="EELFError"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${errorLogName}.log</file>
+ <filter class="ch.qos.logback.classic.filter.LevelFilter">
+ <level>ERROR</level>
+ <onMatch>ACCEPT</onMatch>
+ <onMismatch>DENY</onMismatch>
+ </filter>
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${defaultPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="EELFError"/>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <appender name="jettylog"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${logDirectory}/${jettyLogName}.log</file>
+ <filter class="org.onap.dmaap.datarouter.provisioning.eelf.JettyFilter" />
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${logDirectory}/${jettyLogName}.%i.log.zip
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>9</maxIndex>
+ </rollingPolicy>
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>5MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${jettyLoggerPattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="asyncEELFjettylog" class="ch.qos.logback.classic.AsyncAppender">
+ <queueSize>256</queueSize>
+ <appender-ref ref="jettylog" />
+ <includeCallerData>true</includeCallerData>
+ </appender>
+
+ <!-- ============================================================================ -->
+ <!-- EELF loggers -->
+ <!-- ============================================================================ -->
+ <logger name="com.att.eelf" level="info" additivity="false">
+ <appender-ref ref="asyncEELF" />
+ </logger>
+
+ <logger name="com.att.eelf.error" level="error" additivity="false">
+ <appender-ref ref="asyncEELFError" />
+ </logger>
+
+ <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
+ <appender-ref ref="asyncEELFjettylog"/>
+ </logger>
+
+ <root level="INFO">
+ <appender-ref ref="asyncEELF" />
+ <appender-ref ref="asyncEELFError" />
+ <appender-ref ref="asyncEELFjettylog" />
+ </root>
+
+</configuration>
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/resources/config/provserver.properties b/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties
index dea4862acd..bb24d99dea 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/resources/config/provserver.properties
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties
@@ -23,16 +23,16 @@
#Jetty Server properties
-org.onap.dmaap.datarouter.provserver.http.port = {{.Values.global.config.dmaapDrProv.externalPort}}
-org.onap.dmaap.datarouter.provserver.https.port = {{.Values.global.config.dmaapDrProv.externalPort2}}
+org.onap.dmaap.datarouter.provserver.http.port = {{.Values.config.dmaapDrProv.externalPort}}
+org.onap.dmaap.datarouter.provserver.https.port = {{.Values.config.dmaapDrProv.externalPort2}}
org.onap.dmaap.datarouter.provserver.https.relaxation = true
-org.onap.dmaap.datarouter.provserver.keymanager.password = Qgw77oaQcdP*F8Pwa[&.,.Ab
+org.onap.dmaap.datarouter.provserver.keymanager.password = AT{];bvaDiytVD&oWhMZj0N5
org.onap.dmaap.datarouter.provserver.keystore.type = jks
org.onap.dmaap.datarouter.provserver.keystore.path = /opt/app/datartr/aaf_certs/org.onap.dmaap-dr.jks
-org.onap.dmaap.datarouter.provserver.keystore.password = Qgw77oaQcdP*F8Pwa[&.,.Ab
+org.onap.dmaap.datarouter.provserver.keystore.password = AT{];bvaDiytVD&oWhMZj0N5
org.onap.dmaap.datarouter.provserver.truststore.path = /opt/app/datartr/aaf_certs/org.onap.dmaap-dr.trust.jks
-org.onap.dmaap.datarouter.provserver.truststore.password = 9M?)?:KAj1z6gpLhNrVUG@0T
+org.onap.dmaap.datarouter.provserver.truststore.password = ljlS@Y}0]{UO(TnwvEWkgJ%]
org.onap.dmaap.datarouter.provserver.accesslog.dir = /opt/app/datartr/logs
org.onap.dmaap.datarouter.provserver.spooldir = /opt/app/datartr/spool
org.onap.dmaap.datarouter.provserver.dbscripts = /opt/app/datartr/etc/misc
@@ -44,6 +44,6 @@ org.onap.dmaap.datarouter.provserver.isaddressauthenabled = false
# Database access
org.onap.dmaap.datarouter.db.driver = org.mariadb.jdbc.Driver
-org.onap.dmaap.datarouter.db.url = jdbc:mariadb://{{.Values.global.config.dmaapDrDb.mariadbServiceName}}:{{.Values.global.config.dmaapDrDb.mariadbServicePort}}/datarouter
+org.onap.dmaap.datarouter.db.url = jdbc:mariadb://{{.Values.config.dmaapDrDb.mariadbServiceName}}:{{.Values.config.dmaapDrDb.mariadbServicePort}}/datarouter
org.onap.dmaap.datarouter.db.login = datarouter
org.onap.dmaap.datarouter.db.password = datarouter
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/DefaultPM.json b/kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/DefaultPM.json
new file mode 100644
index 0000000000..994f9c9845
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/DefaultPM.json
@@ -0,0 +1,31 @@
+{
+ "feedName": "bulk_pm_feed",
+ "feedVersion": "m1.1",
+ "feedDescription": "Default feed provisioned for PM File collector",
+ "asprClassification" : "unclassified",
+ "owner": "onap",
+ "pubs": [
+ {
+ "dcaeLocationName" : "san-francisco",
+ "username": "dradmin",
+ "userpwd": "dradmin"
+ }
+
+ ],
+ "subs": [
+ {
+ "dcaeLocationName": "san-francisco",
+ "deliveryURL": "https://dcae-pm-mapper:8443/delivery",
+ "feedId": "1",
+ "owner": "dcae-pm-mapper",
+ "status": "VALID",
+ "subId": "1",
+ "suspended": false,
+ "use100": true,
+ "username": "pmmapper",
+ "userpwd": "pmmapper",
+ "decompressData": true,
+ "privilegedSubscriber": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/README b/kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/README
index 4f5eac5ba1..4f5eac5ba1 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/feeds/README
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/resources/feeds/README
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/NOTES.txt b/kubernetes/dmaap/components/dmaap-dr-prov/templates/NOTES.txt
index 64e6abf1d5..8d29cf9e66 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/NOTES.txt
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/templates/NOTES.txt
@@ -17,17 +17,17 @@
{{- range .Values.ingress.hosts }}
http://{{ . }}
{{- end }}
-{{- else if contains "NodePort" .Values.global.config.dmaapDrProv.servicetype }}
+{{- else if contains "NodePort" .Values.config.dmaapDrProv.servicetype }}
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.global.config.dmaapDrProv.servicetype }}
+{{- else if contains "LoadBalancer" .Values.config.dmaapDrProv.servicetype }}
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.global.config.dmaapDrProv.externalPort}}
-{{- else if contains "ClusterIP" .Values.global.config.dmaapDrProv.servicetype }}
+ echo http://$SERVICE_IP:{{.Values.config.dmaapDrProv.externalPort}}
+{{- else if contains "ClusterIP" .Values.config.dmaapDrProv.servicetype }}
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.global.config.dmaapDrProv.internalPort}}
+ kubectl port-forward $POD_NAME 8080:{{.Values.config.dmaapDrProv.internalPort}}
{{- end }}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/configmap.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/templates/configmap.yaml
index ead7562a59..bd5886ba9c 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/templates/configmap.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/templates/configmap.yaml
@@ -1,5 +1,4 @@
-# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
-# Modifications Copyright © 2018 Amdocs,Bell Canada
+# 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.
@@ -16,7 +15,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-config
+ name: {{ include "common.fullname" . }}-prov-props-configmap
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -24,38 +23,28 @@ metadata:
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/provserver.properties").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-dmaap
+ name: {{ include "common.fullname" . }}-log
namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
data:
-{{ tpl (.Files.Glob "resources/dmaap/*.json").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-dcaelocations
+ name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
data:
-{{ tpl (.Files.Glob "resources/dcaeLocations/*.json").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-mrclusters
+ name: {{ include "common.fullname" . }}-dbc-feeds
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -63,12 +52,12 @@ metadata:
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
-{{ tpl (.Files.Glob "resources/mr_clusters/*.json").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/feeds/*.json").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-topics
+ name: {{ include "common.fullname" . }}-dbc-drpubs
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -76,12 +65,12 @@ metadata:
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
-{{ tpl (.Files.Glob "resources/topics/*.json").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/dr_pubs/*.json").AsConfig . | indent 2 }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-feeds
+ name: {{ include "common.fullname" . }}-dbc-drsubs
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -89,4 +78,4 @@ metadata:
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
-{{ tpl (.Files.Glob "resources/feeds/*.json").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/dr_subs/*.json").AsConfig . | indent 2 }}
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml
index da65944701..573e90c35a 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/deployment.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml
@@ -29,13 +29,13 @@ spec:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
- hostname: {{.Values.global.config.dmaapDrProv.name}}
+ hostname: {{.Values.config.dmaapDrProv.name}}
initContainers:
- command:
- /root/ready.py
args:
- --container-name
- - {{.Values.global.config.dmaapDrDb.mariadbContName}}
+ - {{.Values.config.dmaapDrDb.mariadbContName}}
env:
- name: NAMESPACE
valueFrom:
@@ -50,18 +50,18 @@ spec:
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- - containerPort: {{.Values.global.config.dmaapDrProv.externalPort}}
- - containerPort: {{.Values.global.config.dmaapDrProv.externalPort2}}
+ - containerPort: {{.Values.config.dmaapDrProv.externalPort}}
+ - containerPort: {{.Values.config.dmaapDrProv.externalPort2}}
{{- if eq .Values.liveness.enabled true }}
livenessProbe:
tcpSocket:
- port: {{.Values.global.config.dmaapDrProv.externalPort}}
+ port: {{.Values.config.dmaapDrProv.externalPort}}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
{{ end -}}
readinessProbe:
tcpSocket:
- port: {{.Values.global.config.dmaapDrProv.externalPort}}
+ port: {{.Values.config.dmaapDrProv.externalPort}}
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
volumeMounts:
@@ -71,6 +71,8 @@ spec:
- mountPath: /opt/app/datartr/etc/provserver.properties
subPath: provserver.properties
name: prov-props
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: {{ .Values.global.loggingDirectory }}
resources:
{{ include "common.resources" . | indent 12 }}
{{- if .Values.nodeSelector }}
@@ -81,6 +83,18 @@ spec:
affinity:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
+ # Filebeat sidecar container
+ - name: {{ include "common.fullname" . }}-filebeat-onap
+ image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ mountPath: /usr/share/filebeat/filebeat.yml
+ subPath: filebeat.yml
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ mountPath: /usr/share/filebeat/data
+ - name: {{ include "common.fullname" . }}-logs
+ mountPath: /var/log/onap/datarouter-prov
volumes:
- name: localtime
hostPath:
@@ -88,12 +102,15 @@ spec:
- name: prov-props
configMap:
name: {{ include "common.fullname" . }}-prov-props-configmap
- - name: dr-prov-data
- {{- if .Values.persistence.enabled }}
- persistentVolumeClaim:
- claimName: {{ include "common.fullname" . }}
- {{- else }}
+ - name: {{ include "common.fullname" . }}-log-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-log
+ - name: {{ include "common.fullname" . }}-filebeat-conf
+ configMap:
+ name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+ - name: {{ include "common.fullname" . }}-data-filebeat
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-logs
emptyDir: {}
- {{- end }}
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/templates/post-install-job.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/templates/post-install-job.yaml
new file mode 100644
index 0000000000..8a2cf692b8
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/templates/post-install-job.yaml
@@ -0,0 +1,77 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-post-install
+ labels:
+ app.kubernetes.io/managed-by: {{.Release.Service | quote }}
+ app.kubernetes.io/instance: {{.Release.Name | quote }}
+ helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+ annotations:
+ # This is what defines this resource as a hook. Without this line, the
+ # job is considered part of the release.
+ "helm.sh/hook": post-install
+ "helm.sh/hook-weight": "-3"
+ "helm.sh/hook-delete-policy": hook-succeeded
+spec:
+ template:
+ metadata:
+ name: {{ include "common.fullname" . }}
+ labels:
+ app.kubernetes.io/managed-by: {{.Release.Service | quote }}
+ app.kubernetes.io/instance: {{.Release.Name | quote }}
+ helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+ spec:
+ restartPolicy: Never
+ containers:
+ - name: post-install-job
+ image: "{{ include "common.repository" . }}/{{ .Values.global.clientImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ env:
+ - name: DELAY
+ value: "30"
+ - name: PROTO
+ value: "http"
+ - name: PORT
+ value: "8080"
+ - name: REQUESTID
+ value: "{{.Chart.Name}}-post-install"
+
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+
+# NOTE: on the following several configMaps, careful to include / at end
+# since there may be more than one file in each mountPath
+# NOTE: the basename of the subdirectory is important - it matches the DBCL API URI
+ - name: {{ include "common.fullname" . }}-dbc-feeds
+ mountPath: /opt/app/config/feeds/
+ - name: {{ include "common.fullname" . }}-dbc-drpubs
+ mountPath: /opt/app/config/dr_pubs/
+ - name: {{ include "common.fullname" . }}-dbc-drsubs
+ mountPath: /opt/app/config/dr_subs/
+ resources:
+{{ include "common.resources" . | indent 10 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-dbc-feeds
+ configMap:
+ name: {{ include "common.fullname" . }}-dbc-feeds
+ - name: {{ include "common.fullname" . }}-dbc-drpubs
+ configMap:
+ name: {{ include "common.fullname" . }}-dbc-drpubs
+ - name: {{ include "common.fullname" . }}-dbc-drsubs
+ configMap:
+ name: {{ include "common.fullname" . }}-dbc-drsubs
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/service.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/templates/service.yaml
index 15059c6bcc..691c9dcc9f 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/service.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/templates/service.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: Service
metadata:
- name: {{.Values.global.config.dmaapDrProv.name}}
+ name: {{.Values.config.dmaapDrProv.name}}
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -26,34 +26,34 @@ metadata:
service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
msb.onap.org/service-info: '[
{
- "serviceName": "{{.Values.global.config.dmaapDrProv.name}}",
+ "serviceName": "{{.Values.config.dmaapDrProv.name}}",
"version": "v1",
"url": "/",
"protocol": "REST",
- "port": "{{.Values.global.config.dmaapDrProv.externalPort}}",
+ "port": "{{.Values.config.dmaapDrProv.externalPort}}",
"visualRange":"1"
}
]'
spec:
- type: {{.Values.global.config.dmaapDrProv.servicetype}}
+ type: {{.Values.config.dmaapDrProv.servicetype}}
ports:
- {{if eq .Values.global.config.dmaapDrProv.servicetype "NodePort" -}}
- - port: {{.Values.global.config.dmaapDrProv.externalPort}}
- targetPort: {{.Values.global.config.dmaapDrProv.internalPort}}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.global.config.dmaapDrProv.nodePort}}
- name: {{.Values.global.config.dmaapDrProv.name}}
- - port: {{.Values.global.config.dmaapDrProv.externalPort2}}
- targetPort: {{.Values.global.config.dmaapDrProv.internalPort2}}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.global.config.dmaapDrProv.nodePort2}}
- name: {{.Values.global.config.dmaapDrProv.name}}2
+ {{if eq .Values.config.dmaapDrProv.servicetype "NodePort" -}}
+ - port: {{.Values.config.dmaapDrProv.externalPort}}
+ targetPort: {{.Values.config.dmaapDrProv.internalPort}}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.config.dmaapDrProv.nodePort}}
+ name: {{.Values.config.dmaapDrProv.name}}
+ - port: {{.Values.config.dmaapDrProv.externalPort2}}
+ targetPort: {{.Values.config.dmaapDrProv.internalPort2}}
+ nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{.Values.config.dmaapDrProv.nodePort2}}
+ name: {{.Values.config.dmaapDrProv.name}}2
{{- else -}}
- - port: {{.Values.global.config.dmaapDrProv.externalPort}}
- targetPort: {{.Values.global.config.dmaapDrProv.internalPort}}
- name: {{.Values.global.config.dmaapDrProv.name}}
- - port: {{.Values.global.config.dmaapDrProv.externalPort2}}
- targetPort: {{.Values.global.config.dmaapDrProv.internalPort2}}
- name: {{.Values.global.config.dmaapDrProv.name}}2
+ - port: {{.Values.config.dmaapDrProv.externalPort}}
+ targetPort: {{.Values.config.dmaapDrProv.internalPort}}
+ name: {{.Values.config.dmaapDrProv.name}}
+ - port: {{.Values.config.dmaapDrProv.externalPort2}}
+ targetPort: {{.Values.config.dmaapDrProv.internalPort2}}
+ name: {{.Values.config.dmaapDrProv.name}}2
{{- end}}
selector:
app: {{ include "common.name" . }}
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/values.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/values.yaml
new file mode 100644
index 0000000000..3d65e911cf
--- /dev/null
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/values.yaml
@@ -0,0 +1,121 @@
+# 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
+ readinessRepository: oomk8s
+ readinessImage: readiness-check:2.0.0
+ loggingRepository: docker.elastic.co
+ loggingImage: beats/filebeat:5.5.0
+ loggingDirectory: /opt/app/datartr/logs
+
+#################################################################
+# Application configuration defaults.
+#################################################################
+# application image
+repository: nexus3.onap.org:10001
+image: onap/dmaap/datarouter-prov:2.0.2
+pullPolicy: Always
+
+# flag to enable debugging - application support required
+debugEnabled: false
+
+# application configuration - see parent values chart
+
+# default number of instances
+replicaCount: 1
+
+nodeSelector: {}
+
+affinity: {}
+
+# probe configuration parameters
+liveness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+ # necessary to disable liveness probe when setting breakpoints
+ # in debugger so K8s doesn't restart unresponsive container
+ enabled: true
+
+readiness:
+ initialDelaySeconds: 30
+ periodSeconds: 10
+
+## Persist data to a persitent volume
+persistence:
+ enabled: false
+
+ingress:
+ enabled: false
+
+# Resource Limit flavor -By Default using small
+flavor: small
+# Segregation for Different environment (Small and Large)
+resources:
+ small:
+ limits:
+ cpu: 2000m
+ memory: 4Gi
+ requests:
+ cpu: 500m
+ memory: 1Gi
+ large:
+ limits:
+ cpu: 4000m
+ memory: 8Gi
+ requests:
+ cpu: 1000m
+ memory: 2Gi
+ unlimited: {}
+
+config:
+ # dr provisioning server configuration
+ dmaapDrProv:
+ servicetype: NodePort
+ name: dmaap-dr-prov
+ externalPort: 8080
+ externalPort2: 8443
+ internalPort: 8080
+ internalPort2: 8443
+ portName: dr-prov-port
+ portName2: dr-prov-port2
+ nodePort: 59
+ nodePort2: 69
+ # dr-prov db configuration
+ dmaapDrDb:
+ mariadbServiceName: dmaap-dr-db-svc
+ mariadbServicePort: 3306
+ mariadbContName: dmaap-dr-db
+
+# mariadb-galera configuration
+mariadb:
+ name: dmaap-dr-db
+ nameOverride: dmaap-dr-db
+ replicaCount: 2
+ config:
+ mariadbRootPassword: datarouter
+ userName: datarouter
+ userPassword: datarouter
+ mysqlDatabase: datarouter
+ service:
+ name: dmaap-dr-db-svc
+ portName: dmaap-dr-db-svc
+ nfsprovisionerPrefix: dmaap-dr-db
+ persistence:
+ size: 1Gi
+ mountSubPath: data-router/dr-db-data
+ disableNfsProvisioner: true \ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/.helmignore b/kubernetes/dmaap/components/message-router/.helmignore
index f0c1319444..f0c1319444 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/.helmignore
+++ b/kubernetes/dmaap/components/message-router/.helmignore
diff --git a/kubernetes/dmaap/charts/message-router/Chart.yaml b/kubernetes/dmaap/components/message-router/Chart.yaml
index 1a05378712..1a05378712 100644
--- a/kubernetes/dmaap/charts/message-router/Chart.yaml
+++ b/kubernetes/dmaap/components/message-router/Chart.yaml
diff --git a/kubernetes/dmaap/charts/message-router/.helmignore b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/.helmignore
index f0c1319444..f0c1319444 100644
--- a/kubernetes/dmaap/charts/message-router/.helmignore
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/.helmignore
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/Chart.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/Chart.yaml
index 0f7c27701d..0f7c27701d 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/Chart.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/Chart.yaml
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/NOTES.txt b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/NOTES.txt
index a44d0f76ee..a44d0f76ee 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/NOTES.txt
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/NOTES.txt
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/poddisruptionbudget.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/poddisruptionbudget.yaml
index 0bc64e7682..5c2db8c1e4 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/poddisruptionbudget.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/poddisruptionbudget.yaml
@@ -24,5 +24,5 @@ metadata:
spec:
selector:
matchLabels:
- app: {{ include "common.fullname" . }}
+ app: {{ include "common.name" . }}
maxUnavailable: 1
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pv.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/pv.yaml
index 44c9576abe..44c9576abe 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/pv.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/pv.yaml
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/service.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/service-hs.yaml
index 88de96b2d5..0dabe55e10 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/service.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/service-hs.yaml
@@ -24,10 +24,8 @@ metadata:
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
- type: {{ .Values.service.type }}
ports:
- - port: {{ .Values.service.externalPort }}
- targetPort: {{ .Values.service.internalPort }}
+ - port: {{ .Values.service.internalPort }}
name: {{ .Values.service.portName }}
clusterIP: None
selector:
diff --git a/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/service.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/service.yaml
new file mode 100644
index 0000000000..8200eda6b1
--- /dev/null
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/service.yaml
@@ -0,0 +1,39 @@
+# Copyright © 2019 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.
+
+{{- $root := . -}}
+{{ range $i, $e := until (atoi (quote $root.Values.replicaCount) | default 3) }}
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ $root.Values.service.name }}-{{ $i }}
+ namespace: {{ $root.Release.Namespace }}
+ labels:
+ app: {{ $root.Values.service.name }}
+ chart: {{ $root.Chart.Name }}-{{ $root.Chart.Version | replace "+" "_" }}
+ release: {{ $root.Release.Name }}
+ heritage: {{ $root.Release.Service }}
+
+spec:
+ type: {{ $root.Values.service.type }}
+ externalTrafficPolicy: Local
+ selector:
+ statefulset.kubernetes.io/pod-name: {{ $root.Release.Name }}-{{ $root.Values.service.name }}-{{ $i }}
+ ports:
+ - port: {{ $root.Values.service.externalPort }}
+ targetPort: {{ $root.Values.service.externalPort }}
+ nodePort: {{ $root.Values.service.baseNodePort | add $i }}
+ name: {{ $root.Values.service.name }}-{{ $i }}
+{{ end }}
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/statefulset.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/statefulset.yaml
index 163bbc23b6..cc8fd5a93c 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/templates/statefulset.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/templates/statefulset.yaml
@@ -34,7 +34,11 @@ spec:
release: {{ .Release.Name }}
spec:
podAntiAffinity:
+ {{if eq .Values.podAntiAffinityType "hard" -}}
+ requiredDuringSchedulingIgnoredDuringExecution:
+ {{- else -}}
preferredDuringSchedulingIgnoredDuringExecution:
+ {{- end}}
- weight: 1
podAffinityTerm:
labelSelector:
@@ -44,6 +48,10 @@ spec:
values:
- {{ include "common.name" . }}
topologyKey: "kubernetes.io/hostname"
+ {{- if .Values.nodeAffinity }}
+ nodeAffinity:
+ {{ toYaml .Values.nodeAffinity | indent 10 }}
+ {{- end }}
initContainers:
- name: {{ include "common.name" . }}-initcontainer
image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
@@ -66,10 +74,19 @@ spec:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - sh
+ - -exc
+ - |
+ export KAFKA_BROKER_ID=${HOSTNAME##*-} && \
+ export ENDPOINT_PORT=$(( $KAFKA_BROKER_ID + {{ .Values.service.baseNodePort }} )) && \
+ export KAFKA_ADVERTISED_LISTENERS=EXTERNAL_SASL_PLAINTEXT://$(HOST_IP):$(( $KAFKA_BROKER_ID + {{ .Values.service.baseNodePort }} )),INTERNAL_SASL_PLAINTEXT://:{{ .Values.service.internalPort }} && \
+ exec start-kafka.sh
resources:
{{ include "common.resources" . | indent 12 }}
ports:
- containerPort: {{ .Values.service.internalPort }}
+ - containerPort: {{ .Values.service.externalPort }}
{{ if eq .Values.liveness.enabled true }}
livenessProbe:
tcpSocket:
@@ -83,30 +100,31 @@ spec:
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- - name: HOST_NAME
+ - name: HOST_IP
valueFrom:
fieldRef:
apiVersion: v1
- fieldPath: metadata.name
- - name: HOST_NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
+ fieldPath: status.hostIP
- name: KAFKA_ZOOKEEPER_CONNECT
value: "{{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}"
- name: KAFKA_LISTENER_SECURITY_PROTOCOL_MAP
- value: "INTERNAL_PLAINTEXT:PLAINTEXT,EXTERNAL_PLAINTEXT:PLAINTEXT"
- - name: KAFKA_ADVERTISED_LISTENERS
- value: "INTERNAL_PLAINTEXT://$(HOST_NAME).{{ .Values.service.name }}.$(HOST_NAMESPACE).svc.cluster.local:{{ .Values.service.internalPort}}"
+ value: "INTERNAL_SASL_PLAINTEXT:SASL_PLAINTEXT,EXTERNAL_SASL_PLAINTEXT:SASL_PLAINTEXT"
- name: KAFKA_LISTENERS
- value: "INTERNAL_PLAINTEXT://0.0.0.0:{{.Values.service.internalPort}}"
+ value: "EXTERNAL_SASL_PLAINTEXT://0.0.0.0:{{ .Values.service.externalPort }},INTERNAL_SASL_PLAINTEXT://0.0.0.0:{{ .Values.service.internalPort }}"
- name: KAFKA_INTER_BROKER_LISTENER_NAME
- value: "INTERNAL_PLAINTEXT"
+ value: "INTERNAL_SASL_PLAINTEXT"
+ - name: KAFKA_SASL_ENABLED_MECHANISMS
+ value: "PLAIN"
+ - name: KAFKA_SASL_MECHANISM_INTER_BROKER_PROTOCOL
+ value: "PLAIN"
+ - name: KAFKA_AUTHORIZER_CLASS_NAME
+ value: "{{ .Values.kafkaCustomAuthorizer }}"
+ - name: KAFKA_DELETE_TOPIC_ENABLE
+ value: "{{ .Values.deleteTopicEnable }}"
+ - name: aaf_locate_url
+ value: "https://aaf-locate:8095"
- name: KAFKA_LOG_DIRS
value: "kafka/logs"
- - name: BROKER_ID_COMMAND
- value: "hostname | awk -F '-' '{print $NF}'"
- name: KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR
value: "{{ .Values.replicaCount }}"
- name: KAFKA_DEFAULT_REPLICATION_FACTOR
@@ -121,6 +139,10 @@ spec:
name: docker-socket
- mountPath: /kafka
name: kafka-data
+ {{- if .Values.tolerations }}
+ tolerations:
+ {{ toYaml .Values.tolerations | indent 10 }}
+ {{- end }}
volumes:
- name: localtime
hostPath:
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/values.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/values.yaml
index 6569729bee..5b83bb0a55 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/values.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-kafka/values.yaml
@@ -30,7 +30,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/dmaap/kafka01101:0.0.1
+image: onap/dmaap/kafka111:0.0.5
pullPolicy: Always
ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
@@ -44,24 +44,36 @@ debugEnabled: false
# default number of instances
replicaCount: 3
+#Kafka custom authorizer class name
+kafkaCustomAuthorizer: org.onap.dmaap.kafkaAuthorize.KafkaCustomAuthorizer
+deleteTopicEnable: true
+
+# To access Kafka outside cluster, this value must be set to hard and the number of nodes in K8S cluster must be equal or greater then replica count
+podAntiAffinityType: soft
+
# defult partitions
defaultpartitions: 3
-
nodeSelector: {}
+nodeAffinity: {}
+
affinity: {}
+tolerations: {}
+
+
+
# probe configuration parameters
liveness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 60
periodSeconds: 10
# necessary to disable liveness probe when setting breakpoints
# in debugger so K8s doesn't restart unresponsive container
enabled: true
readiness:
- initialDelaySeconds: 10
+ initialDelaySeconds: 60
periodSeconds: 10
## Persist data to a persitent volume
@@ -88,11 +100,14 @@ persistence:
mountSubPath: message-router/data-kafka
service:
- type: ClusterIP
+ type: NodePort
name: message-router-kafka
portName: message-router-kafka
internalPort: 9092
- externalPort: 9092
+ externalPort: 9093
+ baseNodePort: 30490
+
+
ingress:
enabled: false
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/Chart.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/Chart.yaml
index 07de3beccf..1d0b7bea22 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/Chart.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/Chart.yaml
@@ -1,4 +1,5 @@
# Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,6 +14,7 @@
# limitations under the License.
apiVersion: v1
-description: ONAP DMaaP Data Router
-name: dmaap-data-router
-version: 1.0
+description: ONAP Message Router Kafka Service
+name: message-router-mirrormaker
+version: 4.0.0
+
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/NOTES.txt b/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/templates/NOTES.txt
index a44d0f76ee..a44d0f76ee 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/NOTES.txt
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/templates/NOTES.txt
diff --git a/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/templates/deployment.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/templates/deployment.yaml
new file mode 100644
index 0000000000..51c4149094
--- /dev/null
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/templates/deployment.yaml
@@ -0,0 +1,103 @@
+# Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 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: apps/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:
+ serviceName: {{ .Values.service.name }}
+ replicas: {{ .Values.replicaCount }}
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}
+ release: {{ .Release.Name }}
+ spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-initcontainer
+ image: "{{ .Values.global.ubuntuInitRepository }}/{{ .Values.ubuntuInitImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.messagerouter.container }}
+ 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 }}
+ command:
+ - sh
+ - -exc
+ - |
+ exec start-mirrormaker.sh
+ resources:
+{{ include "common.resources" . | indent 12 }}
+ ports:
+ - containerPort: {{ .Values.service.internalPort }}
+ {{ if eq .Values.liveness.enabled true }}
+ livenessProbe:
+ exec:
+ command:
+ - sh
+ - -c
+ - "touch /tmp/lprobe.txt"
+ - "rm /tmp/lprobe.txt"
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ exec:
+ command:
+ - sh
+ - -c
+ - "touch /tmp/rprobe.txt"
+ - "rm /tmp/rprobe.txt"
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
+ env:
+ - name: KAFKA_HEAP_OPTS
+ value: "{{ .Values.kafkaHeapOptions }}"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /var/run/docker.sock
+ name: docker-socket
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: docker-socket
+ hostPath:
+ path: /var/run/docker.sock
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/values.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/values.yaml
index e9a966e0a7..2fbd884ab8 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/values.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-mirrormaker/values.yaml
@@ -1,4 +1,5 @@
# Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright © 2018 AT&T
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -21,22 +22,31 @@ global:
readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
+ persistence: {}
+ ubuntuInitRepository: registry.hub.docker.com
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/dmaap/datarouter-prov:2.0.0
+image: onap/dmaap/kafka111:0.0.5
pullPolicy: Always
+ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
+
+zookeeper:
+ name: message-router-zookeeper
+ port: 2181
+
+messagerouter:
+ container: message-router
# flag to enable debugging - application support required
debugEnabled: false
-# application configuration - see parent values chart
-
# default number of instances
replicaCount: 1
+kafkaHeapOptions: -Xmx4G -Xms2G
nodeSelector: {}
@@ -44,25 +54,30 @@ affinity: {}
# probe configuration parameters
liveness:
- initialDelaySeconds: 30
- periodSeconds: 10
+ initialDelaySeconds: 60
+ periodSeconds: 20
# necessary to disable liveness probe when setting breakpoints
# in debugger so K8s doesn't restart unresponsive container
enabled: true
readiness:
- initialDelaySeconds: 30
- periodSeconds: 10
+ initialDelaySeconds: 60
+ periodSeconds: 20
-## Persist data to a persitent volume
-persistence:
- enabled: false
+
+service:
+ type: NodePort
+ name: message-router-mirrormaker
+ portName: message-router-mirrormaker
+ internalPort: 9092
+
+
ingress:
enabled: false
# Resource Limit flavor -By Default using small
-flavor: small
+flavor: large
# Segregation for Different environment (Small and Large)
resources:
small:
@@ -80,3 +95,4 @@ resources:
cpu: 1000m
memory: 2Gi
unlimited: {}
+
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/.helmignore b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/.helmignore
index f0c1319444..f0c1319444 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-kafka/.helmignore
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/.helmignore
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/Chart.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/Chart.yaml
index a6a73b5d3d..a6a73b5d3d 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/Chart.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/Chart.yaml
diff --git a/kubernetes/dmaap/charts/message-router/templates/NOTES.txt b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/NOTES.txt
index a44d0f76ee..a44d0f76ee 100644
--- a/kubernetes/dmaap/charts/message-router/templates/NOTES.txt
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/NOTES.txt
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/poddisruptionbudget.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/poddisruptionbudget.yaml
index 0bc64e7682..2d251e90b0 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/poddisruptionbudget.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/poddisruptionbudget.yaml
@@ -24,5 +24,5 @@ metadata:
spec:
selector:
matchLabels:
- app: {{ include "common.fullname" . }}
- maxUnavailable: 1
+ app: {{ include "common.name" . }}
+ maxUnavailable: {{ div (sub .Values.replicaCount 1) 2 }}
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pv.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/pv.yaml
index 44c9576abe..44c9576abe 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/pv.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/pv.yaml
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/service.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/service.yaml
index da494b0ba5..da494b0ba5 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/service.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/service.yaml
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/statefulset.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/statefulset.yaml
index 14f27949a7..b2f9f13e67 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/templates/statefulset.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/templates/statefulset.yaml
@@ -48,6 +48,10 @@ spec:
values:
- {{ include "common.name" . }}
topologyKey: "kubernetes.io/hostname"
+ {{- if .Values.nodeAffinity }}
+ nodeAffinity:
+ {{ toYaml .Values.nodeAffinity | indent 10 }}
+ {{- end }}
initContainers:
- name: {{ include "common.name" . }}-seed-topics-apikeys
command:
@@ -111,6 +115,10 @@ spec:
readOnly: true
- mountPath: /var/lib/zookeeper/data
name: zookeeper-data
+ {{- if .Values.tolerations }}
+ tolerations:
+ {{ toYaml .Values.tolerations | indent 10 }}
+ {{- end }}
volumes:
- name: localtime
hostPath:
diff --git a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/values.yaml b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/values.yaml
index 6eeafccb00..37a1babe17 100644
--- a/kubernetes/dmaap/charts/message-router/charts/message-router-zookeeper/values.yaml
+++ b/kubernetes/dmaap/components/message-router/charts/message-router-zookeeper/values.yaml
@@ -30,7 +30,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/dmaap/zookeeper:2.0.0
+image: onap/dmaap/zookeeper:3.0.0
pullPolicy: Always
ubuntuInitImage: oomk8s/ubuntu-init:2.0.0
@@ -49,8 +49,12 @@ replicaCount: 3
nodeSelector: {}
+nodeAffinity: {}
+
affinity: {}
+tolerations: {}
+
# probe configuration parameters
liveness:
initialDelaySeconds: 10
@@ -126,4 +130,4 @@ resources:
requests:
cpu: 1000m
memory: 2Gi
- unlimited: {} \ No newline at end of file
+ unlimited: {}
diff --git a/kubernetes/dmaap/charts/message-router/requirements.yaml b/kubernetes/dmaap/components/message-router/requirements.yaml
index a13c53da2c..a13c53da2c 100644
--- a/kubernetes/dmaap/charts/message-router/requirements.yaml
+++ b/kubernetes/dmaap/components/message-router/requirements.yaml
diff --git a/kubernetes/dmaap/charts/message-router/resources/config/dmaap/MsgRtrApi.properties b/kubernetes/dmaap/components/message-router/resources/config/dmaap/MsgRtrApi.properties
index d40d2a1468..8e446610d4 100755
--- a/kubernetes/dmaap/charts/message-router/resources/config/dmaap/MsgRtrApi.properties
+++ b/kubernetes/dmaap/components/message-router/resources/config/dmaap/MsgRtrApi.properties
@@ -149,17 +149,18 @@ maxcontentlength=10000
#AAF Properties
msgRtr.namespace.aaf=org.onap.dmaap.mr.topic
msgRtr.topicfactory.aaf=org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic:
-enforced.topic.name.AAF=org.onap
+enforced.topic.name.AAF=org.onap.dmaap.mr
forceAAF=false
transidUEBtopicreqd=false
defaultNSforUEB=org.onap.dmaap.mr
##############################################################################
#Mirror Maker Agent
-msgRtr.mirrormakeradmin.aaf=com.onap.dmaap.mr.dev.mirrormaker|*|admin
-msgRtr.mirrormakeruser.aaf=com.onap.dmaap.mr.dev.mirrormaker|*|user
-msgRtr.mirrormakeruser.aaf.create=com.onap.dmaap.mr.dev.topicFactory|:com.onap.dmaap.mr.dev.topic:
+
+msgRtr.mirrormakeradmin.aaf=org.onap.dmaap.mr.mirrormaker|*|admin
+msgRtr.mirrormakeruser.aaf=org.onap.dmaap.mr.mirrormaker|*|user
+msgRtr.mirrormakeruser.aaf.create=org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic:
msgRtr.mirrormaker.timeout=15000
-msgRtr.mirrormaker.topic=com.onap.dmaap.mr.prod.mm.agent
+msgRtr.mirrormaker.topic=org.onap.dmaap.mr.mirrormakeragent
msgRtr.mirrormaker.consumergroup=mmagentserver
msgRtr.mirrormaker.consumerid=1
diff --git a/kubernetes/dmaap/charts/message-router/resources/config/dmaap/cadi.properties b/kubernetes/dmaap/components/message-router/resources/config/dmaap/cadi.properties
index a79bb8d40a..948577aaa7 100755
--- a/kubernetes/dmaap/charts/message-router/resources/config/dmaap/cadi.properties
+++ b/kubernetes/dmaap/components/message-router/resources/config/dmaap/cadi.properties
@@ -1,4 +1,4 @@
-aaf_locate_url=https://aaf-onap-test.osaaf.org:8095
+aaf_locate_url=https://aaf-locate:8095
aaf_url=https://AAF_LOCATE_URL/AAF_NS.service:2.1
aaf_env=DEV
aaf_lur=org.onap.aaf.cadi.aaf.v2_0.AAFLurPerm
@@ -17,4 +17,4 @@ cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US
cadi_loglevel=INFO
cadi_protocols=TLSv1.1,TLSv1.2
cadi_latitude=37.78187
-cadi_longitude=-122.26147 \ No newline at end of file
+cadi_longitude=-122.26147
diff --git a/kubernetes/dmaap/charts/message-router/resources/config/dmaap/mykey b/kubernetes/dmaap/components/message-router/resources/config/dmaap/mykey
index c2b8b8779b..c2b8b8779b 100755
--- a/kubernetes/dmaap/charts/message-router/resources/config/dmaap/mykey
+++ b/kubernetes/dmaap/components/message-router/resources/config/dmaap/mykey
diff --git a/kubernetes/dmaap/components/message-router/resources/mr_clusters/san-francisco.json b/kubernetes/dmaap/components/message-router/resources/mr_clusters/san-francisco.json
new file mode 100644
index 0000000000..9e732d2af8
--- /dev/null
+++ b/kubernetes/dmaap/components/message-router/resources/mr_clusters/san-francisco.json
@@ -0,0 +1,6 @@
+{
+ "dcaeLocationName": "san-francisco",
+ "fqdn": "message-router",
+ "topicProtocol": "http",
+ "topicPort": "3904"
+}
diff --git a/kubernetes/dmaap/components/message-router/resources/topics/PM_MAPPER.json b/kubernetes/dmaap/components/message-router/resources/topics/PM_MAPPER.json
new file mode 100644
index 0000000000..691e66abac
--- /dev/null
+++ b/kubernetes/dmaap/components/message-router/resources/topics/PM_MAPPER.json
@@ -0,0 +1,14 @@
+{
+ "topicName": "PM_MAPPER",
+ "topicDescription": "The PM Mapper will be publishing perf3gpp VES events to this topic",
+ "owner": "pm-mapper",
+ "txenabled": false,
+ "clients": [{
+ "dcaeLocationName": "san-francisco",
+ "clientIdentity" "dcae@dcae.onap.org",
+ "action": [
+ "pub",
+ "view"
+ ]
+ }]
+}
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_READY.json b/kubernetes/dmaap/components/message-router/resources/topics/PNF_READY.json
index 8f4cf8bd64..8f4cf8bd64 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_READY.json
+++ b/kubernetes/dmaap/components/message-router/resources/topics/PNF_READY.json
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_REGISTRATION.json b/kubernetes/dmaap/components/message-router/resources/topics/PNF_REGISTRATION.json
index f0dd2c7829..f0dd2c7829 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/PNF_REGISTRATION.json
+++ b/kubernetes/dmaap/components/message-router/resources/topics/PNF_REGISTRATION.json
diff --git a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/README b/kubernetes/dmaap/components/message-router/resources/topics/README
index fbb88b97e6..fbb88b97e6 100644
--- a/kubernetes/dmaap/charts/dmaap-bus-controller/resources/topics/README
+++ b/kubernetes/dmaap/components/message-router/resources/topics/README
diff --git a/kubernetes/dmaap/components/message-router/resources/topics/mirrormakeragent.json b/kubernetes/dmaap/components/message-router/resources/topics/mirrormakeragent.json
new file mode 100644
index 0000000000..7ae77cd8a8
--- /dev/null
+++ b/kubernetes/dmaap/components/message-router/resources/topics/mirrormakeragent.json
@@ -0,0 +1,42 @@
+{
+ "topicName": "mirrormakeragent",
+ "topicDescription": "the topic used to provision the MM agent whitelist",
+ "replicationCase": "REPLICATION_NONE",
+ "owner": "dmaap",
+ "txenabled": false,
+ "partitionCount": "1",
+ "clients": [
+ {
+ "dcaeLocationName": "san-francisco",
+ "clientIdentity": "dmaap-bc-mm-prov@dmaap-bc-mm-prov.onap.org",
+ "action": [
+ "pub",
+ "sub",
+ "view"
+ ]
+
+ },
+ {
+ "dcaeLocationName": "san-francisco",
+ "clientIdentity": "dmaap-bc-topic-mgr@dmaap-bc-topic-mgr.onap.org",
+ "action": [
+ "pub",
+ "sub",
+ "view"
+ ]
+
+ },
+ {
+ "dcaeLocationName": "san-francisco",
+ "clientIdentity": "demo@people.osaaf.org",
+ "action": [
+ "pub",
+ "sub",
+ "view"
+ ]
+
+ }
+
+ ]
+}
+
diff --git a/kubernetes/dmaap/components/message-router/templates/NOTES.txt b/kubernetes/dmaap/components/message-router/templates/NOTES.txt
new file mode 100644
index 0000000000..a44d0f76ee
--- /dev/null
+++ b/kubernetes/dmaap/components/message-router/templates/NOTES.txt
@@ -0,0 +1,34 @@
+# Copyright © 2018 AT&T Intellectual Property. All rights reserved.
+# Modifications Copyright © 2018 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.
+
+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/dmaap/charts/message-router/templates/configmap.yaml b/kubernetes/dmaap/components/message-router/templates/configmap.yaml
index 1ed788893f..e2e0da51fd 100644
--- a/kubernetes/dmaap/charts/message-router/templates/configmap.yaml
+++ b/kubernetes/dmaap/components/message-router/templates/configmap.yaml
@@ -38,3 +38,30 @@ metadata:
heritage: {{ .Release.Service }}
data:
{{ tpl (.Files.Glob "resources/config/dmaap/cadi.properties").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dbc-mrclusters
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/mr_clusters/*.json").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.fullname" . }}-dbc-topics
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+data:
+{{ tpl (.Files.Glob "resources/topics/*.json").AsConfig . | indent 2 }}
+
diff --git a/kubernetes/dmaap/components/message-router/templates/post-install-job.yaml b/kubernetes/dmaap/components/message-router/templates/post-install-job.yaml
new file mode 100644
index 0000000000..6d246de87f
--- /dev/null
+++ b/kubernetes/dmaap/components/message-router/templates/post-install-job.yaml
@@ -0,0 +1,71 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-post-install
+ labels:
+ app.kubernetes.io/managed-by: {{.Release.Service | quote }}
+ app.kubernetes.io/instance: {{.Release.Name | quote }}
+ helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+ annotations:
+ # This is what defines this resource as a hook. Without this line, the
+ # job is considered part of the release.
+ "helm.sh/hook": post-install
+ "helm.sh/hook-weight": "-4"
+ "helm.sh/hook-delete-policy": hook-succeeded
+spec:
+ template:
+ metadata:
+ name: {{ include "common.fullname" . }}
+ labels:
+ app.kubernetes.io/managed-by: {{.Release.Service | quote }}
+ app.kubernetes.io/instance: {{.Release.Name | quote }}
+ helm.sh/chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+ spec:
+ restartPolicy: Never
+ containers:
+ - name: post-install-job
+ image: "{{ include "common.repository" . }}/{{ .Values.global.clientImage }}"
+ imagePullPolicy: "Always"
+ env:
+ - name: DELAY
+ value: "30"
+ - name: PROTO
+ value: "http"
+ - name: PORT
+ value: "8080"
+ - name: REQUESTID
+ value: "{{.Chart.Name}}-post-install"
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+
+# NOTE: on the following several configMaps, careful to include / at end
+# since there may be more than one file in each mountPath
+# NOTE: the basename of the subdirectory of mountPath is important - it matches the DBCL API URI
+ - name: {{ include "common.fullname" . }}-dbc-mrclusters
+ mountPath: /opt/app/config/mr_clusters/
+ - name: {{ include "common.fullname" . }}-dbc-topics
+ mountPath: /opt/app/config/topics/
+ resources:
+{{ include "common.resources" . | indent 10 }}
+ {{- if .Values.nodeSelector }}
+ nodeSelector:
+{{ toYaml .Values.nodeSelector | indent 8 }}
+ {{- end -}}
+ {{- if .Values.affinity }}
+ affinity:
+{{ toYaml .Values.affinity | indent 8 }}
+ {{- end }}
+ volumes:
+ - name: localtime
+ hostPath:
+ path: /etc/localtime
+ - name: {{ include "common.fullname" . }}-dbc-mrclusters
+ configMap:
+ name: {{ include "common.fullname" . }}-dbc-mrclusters
+ - name: {{ include "common.fullname" . }}-dbc-topics
+ configMap:
+ name: {{ include "common.fullname" . }}-dbc-topics
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dmaap/charts/message-router/templates/secrets.yaml b/kubernetes/dmaap/components/message-router/templates/secrets.yaml
index 023b5a1614..023b5a1614 100644
--- a/kubernetes/dmaap/charts/message-router/templates/secrets.yaml
+++ b/kubernetes/dmaap/components/message-router/templates/secrets.yaml
diff --git a/kubernetes/dmaap/charts/message-router/templates/service.yaml b/kubernetes/dmaap/components/message-router/templates/service.yaml
index dfd90b28f2..dfd90b28f2 100644
--- a/kubernetes/dmaap/charts/message-router/templates/service.yaml
+++ b/kubernetes/dmaap/components/message-router/templates/service.yaml
diff --git a/kubernetes/dmaap/charts/message-router/templates/statefulset.yaml b/kubernetes/dmaap/components/message-router/templates/statefulset.yaml
index bdd134ac64..7bf88f5f8e 100644
--- a/kubernetes/dmaap/charts/message-router/templates/statefulset.yaml
+++ b/kubernetes/dmaap/components/message-router/templates/statefulset.yaml
@@ -68,7 +68,7 @@ spec:
periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: enableCadi
- value: "false"
+ value: "true"
volumeMounts:
- mountPath: /etc/localtime
name: localtime
diff --git a/kubernetes/dmaap/charts/message-router/values.yaml b/kubernetes/dmaap/components/message-router/values.yaml
index 5d01e55077..10ce59c0ac 100644
--- a/kubernetes/dmaap/charts/message-router/values.yaml
+++ b/kubernetes/dmaap/components/message-router/values.yaml
@@ -28,7 +28,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/dmaap/dmaap-mr:1.1.9
+image: onap/dmaap/dmaap-mr:1.1.11
pullPolicy: Always
kafka:
diff --git a/kubernetes/dmaap/requirements.yaml b/kubernetes/dmaap/requirements.yaml
index fd35bf77f4..cda78cf04f 100644
--- a/kubernetes/dmaap/requirements.yaml
+++ b/kubernetes/dmaap/requirements.yaml
@@ -17,3 +17,19 @@ dependencies:
- name: common
version: ~4.x-0
repository: '@local'
+ - name: message-router
+ version: ~4.x-0
+ repository: 'file://components/message-router'
+ condition: message-router.enabled
+ - name: dmaap-bc
+ version: ~4.x-0
+ repository: 'file://components/dmaap-bc'
+ condition: dmaap-bus-controller.enabled
+ - name: dmaap-dr-node
+ version: ~4.x-0
+ repository: 'file://components/dmaap-dr-node'
+ condition: dmaap-dr-node.enabled
+ - name: dmaap-dr-prov
+ version: ~4.x-0
+ repository: 'file://components/dmaap-dr-prov'
+ condition: dmaap-dr-prov.enabled
diff --git a/kubernetes/dmaap/resources/config/log/filebeat/filebeat.yml b/kubernetes/dmaap/resources/config/log/filebeat/filebeat.yml
new file mode 100644
index 0000000000..f1cf7394b6
--- /dev/null
+++ b/kubernetes/dmaap/resources/config/log/filebeat/filebeat.yml
@@ -0,0 +1,60 @@
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 The Nordix Foundation. All rights reserved.
+# ================================================================================
+# 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.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+filebeat.prospectors:
+#it is mandatory, in our case it's log
+- input_type: log
+ #This is the canolical path as mentioned in logback.xml, *.* means it will monitor all files in the directory.
+ paths:
+ - /var/log/onap/*/*/*/*.log
+ - /var/log/onap/*/*/*.log
+ - /var/log/onap/*/*.log
+ - /opt/app/datartr/logs/*.log
+ #Files older than this should be ignored.In our case it will be 48 hours i.e. 2 days. It is a helping flag for clean_inactive
+ ignore_older: 48h
+ # Remove the registry entry for a file that is more than the specified time. In our case it will be 96 hours, i.e. 4 days. It will help to keep registry records with in limit
+ clean_inactive: 96h
+
+
+# Name of the registry file. If a relative path is used, it is considered relative to the
+# data path. Else full qualified file name.
+#filebeat.registry_file: ${path.data}/registry
+
+
+output.logstash:
+ #List of logstash server ip addresses with port number.
+ #But, in our case, this will be the loadbalancer IP address.
+ #For the below property to work the loadbalancer or logstash should expose 5044 port to listen the filebeat events or port in the property should be changed appropriately.
+ hosts: ["{{.Values.config.logstashServiceName}}.{{.Release.Namespace}}:{{.Values.config.logstashPort}}"]
+ #If enable will do load balancing among available Logstash, automatically.
+ loadbalance: true
+
+ #The list of root certificates for server verifications.
+ #If certificate_authorities is empty or not set, the trusted
+ #certificate authorities of the host system are used.
+ #ssl.certificate_authorities: $ssl.certificate_authorities
+
+ #The path to the certificate for SSL client authentication. If the certificate is not specified,
+ #client authentication is not available.
+ #ssl.certificate: $ssl.certificate
+
+ #The client certificate key used for client authentication.
+ #ssl.key: $ssl.key
+
+ #The passphrase used to decrypt an encrypted key stored in the configured key file
+ #ssl.key_passphrase: $ssl.key_passphrase \ No newline at end of file
diff --git a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/configmap.yaml b/kubernetes/dmaap/templates/configmap.yaml
index 525c18b6ba..bdd3b0a31e 100644
--- a/kubernetes/dmaap/charts/dmaap-data-router/charts/dmaap-dr-prov/templates/configmap.yaml
+++ b/kubernetes/dmaap/templates/configmap.yaml
@@ -1,26 +1,26 @@
-# Copyright © 2017 Amdocs, Bell Canada
#
+# ============LICENSE_START=======================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ================================================================================
# 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
+# 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.
-
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+#
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-prov-props-configmap
+ name: {{ .Release.Name }}-dmaap-filebeat-configmap
namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
data:
-{{ tpl (.Files.Glob "resources/config/provserver.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/log/filebeat/filebeat.yml").AsConfig . | indent 2 }}
diff --git a/kubernetes/dmaap/values.yaml b/kubernetes/dmaap/values.yaml
index 6ded7d1d1e..e7b39af1ad 100644
--- a/kubernetes/dmaap/values.yaml
+++ b/kubernetes/dmaap/values.yaml
@@ -22,3 +22,17 @@ global:
readinessImage: readiness-check:2.0.0
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
+ clientImage: onap/dmaap/dbc-client:1.0.5
+# application configuration
+config:
+ logstashServiceName: log-ls
+ logstashPort: 5044
+
+message-router:
+ enabled: true
+dmaap-bc:
+ enabled: true
+dmaap-dr-node:
+ enabled: true
+dmaap-dr-prov:
+ enabled: true