aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/example-integration-override.yaml36
-rw-r--r--docs/helm-search.txt31
-rw-r--r--docs/oom_quickstart_guide.rst101
-rw-r--r--kubernetes/aai/charts/aai-cassandra/.helmignore21
-rw-r--r--kubernetes/aai/charts/aai-cassandra/Chart.yaml19
-rw-r--r--kubernetes/aai/charts/aai-cassandra/templates/service.yaml53
-rw-r--r--kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml132
-rw-r--r--kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml39
-rw-r--r--kubernetes/aai/charts/aai-cassandra/values.yaml121
-rw-r--r--kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml7
-rw-r--r--kubernetes/aai/charts/aai-champ/templates/deployment.yaml4
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-cached.properties7
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-realtime.properties8
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/resources/config/migration/janusgraph-migration-cached.properties70
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/resources/config/migration/janusgraph-migration-real.properties65
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/templates/configmap.yaml80
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/templates/deployment.yaml48
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/templates/job.yaml317
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/templates/pv.yaml42
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/templates/pvc.yaml51
-rw-r--r--kubernetes/aai/charts/aai-graphadmin/values.yaml18
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties8
-rw-r--r--kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties8
-rw-r--r--kubernetes/aai/charts/aai-resources/templates/configmap.yaml74
-rw-r--r--kubernetes/aai/charts/aai-resources/templates/deployment.yaml47
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties8
-rw-r--r--kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties8
-rw-r--r--kubernetes/aai/charts/aai-traversal/templates/configmap.yaml74
-rw-r--r--kubernetes/aai/charts/aai-traversal/templates/deployment.yaml47
-rw-r--r--kubernetes/aai/charts/aai-traversal/templates/job.yaml40
-rw-r--r--kubernetes/aai/requirements.yaml7
-rw-r--r--kubernetes/aai/values.yaml87
-rw-r--r--kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql10
-rw-r--r--kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/create-tables.sql84
-rwxr-xr-x[-rw-r--r--]kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/load-sql-files-tests-automation.sh4
-rw-r--r--kubernetes/clamp/charts/mariadb/values.yaml4
-rw-r--r--kubernetes/common/dgbuilder/values.yaml2
-rw-r--r--kubernetes/common/mariadb-galera/templates/statefulset.yaml1
-rw-r--r--kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml2
-rwxr-xr-xkubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml28
-rw-r--r--kubernetes/dcaegen2/Makefile8
-rw-r--r--kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml16
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml6
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml23
-rw-r--r--kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml8
-rw-r--r--kubernetes/dcaegen2/charts/dcae-config-binding-service/values.yaml2
-rw-r--r--kubernetes/dcaegen2/charts/dcae-deployment-handler/values.yaml4
-rw-r--r--kubernetes/dcaegen2/charts/dcae-policy-handler/resources/config/config.json1
-rw-r--r--kubernetes/dcaegen2/charts/dcae-policy-handler/values.yaml4
-rw-r--r--kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/values.yaml2
-rw-r--r--kubernetes/dcaegen2/values.yaml7
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/requirements.yaml1
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/resources/config/dmaapbc.properties4
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/templates/deployment.yaml22
-rw-r--r--kubernetes/dmaap/components/dmaap-bc/values.yaml8
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties6
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml13
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-node/values.yaml4
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties8
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml4
-rw-r--r--kubernetes/dmaap/components/dmaap-dr-prov/values.yaml2
-rw-r--r--kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw-tweaks.sh11
-rw-r--r--kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf4
-rw-r--r--kubernetes/policy/charts/mariadb/resources/config/db.sh2
-rw-r--r--kubernetes/policy/charts/policy-apex-pdp/resources/config/OnapPfConfig.json16
-rw-r--r--kubernetes/policy/charts/policy-apex-pdp/resources/config/topic.properties23
-rw-r--r--kubernetes/policy/charts/policy-apex-pdp/templates/configmap.yaml3
-rw-r--r--kubernetes/policy/charts/policy-apex-pdp/templates/statefulset.yaml6
-rw-r--r--kubernetes/policy/charts/policy-apex-pdp/values.yaml2
-rw-r--r--kubernetes/policy/charts/policy-api/resources/config/config.json11
-rw-r--r--kubernetes/policy/charts/policy-api/templates/deployment.yaml15
-rw-r--r--kubernetes/policy/charts/policy-pap/resources/config/config.json19
-rw-r--r--kubernetes/policy/charts/policy-pap/resources/config/topic.properties22
-rw-r--r--kubernetes/policy/charts/policy-pap/templates/configmap.yaml2
-rw-r--r--kubernetes/policy/charts/policy-pap/templates/deployment.yaml17
-rw-r--r--kubernetes/policy/charts/policy-xacml-pdp/resources/config/config.json19
-rw-r--r--kubernetes/policy/charts/policy-xacml-pdp/resources/config/topic.properties22
-rw-r--r--kubernetes/policy/charts/policy-xacml-pdp/templates/configmap.yaml2
-rw-r--r--kubernetes/policy/charts/policy-xacml-pdp/templates/deployment.yaml17
-rw-r--r--kubernetes/portal/charts/portal-app/resources/certs/keystoreONAPPortal.p12bin4159 -> 4175 bytes
-rwxr-xr-xkubernetes/robot/demo-k8s.sh43
-rw-r--r--kubernetes/robot/eteHelm-k8s.sh51
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/resources/config/dblib.properties2
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml2
-rw-r--r--kubernetes/sdnc/charts/dmaap-listener/values.yaml11
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config2
-rw-r--r--kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml5
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/resources/config/admportal.json2
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties2
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml2
-rw-r--r--kubernetes/sdnc/charts/sdnc-portal/values.yaml18
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/resources/config/dblib.properties2
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml2
-rw-r--r--kubernetes/sdnc/charts/ueb-listener/values.yaml13
-rw-r--r--kubernetes/sdnc/requirements.yaml8
-rw-r--r--kubernetes/sdnc/resources/config/bin/installSdncDb.sh4
-rwxr-xr-xkubernetes/sdnc/resources/config/bin/startODL.sh2
-rw-r--r--kubernetes/sdnc/resources/config/conf/dblib.properties2
-rw-r--r--kubernetes/sdnc/resources/config/conf/svclogic.properties2
-rw-r--r--kubernetes/sdnc/sdnc-prom/values.yaml2
-rw-r--r--kubernetes/sdnc/templates/statefulset.yaml6
-rw-r--r--kubernetes/sdnc/values.yaml36
-rwxr-xr-xkubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml2
-rwxr-xr-xkubernetes/so/charts/so-vnfm-adapter/resources/config/overrides/override.yaml7
104 files changed, 1434 insertions, 973 deletions
diff --git a/docs/example-integration-override.yaml b/docs/example-integration-override.yaml
new file mode 100644
index 0000000000..9c336d69ce
--- /dev/null
+++ b/docs/example-integration-override.yaml
@@ -0,0 +1,36 @@
+global:
+ repository: 10.12.5.2:5000
+ pullPolicy: IfNotPresent
+robot:
+ enabled: true
+ flavor: large
+ appcUsername: "appc@appc.onap.org"
+ appcPassword: "APPC_PASSWORD_HERE"
+ openStackKeyStoneUrl: "http://10.12.25.2:5000"
+ openStackPublicNetId: "971040b2-7059-49dc-b220-4fab50cb2ad4"
+ openStackTenantId: "09d8566ea45e43aa974cf447ed591d77"
+ openStackUserName: "OPENSTACK_USERNAME_HERE"
+ ubuntu14Image: "ubuntu-14-04-cloud-amd64"
+ ubuntu16Image: "ubuntu-16-04-cloud-amd64"
+ openStackPrivateNetId: "d4ab89ff-c735-4ce4-93f6-cff445157b98"
+ openStackPrivateSubnetId: "46c2391c-ed98-4fb0-8ab7-88678bc55b9f"
+ openStackPrivateNetCidr: "10.0.0.0/16"
+ openStackSecurityGroup: "3914301b-2996-414f-ba0a-da4b2275a753"
+ openStackOamNetworkCidrPrefix: "10.0"
+ dcaeCollectorIp: "10.12.5.46"
+ vnfPubKey: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKXDgoo3+WOqcUG8/5uUbk81+yczgwC4Y8ywTmuQqbNxlY1oQ0YxdMUqUnhitSXs5S/yRuAVOYHwGg2mCs20oAINrP+mxBI544AMIb9itPjCtgqtE2EWo6MmnFGbHB4Sx3XioE7F4VPsh7japsIwzOjbrQe+Mua1TGQ5d4nfEOQaaglXLLPFfuc7WbhbJbK6Q7rHqZfRcOwAMXgDoBqlyqKeiKwnumddo2RyNT8ljYmvB6buz7KnMinzo7qB0uktVT05FH9Rg0CTWH5norlG5qXgP2aukL0gk1ph8iAt7uYLf1ktp+LJI2gaF6L0/qli9EmVCSLr1uJ38Q8CBflhkh"
+ demoArtifactsVersion: "1.3.0"
+ demoArtifactsRepoUrl: "https://nexus.onap.org/content/repositories/releases"
+ scriptVersion: "1.3.0"
+ rancherIpAddress: "10.12.6.38"
+ config:
+ openStackEncryptedPasswordHere: "XXXXXXXXXXXXXXXXXXXXXXXX_OPENSTACK_ENCRYPTED_PASSWORD_HEREXXXXXXXXXXXXXXXX"
+so:
+ enabled: true
+ so-catalog-db-adapter:
+ config:
+ openStackUserName: "OPENSTACK_USERNAME_HERE"
+ openStackKeyStoneUrl: "http://10.12.25.2:5000/v2.0"
+ openStackEncryptedPasswordHere: "XXXXXXXXXXXXXXXXXXXXXXXX_OPENSTACK_ENCRYPTED_PASSWORD_HEREXXXXXXXXXXXXXXXX"
+
+
diff --git a/docs/helm-search.txt b/docs/helm-search.txt
new file mode 100644
index 0000000000..db95e4f7d7
--- /dev/null
+++ b/docs/helm-search.txt
@@ -0,0 +1,31 @@
+NAME CHART VERSION APP VERSION DESCRIPTION
+local/onap 4.0.0 Dublin Open Network Automation Platform (ONAP)
+local/aaf 4.0.0 ONAP Application Authorization Framework
+local/aai 4.0.0 ONAP Active and Available Inventory
+local/cassandra 4.0.0 ONAP cassandra
+local/cds 4.0.0 ONAP Common Design Studio
+local/clamp 4.0.0 ONAP Clamp
+local/cli 4.0.0 ONAP Command Line Interface
+local/consul 4.0.0 ONAP Consul Agent
+local/contrib 4.0.0 ONAP optional tools
+local/dcaegen2 4.0.0 ONAP DCAE Gen2
+local/dmaap 4.0.1 ONAP DMaaP components
+local/esr 4.0.0 ONAP External System Register
+local/log 4.0.0 ONAP Logging ElasticStack
+local/msb 4.0.0 ONAP MicroServices Bus
+local/multicloud 4.0.0 ONAP multicloud broker
+local/nbi 4.0.0 ONAP Northbound Interface
+local/oof 4.0.0 ONAP Optimization Framework
+local/pnda 4.0.0 ONAP DCAE PNDA
+local/policy 4.0.0 ONAP Policy Administration Point
+local/pomba 4.0.0 ONAP Post Orchestration Model Based Audit
+local/portal 4.0.0 ONAP Web Portal
+local/postgres 4.0.0 ONAP Postgres Server
+local/robot 4.0.0 A helm Chart for kubernetes-ONAP Robot
+local/sdnc-prom 4.0.0 ONAP SDNC Policy Driven Ownership Management
+local/sniro-emulator 4.0.0 ONAP Mock Sniro Emulator
+local/so 4.0.0 ONAP Service Orchestrator
+local/uui 4.0.0 ONAP uui
+local/vfc 4.0.0 ONAP Virtual Function Controller (VF-C)
+local/vid 4.0.0 ONAP Virtual Infrastructure Deployment
+local/vnfsdk 4.0.0 ONAP VNF SDK
diff --git a/docs/oom_quickstart_guide.rst b/docs/oom_quickstart_guide.rst
index a965603efd..0e1d3591f7 100644
--- a/docs/oom_quickstart_guide.rst
+++ b/docs/oom_quickstart_guide.rst
@@ -1,4 +1,5 @@
-.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. This work is licensed under a
+.. Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
.. Copyright 2018 Amdocs, Bell Canada
@@ -16,28 +17,79 @@ available), follow the following instructions to deploy ONAP.
**Step 1.** Clone the OOM repository from ONAP gerrit::
- > git clone -b casablanca http://gerrit.onap.org/r/oom
+ > git clone -b 4.0.0-ONAP http://gerrit.onap.org/r/oom
> cd oom/kubernetes
**Step 2.** Install Helm Plugins required to deploy the ONAP Casablanca release::
> sudo cp -R ~/oom/kubernetes/helm/plugins/ ~/.helm
-**Step 3.** Customize the onap/values.yaml file to suit your deployment. You
-may want to selectively enable or disable ONAP components by changing the
-`enabled: true/false` flags as shown below:
+
+**Step 3.** Customize the helm charts like onap.values.yaml or an override.yaml
+like integration-override.yaml file to suit your deployment with items like the
+OpenStack tenant information.
+
+
+ a. You may want to selectively enable or disable ONAP components by changing
+ the `enabled: true/false` flags.
+
+
+ b. Encyrpt the OpenStack password using the shell tool for robot and put it in
+ the robot helm charts or robot section of integration-override.yaml
+
+
+ c. Encrypt the OpenStack password using the java based script for SO helm charts
+ or SO section of integration-override.yaml.
+
+
+ d. Update the OpenStack parameters that will be used by robot, SO and APPC helm
+ charts or use an override file to replace them.
+
+
+
+
+a. Enabling/Disabling Components:
+Here is an example of the nominal entries that need to be provided. We have different
+values file available for different contexts.
.. literalinclude:: onap-values.yaml
:language: yaml
+
+b. Generating ROBOT Encrypted Password:
+The ROBOT encrypted Password uses the same encryption.key as SO but an
+openssl algorithm that works with the python based Robot Framework.
+
.. note::
- To generate openStackEncryptedPasswordHere :
+ To generate ROBOT openStackEncryptedPasswordHere :
``root@olc-rancher:~# cd so/resources/config/mso/``
``root@olc-rancher:~/oom/kubernetes/so/resources/config/mso# echo -n "<openstack tenant password>" | openssl aes-128-ecb -e -K `cat encryption.key` -nosalt | xxd -c 256 -p``
-**Step 3.** To setup a local Helm server to server up the ONAP charts::
+c. Generating SO Encrypted Password:
+The SO Encrypted Password uses a java based encryption utility since the
+Java encryption library is not easy to integrate with openssl/python that
+ROBOT uses in Dublin.
+
+.. note::
+ To generate SO openStackEncryptedPasswordHere :
+
+ SO_ENCRYPTION_KEY=`cat ~/oom/kubenertes/so/resources/config/mso/encrypt.key`
+ OS_PASSWORD=XXXX_OS_CLEARTESTPASSWORD_XXXX
+
+ git clone http://gerrit.onap.org/r/integration
+ cd integration/deployment/heat/onap-oom/scripts
+ javac Crypto.java
+ java Crypto "$OS_PASSWORD" "$SO_ENCRYPTION_KEY"
+
+
+d. Update the OpenStack parameters:
+
+.. literalinclude:: example-integration-override.yaml
+ :language: yaml
+
+**Step 4.** To setup a local Helm server to server up the ONAP charts::
> helm serve &
@@ -46,31 +98,48 @@ follows::
> helm repo add local http://127.0.0.1:8879
-**Step 4.** Verify your Helm repository setup with::
+**Step 5.** Verify your Helm repository setup with::
> helm repo list
NAME URL
local http://127.0.0.1:8879
-**Step 5.** Build a local Helm repository (from the kubernetes directory)::
+**Step 6.** Build a local Helm repository (from the kubernetes directory)::
> make all; make onap
-**Step 6.** Display the charts that available to be deployed::
+**Step 7.** Display the onap charts that available to be deployed::
+
+ > helm search onap -l
- > helm search -l
.. literalinclude:: helm-search.txt
.. note::
The setup of the Helm repository is a one time activity. If you make changes to your deployment charts or values be sure to use `make` to update your local Helm repository.
-**Step 7.** Once the repo is setup, installation of ONAP can be done with a
-single command::
+**Step 8.** Once the repo is setup, installation of ONAP can be done with a
+single command
+
+ a. If you updated the values directly use this command::
+
+ > helm deploy dev local/onap --namespace onap
+
+
+ b. If you are using an integration-override.yaml file use this command::
+
+ > helm deploy dev local/onap -f /root/integration-override.yaml --namespace onap
+
+
+ c. If you have a slower cloud environment you may want to use the public-cloud.yaml
+ which has longer delay intervals on database updates.::
+
+ > helm deploy dev local/onap -f /root/oom/kubernetes/onap/resources/environments/public-cloud.yaml -f /root/integration-override.yaml --namespace onap
- > helm deploy dev local/onap --namespace onap
+**Step 9.** Commands to interact with the OOM installation
-Use the following to monitor your deployment and determine when ONAP is ready for use::
+Use the following to monitor your deployment and determine when ONAP is
+ready for use::
> kubectl get pods --all-namespaces -o=wide
@@ -79,4 +148,4 @@ Undeploying onap can be done using the following command::
> helm undeploy dev --purge
-More examples of using the deploy and undeploy plugins can be found here: https://wiki.onap.org/display/DW/OOM+Helm+%28un%29Deploy+plugins \ No newline at end of file
+More examples of using the deploy and undeploy plugins can be found here: https://wiki.onap.org/display/DW/OOM+Helm+%28un%29Deploy+plugins
diff --git a/kubernetes/aai/charts/aai-cassandra/.helmignore b/kubernetes/aai/charts/aai-cassandra/.helmignore
deleted file mode 100644
index daebc7da77..0000000000
--- a/kubernetes/aai/charts/aai-cassandra/.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/aai/charts/aai-cassandra/Chart.yaml b/kubernetes/aai/charts/aai-cassandra/Chart.yaml
deleted file mode 100644
index 3987a111c0..0000000000
--- a/kubernetes/aai/charts/aai-cassandra/Chart.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright © 2018 Amdocs, Bell Canada, AT&T
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-
-apiVersion: v1
-description: ONAP AAI Cassandra
-name: aai-cassandra
-version: 4.0.0
diff --git a/kubernetes/aai/charts/aai-cassandra/templates/service.yaml b/kubernetes/aai/charts/aai-cassandra/templates/service.yaml
deleted file mode 100644
index 17176f1ded..0000000000
--- a/kubernetes/aai/charts/aai-cassandra/templates/service.yaml
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright © 2018 Amdocs, Bell Canada, AT&T
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ include "common.servicename" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
-spec:
- type: {{ .Values.service.type }}
-# Not working, open k8s bug: https://github.com/kubernetes/kubernetes/issues/58662
- publishNotReadyAddresses: true
- ports:
- {{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.service.internalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.portName }}
- - port: {{ .Values.service.internalPort2 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort2 }}
- name: {{ .Values.service.portName3 }}
- - port: {{ .Values.service.internalPort3 }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort3 }}
- name: {{ .Values.service.portName3 }}
- {{- else -}}
- - port: {{ .Values.service.internalPort }}
- name: {{ .Values.service.portName }}
- - port: {{ .Values.service.internalPort2 }}
- name: {{ .Values.service.portName2 }}
- - port: {{ .Values.service.internalPort3 }}
- name: {{ .Values.service.portName3 }}
- {{- end}}
- selector:
- app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
- clusterIP: None
diff --git a/kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml b/kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml
deleted file mode 100644
index a576eba60d..0000000000
--- a/kubernetes/aai/charts/aai-cassandra/templates/statefulset.yaml
+++ /dev/null
@@ -1,132 +0,0 @@
-# Copyright © 2018 Amdocs, Bell Canada, AT&T
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-apiVersion: apps/v1beta1
-kind: StatefulSet
-metadata:
- name: {{ include "common.fullname" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- serviceName: {{ include "common.servicename" . }}
- replicas: {{ .Values.replicaCount }}
- podManagementPolicy: {{ .Values.podManagementPolicy }}
- updateStrategy:
- type: {{ .Values.updateStrategy.type }}
- template:
- metadata:
- labels:
- app: {{ include "common.name" . }}
- release: {{ .Release.Name }}
- name: {{ include "common.name" . }}
- spec:
- containers:
- - name: {{ include "common.name" . }}
- image: {{ .Values.image }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- ports:
- - containerPort: {{ .Values.service.internalPort }}
- - containerPort: {{ .Values.service.internalPort2 }}
- - containerPort: {{ .Values.service.internalPort3 }}
- {{- if eq .Values.liveness.enabled true }}
- livenessProbe:
- exec:
- command:
- - /bin/bash
- - -c
- - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end -}}
- readinessProbe:
- exec:
- command:
- - /bin/bash
- - -c
- - nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
- initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- timeoutSeconds: {{ .Values.liveness.periodSeconds }}
- lifecycle:
- preStop:
- exec:
- command: ["/bin/sh", "-c", "PID=$(pidof java) && kill $PID && while ps -p $PID > /dev/null; do sleep 1; done"]
- env:
- {{- $seed_size := default 1 .Values.replicaCount | int -}}
- {{- $global := . }}
- - name: MAX_HEAP_SIZE
- value: {{ .Values.config.heap.max }}
- - name: HEAP_NEWSIZE
- value: {{ .Values.config.heap.min }}
- - name: CASSANDRA_SEEDS
- value: "{{- range $i, $e := until $seed_size }}{{ template "common.fullname" $global }}-{{ $i }}.{{ include "common.servicename" $global }},{{- end }}"
- - name: JVM_OPTS
- value: {{ .Values.config.jvmOpts | quote }}
- - name: CASSANDRA_CLUSTER_NAME
- value: {{ .Values.config.clusterName | quote }}
- - name: CASSANDRA_DC
- value: {{ .Values.config.dataCenter | quote }}
- - name: CASSANDRA_RACK
- value: {{ .Values.config.rackName | quote }}
- - name: CASSANDRA_AUTO_BOOTSTRAP
- value: {{ .Values.config.autoBootstrap | quote }}
- - name: POD_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
- volumeMounts:
- - name: cassandra-data
- mountPath: /var/lib/cassandra
- 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
- {{- if not .Values.persistence.enabled }}
- - name: cassandra-data
- emptyDir: {}
- {{- else }}
- volumeClaimTemplates:
- - metadata:
- name: cassandra-data
- labels:
- app: {{ template "common.fullname" . }}
- chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
- release: "{{ .Release.Name }}"
- heritage: "{{ .Release.Service }}"
- annotations:
- volume.beta.kubernetes.io/storage-class: {{ .Values.persistence.storageClass }}
- spec:
- accessModes:
- - {{ .Values.persistence.accessMode | quote }}
- resources:
- requests:
- storage: {{ .Values.persistence.size | quote }}
- selector:
- matchLabels:
- app: {{ include "common.name" . }}
- release: "{{ .Release.Name }}"
- {{- end }}
diff --git a/kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml b/kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml
deleted file mode 100644
index b949064077..0000000000
--- a/kubernetes/aai/charts/aai-cassandra/templates/volumes.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright © 2018 Amdocs, Bell Canada, AT&T
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#{{ if .Values.persistence.enabled }}
-{{- $root := . -}}
-{{ range $i, $e := until (atoi (quote $root.Values.replicaCount) | default 3) }}
----
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: {{ $root.Release.Name }}-{{ $root.Values.service.name }}-{{ $i }}
- namespace: {{ $root.Release.Namespace }}
- labels:
- type: {{ $root.Values.persistence.storageType }}
- app: {{ $root.Values.service.name }}
- chart: {{ $root.Chart.Name }}-{{ $root.Chart.Version | replace "+" "_" }}
- release: {{ $root.Release.Name }}
- heritage: {{ $root.Release.Service }}
-spec:
- capacity:
- storage: {{ $root.Values.persistence.size }}
- accessModes:
- - {{ $root.Values.persistence.accessMode }}
- hostPath:
- path: {{ $root.Values.persistence.mountPath }}/{{ $root.Release.Name }}/{{ $root.Values.persistence.mountSubPath }}-{{ $i }}
- persistentVolumeReclaimPolicy: {{ $root.Values.persistence.volumeReclaimPolicy }}
-{{ end }}
-#{{ end }}
diff --git a/kubernetes/aai/charts/aai-cassandra/values.yaml b/kubernetes/aai/charts/aai-cassandra/values.yaml
deleted file mode 100644
index 1e1d2c1c2f..0000000000
--- a/kubernetes/aai/charts/aai-cassandra/values.yaml
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright © 2018 Amdocs, Bell Canada, AT&T
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# Default values for cassandra.
-# This is a YAML-formatted file.
-# Declare variables to be passed into your templates.
-global: # global defaults
- nodePortPrefix: 302
-
-
-# application image
-dockerhubRepository: registry.hub.docker.com
-image: cassandra:2.1
-pullPolicy: Always
-
-# application configuration
-config:
- heap:
- max: 512M
- min: 100M
- jvmOpts: -Dcassandra.consistent.rangemovement=false
- clusterName: aai-cluster
- dataCenter: Pod lab
- rackName: Rack1
- autoBootstrap: true
- ports:
- cql: 9042
- thrift: 9160
- # If a JVM Agent is in place
- # agent: 61621
-
-# default number of instances
-replicaCount: 3
-
-nodeSelector: {}
-
-affinity: {}
-
-# probe configuration parameters
-liveness:
- initialDelaySeconds: 10
- periodSeconds: 10
- # necessary to disable liveness probe when setting breakpoints
- # in debugger so K8s doesn't restart unresponsive container
- enabled: true
-
-readiness:
- initialDelaySeconds: 10
- periodSeconds: 10
-
-service:
- type: ClusterIP
- name: aai-cassandra
- internalPort: 9042
- portName: cql
- internalPort2: 9160
- portName2: thrift
- internalPort3: 61621
- portName3: agent
-
-podManagementPolicy: OrderedReady
-updateStrategy:
- type: OnDelete
-
-ingress:
- enabled: false
-
-persistence:
- enabled: true
-
- ## A manually managed Persistent Volume and Claim
- ## Requires persistence.enabled: true
- ## If defined, PVC must be created manually before volume will be bound
- # existingClaim:
- volumeReclaimPolicy: Retain
-
- ## database data Persistent Volume Storage Class
- ## If defined, storageClassName: <storageClass>
- ## If set to "-", storageClassName: "", which disables dynamic provisioning
- ## If undefined (the default) or set to null, no storageClassName spec is
- ## set, choosing the default provisioner. (gp2 on AWS, standard on
- ## GKE, AWS & OpenStack)
- ##
- ## storageClass: "-"
- accessMode: ReadWriteOnce
- size: 2Gi
- mountPath: /dockerdata-nfs
- mountSubPath: aai/cassandra
- storageType: local
- storageClass: ""
-
-
-resources: {}
- # We usually recommend not to specify default resources and to leave this as a conscious
- # choice for the user. This also increases chances charts run on environments with little
- # resources, such as Minikube. If you do want to specify resources, uncomment the following
- # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
- #
- # Example:
- # Configure resource requests and limits
- # ref: http://kubernetes.io/docs/user-guide/compute-resources/
- # Minimum memory for development is 2 CPU cores and 4GB memory
- # Minimum memory for production is 4 CPU cores and 8GB memory
-#resources:
-# limits:
-# cpu: 2
-# memory: 4Gi
-# requests:
-# cpu: 2
-# memory: 4Gi
diff --git a/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml b/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
index 38fd64c5dc..3977a68834 100644
--- a/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
+++ b/kubernetes/aai/charts/aai-champ/resources/config/dynamic/conf/champ-beans.xml
@@ -47,12 +47,9 @@ xsi:schemaLocation="
<entry key="storage.backend" value="cassandra"/>
<entry key="storage.cassandra.read-consistency-level" value="LOCAL_QUORUM"/>
<entry key="storage.cassandra.write-consistency-level" value="LOCAL_QUORUM"/>
- <entry key="storage.cassandra.replication-factor" value="3"/>
+ <entry key="storage.cassandra.replication-factor" value="{{ .Values.global.cassandra.replicas }}"/>
<entry key="storage.cassandra.replication-strategy-class" value="org.apache.cassandra.locator.SimpleStrategy"/>
-
- {{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
- {{- $global := . }}
- <entry key="storage.hostname" value="{{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}"/>
+ <entry key="storage.hostname" value="{{ .Values.global.cassandra.serviceName }}"/>
</util:map>
<!-- Janus Implementation -->
diff --git a/kubernetes/aai/charts/aai-champ/templates/deployment.yaml b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
index 8e4d7f48cb..a311f68799 100644
--- a/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-champ/templates/deployment.yaml
@@ -36,7 +36,11 @@ spec:
- /root/ready.py
args:
- --container-name
+ {{- if .Values.global.cassandra.localCluster }}
- aai-cassandra
+ {{- else }}
+ - cassandra
+ {{- end }}
env:
- name: NAMESPACE
valueFrom:
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-cached.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-cached.properties
index 6a28dee46e..82e7ea9b72 100644
--- a/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-cached.properties
+++ b/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-cached.properties
@@ -22,17 +22,14 @@ query.smart-limit=false
{{ if .Values.global.config.cluster.cassandra.dynamic }}
-{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
-{{- $global := . }}
-
storage.backend=cassandra
-storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
+storage.hostname={{.Values.global.cassandra.serviceName}}
storage.cassandra.keyspace=aaigraph
storage.cassandra.read-consistency-level=LOCAL_QUORUM
storage.cassandra.write-consistency-level=LOCAL_QUORUM
-storage.cassandra.replication-factor=3
+storage.cassandra.replication-factor={{.Values.global.cassandra.replicas}}
storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
{{ else }}
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-realtime.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-realtime.properties
index 7832d1a969..e9e9a9e9c9 100644
--- a/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-realtime.properties
+++ b/kubernetes/aai/charts/aai-graphadmin/resources/config/janusgraph-realtime.properties
@@ -20,17 +20,13 @@ query.smart-limit=false
{{ if .Values.global.config.cluster.cassandra.dynamic }}
-{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
-{{- $global := . }}
-
storage.backend=cassandra
-storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
-
+storage.hostname={{.Values.global.cassandra.serviceName}}
storage.cassandra.keyspace=aaigraph
storage.cassandra.read-consistency-level=LOCAL_QUORUM
storage.cassandra.write-consistency-level=LOCAL_QUORUM
-storage.cassandra.replication-factor=3
+storage.cassandra.replication-factor={{.Values.global.cassandra.replicas}}
storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
{{ else }}
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/migration/janusgraph-migration-cached.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/migration/janusgraph-migration-cached.properties
new file mode 100644
index 0000000000..28e3089b88
--- /dev/null
+++ b/kubernetes/aai/charts/aai-graphadmin/resources/config/migration/janusgraph-migration-cached.properties
@@ -0,0 +1,70 @@
+#
+# ============LICENSE_START=======================================================
+# Copyright © 2018 AT&T Intellectual Property. 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.
+# ============LICENSE_END=========================================================
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- if eq .Values.global.jobs.migration.remoteCassandra.enabled false }}
+
+storage.backend=cassandra
+
+#In case of upgrades from Casablanca provide the override aai.global.cassandra.existingInstServiceName=aai-cassandra
+storage.hostname={{ .Values.global.cassandra.existingInstServiceName | default .Values.global.cassandra.serviceName }}
+
+storage.cassandra.keyspace=aaigraph
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-factor=3
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+{{- else }}
+{{- if .Values.global.jobs.migration.remoteCassandra.storage }}
+storage.backend={{ .Values.global.jobs.migration.remoteCassandra.storage.backend }}
+storage.hostname={{ .Values.global.jobs.migration.remoteCassandra.storage.hostname }}
+{{- if eq .Values.global.jobs.migration.remoteCassandra.storage.backend "cassandra" }}
+storage.cassandra.keyspace={{ .Values.global.jobs.migration.remoteCassandra.storage.name }}
+storage.cassandra.read-consistency-level={{ .Values.global.jobs.migration.remoteCassandra.storage.cassandra.readConsistency }}
+storage.cassandra.write-consistency-level={{ .Values.global.jobs.migration.remoteCassandra.storage.cassandra.writeConsistency }}
+storage.cassandra.replication-factor={{ .Values.global.jobs.migration.remoteCassandra.storage.cassandra.replicationFactor | int }}
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+
+{{- else if eq .Values.global.jobs.migration.remoteCassandra.storage.backend "cql" }}
+storage.cql.keyspace={{ .Values.global.jobs.migration.remoteCassandra.storage.name }}
+storage.cql.read-consistency-level={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.readConsistency }}
+storage.cql.write-consistency-level={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.readConsistency }}
+storage.cql.replication-factor={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.replicationFactor | int }}
+storage.cql.only-use-local-consistency-for-system-operations={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.localConsistencyForSysOps }}
+storage.cql.cluster-name={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.clusterName }}
+storage.cql.local-datacenter={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.localDataCenter }}
+
+{{- else if eq .Values.global.jobs.migration.remoteCassandra.storage.backend "hbase" }}
+storage.hbase.table={{ .Values.global.jobs.migration.remoteCassandra.storage.name }}
+{{- end }}
+storage.connection-timeout={{ .Values.global.jobs.migration.remoteCassandra.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.jobs.migration.remoteCassandra.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.jobs.migration.remoteCassandra.storage.keyConsistent }}
+{{- end }}
+{{- end }}
+storage.lock.wait-time=300
+
+#caching on
+cache.db-cache = true
+cache.db-cache-clean-wait = 20
+cache.db-cache-time = 180000
+cache.db-cache-size = 0.3
+
+#load graphson file on startup
+load.snapshot.file=false
diff --git a/kubernetes/aai/charts/aai-graphadmin/resources/config/migration/janusgraph-migration-real.properties b/kubernetes/aai/charts/aai-graphadmin/resources/config/migration/janusgraph-migration-real.properties
new file mode 100644
index 0000000000..4c28b20781
--- /dev/null
+++ b/kubernetes/aai/charts/aai-graphadmin/resources/config/migration/janusgraph-migration-real.properties
@@ -0,0 +1,65 @@
+#
+# ============LICENSE_START=======================================================
+# Copyright © 2018 AT&T Intellectual Property. 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.
+# ============LICENSE_END=========================================================
+
+query.fast-property=true
+query.smart-limit=false
+
+{{- if eq .Values.global.jobs.migration.remoteCassandra.enabled false }}
+
+storage.backend=cassandra
+
+#In case of upgrades from Casablanca provide the override aai.global.cassandra.existingInstServiceName=aai-cassandra
+storage.hostname={{ .Values.global.cassandra.existingInstServiceName | default .Values.global.cassandra.serviceName }}
+
+storage.cassandra.keyspace=aaigraph
+storage.cassandra.read-consistency-level=LOCAL_QUORUM
+storage.cassandra.write-consistency-level=LOCAL_QUORUM
+storage.cassandra.replication-factor=3
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+{{- else }}
+{{- if .Values.global.jobs.migration.remoteCassandra.storage }}
+storage.backend={{ .Values.global.jobs.migration.remoteCassandra.storage.backend }}
+storage.hostname={{ .Values.global.jobs.migration.remoteCassandra.storage.hostname }}
+{{- if eq .Values.global.jobs.migration.remoteCassandra.storage.backend "cassandra" }}
+storage.cassandra.keyspace={{ .Values.global.jobs.migration.remoteCassandra.storage.name }}
+storage.cassandra.read-consistency-level={{ .Values.global.jobs.migration.remoteCassandra.storage.cassandra.readConsistency }}
+storage.cassandra.write-consistency-level={{ .Values.global.jobs.migration.remoteCassandra.storage.cassandra.writeConsistency }}
+storage.cassandra.replication-factor={{ .Values.global.jobs.migration.remoteCassandra.storage.cassandra.replicationFactor | int }}
+storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
+
+{{- else if eq .Values.global.jobs.migration.remoteCassandra.storage.backend "cql" }}
+storage.cql.keyspace={{ .Values.global.jobs.migration.remoteCassandra.storage.name }}
+storage.cql.read-consistency-level={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.readConsistency }}
+storage.cql.write-consistency-level={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.readConsistency }}
+storage.cql.replication-factor={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.replicationFactor | int }}
+storage.cql.only-use-local-consistency-for-system-operations={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.localConsistencyForSysOps }}
+storage.cql.cluster-name={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.clusterName }}
+storage.cql.local-datacenter={{ .Values.global.jobs.migration.remoteCassandra.storage.cql.localDataCenter }}
+
+{{- else if eq .Values.global.jobs.migration.remoteCassandra.storage.backend "hbase" }}
+storage.hbase.table={{ .Values.global.jobs.migration.remoteCassandra.storage.name }}
+{{- end }}
+storage.connection-timeout={{ .Values.global.jobs.migration.remoteCassandra.storage.connectionTimeout | int }}
+cache.tx-cache-size={{ .Values.global.jobs.migration.remoteCassandra.storage.cacheSize | int }}
+log.tx.key-consistent={{ .Values.global.jobs.migration.remoteCassandra.storage.keyConsistent }}
+{{- end }}
+{{- end }}
+storage.lock.wait-time=300
+# Setting db-cache to false ensure the fastest propagation of changes across servers
+cache.db-cache = false
+#load graphson file on startup
+load.snapshot.file=false
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/configmap.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/configmap.yaml
index 281bac6915..bd229d3fb0 100644
--- a/kubernetes/aai/charts/aai-graphadmin/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-graphadmin/templates/configmap.yaml
@@ -20,90 +20,44 @@
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-log
+ name: {{ include "common.fullname" . }}-configmap
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
+ {{- if .Values.global.jobs.migration.enabled }}
+ annotations:
+ "helm.sh/hook": pre-upgrade,pre-install
+ "helm.sh/hook-weight": "0"
+ "helm.sh/hook-delete-policy": before-hook-creation
+ {{- end }}
data:
{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-localhost-access-log-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/localhost-access-logback.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-db-real-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/janusgraph-realtime.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-db-cached-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/janusgraph-cached.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-aaiconfig-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/aaiconfig.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-springapp-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/application.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/realm.properties").AsConfig . | indent 2 }}
+
+{{- if .Values.global.jobs.migration.enabled }}
---
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-realm-configmap
+ name: {{ include "common.fullname" . }}-migration-configmap
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
+ annotations:
+ "helm.sh/hook": pre-upgrade,pre-install
+ "helm.sh/hook-weight": "0"
+ "helm.sh/hook-delete-policy": before-hook-creation
data:
-{{ tpl (.Files.Glob "resources/config/realm.properties").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/migration/*").AsConfig . | indent 2 }}
+{{- end }}
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/deployment.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/deployment.yaml
index b595ac81bf..f768603a89 100644
--- a/kubernetes/aai/charts/aai-graphadmin/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-graphadmin/templates/deployment.yaml
@@ -16,7 +16,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# ============LICENSE_END=========================================================
-
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
@@ -45,7 +44,12 @@ spec:
{{ if .Values.global.initContainers.enabled }}
initContainers:
- command:
- {{ if .Values.global.jobs.createSchema.enabled }}
+ {{ if .Values.global.jobs.migration.enabled }}
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-aai-graphadmin-migration
+ {{ else if .Values.global.jobs.createSchema.enabled }}
- /root/job_complete.py
args:
- --job-name
@@ -54,7 +58,11 @@ spec:
- /root/ready.py
args:
- --container-name
+ {{- if .Values.global.cassandra.localCluster }}
- aai-cassandra
+ {{- else }}
+ - cassandra
+ {{- end }}
- --container-name
- aai-schema-service
{{ end }}
@@ -82,27 +90,27 @@ spec:
name: localtime
readOnly: true
- mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-realtime.properties
- name: {{ include "common.fullname" . }}-db-real-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-realtime.properties
- mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-cached.properties
- name: {{ include "common.fullname" . }}-db-cached-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-cached.properties
- mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/aaiconfig.properties
- name: {{ include "common.fullname" . }}-aaiconfig-conf
+ name: {{ include "common.fullname" . }}-config
subPath: aaiconfig.properties
- mountPath: /opt/aai/logroot/AAI-RES
name: {{ include "common.fullname" . }}-logs
- mountPath: /opt/app/aai-graphadmin/resources/logback.xml
- name: {{ include "common.fullname" . }}-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: logback.xml
- mountPath: /opt/app/aai-graphadmin/resources/localhost-access-logback.xml
- name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: localhost-access-logback.xml
- mountPath: /opt/app/aai-graphadmin/resources/etc/auth/realm.properties
- name: {{ include "common.fullname" . }}-realm-conf
+ name: {{ include "common.fullname" . }}-config
subPath: realm.properties
- mountPath: /opt/app/aai-graphadmin/resources/application.properties
- name: {{ include "common.fullname" . }}-springapp-conf
+ name: {{ include "common.fullname" . }}-config
subPath: application.properties
{{ $global := . }}
{{ range $job := .Values.global.config.auth.files }}
@@ -162,27 +170,9 @@ spec:
emptyDir: {}
- name: {{ include "common.fullname" . }}-filebeat
emptyDir: {}
- - name: {{ include "common.fullname" . }}-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-log
- - name: {{ include "common.fullname" . }}-localhost-access-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-localhost-access-log-configmap
- - name: {{ include "common.fullname" . }}-db-real-conf
- configMap:
- name: {{ include "common.fullname" . }}-db-real-configmap
- - name: {{ include "common.fullname" . }}-db-cached-conf
- configMap:
- name: {{ include "common.fullname" . }}-db-cached-configmap
- - name: {{ include "common.fullname" . }}-aaiconfig-conf
- configMap:
- name: {{ include "common.fullname" . }}-aaiconfig-configmap
- - name: {{ include "common.fullname" . }}-springapp-conf
- configMap:
- name: {{ include "common.fullname" . }}-springapp-configmap
- - name: {{ include "common.fullname" . }}-realm-conf
+ - name: {{ include "common.fullname" . }}-config
configMap:
- name: {{ include "common.fullname" . }}-realm-configmap
+ name: {{ include "common.fullname" . }}-configmap
- name: {{ include "common.fullname" . }}-auth-truststore-sec
secret:
secretName: aai-common-truststore
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/job.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/job.yaml
index a62202ba32..e5b673bee2 100644
--- a/kubernetes/aai/charts/aai-graphadmin/templates/job.yaml
+++ b/kubernetes/aai/charts/aai-graphadmin/templates/job.yaml
@@ -29,8 +29,7 @@
# If you are using an existing cassandra cluster not coming from oom
# then it is your job to ensure that there are no connections to the database
-{{ if .Values.global.jobs.createSchema.enabled }}
-
+{{- if and ( not .Values.global.jobs.migration.enabled ) ( .Values.global.jobs.createSchema.enabled ) }}
apiVersion: batch/v1
kind: Job
metadata:
@@ -55,7 +54,11 @@ spec:
- /root/ready.py
args:
- --container-name
+ {{- if .Values.global.cassandra.localCluster }}
- aai-cassandra
+ {{- else }}
+ - cassandra
+ {{- end }}
- --container-name
- aai-schema-service
env:
@@ -85,24 +88,24 @@ spec:
name: localtime
readOnly: true
- mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-realtime.properties
- name: {{ include "common.fullname" . }}-db-real-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-realtime.properties
- mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-cached.properties
- name: {{ include "common.fullname" . }}-db-cached-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-cached.properties
- mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/aaiconfig.properties
- name: {{ include "common.fullname" . }}-aaiconfig-conf
+ name: {{ include "common.fullname" . }}-config
subPath: aaiconfig.properties
- mountPath: /opt/aai/logroot/AAI-GA
name: {{ include "common.fullname" . }}-logs
- mountPath: /opt/app/aai-graphadmin/resources/logback.xml
- name: {{ include "common.fullname" . }}-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: logback.xml
- mountPath: /opt/app/aai-graphadmin/resources/localhost-access-logback.xml
- name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: localhost-access-logback.xml
- mountPath: /opt/app/aai-graphadmin/resources/application.properties
- name: {{ include "common.fullname" . }}-springapp-conf
+ name: {{ include "common.fullname" . }}-config
subPath: application.properties
{{ $global := . }}
{{ range $job := .Values.global.config.auth.files }}
@@ -130,29 +133,179 @@ spec:
- name: {{ include "common.fullname" . }}-logs
hostPath:
path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}-create-db-schema
- - name: {{ include "common.fullname" . }}-filebeat
- emptyDir: {}
- - name: {{ include "common.fullname" . }}-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-log
- - name: {{ include "common.fullname" . }}-localhost-access-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-localhost-access-log-configmap
- - name: {{ include "common.fullname" . }}-db-real-conf
+ - name: {{ include "common.fullname" . }}-config
configMap:
- name: {{ include "common.fullname" . }}-db-real-configmap
- - name: {{ include "common.fullname" . }}-db-cached-conf
- configMap:
- name: {{ include "common.fullname" . }}-db-cached-configmap
- - name: {{ include "common.fullname" . }}-aaiconfig-conf
- configMap:
- name: {{ include "common.fullname" . }}-aaiconfig-configmap
- - name: {{ include "common.fullname" . }}-springapp-conf
+ name: {{ include "common.fullname" . }}-configmap
+ - name: {{ include "common.fullname" . }}-auth-truststore-sec
+ secret:
+ secretName: aai-common-truststore
+ items:
+ {{ range $job := .Values.global.config.auth.files }}
+ - key: {{ . }}
+ path: {{ . }}
+ {{ end }}
+ restartPolicy: Never
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
+{{ end }}
+{{- if .Values.global.jobs.migration.enabled }}
+---
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-migration
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-job
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ annotations:
+ "helm.sh/hook": post-upgrade,post-rollback,post-install
+ "helm.sh/hook-weight": "1"
+ "helm.sh/hook-delete-policy": before-hook-creation
+spec:
+ backoffLimit: 20
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-job
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ {{- if .Values.global.cassandra.localCluster }}
+ - aai-cassandra
+ {{- else }}
+ - cassandra
+ {{- end }}
+ - --container-name
+ - aai-schema-service
+ 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
+ - command:
+ - /bin/bash
+ - -c
+ - bash docker-entrypoint.sh dataRestoreFromSnapshot.sh `ls -t /opt/app/aai-graphadmin/logs/data/dataSnapshots|head -1|awk -F".P" '{ print $1 }'`
+ env:
+ - name: LOCAL_USER_ID
+ value: {{ .Values.global.config.userId | quote }}
+ - name: LOCAL_GROUP_ID
+ value: {{ .Values.global.config.groupId | quote }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: janusgraph-realtime.properties
+ - mountPath: /opt/app/aai-graphadmin/logs/data/dataSnapshots
+ name: {{ include "common.fullname" . }}-snapshots
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: janusgraph-cached.properties
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/aaiconfig.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: aaiconfig.properties
+ - mountPath: /opt/aai/logroot/AAI-GA
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/aai-graphadmin/resources/logback.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: logback.xml
+ - mountPath: /opt/app/aai-graphadmin/resources/localhost-access-logback.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: localhost-access-logback.xml
+ - mountPath: /opt/app/aai-graphadmin/resources/application.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: application.properties
+ {{ $global := . }}
+ {{ range $job := .Values.global.config.auth.files }}
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/auth/{{ . }}
+ name: {{ include "common.fullname" $global }}-auth-truststore-sec
+ subPath: {{ . }}
+ {{ end }}
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-restore-backup
+ containers:
+ - image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-perform-migration
+ command:
+ - /bin/bash
+ - -c
+ - bash docker-entrypoint.sh run_Migrations.sh -e UpdateAaiUriIndexMigration --commit --skipPreMigrationSnapShot --runDisabled RebuildAllEdges
+ env:
+ - name: LOCAL_USER_ID
+ value: {{ .Values.global.config.userId | quote }}
+ - name: LOCAL_GROUP_ID
+ value: {{ .Values.global.config.groupId | quote }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: janusgraph-realtime.properties
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: janusgraph-cached.properties
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/aaiconfig.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: aaiconfig.properties
+ - mountPath: /opt/aai/logroot/AAI-GA
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/aai-graphadmin/resources/logback.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: logback.xml
+ - mountPath: /opt/app/aai-graphadmin/resources/localhost-access-logback.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: localhost-access-logback.xml
+ - mountPath: /opt/app/aai-graphadmin/resources/application.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: application.properties
+ {{ $global := . }}
+ {{ range $job := .Values.global.config.auth.files }}
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/auth/{{ . }}
+ name: {{ include "common.fullname" $global }}-auth-truststore-sec
+ subPath: {{ . }}
+ {{ end }}
+ resources:
+{{ include "common.resources" . }}
+ {{- 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: filebeat-conf
configMap:
- name: {{ include "common.fullname" . }}-springapp-configmap
- - name: {{ include "common.fullname" . }}-realm-conf
+ name: aai-filebeat
+ - name: {{ include "common.fullname" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-config
configMap:
- name: {{ include "common.fullname" . }}-realm-configmap
+ name: {{ include "common.fullname" . }}-configmap
+ - name: {{ include "common.fullname" . }}-snapshots
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}-migration
- name: {{ include "common.fullname" . }}-auth-truststore-sec
secret:
secretName: aai-common-truststore
@@ -164,4 +317,112 @@ spec:
restartPolicy: Never
imagePullSecrets:
- name: "{{ include "common.namespace" . }}-docker-registry-key"
+---
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: {{ include "common.fullname" . }}-db-backup-job
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}-db-backup-job
+ release: {{ .Release.Name }}
+ heritage: {{ .Release.Service }}
+ chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
+ annotations:
+ "helm.sh/hook": pre-upgrade,pre-install
+ "helm.sh/hook-weight": "2"
+ "helm.sh/hook-delete-policy": before-hook-creation
+spec:
+ backoffLimit: 20
+ template:
+ metadata:
+ labels:
+ app: {{ include "common.name" . }}-db-backup-job
+ release: {{ .Release.Name }}
+ name: {{ include "common.name" . }}
+ spec:
+ {{ if eq .Values.global.jobs.migration.remoteCassandra.enabled false }}
+ initContainers:
+ - command:
+ - /bin/bash
+ - -c
+ - /root/ready.py --container-name aai-cassandra --timeout 1 || /root/ready.py --container-name cassandra
+ 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" . }}-db-backup-readiness
+ {{- end }}
+ containers:
+ - name: {{ include "common.name" . }}-db-backup-job
+ image: "{{ include "common.repository" . }}/{{ .Values.image }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ command:
+ - /bin/bash
+ - docker-entrypoint.sh
+ - dataSnapshot.sh
+ env:
+ - name: LOCAL_USER_ID
+ value: {{ .Values.global.config.userId | quote }}
+ - name: LOCAL_GROUP_ID
+ value: {{ .Values.global.config.groupId | quote }}
+ volumeMounts:
+ - mountPath: /etc/localtime
+ name: localtime
+ readOnly: true
+ - mountPath: /opt/app/aai-graphadmin/logs/data/dataSnapshots
+ name: {{ include "common.fullname" . }}-snapshots
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-realtime.properties
+ name: {{ include "common.fullname" . }}-migration
+ subPath: janusgraph-migration-real.properties
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/janusgraph-cached.properties
+ name: {{ include "common.fullname" . }}-migration
+ subPath: janusgraph-migration-cached.properties
+ - mountPath: /opt/app/aai-graphadmin/resources/etc/appprops/aaiconfig.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: aaiconfig.properties
+ - mountPath: /opt/aai/logroot/AAI-RES/
+ name: {{ include "common.fullname" . }}-logs
+ - mountPath: /opt/app/aai-graphadmin/resources/logback.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: logback.xml
+ - mountPath: /opt/app/aai-graphadmin/resources/localhost-access-logback.xml
+ name: {{ include "common.fullname" . }}-config
+ subPath: localhost-access-logback.xml
+ - mountPath: /opt/app/aai-graphadmin/resources/application.properties
+ name: {{ include "common.fullname" . }}-config
+ subPath: application.properties
+ 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" . }}-logs
+ emptyDir: {}
+ - name: {{ include "common.fullname" . }}-config
+ configMap:
+ name: {{ include "common.fullname" . }}-configmap
+ - name: {{ include "common.fullname" . }}-migration
+ configMap:
+ name: {{ include "common.fullname" . }}-migration-configmap
+ - name: {{ include "common.fullname" . }}-snapshots
+ persistentVolumeClaim:
+ claimName: {{ include "common.fullname" . }}-migration
+ restartPolicy: Never
+ imagePullSecrets:
+ - name: "{{ include "common.namespace" . }}-docker-registry-key"
{{ end }}
+
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/pv.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/pv.yaml
new file mode 100644
index 0000000000..f6783315ad
--- /dev/null
+++ b/kubernetes/aai/charts/aai-graphadmin/templates/pv.yaml
@@ -0,0 +1,42 @@
+{{/*
+# Copyright â–’ 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- if .Values.global.jobs.migration.enabled -}}
+kind: PersistentVolume
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ name: {{ include "common.fullname" . }}
+ annotations:
+ "helm.sh/hook": pre-upgrade,pre-install
+ "helm.sh/hook-weight": "0"
+ "helm.sh/hook-delete-policy": before-hook-creation
+spec:
+ capacity:
+ storage: {{ .Values.persistence.size}}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
+ hostPath:
+ path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath1 }}
+{{- end -}}
+
diff --git a/kubernetes/aai/charts/aai-graphadmin/templates/pvc.yaml b/kubernetes/aai/charts/aai-graphadmin/templates/pvc.yaml
new file mode 100644
index 0000000000..582afe9acd
--- /dev/null
+++ b/kubernetes/aai/charts/aai-graphadmin/templates/pvc.yaml
@@ -0,0 +1,51 @@
+{{/*
+# Copyright â–’ 2017 Amdocs, Bell Canada
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+*/}}
+
+{{- if .Values.global.jobs.migration.enabled -}}
+kind: PersistentVolumeClaim
+apiVersion: v1
+metadata:
+ name: {{ include "common.fullname" . }}-migration
+ namespace: {{ include "common.namespace" . }}
+ labels:
+ app: {{ include "common.name" . }}
+ chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+ release: "{{ .Release.Name }}"
+ heritage: "{{ .Release.Service }}"
+ annotations:
+ "helm.sh/hook": pre-upgrade,pre-install
+ "helm.sh/hook-weight": "-1"
+ "helm.sh/hook-delete-policy": before-hook-creation
+{{- if .Values.persistence.annotations }}
+{{ toYaml .Values.persistence.annotations | indent 4 }}
+{{- end }}
+spec:
+ selector:
+ matchLabels:
+ name: {{ include "common.fullname" . }}
+ accessModes:
+ - {{ .Values.persistence.accessMode }}
+ resources:
+ requests:
+ storage: {{ .Values.persistence.size }}
+{{- if .Values.persistence.storageClass }}
+{{- if (eq "-" .Values.persistence.storageClass) }}
+ storageClassName: ""
+{{- else }}
+ storageClassName: "{{ .Values.persistence.storageClass }}"
+{{- end }}
+{{- end }}
+{{- end -}}
diff --git a/kubernetes/aai/charts/aai-graphadmin/values.yaml b/kubernetes/aai/charts/aai-graphadmin/values.yaml
index bdd6033bc3..498c3c185d 100644
--- a/kubernetes/aai/charts/aai-graphadmin/values.yaml
+++ b/kubernetes/aai/charts/aai-graphadmin/values.yaml
@@ -108,8 +108,26 @@ ingress:
enabled: false
persistence:
+ enabled: true
+ ## A manually managed Persistent Volume and Claim
+ ## Requires persistence.enabled: true
+ ## If defined, PVC must be created manually before volume will be bound
+ # existingClaim:
+ volumeReclaimPolicy: Retain
+ ## database data Persistent Volume Storage Class
+ ## If defined, storageClassName: <storageClass>
+ ## If set to "-", storageClassName: "", which disables dynamic provisioning
+ ## If undefined (the default) or set to null, no storageClassName spec is
+ ## set, choosing the default provisioner. (gp2 on AWS, standard on
+ ## GKE, AWS & OpenStack)
+ ##
+ # storageClass: "-"
+ accessMode: ReadWriteMany
+ size: 2Gi
+
mountPath: /dockerdata-nfs
mountSubPath: aai/aai-graphadmin
+ mountSubPath1: aai/migration
resources:
small:
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties b/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties
index 2c22d14a41..9dc66368ce 100644
--- a/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties
+++ b/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-cached.properties
@@ -25,17 +25,13 @@ query.smart-limit=false
{{ if .Values.global.config.cluster.cassandra.dynamic }}
-{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
-{{- $global := . }}
-
storage.backend=cassandra
-storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
-
+storage.hostname={{.Values.global.cassandra.serviceName}}
storage.cassandra.keyspace=aaigraph
storage.cassandra.read-consistency-level=LOCAL_QUORUM
storage.cassandra.write-consistency-level=LOCAL_QUORUM
-storage.cassandra.replication-factor=3
+storage.cassandra.replication-factor={{.Values.global.cassandra.replicas}}
storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
{{ else }}
diff --git a/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties b/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties
index b19c9b6df6..8791a0bd7e 100644
--- a/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties
+++ b/kubernetes/aai/charts/aai-resources/resources/config/janusgraph-realtime.properties
@@ -23,17 +23,13 @@ query.smart-limit=false
{{ if .Values.global.config.cluster.cassandra.dynamic }}
-{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
-{{- $global := . }}
-
storage.backend=cassandra
-storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
-
+storage.hostname={{.Values.global.cassandra.serviceName}}
storage.cassandra.keyspace=aaigraph
storage.cassandra.read-consistency-level=LOCAL_QUORUM
storage.cassandra.write-consistency-level=LOCAL_QUORUM
-storage.cassandra.replication-factor=3
+storage.cassandra.replication-factor={{.Values.global.cassandra.replicas}}
storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
{{ else }}
diff --git a/kubernetes/aai/charts/aai-resources/templates/configmap.yaml b/kubernetes/aai/charts/aai-resources/templates/configmap.yaml
index 0f40d04dae..a4c2e317ad 100644
--- a/kubernetes/aai/charts/aai-resources/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-resources/templates/configmap.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-log
+ name: {{ include "common.fullname" . }}-configmap
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -24,83 +24,11 @@ metadata:
heritage: {{ .Release.Service }}
data:
{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-localhost-access-log-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/localhost-access-logback.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-db-real-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/janusgraph-realtime.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-db-cached-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/janusgraph-cached.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-aaiconfig-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/aaiconfig.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-springapp-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/application.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-realm-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/realm.properties").AsConfig . | indent 2 }}
---
apiVersion: v1
diff --git a/kubernetes/aai/charts/aai-resources/templates/deployment.yaml b/kubernetes/aai/charts/aai-resources/templates/deployment.yaml
index 9fe4c17cc9..d530c3dbbc 100644
--- a/kubernetes/aai/charts/aai-resources/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-resources/templates/deployment.yaml
@@ -805,7 +805,12 @@ spec:
{{ end }}
initContainers:
- command:
- {{ if .Values.global.jobs.createSchema.enabled }}
+ {{ if .Values.global.jobs.migration.enabled }}
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-aai-graphadmin-migration
+ {{ else if .Values.global.jobs.createSchema.enabled }}
- /root/job_complete.py
args:
- --job-name
@@ -814,7 +819,11 @@ spec:
- /root/ready.py
args:
- --container-name
+ {{- if .Values.global.cassandra.localCluster }}
- aai-cassandra
+ {{- else }}
+ - cassandra
+ {{- end }}
- --container-name
- aai-schema-service
{{ end }}
@@ -849,24 +858,24 @@ spec:
name: localtime
readOnly: true
- mountPath: /opt/app/aai-resources/resources/etc/appprops/janusgraph-realtime.properties
- name: {{ include "common.fullname" . }}-db-real-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-realtime.properties
- mountPath: /opt/app/aai-resources/resources/etc/appprops/janusgraph-cached.properties
- name: {{ include "common.fullname" . }}-db-cached-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-cached.properties
- mountPath: /opt/app/aai-resources/resources/etc/appprops/aaiconfig.properties
- name: {{ include "common.fullname" . }}-aaiconfig-conf
+ name: {{ include "common.fullname" . }}-config
subPath: aaiconfig.properties
- mountPath: /opt/aai/logroot/AAI-RES
name: {{ include "common.fullname" . }}-logs
- mountPath: /opt/app/aai-resources/resources/logback.xml
- name: {{ include "common.fullname" . }}-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: logback.xml
- mountPath: /opt/app/aai-resources/resources/localhost-access-logback.xml
- name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: localhost-access-logback.xml
- mountPath: /opt/app/aai-resources/resources/etc/auth/realm.properties
- name: {{ include "common.fullname" . }}-realm-conf
+ name: {{ include "common.fullname" . }}-config
subPath: realm.properties
{{ if .Values.global.installSidecarSecurity }}
- mountPath: /opt/app/aai-resources/resources/etc/auth/aai_policy.json
@@ -898,7 +907,7 @@ spec:
name: aai-common-aai-auth-mount
subPath: truststoreONAPall.jks
- mountPath: /opt/app/aai-resources/resources/application.properties
- name: {{ include "common.fullname" . }}-springapp-conf
+ name: {{ include "common.fullname" . }}-config
subPath: application.properties
{{ $global := . }}
{{ range $job := .Values.global.config.auth.files }}
@@ -1042,33 +1051,15 @@ spec:
emptyDir: {}
- name: {{ include "common.fullname" . }}-filebeat
emptyDir: {}
- - name: {{ include "common.fullname" . }}-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-log
- - name: {{ include "common.fullname" . }}-localhost-access-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-localhost-access-log-configmap
- - name: {{ include "common.fullname" . }}-db-real-conf
+ - name: {{ include "common.fullname" . }}-config
configMap:
- name: {{ include "common.fullname" . }}-db-real-configmap
- - name: {{ include "common.fullname" . }}-db-cached-conf
- configMap:
- name: {{ include "common.fullname" . }}-db-cached-configmap
- - name: {{ include "common.fullname" . }}-aaiconfig-conf
- configMap:
- name: {{ include "common.fullname" . }}-aaiconfig-configmap
+ name: {{ include "common.fullname" . }}-configmap
- name: {{ include "common.fullname" . }}-aaf-properties
configMap:
name: {{ include "common.fullname" . }}-aaf-props
- name: {{ include "common.fullname" . }}-aaf-certs
secret:
secretName: {{ include "common.fullname" . }}-aaf-keys
- - name: {{ include "common.fullname" . }}-springapp-conf
- configMap:
- name: {{ include "common.fullname" . }}-springapp-configmap
- - name: {{ include "common.fullname" . }}-realm-conf
- configMap:
- name: {{ include "common.fullname" . }}-realm-configmap
- name: {{ include "common.fullname" . }}-auth-truststore-sec
secret:
secretName: aai-common-truststore
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties b/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties
index 2c22d14a41..9dc66368ce 100644
--- a/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-cached.properties
@@ -25,17 +25,13 @@ query.smart-limit=false
{{ if .Values.global.config.cluster.cassandra.dynamic }}
-{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
-{{- $global := . }}
-
storage.backend=cassandra
-storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
-
+storage.hostname={{.Values.global.cassandra.serviceName}}
storage.cassandra.keyspace=aaigraph
storage.cassandra.read-consistency-level=LOCAL_QUORUM
storage.cassandra.write-consistency-level=LOCAL_QUORUM
-storage.cassandra.replication-factor=3
+storage.cassandra.replication-factor={{.Values.global.cassandra.replicas}}
storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
{{ else }}
diff --git a/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties b/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties
index b19c9b6df6..8791a0bd7e 100644
--- a/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties
+++ b/kubernetes/aai/charts/aai-traversal/resources/config/janusgraph-realtime.properties
@@ -23,17 +23,13 @@ query.smart-limit=false
{{ if .Values.global.config.cluster.cassandra.dynamic }}
-{{- $seed_size := default 1 .Values.global.cassandra.replicas | int -}}
-{{- $global := . }}
-
storage.backend=cassandra
-storage.hostname={{- range $i, $e := until $seed_size }}{{ $global.Release.Name }}-{{$global.Values.global.cassandra.serviceName}}-{{ $i }}.{{$global.Values.global.cassandra.serviceName}},{{- end }}
-
+storage.hostname={{.Values.global.cassandra.serviceName}}
storage.cassandra.keyspace=aaigraph
storage.cassandra.read-consistency-level=LOCAL_QUORUM
storage.cassandra.write-consistency-level=LOCAL_QUORUM
-storage.cassandra.replication-factor=3
+storage.cassandra.replication-factor={{.Values.global.cassandra.replicas}}
storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.SimpleStrategy
{{ else }}
diff --git a/kubernetes/aai/charts/aai-traversal/templates/configmap.yaml b/kubernetes/aai/charts/aai-traversal/templates/configmap.yaml
index 106031edbc..1a92199d49 100644
--- a/kubernetes/aai/charts/aai-traversal/templates/configmap.yaml
+++ b/kubernetes/aai/charts/aai-traversal/templates/configmap.yaml
@@ -15,7 +15,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.fullname" . }}-log
+ name: {{ include "common.fullname" . }}-configmap
namespace: {{ include "common.namespace" . }}
labels:
app: {{ include "common.name" . }}
@@ -24,83 +24,11 @@ metadata:
heritage: {{ .Release.Service }}
data:
{{ tpl (.Files.Glob "resources/config/logback.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-localhost-access-log-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/localhost-access-logback.xml").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-db-real-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/janusgraph-realtime.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-db-cached-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/janusgraph-cached.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-aaiconfig-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/aaiconfig.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-springapp-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/application.properties").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-realm-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/realm.properties").AsConfig . | indent 2 }}
---
apiVersion: v1
diff --git a/kubernetes/aai/charts/aai-traversal/templates/deployment.yaml b/kubernetes/aai/charts/aai-traversal/templates/deployment.yaml
index be4b863195..b94389f068 100644
--- a/kubernetes/aai/charts/aai-traversal/templates/deployment.yaml
+++ b/kubernetes/aai/charts/aai-traversal/templates/deployment.yaml
@@ -440,7 +440,12 @@ spec:
{{ if .Values.global.initContainers.enabled }}
initContainers:
- command:
- {{ if .Values.global.jobs.createSchema.enabled }}
+ {{ if .Values.global.jobs.migration.enabled }}
+ - /root/job_complete.py
+ args:
+ - --job-name
+ - {{ .Release.Name }}-aai-graphadmin-migration
+ {{ else if .Values.global.jobs.createSchema.enabled }}
- /root/job_complete.py
args:
- --job-name
@@ -449,7 +454,11 @@ spec:
- /root/ready.py
args:
- --container-name
+ {{- if .Values.global.cassandra.localCluster }}
- aai-cassandra
+ {{- else }}
+ - cassandra
+ {{- end }}
- --container-name
- aai-schema-service
{{ end }}
@@ -479,24 +488,24 @@ spec:
name: localtime
readOnly: true
- mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
- name: {{ include "common.fullname" . }}-db-real-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-realtime.properties
- mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
- name: {{ include "common.fullname" . }}-db-cached-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-cached.properties
- mountPath: /opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
- name: {{ include "common.fullname" . }}-aaiconfig-conf
+ name: {{ include "common.fullname" . }}-config
subPath: aaiconfig.properties
- mountPath: /opt/aai/logroot/AAI-GQ
name: {{ include "common.fullname" . }}-logs
- mountPath: /opt/app/aai-traversal/resources/logback.xml
- name: {{ include "common.fullname" . }}-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: logback.xml
- mountPath: /opt/app/aai-traversal/resources/localhost-access-logback.xml
- name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: localhost-access-logback.xml
- mountPath: /opt/app/aai-traversal/resources/etc/auth/realm.properties
- name: {{ include "common.fullname" . }}-realm-conf
+ name: {{ include "common.fullname" . }}-config
subPath: realm.properties
- mountPath: /opt/app/aai-traversal/resources/aaf/org.onap.aai.keyfile
name: {{ include "common.fullname" . }}-aaf-certs
@@ -523,7 +532,7 @@ spec:
name: aai-common-aai-auth-mount
subPath: truststoreONAPall.jks
- mountPath: /opt/app/aai-traversal/resources/application.properties
- name: {{ include "common.fullname" . }}-springapp-conf
+ name: {{ include "common.fullname" . }}-config
subPath: application.properties
{{ $global := . }}
{{ range $job := .Values.global.config.auth.files }}
@@ -584,21 +593,9 @@ spec:
emptyDir: {}
- name: {{ include "common.fullname" . }}-filebeat
emptyDir: {}
- - name: {{ include "common.fullname" . }}-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-log
- - name: {{ include "common.fullname" . }}-localhost-access-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-localhost-access-log-configmap
- - name: {{ include "common.fullname" . }}-db-real-conf
+ - name: {{ include "common.fullname" . }}-config
configMap:
- name: {{ include "common.fullname" . }}-db-real-configmap
- - name: {{ include "common.fullname" . }}-db-cached-conf
- configMap:
- name: {{ include "common.fullname" . }}-db-cached-configmap
- - name: {{ include "common.fullname" . }}-aaiconfig-conf
- configMap:
- name: {{ include "common.fullname" . }}-aaiconfig-configmap
+ name: {{ include "common.fullname" . }}-configmap
- name: {{ include "common.fullname" . }}-aaf-properties
configMap:
name: {{ include "common.fullname" . }}-aaf-props
@@ -608,12 +605,6 @@ spec:
- name: aai-common-aai-auth-mount
secret:
secretName: aai-common-aai-auth
- - name: {{ include "common.fullname" . }}-springapp-conf
- configMap:
- name: {{ include "common.fullname" . }}-springapp-configmap
- - name: {{ include "common.fullname" . }}-realm-conf
- configMap:
- name: {{ include "common.fullname" . }}-realm-configmap
- name: {{ include "common.fullname" . }}-auth-truststore-sec
secret:
secretName: aai-common-truststore
diff --git a/kubernetes/aai/charts/aai-traversal/templates/job.yaml b/kubernetes/aai/charts/aai-traversal/templates/job.yaml
index a746f54470..31db068ae8 100644
--- a/kubernetes/aai/charts/aai-traversal/templates/job.yaml
+++ b/kubernetes/aai/charts/aai-traversal/templates/job.yaml
@@ -25,6 +25,12 @@ metadata:
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
+{{ if .Values.global.jobs.migration.enabled }}
+ annotations:
+ "helm.sh/hook": post-upgrade,post-rollback,post-install
+ "helm.sh/hook-weight": "2"
+ "helm.sh/hook-delete-policy": before-hook-creation
+{{ end }}
spec:
template:
metadata:
@@ -74,24 +80,24 @@ spec:
name: localtime
readOnly: true
- mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
- name: {{ include "common.fullname" . }}-db-real-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-realtime.properties
- mountPath: /opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
- name: {{ include "common.fullname" . }}-db-cached-conf
+ name: {{ include "common.fullname" . }}-config
subPath: janusgraph-cached.properties
- mountPath: /opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
- name: {{ include "common.fullname" . }}-aaiconfig-conf
+ name: {{ include "common.fullname" . }}-config
subPath: aaiconfig.properties
- mountPath: /opt/aai/logroot/AAI-GQ/
name: {{ include "common.fullname" . }}-logs
- mountPath: /opt/app/aai-traversal/resources/logback.xml
- name: {{ include "common.fullname" . }}-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: logback.xml
- mountPath: /opt/app/aai-traversal/resources/localhost-access-logback.xml
- name: {{ include "common.fullname" . }}-localhost-access-log-conf
+ name: {{ include "common.fullname" . }}-config
subPath: localhost-access-logback.xml
- mountPath: /opt/app/aai-traversal/resources/application.properties
- name: {{ include "common.fullname" . }}-springapp-conf
+ name: {{ include "common.fullname" . }}-config
subPath: application.properties
{{ $global := . }}
{{ range $job := .Values.global.config.auth.files }}
@@ -113,27 +119,9 @@ spec:
path: {{ .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }}-update-query
- name: {{ include "common.fullname" . }}-filebeat
emptyDir: {}
- - name: {{ include "common.fullname" . }}-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-log
- - name: {{ include "common.fullname" . }}-localhost-access-log-conf
- configMap:
- name: {{ include "common.fullname" . }}-localhost-access-log-configmap
- - name: {{ include "common.fullname" . }}-db-real-conf
- configMap:
- name: {{ include "common.fullname" . }}-db-real-configmap
- - name: {{ include "common.fullname" . }}-db-cached-conf
- configMap:
- name: {{ include "common.fullname" . }}-db-cached-configmap
- - name: {{ include "common.fullname" . }}-aaiconfig-conf
- configMap:
- name: {{ include "common.fullname" . }}-aaiconfig-configmap
- - name: {{ include "common.fullname" . }}-springapp-conf
- configMap:
- name: {{ include "common.fullname" . }}-springapp-configmap
- - name: {{ include "common.fullname" . }}-realm-conf
+ - name: {{ include "common.fullname" . }}-config
configMap:
- name: {{ include "common.fullname" . }}-realm-configmap
+ name: {{ include "common.fullname" . }}-configmap
- name: {{ include "common.fullname" . }}-auth-truststore-sec
secret:
secretName: aai-common-truststore
diff --git a/kubernetes/aai/requirements.yaml b/kubernetes/aai/requirements.yaml
index 01f6f1a9aa..24f69b2e10 100644
--- a/kubernetes/aai/requirements.yaml
+++ b/kubernetes/aai/requirements.yaml
@@ -19,3 +19,10 @@ dependencies:
# a part of this chart's package and will not
# be published independently to a repo (at this point)
repository: '@local'
+ - name: cassandra
+ version: ~4.x-0
+ # local reference to common chart, as it is
+ # a part of this chart's package and will not
+ # be published independently to a repo (at this point)
+ repository: '@local'
+ condition: global.cassandra.localCluster
diff --git a/kubernetes/aai/values.yaml b/kubernetes/aai/values.yaml
index 91563c23ff..b2e17af428 100644
--- a/kubernetes/aai/values.yaml
+++ b/kubernetes/aai/values.yaml
@@ -56,7 +56,15 @@ global: # global defaults
serverPort: 30247
cassandra:
- serviceName: aai-cassandra
+ #This will instantiate AAI cassandra cluster, default:shared cassandra.
+ localCluster: false
+
+ #Service Name of the cassandra cluster to connect to.
+ #Override it to aai-cassandra if localCluster is enabled.
+ serviceName: cassandra
+
+ #This should be same as shared cassandra instance or if localCluster is enabled
+ #then it should be same as aai-cassandra replicaCount
replicas: 3
aai:
@@ -96,6 +104,69 @@ global: # global defaults
# When enabled, it will create the widget models via REST API to haproxy
updateQueryData:
enabled: true
+ #migration using helm hooks
+ migration:
+ enabled: false
+ remoteCassandra:
+ enabled: false
+ storage:
+ backend: cassandra
+ hostname: 10.10.10.10
+ connectionTimeout: 100000
+ cacheSize: 1000000
+ keyConsistent: true
+
+ #If backend is cql or cassandra it should be keyspace name
+ #else backend is hbase it should be hbase table name
+ name: aaigraph
+
+ ## CQL driver specific properties for janusgraph
+ # cql:
+ # #Name of the Cassandra Cluster
+ # cluster: someclustername
+ # readConsistency: QUORUM
+ # writeConsistency: QUORUM
+ # replicationFactor: 3
+ # localConsistencyForSysOps: true
+
+ ## Cassandra driver specific properties for janusgraph
+ cassandra:
+ #Name of the Cassandra Cluster
+ clusterName: aai-cluster
+ localDataCenter: Pod lab
+ readConsistency: LOCAL_QUORUM
+ writeConsistency: LOCAL_QUORUM
+ replicationFactor: 3
+
+ #storage:
+ # backend: cassandra
+ # hostname: somehost1,somehost2,somehost3
+ # connectionTimeout: 100000
+ # cacheSize: 1000000
+ # clusterName: someClusterName
+ # localDataCenter: someDataCenter
+ # keyConsistent: true
+ # #If backend is cql or cassandra it should be keyspace name
+ # #else backend is hbase it should be hbase table name
+ # name: your_hbase_table_or_keyspace_name
+
+ ## CQL driver specific properties for janusgraph
+ # cql:
+ # #Name of the Cassandra Cluster
+ # cluster: someclustername
+ # readConsistency: QUORUM
+ # writeConsistency: QUORUM
+ # replicationFactor: 3
+ # localConsistencyForSysOps: true
+
+ ## Cassandra driver specific properties for janusgraph
+ # cassandra:
+ # #Name of the Cassandra Cluster
+ # cluster: someclustername
+ # readConsistency: LOCAL_QUORUM
+ # writeConsistency: LOCAL_QUORUM
+ # replicationFactor: 3
+
# Common configuration for resources traversal and graphadmin
config:
@@ -252,6 +323,20 @@ liveness:
# in debugger so K8s doesn't restart unresponsive container
enabled: true
+#This section is used when localCluster is enabled. AAI will create its own cassandra cluster for its specific use.
+#Below command will instantiate the aai cassandra instances:
+#helm deploy demo local/onap --version=4.0.0 --namespace onap --set aai.enabled=true \
+# --set aai.global.cassandra.localCluster=true \
+# --set aai.global.cassandra.serviceName=aai-cassandra
+cassandra:
+ nameOverride: aai-cassandra
+ replicaCount: 3
+ service:
+ name: aai-cassandra
+ persistence:
+ mountSubPath: aai/cassandra
+ enabled: true
+
readiness:
initialDelaySeconds: 10
periodSeconds: 10
diff --git a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql
index 6f614a7203..a6beca2b09 100644
--- a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql
+++ b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/clds-create-db-objects.sql
@@ -1,4 +1,4 @@
-/* Copyright © 2017 AT&T, Amdocs, Bell Canada
+/* Copyright © 2017-2019 AT&T, 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.
@@ -122,14 +122,6 @@ CREATE TABLE event (
PRIMARY KEY (event_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-CREATE TABLE clds_service_cache (
- invariant_service_id VARCHAR(36) NOT NULL,
- service_id VARCHAR(36) NULL,
- timestamp TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
- object_data MEDIUMBLOB NULL,
- PRIMARY KEY (invariant_service_id)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin;
-
CREATE TABLE IF NOT EXISTS tosca_model (
tosca_model_id VARCHAR(36) NOT NULL,
tosca_model_name VARCHAR(80) NOT NULL,
diff --git a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/create-tables.sql b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/create-tables.sql
new file mode 100644
index 0000000000..8e51f62d22
--- /dev/null
+++ b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/bulkload/create-tables.sql
@@ -0,0 +1,84 @@
+/* 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.
+*/
+ create table hibernate_sequence (
+ next_val bigint
+ ) engine=InnoDB;
+
+ insert into hibernate_sequence values ( 1 );
+
+ create table loop_logs (
+ id bigint not null,
+ log_instant datetime(6) not null,
+ log_type varchar(255) not null,
+ message varchar(255) not null,
+ loop_id varchar(255) not null,
+ primary key (id)
+ ) engine=InnoDB;
+
+ create table loops (
+ name varchar(255) not null,
+ blueprint_yaml MEDIUMTEXT not null,
+ dcae_blueprint_id varchar(255),
+ dcae_deployment_id varchar(255),
+ dcae_deployment_status_url varchar(255),
+ global_properties_json json,
+ last_computed_state varchar(255) not null,
+ model_properties_json json,
+ svg_representation MEDIUMTEXT,
+ primary key (name)
+ ) engine=InnoDB;
+
+ create table loops_microservicepolicies (
+ loop_id varchar(255) not null,
+ microservicepolicy_id varchar(255) not null,
+ primary key (loop_id, microservicepolicy_id)
+ ) engine=InnoDB;
+
+ create table micro_service_policies (
+ name varchar(255) not null,
+ json_representation json not null,
+ model_type varchar(255) not null,
+ policy_tosca MEDIUMTEXT not null,
+ properties json,
+ shared bit not null,
+ primary key (name)
+ ) engine=InnoDB;
+
+ create table operational_policies (
+ name varchar(255) not null,
+ configurations_json json,
+ loop_id varchar(255) not null,
+ primary key (name)
+ ) engine=InnoDB;
+
+ alter table loop_logs
+ add constraint FK1j0cda46aickcaoxqoo34khg2
+ foreign key (loop_id)
+ references loops (name);
+
+ alter table loops_microservicepolicies
+ add constraint FKem7tp1cdlpwe28av7ef91j1yl
+ foreign key (microservicepolicy_id)
+ references micro_service_policies (name);
+
+ alter table loops_microservicepolicies
+ add constraint FKsvx91jekgdkfh34iaxtjfgebt
+ foreign key (loop_id)
+ references loops (name);
+
+ alter table operational_policies
+ add constraint FK1ddoggk9ni2bnqighv6ecmuwu
+ foreign key (loop_id)
+ references loops (name);
diff --git a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/load-sql-files-tests-automation.sh b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/load-sql-files-tests-automation.sh
index 1c8f3bf8f2..0755826cde 100644..100755
--- a/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/load-sql-files-tests-automation.sh
+++ b/kubernetes/clamp/charts/mariadb/resources/config/mariadb/docker-entrypoint-initdb.d/load-sql-files-tests-automation.sh
@@ -7,6 +7,7 @@
# Copyright (C) 2017 AT&T Intellectual Property. All rights
# reserved.
# Modifications Copyright © 2018 Amdocs,Bell Canada
+# Modifications 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.
@@ -25,5 +26,8 @@
###
cd /docker-entrypoint-initdb.d/bulkload
+### Keep previous DB for now (SOON DEPRECATED)
mysql -uroot -p$MYSQL_ROOT_PASSWORD -f < clds-create-db-objects.sql
mysql -uroot -p$MYSQL_ROOT_PASSWORD -f < clds-stored-procedures.sql
+## New model creation
+mysql -uroot -p$MYSQL_ROOT_PASSWORD -f cldsdb4 < create-tables.sql
diff --git a/kubernetes/clamp/charts/mariadb/values.yaml b/kubernetes/clamp/charts/mariadb/values.yaml
index 13d1971028..5f31c79bdf 100644
--- a/kubernetes/clamp/charts/mariadb/values.yaml
+++ b/kubernetes/clamp/charts/mariadb/values.yaml
@@ -1,5 +1,5 @@
# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T
+# Modifications Copyright © 2018-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.
@@ -23,7 +23,7 @@ global: # global defaults
# application image
repository: nexus3.onap.org:10001
-image: mariadb:10.1.11
+image: mariadb:10.3.12
pullPolicy: Always
flavor: small
diff --git a/kubernetes/common/dgbuilder/values.yaml b/kubernetes/common/dgbuilder/values.yaml
index cb45d29762..e07c904711 100644
--- a/kubernetes/common/dgbuilder/values.yaml
+++ b/kubernetes/common/dgbuilder/values.yaml
@@ -47,7 +47,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/ccsdk-dgbuilder-image:0.3.2
+image: onap/ccsdk-dgbuilder-image:0.4.2-STAGING-latest
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/common/mariadb-galera/templates/statefulset.yaml b/kubernetes/common/mariadb-galera/templates/statefulset.yaml
index 601057ff6f..6dc5a7aad6 100644
--- a/kubernetes/common/mariadb-galera/templates/statefulset.yaml
+++ b/kubernetes/common/mariadb-galera/templates/statefulset.yaml
@@ -113,6 +113,7 @@ spec:
initContainers:
- name: mariadb-galera-prepare
image: "{{ include "common.repository" . }}/{{ .Values.imageInit }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy | quote}}
command: ["sh", "-c", "chown -R 27:27 /var/lib/mysql"]
volumeMounts:
- name: {{ include "common.fullname" . }}-data
diff --git a/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml b/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml
index 449949992f..ae5f7c5a81 100644
--- a/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml
+++ b/kubernetes/common/music/charts/music-cassandra/templates/statefulset.yaml
@@ -74,7 +74,7 @@ spec:
- -c
- nodetool status | grep $POD_IP | awk '$1!="UN" { exit 1; }'
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- timeoutSeconds: {{ .Values.liveness.periodSeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
lifecycle:
preStop:
exec:
diff --git a/kubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml b/kubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml
index 92888ea20f..399e03868d 100755
--- a/kubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml
+++ b/kubernetes/contrib/charts/netbox/charts/netbox-app/templates/deployment.yaml
@@ -34,26 +34,24 @@ spec:
spec:
containers:
- name: {{ include "common.name" . }}
- image: {{ .Values.global.repository | default .Values.repository }}/{{ .Values.image }}
+ image: {{ .Values.repository }}/{{ .Values.image }}
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.internalPort }}
# disable liveness probe when breakpoints set in debugger
# so K8s doesn't restart unresponsive container
- {{ if .Values.liveness.enabled }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end }}
- readinessProbe:
- httpGet:
- path: /api/dcim/regions/
- port: {{ .Values.service.internalPort }}
- scheme: HTTP
- initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- periodSeconds: {{ .Values.readiness.periodSeconds }}
+ {{ if .Values.liveness.enabled }}
+ livenessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.liveness.periodSeconds }}
+ {{ end }}
+ readinessProbe:
+ tcpSocket:
+ port: {{ .Values.service.internalPort }}
+ initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ .Values.readiness.periodSeconds }}
env:
- name: DB_PASSWORD
valueFrom:
diff --git a/kubernetes/dcaegen2/Makefile b/kubernetes/dcaegen2/Makefile
index 432a744094..f77bc8fb16 100644
--- a/kubernetes/dcaegen2/Makefile
+++ b/kubernetes/dcaegen2/Makefile
@@ -1,4 +1,4 @@
-make-dcaegen2: make-dcae-bootstrap make-dcae-cloudify-manager make-dcae-config-binding-service make-dcae-healthcheck make-dcae-redis make-dcae-servicechange-handler make-dcae-inventory-api
+make-dcaegen2: make-dcae-bootstrap make-dcae-cloudify-manager make-dcae-config-binding-service make-dcae-healthcheck make-dcae-redis make-dcae-servicechange-handler make-dcae-inventory-api make-dcae-deployment-handler make-dcae-policy-handler
make-dcae-bootstrap:
cd charts && helm dep up dcae-bootstrap && helm lint dcae-bootstrap
@@ -20,3 +20,9 @@ make-dcae-servicechange-handler:
make-dcae-inventory-api:
cd charts/dcae-servicechange-handler/charts && helm dep up dcae-inventory-api && helm lint dcae-inventory-api
+
+make-dcae-deployment-handler:
+ cd charts && helm dep up dcae-deployment-handler && helm lint dcae-deployment-handler
+
+make-dcae-policy-handler:
+ cd charts && helm dep up dcae-policy-handler && helm lint dcae-policy-handler
diff --git a/kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml b/kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml
index 2da7875137..d985f4fb9c 100644
--- a/kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml
+++ b/kubernetes/dcaegen2/charts/dcae-bootstrap/values.yaml
@@ -27,7 +27,7 @@ global:
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
tlsRepository: nexus3.onap.org:10001
- tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.1-STAGING-latest
+ tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.2-STAGING-latest
config:
logstashServiceName: log-ls
@@ -89,19 +89,19 @@ postgres:
# application image
repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.4.10-STAGING-latest
+image: onap/org.onap.dcaegen2.deployments.k8s-bootstrap-container:1.4.14-STAGING-latest
default_k8s_location: central
# DCAE component images to be deployed via Cloudify Manager
# Use to override default setting in blueprints
componentImages:
dashboard: onap/org.onap.ccsdk.dashboard.ccsdk-app-os:1.1.0-SNAPSHOT-latest
- holmes_rules: onap/holmes/rule-management:1.2.3
- holmes_engine: onap/holmes/engine-management:1.2.2
- tca: onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.0
- ves: onap/org.onap.dcaegen2.collectors.ves.vescollector:1.3.1
- snmptrap: onap/org.onap.dcaegen2.collectors.snmptrap:1.4.0
- prh: onap/org.onap.dcaegen2.services.prh.prh-app-server:1.2.1-SNAPSHOT
+ holmes_rules: onap/holmes/rule-management:1.2.4-STAGING-latest
+ holmes_engine: onap/holmes/engine-management:1.2.3-STAGING-latest
+ tca: onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.0-STAGING-latest
+ ves: onap/org.onap.dcaegen2.collectors.ves.vescollector:1.4.3
+ snmptrap: onap/org.onap.dcaegen2.collectors.snmptrap:1.4.0-STAGING-latest
+ prh: onap/org.onap.dcaegen2.services.prh.prh-app-server:1.2.1
hv_ves: onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-main:1.1.0-SNAPSHOT
# Resource Limit flavor -By Default using small
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml
index 97728fae1d..b8dadaae89 100644
--- a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/configmap.yaml
@@ -31,6 +31,12 @@ metadata:
namespace: {{include "common.namespace" . }}
data:
{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Values.multisiteConfigMapName }}
+ namespace: {{include "common.namespace" . }}
{{ if .Values.dcae_ns }}
---
apiVersion: v1
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml
index 62eeb45281..d6c58cd75f 100644
--- a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/templates/deployment.yaml
@@ -34,6 +34,16 @@ spec:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ initContainers:
+ - name: {{ include "common.name" . }}-multisite-init
+ image: {{ include "common.repository" . }}/{{ .Values.multisiteInitImage }}
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ args:
+ - --namespace
+ - {{ include "common.namespace" . }}
+ - --configmap
+ - {{ .Values.multisiteConfigMapName }}
+ restartPolicy: Never
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
@@ -50,10 +60,11 @@ spec:
port: {{ .Values.service.internalPort }}
initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
periodSeconds: {{ .Values.liveness.periodSeconds }}
- {{ end -}}
+ {{ end }}
readinessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
+ exec:
+ command:
+ - /scripts/readiness-check.sh
initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
periodSeconds: {{ .Values.readiness.periodSeconds }}
volumeMounts:
@@ -61,6 +72,9 @@ spec:
subPath: config.txt
name: {{ include "common.fullname" .}}-config
readOnly: true
+ - mountPath: /opt/onap/kube
+ name: {{ include "common.fullname" .}}-kubeconfig
+ readOnly: true
- mountPath: /secret
name: dcae-token
readOnly: true
@@ -78,6 +92,9 @@ spec:
- name: {{ include "common.fullname" . }}-config
configMap:
name: {{ include "common.fullname" . }}-configmap
+ - name: {{ include "common.fullname" .}}-kubeconfig
+ configMap:
+ name: {{ .Values.multisiteConfigMapName }}
- name: dcae-token
secret:
secretName: dcae-token
diff --git a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml
index 3995bc6cba..8ecf448af0 100644
--- a/kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml
+++ b/kubernetes/dcaegen2/charts/dcae-cloudify-manager/values.yaml
@@ -44,9 +44,15 @@ config:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.deployments.cm-container:1.5.2-STAGING-latest
+image: onap/org.onap.dcaegen2.deployments.cm-container:1.6.1-STAGING-latest
pullPolicy: Always
+# name of shared ConfigMap with kubeconfig for multiple clusters
+multisiteConfigMapName: multisite-kubeconfig-configmap
+
+# image for init container to initialize shared ConfigMap
+multisiteInitImage: onap/org.onap.dcaegen2.deployments.multisite-init-container:1.0.0-STAGING-latest
+
# probe configuration parameters
liveness:
initialDelaySeconds: 10
diff --git a/kubernetes/dcaegen2/charts/dcae-config-binding-service/values.yaml b/kubernetes/dcaegen2/charts/dcae-config-binding-service/values.yaml
index 31d6a8b2fb..fc0ca877f9 100644
--- a/kubernetes/dcaegen2/charts/dcae-config-binding-service/values.yaml
+++ b/kubernetes/dcaegen2/charts/dcae-config-binding-service/values.yaml
@@ -43,7 +43,7 @@ config:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.configbinding.app-app:2.2.3
+image: onap/org.onap.dcaegen2.platform.configbinding.app-app:2.3.0-STAGING-latest
pullPolicy: Always
# probe configuration parameters
diff --git a/kubernetes/dcaegen2/charts/dcae-deployment-handler/values.yaml b/kubernetes/dcaegen2/charts/dcae-deployment-handler/values.yaml
index 6a00d36f2c..ebc36a6d7a 100644
--- a/kubernetes/dcaegen2/charts/dcae-deployment-handler/values.yaml
+++ b/kubernetes/dcaegen2/charts/dcae-deployment-handler/values.yaml
@@ -25,7 +25,7 @@ global:
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
tlsRepository: nexus3.onap.org:10001
- tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.1-STAGING-latest
+ tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.2-STAGING-latest
consulLoaderRepository: nexus3.onap.org:10001
consulLoaderImage: onap/org.onap.dcaegen2.deployments.consul-loader-container:1.0.0-STAGING-latest
repositoryCred:
@@ -46,7 +46,7 @@ config:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.deployment-handler:3.2.0
+image: onap/org.onap.dcaegen2.platform.deployment-handler:4.0.1
pullPolicy: Always
# probe configuration parameters
diff --git a/kubernetes/dcaegen2/charts/dcae-policy-handler/resources/config/config.json b/kubernetes/dcaegen2/charts/dcae-policy-handler/resources/config/config.json
index 76aa3838aa..74abbb0664 100644
--- a/kubernetes/dcaegen2/charts/dcae-policy-handler/resources/config/config.json
+++ b/kubernetes/dcaegen2/charts/dcae-policy-handler/resources/config/config.json
@@ -12,6 +12,7 @@
},
"policy_engine": {
"url": "https://{{ .Values.config.address.policy_pdp }}.{{include "common.namespace" . }}:8081",
+ "path_decision": "/decision/v1",
"path_notifications": "/pdp/notifications",
"path_api": "/pdp/api/",
"headers": {
diff --git a/kubernetes/dcaegen2/charts/dcae-policy-handler/values.yaml b/kubernetes/dcaegen2/charts/dcae-policy-handler/values.yaml
index c14614278c..e110f1cb31 100644
--- a/kubernetes/dcaegen2/charts/dcae-policy-handler/values.yaml
+++ b/kubernetes/dcaegen2/charts/dcae-policy-handler/values.yaml
@@ -25,7 +25,7 @@ global:
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
tlsRepository: nexus3.onap.org:10001
- tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.1-STAGING-latest
+ tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.2-STAGING-latest
consulLoaderRepository: nexus3.onap.org:10001
consulLoaderImage: onap/org.onap.dcaegen2.deployments.consul-loader-container:1.0.0-STAGING-latest
repositoryCred:
@@ -46,7 +46,7 @@ config:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.policy-handler:4.6.0-STAGING-latest
+image: onap/org.onap.dcaegen2.platform.policy-handler:5.0.0-STAGING-latest
pullPolicy: Always
# probe configuration parameters
diff --git a/kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/values.yaml b/kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/values.yaml
index 1fd004f2bd..f12040210b 100644
--- a/kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/values.yaml
+++ b/kubernetes/dcaegen2/charts/dcae-servicechange-handler/charts/dcae-inventory-api/values.yaml
@@ -42,7 +42,7 @@ config:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/org.onap.dcaegen2.platform.inventory-api:3.0.4
+image: onap/org.onap.dcaegen2.platform.inventory-api:3.2.0
pullPolicy: Always
diff --git a/kubernetes/dcaegen2/values.yaml b/kubernetes/dcaegen2/values.yaml
index e8c9d87e53..927f19e743 100644
--- a/kubernetes/dcaegen2/values.yaml
+++ b/kubernetes/dcaegen2/values.yaml
@@ -1,5 +1,5 @@
# Copyright © 2018 Amdocs, Bell Canada
-# Modifications Copyright © 2018 AT&T
+# Modifications Copyright © 2018-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.
@@ -18,6 +18,9 @@
#################################################################
global:
nodePortPrefix: 302
-
+ tlsRepository: nexus3.onap.org:10001
+ tlsImage: onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.3-STAGING-latest
+ consulLoaderRepository: nexus3.onap.org:10001
+ consulLoaderImage: onap/org.onap.dcaegen2.deployments.consul-loader-container:1.0.0-STAGING-latest
redis:
replicaCount: 6
diff --git a/kubernetes/dmaap/components/dmaap-bc/requirements.yaml b/kubernetes/dmaap/components/dmaap-bc/requirements.yaml
index 61c265fe64..ff249ee683 100644
--- a/kubernetes/dmaap/components/dmaap-bc/requirements.yaml
+++ b/kubernetes/dmaap/components/dmaap-bc/requirements.yaml
@@ -19,3 +19,4 @@ dependencies:
- name: postgres
version: ~4.x-0
repository: '@local'
+ condition: PG.enabled
diff --git a/kubernetes/dmaap/components/dmaap-bc/resources/config/dmaapbc.properties b/kubernetes/dmaap/components/dmaap-bc/resources/config/dmaapbc.properties
index 294ffa6bc3..f9c4d9e446 100644
--- a/kubernetes/dmaap/components/dmaap-bc/resources/config/dmaapbc.properties
+++ b/kubernetes/dmaap/components/dmaap-bc/resources/config/dmaapbc.properties
@@ -54,8 +54,8 @@ Feed.deleteHandling: SimulateDelete
# Settings for Soutbound API: Postgresql
#
#####################################################
-# flag indieonapdemodbates if we are using postgresql
-UsePGSQL: true
+# flag indicates if we are using postgresql
+UsePGSQL: {{ .Values.PG.enabled }}
# postgres host name
# Need to connect to PG primary service, designated by service.name2
diff --git a/kubernetes/dmaap/components/dmaap-bc/templates/deployment.yaml b/kubernetes/dmaap/components/dmaap-bc/templates/deployment.yaml
index 0ecdc1c0e8..fb31454c63 100644
--- a/kubernetes/dmaap/components/dmaap-bc/templates/deployment.yaml
+++ b/kubernetes/dmaap/components/dmaap-bc/templates/deployment.yaml
@@ -1,4 +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");
@@ -32,7 +32,7 @@ spec:
release: {{ .Release.Name }}
spec:
hostAliases:
- - ip: "10.12.6.214"
+ - ip: "10.12.5.145"
hostnames:
- "aaf-onap-test.osaaf.org"
initContainers:
@@ -40,6 +40,21 @@ spec:
- /root/ready.py
args:
- --container-name
+ - aaf-locate
+ 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" . }}-aaf-readiness
+{{ if .Values.PG.enabled }}
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
- {{ .Values.postgres.nameOverride }}
env:
- name: NAMESPACE
@@ -49,7 +64,8 @@ spec:
fieldPath: metadata.namespace
image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- name: {{ include "common.name" . }}-readiness
+ name: {{ include "common.name" . }}-postgres-readiness
+{{- end}}
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
diff --git a/kubernetes/dmaap/components/dmaap-bc/values.yaml b/kubernetes/dmaap/components/dmaap-bc/values.yaml
index a7fc3d88db..e59c4d657f 100644
--- a/kubernetes/dmaap/components/dmaap-bc/values.yaml
+++ b/kubernetes/dmaap/components/dmaap-bc/values.yaml
@@ -36,11 +36,11 @@ image: onap/dmaap/dmaap-bc:1.1.2
# application configuration
dmaapMessageRouterService: message-router
# change the following value to point to Windriver instance maintained
-# but AAF team.
+# by 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
+topicMgrUser: dmaap-bc@dmaap-bc.onap.org
topicMgrPwd: demo123456!
adminUser: aaf_admin@people.osaaf.org
adminPwd: demo123456!
@@ -50,6 +50,10 @@ adminPwd: demo123456!
# it will compose the topic namespace using the kubernetes namespace value
fixedTopicNamespace: true
+# for quicker deployments in dev, ability to disable using postgres
+PG:
+ enabled: true
+
nodeSelector: {}
affinity: {}
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties
index f2896ccafa..08e3fd0018 100644
--- a/kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties
+++ b/kubernetes/dmaap/components/dmaap-dr-node/resources/config/node.properties
@@ -83,11 +83,11 @@ KeyStoreFile=/opt/app/datartr/aaf_certs/org.onap.dmaap-dr.jks
#
# The password for the https keystore
#
-KeyStorePassword=]3V)($O&.Mv]W{f8^]6SxGNL
+KeyStorePassword=WGxd2P6MDo*Bi4+UdzWs{?$8
#
# The password for the private key in the https keystore
#
-KeyPassword=]3V)($O&.Mv]W{f8^]6SxGNL
+KeyPassword=WGxd2P6MDo*Bi4+UdzWs{?$8
#
# 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=(Rd,&{]%ePdp}4JZjqoJ2G+g
+TrustStorePassword=)OBvCd{e{aWq.^mJJdX:S:1&
#
# The path to the file used to trigger an orderly shutdown
#
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml b/kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml
index ec31f3f750..a508886f10 100644
--- a/kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-node/templates/statefulset.yaml
@@ -45,6 +45,15 @@ spec:
fieldRef:
apiVersion: v1
fieldPath: metadata.namespace
+ - name: {{ include "common.name" . }}-permission-fixer
+ image: "{{ .Values.global.busyBoxRepository }}/{{ .Values.global.busyBoxImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ volumeMounts:
+ - mountPath: {{ .Values.persistence.spoolPath }}
+ name: {{ include "common.fullname" . }}-spool-data-pvc
+ - mountPath: {{ .Values.persistence.eventLogsPath }}
+ name: {{ include "common.fullname" . }}-event-logs-pvc
+ command: ["chown","-Rf","1000:1001", "/opt/app/datartr"]
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
@@ -100,7 +109,7 @@ spec:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
# Filebeat sidecar container
- - name: {{ include "common.fullname" . }}-filebeat-onap
+ - name: {{ include "common.name" . }}-filebeat-onap
image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
@@ -139,7 +148,7 @@ spec:
name: {{ include "common.fullname" . }}-log
- name: {{ include "common.fullname" . }}-filebeat-conf
configMap:
- name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+ name: {{ .Release.Name }}-dmaap-filebeat-configmap
- name: {{ include "common.fullname" . }}-data-filebeat
emptyDir: {}
- name: {{ include "common.fullname" . }}-event-logs-pvc
diff --git a/kubernetes/dmaap/components/dmaap-dr-node/values.yaml b/kubernetes/dmaap/components/dmaap-dr-node/values.yaml
index c6087e8852..3b1532f999 100644
--- a/kubernetes/dmaap/components/dmaap-dr-node/values.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-node/values.yaml
@@ -21,13 +21,15 @@ global:
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
loggingDirectory: /opt/app/datartr/logs
+ busyBoxImage: busybox:1.30
+ busyBoxRepository: docker.io
#################################################################
# Application configuration defaults.
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/dmaap/datarouter-node:2.0.2
+image: onap/dmaap/datarouter-node:2.1.0
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties b/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties
index 2b78b8eb2c..6a6f49cc24 100644
--- a/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/resources/config/provserver.properties
@@ -25,14 +25,14 @@
#Jetty Server properties
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.https.relaxation = true
-org.onap.dmaap.datarouter.provserver.keymanager.password = AT{];bvaDiytVD&oWhMZj0N5
+org.onap.dmaap.datarouter.provserver.keymanager.password = FZNkU,B%NJzcT1v7;^v]M#ZX
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 = AT{];bvaDiytVD&oWhMZj0N5
+org.onap.dmaap.datarouter.provserver.keystore.password = FZNkU,B%NJzcT1v7;^v]M#ZX
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 = ljlS@Y}0]{UO(TnwvEWkgJ%]
+org.onap.dmaap.datarouter.provserver.truststore.password = +mzf@J.D^;3!![*Xr.z$c#?b
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
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml
index afd34d92bc..b9c144de72 100644
--- a/kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/templates/deployment.yaml
@@ -87,7 +87,7 @@ spec:
{{ toYaml .Values.affinity | indent 10 }}
{{- end }}
# Filebeat sidecar container
- - name: {{ include "common.fullname" . }}-filebeat-onap
+ - name: {{ include "common.name" . }}-filebeat-onap
image: "{{ .Values.global.loggingRepository }}/{{ .Values.global.loggingImage }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
volumeMounts:
@@ -115,7 +115,7 @@ spec:
name: {{ include "common.fullname" . }}-log
- name: {{ include "common.fullname" . }}-filebeat-conf
configMap:
- name: {{ include "common.fullname" . }}-dmaap-filebeat-configmap
+ name: {{ .Release.Name }}-dmaap-filebeat-configmap
- name: {{ include "common.fullname" . }}-data-filebeat
emptyDir: {}
- name: {{ include "common.fullname" . }}-logs
diff --git a/kubernetes/dmaap/components/dmaap-dr-prov/values.yaml b/kubernetes/dmaap/components/dmaap-dr-prov/values.yaml
index 3d65e911cf..7dca42e746 100644
--- a/kubernetes/dmaap/components/dmaap-dr-prov/values.yaml
+++ b/kubernetes/dmaap/components/dmaap-dr-prov/values.yaml
@@ -28,7 +28,7 @@ global:
#################################################################
# application image
repository: nexus3.onap.org:10001
-image: onap/dmaap/datarouter-prov:2.0.2
+image: onap/dmaap/datarouter-prov:2.1.0
pullPolicy: Always
# flag to enable debugging - application support required
diff --git a/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw-tweaks.sh b/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw-tweaks.sh
index 5c3a2a1fe3..d7b27a071c 100644
--- a/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw-tweaks.sh
+++ b/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw-tweaks.sh
@@ -39,14 +39,3 @@ for CONFIG in ${PROPS_RUNTIME} ${PROPS_INSTALL}; do
sed -i -e "s/brms.dependency.version=.*/brms.dependency.version=${version}/g" "${CONFIG}"
fi
done
-
-DEPS_JSON_RUNTIME="${POLICY_HOME}/servers/brmsgw/dependency.json"
-DEPS_JSON_INSTALL="${POLICY_HOME}/install/servers/brmsgw/dependency.json"
-
-for DEP in ${DEPS_JSON_RUNTIME} ${DEPS_JSON_INSTALL}; do
- if [ ! -f "${DEP}" ]; then
- echo "warning: configuration does not exist: ${DEP}"
- else
- sed -i -e "s/\"version\":.*-SNAPSHOT\"/\"version\": \"${version}\"/g" "${DEP}"
- fi
-done
diff --git a/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf b/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf
index b074d48501..3952a4cb8d 100644
--- a/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf
+++ b/kubernetes/policy/charts/brmsgw/resources/config/pe/brmsgw.conf
@@ -26,7 +26,7 @@ PDP_HTTP_PASSWORD=alpha123
PDP_PAP_PDP_HTTP_USER_ID=testpap
PDP_PAP_PDP_HTTP_PASSWORD=alpha123
-M2_HOME=/usr/share/maven
+M2_HOME=/usr/share/java/maven-3
snapshotRepositoryID=policy-nexus-snapshots
snapshotRepositoryName=Snapshots
snapshotRepositoryURL=http://{{ .Values.global.nexus.nameOverride }}:{{.Values.config.nexusPort}}/nexus/content/repositories/snapshots
@@ -64,4 +64,4 @@ BRMS_UEB_API_SECRET=
#Dependency.json file version
BRMS_DEPENDENCY_VERSION=1.3.1
-
+BRMS_MODELS_DEPENDENCY_VERSION=2.0.0-SNAPSHOT
diff --git a/kubernetes/policy/charts/mariadb/resources/config/db.sh b/kubernetes/policy/charts/mariadb/resources/config/db.sh
index 3f94223d33..a5eb7f55c2 100644
--- a/kubernetes/policy/charts/mariadb/resources/config/db.sh
+++ b/kubernetes/policy/charts/mariadb/resources/config/db.sh
@@ -15,7 +15,7 @@
#!/bin/bash -xv
-for db in support onap_sdk log migration operationshistory10 pooling
+for db in support onap_sdk log migration operationshistory10 pooling policyadmin operationshistory
do
mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "CREATE DATABASE IF NOT EXISTS ${db};"
mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "GRANT ALL PRIVILEGES ON \`${db}\`.* TO '${MYSQL_USER}'@'%' ;"
diff --git a/kubernetes/policy/charts/policy-apex-pdp/resources/config/OnapPfConfig.json b/kubernetes/policy/charts/policy-apex-pdp/resources/config/OnapPfConfig.json
new file mode 100644
index 0000000000..8edca606e4
--- /dev/null
+++ b/kubernetes/policy/charts/policy-apex-pdp/resources/config/OnapPfConfig.json
@@ -0,0 +1,16 @@
+{
+ "name":"OnapPfParameterGroup",
+ "restServerParameters": {
+ "host": "0.0.0.0",
+ "port": 6969,
+ "userName": "healthcheck",
+ "password": "zb!XztG34",
+ "https": true
+ },
+ "pdpStatusParameters":{
+ "timeIntervalMs": 120000,
+ "pdpType":"apex",
+ "description":"Pdp Heartbeat",
+ "supportedPolicyTypes":[{"name":"onap.policies.controlloop.Operational","version":"1.0.0"}]
+ }
+}
diff --git a/kubernetes/policy/charts/policy-apex-pdp/resources/config/topic.properties b/kubernetes/policy/charts/policy-apex-pdp/resources/config/topic.properties
new file mode 100644
index 0000000000..b61626b2da
--- /dev/null
+++ b/kubernetes/policy/charts/policy-apex-pdp/resources/config/topic.properties
@@ -0,0 +1,23 @@
+# ============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=========================================================
+
+dmaap.source.topics=POLICY-PDP-PAP
+dmaap.sink.topics=POLICY-PDP-PAP
+
+dmaap.source.topics.POLICY-PDP-PAP.servers= message-router
+dmaap.sink.topics.POLICY-PDP-PAP.servers= message-router \ No newline at end of file
diff --git a/kubernetes/policy/charts/policy-apex-pdp/templates/configmap.yaml b/kubernetes/policy/charts/policy-apex-pdp/templates/configmap.yaml
index 318ad34491..937a5b4afd 100644
--- a/kubernetes/policy/charts/policy-apex-pdp/templates/configmap.yaml
+++ b/kubernetes/policy/charts/policy-apex-pdp/templates/configmap.yaml
@@ -22,5 +22,4 @@ metadata:
name: {{ include "common.fullname" . }}-configmap
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/config.json").AsConfig . | indent 2 }}
-
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/policy/charts/policy-apex-pdp/templates/statefulset.yaml b/kubernetes/policy/charts/policy-apex-pdp/templates/statefulset.yaml
index 29a24e66bf..f1c024bc4e 100644
--- a/kubernetes/policy/charts/policy-apex-pdp/templates/statefulset.yaml
+++ b/kubernetes/policy/charts/policy-apex-pdp/templates/statefulset.yaml
@@ -42,9 +42,11 @@ spec:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
command:
- - /opt/app/policy/apex-pdp/bin/apexEngine.sh
+ - /opt/app/policy/apex-pdp/bin/apexOnapPf.sh
- -c
- - /home/apexuser/config/config.json
+ - /home/apexuser/config/OnapPfConfig.json
+ - -p
+ - /home/apexuser/config/topic.properties
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
ports:
- containerPort: {{ .Values.service.externalPort }}
diff --git a/kubernetes/policy/charts/policy-apex-pdp/values.yaml b/kubernetes/policy/charts/policy-apex-pdp/values.yaml
index 95b2d2c28d..70994300db 100644
--- a/kubernetes/policy/charts/policy-apex-pdp/values.yaml
+++ b/kubernetes/policy/charts/policy-apex-pdp/values.yaml
@@ -59,7 +59,7 @@ service:
type: NodePort
name: policy-apex-pdp
portName: policy-apex-pdp
- externalPort: 12345
+ externalPort: 6969
nodePort: 37
ingress:
diff --git a/kubernetes/policy/charts/policy-api/resources/config/config.json b/kubernetes/policy/charts/policy-api/resources/config/config.json
index 9fef1998d1..16e0a51682 100644
--- a/kubernetes/policy/charts/policy-api/resources/config/config.json
+++ b/kubernetes/policy/charts/policy-api/resources/config/config.json
@@ -22,5 +22,14 @@
"port":6969,
"userName":"healthcheck",
"password":"zb!XztG34"
+ },
+ "databaseProviderParameters": {
+ "name": "PolicyProviderParameterGroup",
+ "implementation": "org.onap.policy.models.provider.impl.DatabasePolicyModelsProviderImpl",
+ "databaseDriver": "org.mariadb.jdbc.Driver",
+ "databaseUrl": "jdbc:mariadb://{{.Values.global.mariadb.nameOverride}}:3306/policyadmin",
+ "databaseUser": "policy_user",
+ "databasePassword": "cG9saWN5X3VzZXI=",
+ "persistenceUnit": "PolicyMariaDb"
}
-}
+} \ No newline at end of file
diff --git a/kubernetes/policy/charts/policy-api/templates/deployment.yaml b/kubernetes/policy/charts/policy-api/templates/deployment.yaml
index 2d16b5e857..b79c6bf9c7 100644
--- a/kubernetes/policy/charts/policy-api/templates/deployment.yaml
+++ b/kubernetes/policy/charts/policy-api/templates/deployment.yaml
@@ -16,6 +16,21 @@ spec:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.mariadb.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
diff --git a/kubernetes/policy/charts/policy-pap/resources/config/config.json b/kubernetes/policy/charts/policy-pap/resources/config/config.json
index 81451037de..995c951b81 100644
--- a/kubernetes/policy/charts/policy-pap/resources/config/config.json
+++ b/kubernetes/policy/charts/policy-pap/resources/config/config.json
@@ -22,5 +22,24 @@
"port":6969,
"userName":"healthcheck",
"password":"zb!XztG34"
+ },
+ "pdpParameters": {
+ "updateParameters": {
+ "maxRetryCount": 1,
+ "maxWaitMs": 30000
+ },
+ "stateChangeParameters": {
+ "maxRetryCount": 1,
+ "maxWaitMs": 30000
+ }
+ },
+ "databaseProviderParameters": {
+ "name": "PolicyProviderParameterGroup",
+ "implementation": "org.onap.policy.models.provider.impl.DatabasePolicyModelsProviderImpl",
+ "databaseDriver": "org.mariadb.jdbc.Driver",
+ "databaseUrl": "jdbc:mariadb://{{.Values.global.mariadb.nameOverride}}:3306/policyadmin",
+ "databaseUser": "policy_user",
+ "databasePassword": "cG9saWN5X3VzZXI=",
+ "persistenceUnit": "PolicyMariaDb"
}
}
diff --git a/kubernetes/policy/charts/policy-pap/resources/config/topic.properties b/kubernetes/policy/charts/policy-pap/resources/config/topic.properties
new file mode 100644
index 0000000000..c1124a1172
--- /dev/null
+++ b/kubernetes/policy/charts/policy-pap/resources/config/topic.properties
@@ -0,0 +1,22 @@
+# ============LICENSE_START=======================================================
+# ONAP PAP
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+
+dmaap.sink.topics=POLICY-PDP-PAP
+dmaap.sink.topics.POLICY-PDP-PAP.servers=message-router
+dmaap.source.topics=POLICY-PDP-PAP
+dmaap.source.topics.POLICY-PDP-PAP.servers=message-router
diff --git a/kubernetes/policy/charts/policy-pap/templates/configmap.yaml b/kubernetes/policy/charts/policy-pap/templates/configmap.yaml
index 56180768a1..19ce6a8f20 100644
--- a/kubernetes/policy/charts/policy-pap/templates/configmap.yaml
+++ b/kubernetes/policy/charts/policy-pap/templates/configmap.yaml
@@ -22,5 +22,5 @@ metadata:
name: {{ include "common.fullname" . }}-configmap
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/config.json").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/policy/charts/policy-pap/templates/deployment.yaml b/kubernetes/policy/charts/policy-pap/templates/deployment.yaml
index 5bec94b102..4945f766d8 100644
--- a/kubernetes/policy/charts/policy-pap/templates/deployment.yaml
+++ b/kubernetes/policy/charts/policy-pap/templates/deployment.yaml
@@ -16,12 +16,27 @@ spec:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.mariadb.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command: ["/opt/app/policy/pap/bin/policy-pap.sh"]
- args: ["/opt/app/policy/pap/etc/mounted/config.json"]
+ args: ["/opt/app/policy/pap/etc/mounted/config.json", "/opt/app/policy/pap/etc/mounted/topic.properties"]
ports:
- containerPort: {{ .Values.service.internalPort }}
# disable liveness probe when breakpoints set in debugger
diff --git a/kubernetes/policy/charts/policy-xacml-pdp/resources/config/config.json b/kubernetes/policy/charts/policy-xacml-pdp/resources/config/config.json
index 7fb864bb31..789dde4491 100644
--- a/kubernetes/policy/charts/policy-xacml-pdp/resources/config/config.json
+++ b/kubernetes/policy/charts/policy-xacml-pdp/resources/config/config.json
@@ -16,11 +16,14 @@
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
{
- "name":"XacmlPdpGroup",
- "restServerParameters":{
- "host":"0.0.0.0",
- "port":6969,
- "userName":"healthcheck",
- "password":"zb!XztG34"
- }
-}
+ "name": "XacmlPdpGroup",
+ "restServerParameters": {
+ "host": "0.0.0.0",
+ "port": 6969,
+ "userName": "healthcheck",
+ "password": "zb!XztG34",
+ "https": true,
+ "aaf": false
+ },
+ "applicationPath": "/opt/app/policy/pdpx/apps"
+} \ No newline at end of file
diff --git a/kubernetes/policy/charts/policy-xacml-pdp/resources/config/topic.properties b/kubernetes/policy/charts/policy-xacml-pdp/resources/config/topic.properties
new file mode 100644
index 0000000000..a56de8bc5e
--- /dev/null
+++ b/kubernetes/policy/charts/policy-xacml-pdp/resources/config/topic.properties
@@ -0,0 +1,22 @@
+# ============LICENSE_START=======================================================
+# ONAP PAP
+# ================================================================================
+# Copyright (C) 2019 AT&T Intellectual Property. 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.
+# ============LICENSE_END=========================================================
+
+dmaap.sink.topics=POLICY-PDP-PAP
+dmaap.sink.topics.POLICY-PDP-PAP.servers=message-router
+dmaap.source.topics=POLICY-PDP-PAP
+dmaap.source.topics.POLICY-PDP-PAP.servers=message-router \ No newline at end of file
diff --git a/kubernetes/policy/charts/policy-xacml-pdp/templates/configmap.yaml b/kubernetes/policy/charts/policy-xacml-pdp/templates/configmap.yaml
index d90b0c93dc..f689f4d6e8 100644
--- a/kubernetes/policy/charts/policy-xacml-pdp/templates/configmap.yaml
+++ b/kubernetes/policy/charts/policy-xacml-pdp/templates/configmap.yaml
@@ -22,4 +22,4 @@ metadata:
name: {{ include "common.fullname" . }}-configmap
namespace: {{ include "common.namespace" . }}
data:
-{{ tpl (.Files.Glob "resources/config/config.json").AsConfig . | indent 2 }}
+{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
diff --git a/kubernetes/policy/charts/policy-xacml-pdp/templates/deployment.yaml b/kubernetes/policy/charts/policy-xacml-pdp/templates/deployment.yaml
index 20b2afbf50..e5e94ccc95 100644
--- a/kubernetes/policy/charts/policy-xacml-pdp/templates/deployment.yaml
+++ b/kubernetes/policy/charts/policy-xacml-pdp/templates/deployment.yaml
@@ -16,12 +16,27 @@ spec:
app: {{ include "common.name" . }}
release: {{ .Release.Name }}
spec:
+ initContainers:
+ - command:
+ - /root/ready.py
+ args:
+ - --container-name
+ - {{ .Values.global.mariadb.nameOverride }}
+ env:
+ - name: NAMESPACE
+ valueFrom:
+ fieldRef:
+ apiVersion: v1
+ fieldPath: metadata.namespace
+ image: "{{ .Values.global.readinessRepository }}/{{ .Values.global.readinessImage }}"
+ imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
+ name: {{ include "common.name" . }}-readiness
containers:
- name: {{ include "common.name" . }}
image: "{{ include "common.repository" . }}/{{ .Values.image }}"
imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
command: ["/opt/app/policy/pdpx/bin/policy-pdpx.sh"]
- args: ["/opt/app/policy/pdpx/etc/mounted/config.json"]
+ args: ["/opt/app/policy/pdpx/etc/mounted/config.json","/opt/app/policy/pdpx/etc/mounted/topic.properties"]
ports:
- containerPort: {{ .Values.service.internalPort }}
# disable liveness probe when breakpoints set in debugger
diff --git a/kubernetes/portal/charts/portal-app/resources/certs/keystoreONAPPortal.p12 b/kubernetes/portal/charts/portal-app/resources/certs/keystoreONAPPortal.p12
index c53a7ae9b3..9f52189096 100644
--- a/kubernetes/portal/charts/portal-app/resources/certs/keystoreONAPPortal.p12
+++ b/kubernetes/portal/charts/portal-app/resources/certs/keystoreONAPPortal.p12
Binary files differ
diff --git a/kubernetes/robot/demo-k8s.sh b/kubernetes/robot/demo-k8s.sh
index d253ec7f4f..31b86436f0 100755
--- a/kubernetes/robot/demo-k8s.sh
+++ b/kubernetes/robot/demo-k8s.sh
@@ -1,5 +1,6 @@
#!/bin/bash
# Copyright (C) 2018 Amdocs, Bell Canada
+# Modifications Copyright (C) 2019 Samsung
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -13,40 +14,40 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
-# Execute tags built to support the hands on demo,
+# Execute tags built to support the hands-on demo
#
function usage
{
- echo "Usage: demo.sh namespace <command> [<parameters>]"
+ echo "Usage: demo-k8s.sh <namespace> <command> [<parameters>]"
echo " "
- echo " demo.sh <namespace> init"
+ echo " demo-k8s.sh <namespace> init"
echo " - Execute both init_customer + distribute"
echo " "
- echo " demo.sh <namespace> init_customer"
+ echo " demo-k8s.sh <namespace> init_customer"
echo " - Create demo customer (Demonstration) and services, etc."
echo " "
- echo " demo.sh <namespace> distribute [<prefix>]"
+ echo " demo-k8s.sh <namespace> distribute [<prefix>]"
echo " - Distribute demo models (demoVFW and demoVLB)"
echo " "
- echo " demo.sh <namespace> preload <vnf_name> <module_name>"
+ echo " demo-k8s.sh <namespace> preload <vnf_name> <module_name>"
echo " - Preload data for VNF for the <module_name>"
echo " "
- echo " demo.sh <namespace> appc <module_name>"
- echo " - provide APPC with vFW module mount point for closed loop"
+ echo " demo-k8s.sh <namespace> appc <module_name>"
+ echo " - provide APPC with vFW module mount point for closed loop"
echo " "
- echo " demo.sh <namespace> init_robot [ <etc_hosts_prefix> ]"
- echo " - Initialize robot after all ONAP VMs have started"
+ echo " demo-k8s.sh <namespace> init_robot [ <etc_hosts_prefix> ]"
+ echo " - Initialize robot after all ONAP VMs have started"
echo " "
- echo " demo.sh <namespace> instantiateVFW"
- echo " - Instantiate vFW module for the a demo customer (DemoCust<uuid>)"
+ echo " demo-k8s.sh <namespace> instantiateVFW"
+ echo " - Instantiate vFW module for the demo customer (DemoCust<uuid>)"
echo " "
- echo " demo.sh <namespace> deleteVNF <module_name from instantiateVFW>"
- echo " - Delete the module created by instantiateVFW"
+ echo " demo-k8s.sh <namespace> deleteVNF <module_name from instantiateVFW>"
+ echo " - Delete the module created by instantiateVFW"
echo " "
- echo " demo.sh <namespace> heatbridge <stack_name> <service_instance_id> <service> <oam-ip-address>"
- echo " - Run heatbridge against the stack for the given service instance and service"
+ echo " demo-k8s.sh <namespace> heatbridge <stack_name> <service_instance_id> <service> <oam-ip-address>"
+ echo " - Run heatbridge against the stack for the given service instance and service"
echo " "
- echo " demo.sh <namespace> vfwclosedloop <pgn-ip-address>"
+ echo " demo-k8s.sh <namespace> vfwclosedloop <pgn-ip-address>"
echo " - vFWCL: Sets the packet generator to high and low rates, and checks whether the policy "
echo " kicks in to modulate the rates back to medium"
echo " "
@@ -110,7 +111,7 @@ do
TAG="PreloadDemo"
shift
if [ $# -ne 2 ];then
- echo "Usage: demo.sh <namespace> preload <vnf_name> <module_name>"
+ echo "Usage: demo-k8s.sh <namespace> preload <vnf_name> <module_name>"
exit
fi
VARIABLES="$VARIABLES -v VNF_NAME:$1"
@@ -122,7 +123,7 @@ do
TAG="APPCMountPointDemo"
shift
if [ $# -ne 1 ];then
- echo "Usage: demo.sh <namespace> appc <module_name>"
+ echo "Usage: demo-k8s.sh <namespace> appc <module_name>"
exit
fi
VARIABLES="$VARIABLES -v MODULE_NAME:$1"
@@ -137,7 +138,7 @@ do
TAG="deleteVNF"
shift
if [ $# -ne 1 ];then
- echo "Usage: demo.sh <namespace> deleteVNF <module_name from instantiateVFW>"
+ echo "Usage: demo-k8s.sh <namespace> deleteVNF <module_name from instantiateVFW>"
exit
fi
VARFILE=$1.py
@@ -153,7 +154,7 @@ do
TAG="heatbridge"
shift
if [ $# -ne 4 ];then
- echo "Usage: demo.sh <namespace> heatbridge <stack_name> <service_instance_id> <service> <oam-ip-address>"
+ echo "Usage: demo-k8s.sh <namespace> heatbridge <stack_name> <service_instance_id> <service> <oam-ip-address>"
exit
fi
VARIABLES="$VARIABLES -v HB_STACK:$1"
diff --git a/kubernetes/robot/eteHelm-k8s.sh b/kubernetes/robot/eteHelm-k8s.sh
new file mode 100644
index 0000000000..f63c98ee25
--- /dev/null
+++ b/kubernetes/robot/eteHelm-k8s.sh
@@ -0,0 +1,51 @@
+# Copyright (c) 2017 AT&T Intellectual Property. 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.
+
+#!/bin/bash
+
+#
+# Run the testsuite for the passed tag. Valid tags are ete, health, closedloop, instantiate
+# Please clean up logs when you are done...
+# Note: Do not run multiple concurrent ete.sh as the --display is not parameterized and tests will collide
+#
+if [ "$1" == "" ] ; then
+ echo "Usage: eteHelm-k8s.sh namespace "
+ echo " list projects via helm list and runs health-check with those tags except dev and dev-consul "
+ exit
+fi
+
+set -x
+
+export NAMESPACE="$1"
+
+POD=$(kubectl --namespace $NAMESPACE get pods | sed 's/ .*//'| grep robot)
+
+PROJECTS=$(helm list | cut -d ' ' -f 1 | grep "-" | grep -v consul )
+
+TAGS=""
+for project in $PROJECTS ;
+do
+TAGS="$TAGS -i $project"
+done
+
+
+ETEHOME=/var/opt/ONAP
+export GLOBAL_BUILD_NUMBER=$(kubectl --namespace $NAMESPACE exec ${POD} -- bash -c "ls -1q /share/logs/ | wc -l")
+OUTPUT_FOLDER=$(printf %04d $GLOBAL_BUILD_NUMBER)_ete_helmlist
+DISPLAY_NUM=$(($GLOBAL_BUILD_NUMBER + 90))
+
+VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py"
+VARIABLES="-v GLOBAL_BUILD_NUMBER:$$"
+
+kubectl --namespace $NAMESPACE exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d /share/logs/${OUTPUT_FOLDER} ${TAGS} --display $DISPLAY_NUM
diff --git a/kubernetes/sdnc/charts/dmaap-listener/resources/config/dblib.properties b/kubernetes/sdnc/charts/dmaap-listener/resources/config/dblib.properties
index 9e4c88a879..8a0a102396 100644
--- a/kubernetes/sdnc/charts/dmaap-listener/resources/config/dblib.properties
+++ b/kubernetes/sdnc/charts/dmaap-listener/resources/config/dblib.properties
@@ -18,7 +18,7 @@
###
org.onap.ccsdk.sli.dbtype=jdbc
org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}:{{.Values.config.mariadbGalera.internalPort}}/sdnctl
org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
org.onap.ccsdk.sli.jdbc.database=sdnctl
org.onap.ccsdk.sli.jdbc.user=sdnctl
diff --git a/kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml b/kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml
index 7a5b1f217c..03169427f0 100644
--- a/kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml
+++ b/kubernetes/sdnc/charts/dmaap-listener/templates/deployment.yaml
@@ -35,7 +35,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - {{ .Values.config.mysqlChartName }}
+ - {{ .Values.config.mariadbGalera.chartName }}
- --container-name
- {{ .Values.config.sdncChartName }}
- --container-name
diff --git a/kubernetes/sdnc/charts/dmaap-listener/values.yaml b/kubernetes/sdnc/charts/dmaap-listener/values.yaml
index f88b6adfc5..4b30d432d4 100644
--- a/kubernetes/sdnc/charts/dmaap-listener/values.yaml
+++ b/kubernetes/sdnc/charts/dmaap-listener/values.yaml
@@ -18,7 +18,7 @@
global:
nodePortPrefix: 302
readinessRepository: oomk8s
- readinessImage: readiness-check:2.0.0
+ readinessImage: readiness-check:2.0.2
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
@@ -36,12 +36,15 @@ debugEnabled: false
# application configuration
config:
dmaapPort: 3904
- mysqlChartName: sdnc-db
sdncChartName: sdnc
sdncPort: 8282
msgRouterContainerName: message-router
configDir: /opt/onap/sdnc/data/properties
odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+ mariadbGalera:
+ chartName: mariadb-galera
+ serviceName: mariadb-galera
+ internalPort: 3306
# default number of instances
replicaCount: 1
@@ -68,10 +71,6 @@ ingress:
service:
name: sdnc-dmaap-listener
-mysql:
- service:
- name: sdnc-dbhost
- internalPort: 3306
#Resource limit flavor -By default using small
flavor: small
#Segregation for different environment (small and large)
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config b/kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config
index f63fe211f6..eb88d7236b 100644
--- a/kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/resources/config/RestServer_config
@@ -29,7 +29,7 @@ id: sdnc
psswd: sdnc
# Mysql
-host: {{.Values.config.mysqlServiceName}}
+host: {{.Values.config.mariadbGalera.serviceName}}
user: sdnc
passwd: sdnc
db: ansible
diff --git a/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml b/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml
index 44a3f96355..d7c33a6e86 100644
--- a/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml
+++ b/kubernetes/sdnc/charts/sdnc-ansible-server/values.yaml
@@ -18,7 +18,7 @@
global:
nodePortPrefix: 302
readinessRepository: oomk8s
- readinessImage: readiness-check:2.0.0
+ readinessImage: readiness-check:2.0.2
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
@@ -37,7 +37,8 @@ debugEnabled: false
config:
sdncChartName: sdnc
configDir: /opt/onap/sdnc
- mysqlServiceName: sdnc-dbhost
+ mariadbGalera:
+ serviceName: mariadb-galera
# default number of instances
diff --git a/kubernetes/sdnc/charts/sdnc-portal/resources/config/admportal.json b/kubernetes/sdnc/charts/sdnc-portal/resources/config/admportal.json
index a6950fdd70..28da59ea29 100644
--- a/kubernetes/sdnc/charts/sdnc-portal/resources/config/admportal.json
+++ b/kubernetes/sdnc/charts/sdnc-portal/resources/config/admportal.json
@@ -27,7 +27,7 @@
},
"svclogicPropertiesDb01": "{{.Values.config.configDir}}/svclogic.properties.sdnctldb01",
"databases": [
- "sdnc-dbhost.{{.Release.Namespace}}|sdnc-sdnctldb01.{{.Release.Namespace}}"
+ "{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}|sdnc-sdnctldb01.{{.Release.Namespace}}"
],
"dbFabricServer": "localhost",
"dbFabricPort": "32275",
diff --git a/kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties b/kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties
index 68357baae6..7a5475ed20 100644
--- a/kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties
+++ b/kubernetes/sdnc/charts/sdnc-portal/resources/config/dblib.properties
@@ -18,7 +18,7 @@
###
org.onap.ccsdk.sli.dbtype=jdbc
org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}:{{.Values.config.mariadbGalera.internalPort}}/sdnctl
org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
org.onap.ccsdk.sli.jdbc.database=sdnctl
org.onap.ccsdk.sli.jdbc.user=sdnctl
diff --git a/kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml b/kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml
index 35dffee552..0a59eb079a 100644
--- a/kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml
+++ b/kubernetes/sdnc/charts/sdnc-portal/templates/deployment.yaml
@@ -35,7 +35,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - {{ .Values.config.mysqlChartName }}
+ - {{ .Values.config.mariadbGalera.chartName }}
- --container-name
- {{ .Values.config.sdncChartName }}
env:
diff --git a/kubernetes/sdnc/charts/sdnc-portal/values.yaml b/kubernetes/sdnc/charts/sdnc-portal/values.yaml
index df407e6258..ba99020df7 100644
--- a/kubernetes/sdnc/charts/sdnc-portal/values.yaml
+++ b/kubernetes/sdnc/charts/sdnc-portal/values.yaml
@@ -18,7 +18,7 @@
global:
nodePortPrefix: 302
readinessRepository: oomk8s
- readinessImage: readiness-check:2.0.0
+ readinessImage: readiness-check:2.0.2
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
@@ -35,15 +35,20 @@ debugEnabled: false
# application configuration
config:
- mysqlChartName: sdnc-db
- dbRootPassword: openECOMP1.0
+ dbRootPassword: secretpassword
dbSdnctlPassword: gamma
sdncChartName: sdnc
configDir: /opt/onap/sdnc/data/properties
+ storesDir: /opt/onap/sdnc/data/stores
odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+ keystorePwd: ?w5&!M;8v1XF;:Xd;g*%S$IY
+ mariadbGalera:
+ chartName: mariadb-galera
+ serviceName: mariadb-galera
+ internalPort: 3306
# default number of instances
-replicaCount: 1
+replicaCount: 0
nodeSelector: {}
@@ -72,11 +77,6 @@ service:
ingress:
enabled: false
-mysql:
- service:
- name: sdnc-dbhost
- internalPort: 3306
-
#Resource limit flavor -By default using small
flavor: small
#segregation for different environment (small and large)
diff --git a/kubernetes/sdnc/charts/ueb-listener/resources/config/dblib.properties b/kubernetes/sdnc/charts/ueb-listener/resources/config/dblib.properties
index 15cb2182a2..fdc2218532 100644
--- a/kubernetes/sdnc/charts/ueb-listener/resources/config/dblib.properties
+++ b/kubernetes/sdnc/charts/ueb-listener/resources/config/dblib.properties
@@ -23,7 +23,7 @@
org.onap.ccsdk.sli.dbtype=jdbc
org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}:{{.Values.config.mariadbGalera.internalPort}}/sdnctl
org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
org.onap.ccsdk.sli.jdbc.database=sdnctl
org.onap.ccsdk.sli.jdbc.user=sdnctl
diff --git a/kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml b/kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml
index 1c5f9179c0..0f8931b7b3 100644
--- a/kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml
+++ b/kubernetes/sdnc/charts/ueb-listener/templates/deployment.yaml
@@ -35,7 +35,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - {{ .Values.config.mysqlChartName }}
+ - {{ .Values.config.mariadbGalera.chartName }}
- --container-name
- {{ .Values.config.sdncChartName }}
- --container-name
diff --git a/kubernetes/sdnc/charts/ueb-listener/values.yaml b/kubernetes/sdnc/charts/ueb-listener/values.yaml
index c1892efadf..4da1ffef6f 100644
--- a/kubernetes/sdnc/charts/ueb-listener/values.yaml
+++ b/kubernetes/sdnc/charts/ueb-listener/values.yaml
@@ -18,7 +18,7 @@
global:
nodePortPrefix: 302
readinessRepository: oomk8s
- readinessImage: readiness-check:2.0.0
+ readinessImage: readiness-check:2.0.2
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
@@ -36,13 +36,15 @@ debugEnabled: false
# application configuration
config:
sdncPort: 8282
- mysqlChartName: sdnc-db
sdncChartName: sdnc
sdcbeChartName: sdc-be
msgRouterContainerName: message-router
configDir: /opt/onap/sdnc/data/properties
odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
-
+ mariadbGalera:
+ chartName: mariadb-galera
+ serviceName: mariadb-galera
+ internalPort: 3306
# default number of instances
replicaCount: 1
@@ -66,11 +68,6 @@ readiness:
service:
name: sdnc-ueb-listener
-mysql:
- service:
- name: sdnc-dbhost
- internalPort: 3306
-
ingress:
enabled: false
diff --git a/kubernetes/sdnc/requirements.yaml b/kubernetes/sdnc/requirements.yaml
index 56e20672f7..a4bffc077f 100644
--- a/kubernetes/sdnc/requirements.yaml
+++ b/kubernetes/sdnc/requirements.yaml
@@ -20,9 +20,6 @@ dependencies:
version: ~4.x-0
repository: '@local'
condition: cds.enabled
- - name: mysql
- version: ~4.x-0
- repository: '@local'
- name: network-name-gen
version: ~4.x-0
repository: '@local'
@@ -33,3 +30,8 @@ dependencies:
version: ~4.x-0
repository: '@local'
condition: config.geoEnabled
+ - name: mariadb-galera
+ version: ~4.x-0
+ repository: '@local'
+ condition: config.localDBCluster
+
diff --git a/kubernetes/sdnc/resources/config/bin/installSdncDb.sh b/kubernetes/sdnc/resources/config/bin/installSdncDb.sh
index ab0bc35880..2a733de7d5 100644
--- a/kubernetes/sdnc/resources/config/bin/installSdncDb.sh
+++ b/kubernetes/sdnc/resources/config/bin/installSdncDb.sh
@@ -22,7 +22,7 @@
###
SDNC_HOME=${SDNC_HOME:-/opt/onap/sdnc}
-MYSQL_HOST=${MYSQL_HOST:-{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}}
+MYSQL_HOST=${MYSQL_HOST:-{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}}
MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
SDNC_DB_USER=${SDNC_DB_USER:-sdnctl}
@@ -55,4 +55,4 @@ done
${SDNC_HOME}/bin/addVnis.sh 100 199
# Drop FK_NETWORK_MODEL foreign key as workaround for SDNC-291.
-${SDNC_HOME}/bin/rmForeignKey.sh NETWORK_MODEL FK_NETWORK_MODEL \ No newline at end of file
+${SDNC_HOME}/bin/rmForeignKey.sh NETWORK_MODEL FK_NETWORK_MODEL
diff --git a/kubernetes/sdnc/resources/config/bin/startODL.sh b/kubernetes/sdnc/resources/config/bin/startODL.sh
index 2513fc9dd4..9b96a325b7 100755
--- a/kubernetes/sdnc/resources/config/bin/startODL.sh
+++ b/kubernetes/sdnc/resources/config/bin/startODL.sh
@@ -119,7 +119,7 @@ SDNC_BIN=${SDNC_BIN:-/opt/onap/sdnc/bin}
CCSDK_HOME=${CCSDK_HOME:-/opt/onap/ccsdk}
SLEEP_TIME=${SLEEP_TIME:-120}
MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}}
-MYSQL_HOST=${MYSQL_HOST:-{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}}
+MYSQL_HOST=${MYSQL_HOST:-{{.Values.config.dbServiceName}}.{{.Release.Namespace}}}
ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false}
GEO_ENABLED=${GEO_ENABLED:-false}
DBINIT_DIR=${DBINIT_DIR:-/opt/opendaylight/current/daexim}
diff --git a/kubernetes/sdnc/resources/config/conf/dblib.properties b/kubernetes/sdnc/resources/config/conf/dblib.properties
index dd2bcabcc5..1849053411 100644
--- a/kubernetes/sdnc/resources/config/conf/dblib.properties
+++ b/kubernetes/sdnc/resources/config/conf/dblib.properties
@@ -18,7 +18,7 @@
###
org.onap.ccsdk.sli.dbtype=jdbc
org.onap.ccsdk.sli.jdbc.hosts=sdnctldb01
-org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.url=jdbc:mysql://{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}:{{.Values.config.mariadbGalera.internalPort}}/sdnctl
org.onap.ccsdk.sli.jdbc.driver=org.mariadb.jdbc.Driver
org.onap.ccsdk.sli.jdbc.database=sdnctl
org.onap.ccsdk.sli.jdbc.user=sdnctl
diff --git a/kubernetes/sdnc/resources/config/conf/svclogic.properties b/kubernetes/sdnc/resources/config/conf/svclogic.properties
index e564012c8f..55ef8e7e85 100644
--- a/kubernetes/sdnc/resources/config/conf/svclogic.properties
+++ b/kubernetes/sdnc/resources/config/conf/svclogic.properties
@@ -20,7 +20,7 @@
###
org.onap.ccsdk.sli.dbtype = jdbc
-org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://{{.Values.mysql.service.name}}.{{.Release.Namespace}}:{{.Values.mysql.service.internalPort}}/sdnctl
+org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}:{{.Values.config.mariadbGalera.internalPort}}/sdnctl
org.onap.ccsdk.sli.jdbc.database = sdnctl
org.onap.ccsdk.sli.jdbc.user = sdnctl
org.onap.ccsdk.sli.jdbc.password = {{.Values.config.dbSdnctlPassword}}
diff --git a/kubernetes/sdnc/sdnc-prom/values.yaml b/kubernetes/sdnc/sdnc-prom/values.yaml
index d481f4aaf5..7216e81abf 100644
--- a/kubernetes/sdnc/sdnc-prom/values.yaml
+++ b/kubernetes/sdnc/sdnc-prom/values.yaml
@@ -19,7 +19,7 @@ global:
nodePortPrefix: 302
repository: nexus3.onap.org:10001
readinessRepository: oomk8s
- readinessImage: readiness-check:2.0.0
+ readinessImage: readiness-check:2.0.2
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
persistence:
diff --git a/kubernetes/sdnc/templates/statefulset.yaml b/kubernetes/sdnc/templates/statefulset.yaml
index 24ca832d24..9728fab524 100644
--- a/kubernetes/sdnc/templates/statefulset.yaml
+++ b/kubernetes/sdnc/templates/statefulset.yaml
@@ -37,7 +37,7 @@ spec:
- /root/ready.py
args:
- --container-name
- - {{ .Values.mysql.nameOverride }}
+ - {{ .Values.config.mariadbGalera.chartName }}
env:
- name: NAMESPACE
valueFrom:
@@ -94,7 +94,7 @@ spec:
- name: SDNC_REPLICAS
value: "{{ .Values.replicaCount }}"
- name: MYSQL_HOST
- value: "{{.Release.Name}}-{{.Values.mysql.nameOverride}}-0.{{.Values.mysql.service.name}}.{{.Release.Namespace}}"
+ value: "{{.Values.config.mariadbGalera.serviceName}}.{{.Release.Namespace}}"
- name: JAVA_HOME
value: "{{ .Values.config.javaHome}}"
volumeMounts:
@@ -209,4 +209,4 @@ spec:
selector:
matchLabels:
name: {{ include "common.fullname" . }}
- {{ end }} \ No newline at end of file
+ {{ end }}
diff --git a/kubernetes/sdnc/values.yaml b/kubernetes/sdnc/values.yaml
index 95bc31a96b..e2e8579443 100644
--- a/kubernetes/sdnc/values.yaml
+++ b/kubernetes/sdnc/values.yaml
@@ -20,7 +20,7 @@ global:
nodePortPrefixExt: 304
repository: nexus3.onap.org:10001
readinessRepository: oomk8s
- readinessImage: readiness-check:2.0.0
+ readinessImage: readiness-check:2.0.2
loggingRepository: docker.elastic.co
loggingImage: beats/filebeat:5.5.0
persistence:
@@ -40,7 +40,7 @@ debugEnabled: false
# application configuration
config:
odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
- dbRootPassword: openECOMP1.0
+ dbRootPassword: secretpassword
dbSdnctlPassword: gamma
enableClustering: true
binDir: /opt/onap/sdnc/bin
@@ -59,6 +59,15 @@ config:
ansiblePort: 8000
javaHome: /usr/lib/jvm/java-1.8-openjdk
+ #local Mariadb-galera cluster
+ localDBCluster: false
+
+ #Shared mariadb-galera details
+ mariadbGalera:
+ chartName: mariadb-galera
+ serviceName: mariadb-galera
+ internalPort: 3306
+
# dependency / sub-chart configuration
cds:
enabled: true
@@ -67,7 +76,7 @@ dmaap-listener:
nameOverride: sdnc-dmaap-listener
config:
sdncChartName: sdnc
- mysqlChartName: sdnc-db
+ mysqlChartName: mariadb-galera
dmaapPort: 3904
sdncPort: 8282
configDir: /opt/onap/sdnc/data/properties
@@ -78,16 +87,16 @@ ueb-listener:
config:
sdncPort: 8282
sdncChartName: sdnc
- mysqlChartName: sdnc-db
+ mysqlChartName: mariadb-galera
configDir: /opt/onap/sdnc/data/properties
odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
sdnc-portal:
config:
sdncChartName: sdnc
- mysqlChartName: sdnc-db
+ mysqlChartName: mariadb-galera
configDir: /opt/onap/sdnc/data/properties
- dbRootPassword: openECOMP1.0
+ dbRootPassword: secretpassword
dbSdnctlPassword: gamma
odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
@@ -96,28 +105,25 @@ sdnc-ansible-server:
name: sdnc-ansible-server
internalPort: 8000
config:
- mysqlServiceName: sdnc-dbhost
+ mysqlServiceName: mariadb-galera
-mysql:
+mariadb-galera:
nameOverride: sdnc-db
service:
name: sdnc-dbhost
internalPort: 3306
- nfsprovisionerPrefix: sdnc
sdnctlPrefix: sdnc
persistence:
- mountSubPath: sdnc/mysql
+ mountSubPath: sdnc/mariadb-galera
enabled: true
- disableNfsProvisioner: true
replicaCount: 1
- geoEnabled: false
dgbuilder:
nameOverride: sdnc-dgbuilder
config:
- dbPodName: sdnc-db
- dbServiceName: sdnc-dbhost
- dbRootPassword: openECOMP1.0
+ dbPodName: mariadb-galera
+ dbServiceName: mariadb-galera
+ dbRootPassword: secretpassword
dbSdnctlPassword: gamma
dgUserPassword: cc03e747a6afbbcbf8be7668acfebee5
service:
diff --git a/kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml
index 4b06a87695..13b7271114 100755
--- a/kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml
+++ b/kubernetes/so/charts/so-openstack-adapter/resources/config/overrides/override.yaml
@@ -87,7 +87,7 @@ ecomp:
pollTimeout: 7500
pollInterval: 15
mso:
- auth: D1A67FA93B6A6419132D0F83CC771AF774FD3C60853C50C22C8C6FC5088CC79E9E81EDE9EA39F22B2F66A0068E
+ auth: BEA8637716A7EB617DF472BA6552D22F68C1CB17B0D094D77DDA562F4ADAAC4457CAB848E1A4
logPath: ./logs/openstack
msb-ip: msb-iag.{{ include "common.namespace" . }}
msb-port: 80
diff --git a/kubernetes/so/charts/so-vnfm-adapter/resources/config/overrides/override.yaml b/kubernetes/so/charts/so-vnfm-adapter/resources/config/overrides/override.yaml
index 0b52949103..236f5d5dde 100755
--- a/kubernetes/so/charts/so-vnfm-adapter/resources/config/overrides/override.yaml
+++ b/kubernetes/so/charts/so-vnfm-adapter/resources/config/overrides/override.yaml
@@ -32,3 +32,10 @@ mso:
logPath: ./logs/vnfm-adapter
msb-ip: msb-iag.{{ include "common.namespace" . }}
msb-port: 80
+sdc:
+ username: mso
+ password: 76966BDD3C7414A03F7037264FF2E6C8EEC6C28F2B67F2840A1ED857C0260FEE731D73F47F828E5527125D29FD25D3E0DE39EE44C058906BF1657DE77BF897EECA93BDC07FA64F
+ key: 566B754875657232314F5548556D3665
+ endpoint: https://sdc-be.{{ include "common.namespace" . }}:8443
+vnfmadapter:
+ endpoint: https://so-vnfm-adapter.{{ include "common.namespace" . }}:9092