From: RehanRaza Date: Tue, 14 Dec 2021 14:18:29 +0000 (+0100) Subject: Update docker-compose of onap-policy in smo X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=514ea504fa114524513fc4a83a6d83b2f6754903;p=oam.git Update docker-compose of onap-policy in smo This commit reflects the changes that have been done recently in ONAP's Policy Framework. Moreover, new components have been added in the docker-compose for being able to run the control-loop versions of different usecases in OSC. Change-Id: Ibacfad76da131c1279c935788ea788b42c38e9f7 Issue-ID: OAM-240 Signed-off-by: RehanRaza --- diff --git a/solution/integration/smo/onap-policy/config/api/defaultConfig.json b/solution/integration/smo/onap-policy/config/api/defaultConfig.json new file mode 100644 index 0000000..b78b753 --- /dev/null +++ b/solution/integration/smo/onap-policy/config/api/defaultConfig.json @@ -0,0 +1,53 @@ +{ + "name": "ApiGroup", + "restServerParameters": { + "host": "0.0.0.0", + "port": 6969, + "userName": "healthcheck", + "password": "zb!XztG34", + "https": false, + "aaf": false + }, + "databaseProviderParameters": { + "name": "PolicyProviderParameterGroup", + "implementation": "org.onap.policy.models.provider.impl.DatabasePolicyModelsProviderImpl", + "databaseDriver": "org.mariadb.jdbc.Driver", + "databaseUrl": "jdbc:mariadb://mariadb:3306/policyadmin", + "databaseUser": "root", + "databasePassword": "strong_pitchou", + "persistenceUnit": "PolicyMariaDb" + }, + "preloadPolicyTypes": [ + "policytypes/onap.policies.monitoring.tcagen2.yaml", + "policytypes/onap.policies.monitoring.dcaegen2.collectors.datafile.datafile-app-server.yaml", + "policytypes/onap.policies.monitoring.dcae-restconfcollector.yaml", + "policytypes/onap.policies.Optimization.yaml", + "policytypes/onap.policies.optimization.Resource.yaml", + "policytypes/onap.policies.optimization.Service.yaml", + "policytypes/onap.policies.optimization.resource.AffinityPolicy.yaml", + "policytypes/onap.policies.optimization.resource.DistancePolicy.yaml", + "policytypes/onap.policies.optimization.resource.HpaPolicy.yaml", + "policytypes/onap.policies.optimization.resource.OptimizationPolicy.yaml", + "policytypes/onap.policies.optimization.resource.PciPolicy.yaml", + "policytypes/onap.policies.optimization.service.QueryPolicy.yaml", + "policytypes/onap.policies.optimization.service.SubscriberPolicy.yaml", + "policytypes/onap.policies.optimization.resource.Vim_fit.yaml", + "policytypes/onap.policies.optimization.resource.VnfPolicy.yaml", + "policytypes/onap.policies.controlloop.guard.Common.yaml", + "policytypes/onap.policies.controlloop.guard.common.Blacklist.yaml", + "policytypes/onap.policies.controlloop.guard.common.FrequencyLimiter.yaml", + "policytypes/onap.policies.controlloop.guard.common.MinMax.yaml", + "policytypes/onap.policies.controlloop.guard.common.Filter.yaml", + "policytypes/onap.policies.controlloop.guard.coordination.FirstBlocksSecond.yaml", + "policytypes/onap.policies.Naming.yaml", + "policytypes/onap.policies.Match.yaml", + "policytypes/onap.policies.native.Drools.yaml", + "policytypes/onap.policies.native.Xacml.yaml", + "policytypes/onap.policies.native.Apex.yaml", + "policytypes/onap.policies.controlloop.operational.Common.yaml", + "policytypes/onap.policies.controlloop.operational.common.Drools.yaml" + ], + "preloadPolicies" : [ + "policies/sdnc.policy.naming.input.tosca.yaml" + ] +} diff --git a/solution/integration/smo/onap-policy/config/db/bootstrap-database.sh b/solution/integration/smo/onap-policy/config/db/bootstrap-database.sh new file mode 100755 index 0000000..6a6310d --- /dev/null +++ b/solution/integration/smo/onap-policy/config/db/bootstrap-database.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +### +# ============LICENSE_START======================================================= +# ONAP CLAMP +# ================================================================================ +# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. +# Modifications Copyright (C) 2021 Nordix Foundation. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END============================================ +# =================================================================== +# +### + +mysql -uroot -p$MYSQL_ROOT_PASSWORD -f < /docker-entrypoint-initdb.d/create-db.sql +mysql -uroot -p$MYSQL_ROOT_PASSWORD --execute "CREATE USER 'policy_user'@'%' IDENTIFIED BY 'policy_user';" +mysql -uroot -p$MYSQL_ROOT_PASSWORD --execute "GRANT ALL PRIVILEGES ON controlloop.* TO 'policy_user'@'%';" \ No newline at end of file diff --git a/solution/integration/smo/onap-policy/config/db/create-db.sql b/solution/integration/smo/onap-policy/config/db/create-db.sql new file mode 100644 index 0000000..bc64431 --- /dev/null +++ b/solution/integration/smo/onap-policy/config/db/create-db.sql @@ -0,0 +1,13 @@ +# +# Create CLDS database objects (tables, etc.) +# +# +CREATE DATABASE IF NOT EXISTS `cldsdb4`; +CREATE DATABASE IF NOT EXISTS `policyadmin`; +CREATE DATABASE IF NOT EXISTS `controlloop`; +USE `cldsdb4`; +DROP USER 'clds'; +CREATE USER 'clds'; +GRANT ALL on cldsdb4.* to 'clds' identified by 'sidnnd83K' with GRANT OPTION; +FLUSH PRIVILEGES; + diff --git a/solution/integration/smo/onap-policy/config/db/db.conf b/solution/integration/smo/onap-policy/config/db/db.conf deleted file mode 100644 index 22b37f8..0000000 --- a/solution/integration/smo/onap-policy/config/db/db.conf +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 2019,2021 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. -MYSQL_ROOT_PASSWORD=secret -MYSQL_USER=policy_user -MYSQL_PASSWORD=policy_user diff --git a/solution/integration/smo/onap-policy/config/db/db.sh b/solution/integration/smo/onap-policy/config/db/db.sh deleted file mode 100755 index a5c8129..0000000 --- a/solution/integration/smo/onap-policy/config/db/db.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash -xv -# Copyright 2019,2021 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. - -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}'@'%' ;" -done - -mysql -uroot -p"${MYSQL_ROOT_PASSWORD}" --execute "FLUSH PRIVILEGES;" diff --git a/solution/integration/smo/onap-policy/config/drools-apps/env/base.conf b/solution/integration/smo/onap-policy/config/drools-apps/env/base.conf index a56dbaa..b8ca10e 100644 --- a/solution/integration/smo/onap-policy/config/drools-apps/env/base.conf +++ b/solution/integration/smo/onap-policy/config/drools-apps/env/base.conf @@ -46,8 +46,8 @@ REPOSITORY_OFFLINE=true # Relational (SQL) DB access SQL_HOST=mariadb -SQL_USER=policy_user -SQL_PASSWORD=policy_user +SQL_USER=root +SQL_PASSWORD=strong_pitchou # AAF diff --git a/solution/integration/smo/onap-policy/config/drools/env/base.conf b/solution/integration/smo/onap-policy/config/drools/env/base.conf index 8189419..fa1f8f1 100644 --- a/solution/integration/smo/onap-policy/config/drools/env/base.conf +++ b/solution/integration/smo/onap-policy/config/drools/env/base.conf @@ -46,8 +46,8 @@ REPOSITORY_OFFLINE=false # Relational (SQL) DB access SQL_HOST=mariadb -SQL_USER=policy_user -SQL_PASSWORD=policy_user +SQL_USER=root +SQL_PASSWORD=strong_pitchou # AAF diff --git a/solution/integration/smo/onap-policy/config/ks.jks b/solution/integration/smo/onap-policy/config/ks.jks new file mode 100644 index 0000000..001c7e1 Binary files /dev/null and b/solution/integration/smo/onap-policy/config/ks.jks differ diff --git a/solution/integration/smo/onap-policy/config/pap/defaultConfig.json b/solution/integration/smo/onap-policy/config/pap/defaultConfig.json index 369a37c..1890dae 100644 --- a/solution/integration/smo/onap-policy/config/pap/defaultConfig.json +++ b/solution/integration/smo/onap-policy/config/pap/defaultConfig.json @@ -5,7 +5,7 @@ "port": 6969, "userName": "healthcheck", "password": "zb!XztG34", - "https": true, + "https": false, "aaf": false }, "pdpParameters": { @@ -24,8 +24,8 @@ "implementation": "org.onap.policy.models.provider.impl.DatabasePolicyModelsProviderImpl", "databaseDriver": "org.mariadb.jdbc.Driver", "databaseUrl": "jdbc:mariadb://mariadb:3306/policyadmin", - "databaseUser": "policy_user", - "databasePassword": "policy_user", + "databaseUser": "root", + "databasePassword": "strong_pitchou", "persistenceUnit": "PolicyMariaDb" }, "topicParameterGroup": { @@ -57,7 +57,7 @@ "port": 6969, "userName": "healthcheck", "password": "zb!XztG34", - "useHttps": true, + "useHttps": false, "allowSelfSignedCerts" : true, "basePath": "policy/api/v1/healthcheck" }] diff --git a/solution/integration/smo/onap-policy/docker-compose.yml b/solution/integration/smo/onap-policy/docker-compose.yml index 17f2435..5704133 100644 --- a/solution/integration/smo/onap-policy/docker-compose.yml +++ b/solution/integration/smo/onap-policy/docker-compose.yml @@ -30,10 +30,13 @@ services: image: nexus3.onap.org:10001/mariadb:10.5.8 container_name: mariadb hostname: mariadb - command: ['--lower-case-table-names=1', '--wait_timeout=28800'] - env_file: config/db/db.conf volumes: - - ./config/db:/docker-entrypoint-initdb.d:ro + - db-vol:/var/lib/mysql + - "./config/db/:/docker-entrypoint-initdb.d:rw" + environment: + - MYSQL_ROOT_PASSWORD=strong_pitchou + ports: + - "3306:3306" expose: - 3306 networks: @@ -45,10 +48,11 @@ services: - mariadb hostname: policy-api ports: - - "6969:6969" + - "6869:6969" expose: - - 6969 + - 6869 volumes: + - ./config/api/defaultConfig.json:/opt/app/policy/api/etc/defaultConfig.json:ro - ./config/ks.jks:/opt/app/policy/api/etc/ssl/policy-keystore.jks:ro - ./wait_for_port.sh:/opt/app/policy/api/bin/wait_for_port.sh:ro entrypoint: ./wait_for_port.sh @@ -58,6 +62,7 @@ services: ] networks: - nonrtric + - smo pap: image: nexus3.onap.org:10001/onap/policy-pap:2.4.2 container_name: policy-pap @@ -160,7 +165,7 @@ services: - nonrtric - smo apex-pdp: - image: registry.nordix.org/onap/policy-apex-pdp:2.6.0-SNAPSHOT + image: nexus3.onap.org:10001/onap/policy-apex-pdp:2.5.4 container_name: policy-apex-pdp depends_on: - mariadb @@ -208,3 +213,103 @@ services: networks: - nonrtric - smo + controlloop-runtime: + image: nexus3.onap.org:10001/onap/policy-clamp-cl-runtime:6.1.3 + container_name: controlloop-runtime + depends_on: + - mariadb + hostname: controlloop-runtime + ports: + - "6969:6969" + expose: + - 6969 + volumes: + - ./config/ks.jks:/opt/app/policy/clamp/etc/ssl/policy-keystore:ro + - ./wait_for_port.sh:/opt/app/policy/clamp/bin/wait_for_port.sh:ro + environment: + - TOPICSERVER=onap-dmaap + - MARIADB_HOST=mariadb + - MARIADB_PORT=3306 + - KEYSTORE=/opt/app/policy/clamp/etc/ssl/policy-keystore + - KEYSTORE_PASSWD=Pol1cy_0nap + - RUNTIME_TOPICPARAMETERGROUP_TOPICSOURCES_0_TOPIC=POLICY-CLRUNTIME-PARTICIPANT + - RUNTIME_TOPICPARAMETERGROUP_TOPICSOURCES_0_SERVERS_0=onap-dmaap + - RUNTIME_TOPICPARAMETERGROUP_TOPICSOURCES_0_TOPICCOMMINFRASTRUCTURE=dmaap + - RUNTIME_TOPICPARAMETERGROUP_TOPICSOURCES_0_FETCHTIMEOUT=15000 + - RUNTIME_TOPICPARAMETERGROUP_TOPICSOURCES_0_USEHTTPS=false + - RUNTIME_TOPICPARAMETERGROUP_TOPICSINKS_0_TOPIC=POLICY-CLRUNTIME-PARTICIPANT + - RUNTIME_TOPICPARAMETERGROUP_TOPICSINKS_0_SERVERS_0=onap-dmaap + - RUNTIME_TOPICPARAMETERGROUP_TOPICSINKS_0_TOPICCOMMINFRASTRUCTURE=dmaap + - RUNTIME_TOPICPARAMETERGROUP_TOPICSINKS_0_FETCHTIMEOUT=15000 + - RUNTIME_TOPICPARAMETERGROUP_TOPICSINKS_0_USEHTTPS=false + entrypoint: /opt/app/policy/clamp/bin/wait_for_port.sh + command: [ + '-c', '/opt/app/policy/clamp/bin/controlloop-runtime.sh', + 'mariadb', '3306', + 'onap-dmaap', '3904' + ] + networks: + - nonrtric + - smo + policy-participant: + image: nexus3.onap.org:10001/onap/policy-clamp-cl-pf-ppnt:6.1.3 + container_name: policy-participant + depends_on: + - mariadb + - controlloop-runtime + hostname: policy-participant + volumes: + - ./config/ks.jks:/opt/app/policy/clamp/etc/ssl/policy-keystore:ro + - ./wait_for_port.sh:/opt/app/policy/clamp/bin/wait_for_port.sh:ro + environment: + - TOPICSERVER=onap-dmaap + - KEYSTORE=/opt/app/policy/clamp/etc/ssl/policy-keystore + - KEYSTORE_PASSWD=Pol1cy_0nap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_TOPIC=POLICY-CLRUNTIME-PARTICIPANT + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_SERVERS_0=onap-dmaap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_TOPICCOMMINFRASTRUCTURE=dmaap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_FETCHTIMEOUT=15000 + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_USEHTTPS=false + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_TOPIC=POLICY-CLRUNTIME-PARTICIPANT + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_SERVERS_0=onap-dmaap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_TOPICCOMMINFRASTRUCTURE=dmaap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_FETCHTIMEOUT=15000 + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_USEHTTPS=false + entrypoint: /opt/app/policy/clamp/bin/wait_for_port.sh + command: [ + '-c', '/opt/app/policy/clamp/bin/policy-participant.sh', + 'controlloop-runtime', '6969' + ] + networks: + - nonrtric + - smo + k8s-participant: + image: nexus3.onap.org:10001/onap/policy-clamp-cl-k8s-ppnt:6.1.3 + container_name: k8s-participant + depends_on: + - mariadb + - controlloop-runtime + hostname: k8s-participant + volumes: + - ./config/ks.jks:/opt/app/policy/clamp/etc/ssl/policy-keystore:ro + - ./wait_for_port.sh:/opt/app/policy/clamp/bin/wait_for_port.sh:ro + environment: + - TOPICSERVER=onap-dmaap + - KEYSTORE=/opt/app/policy/clamp/etc/ssl/policy-keystore + - KEYSTORE_PASSWD=Pol1cy_0nap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_TOPIC=POLICY-CLRUNTIME-PARTICIPANT + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_SERVERS_0=onap-dmaap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_TOPICCOMMINFRASTRUCTURE=dmaap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_FETCHTIMEOUT=15000 + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSOURCES_0_USEHTTPS=false + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_TOPIC=POLICY-CLRUNTIME-PARTICIPANT + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_SERVERS_0=onap-dmaap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_TOPICCOMMINFRASTRUCTURE=dmaap + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_FETCHTIMEOUT=15000 + - PARTICIPANT_INTERMEDIARYPARAMETERS_CLAMPCONTROLLOOPTOPICS_TOPICSINKS_0_USEHTTPS=false + entrypoint: sh -c "/opt/app/policy/clamp/bin/wait_for_port.sh controlloop-runtime 6969 && /opt/app/policy/clamp/bin/kubernetes-participant.sh" + networks: + - nonrtric + - smo +volumes: + db-vol: \ No newline at end of file