From: Mahendra Raghuwanshi Date: Tue, 9 Apr 2019 10:13:07 +0000 (+0000) Subject: SDNC using shared mariadb-galera cluster X-Git-Tag: 4.0.0-ONAP~223^2 X-Git-Url: https://gerrit.onap.org/r/gitweb?p=oom.git;a=commitdiff_plain;h=b76cb2810fc083b6151652083a416989680f17e7 SDNC using shared mariadb-galera cluster Change-Id: I41330836901ccf1fcbdd0f9d6e720ce13ea3a9ea Issue-ID: OOM-1651 Signed-off-by: Mahendra Raghuwanshi --- 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..34b8c24af1 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,12 +35,17 @@ 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 @@ -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 6718aaf128..45b74aaa20 100755 --- a/kubernetes/sdnc/resources/config/bin/startODL.sh +++ b/kubernetes/sdnc/resources/config/bin/startODL.sh @@ -84,7 +84,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: