From 5789e7d9eb7a6321d6376c7ece6fda4d52bc14fc Mon Sep 17 00:00:00 2001 From: dfarrelly Date: Thu, 5 Mar 2020 15:47:32 +0000 Subject: Add PMSH Blueprint for Frankfurt *Remove Policy Plugin for Franfurt due to DCAEGEN2-2136 *Remove inputs for aaf credentials *Add default value for control_loop_name Issue-ID: DCAEGEN2-2128 Signed-off-by: dfarrelly Change-Id: Ib0c1e635657df4b3956c028d30574b07b7c52211 --- blueprints/k8s-pmsh.yaml | 151 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 blueprints/k8s-pmsh.yaml diff --git a/blueprints/k8s-pmsh.yaml b/blueprints/k8s-pmsh.yaml new file mode 100644 index 0000000..f802868 --- /dev/null +++ b/blueprints/k8s-pmsh.yaml @@ -0,0 +1,151 @@ +# +# ============LICENSE_START======================================================= +# Copyright (C) 2020 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========================================================= +# + +tosca_definitions_version: cloudify_dsl_1_3 + +imports: + - 'http://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml' + - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/k8splugin/1.7.2/k8splugin_types.yaml' + - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.ccsdk.platform.plugins/type_files/pgaas/1.1.0/pgaas_types.yaml' + +inputs: + tag_version: + type: string + description: Docker image to be used + default: 'nexus3.onap.org:10001/onap/org.onap.dcaegen2.services.pmsh:1.0.0' + replicas: + type: integer + description: Number of instances + default: 1 + operational_policy_name: + type: string + default: 'pmsh-operational-policy' + control_loop_name: + type: string + default: 'pmsh-control-loop' + pmsh_publish_topic_name: + type: string + default: 'unauthenticated.DCAE_CL_OUTPUT' + policy_feedback_topic_name: + type: string + default: 'unauthenticated.PMSH_CL_INPUT' + aai_notification_topic_name: + type: string + default: 'AAI-EVENT' + publisher_client_role: + type: string + description: Client role to request secure access to topic + default: 'org.onap.dcae.pmPublisher' + subscriber_client_role: + type: string + description: Client role to request secure access to topic + default: 'org.onap.dcae.pmSubscriber' + dcae_location: + type: string + description: DCAE location for the subscriber, used to set up routing + default: 'san-francisco' + cpu_limit: + type: string + default: '1000m' + cpu_request: + type: string + default: '1000m' + memory_limit: + type: string + default: '1024Mi' + memory_request: + type: string + default: '1024Mi' + pgaas_cluster_name: + type: string + default: 'dcae-pg-primary.onap' +node_templates: + pgaasvm: + type: dcae.nodes.pgaas.database + properties: + writerfqdn: { get_input: pgaas_cluster_name } + name: 'pmsh' + pmsh: + type: dcae.nodes.ContainerizedServiceComponentUsingDmaap + interfaces: + cloudify.interfaces.lifecycle: + create: + inputs: + ports: + - '8443:0' + envs: + PMSH_PG_URL: + { get_attribute: [ pgaasvm, admin, host ] } + PMSH_PG_PASSWORD: + { get_attribute: [ pgaasvm, admin, password ] } + PMSH_PG_USERNAME: + { get_attribute: [ pgaasvm, admin, user ] } + PMSH_DB_NAME: + { get_attribute: [ pgaasvm, admin, database ] } + + relationships: + - type: cloudify.relationships.depends_on + target: pgaasvm + + properties: + service_component_type: 'dcae-pmsh' + service_component_name_override: 'dcae-pmsh' + application_config: + aaf_identity: 'dcae@dcae.onap.org' + aaf_password: 'demo123456!' + operational_policy_name: { get_input: operational_policy_name } + control_loop_name: { get_input: control_loop_name } + cert_path: '/opt/app/pmsh/etc/certs/cert.pem' + key_path: '/opt/app/pmsh/etc/certs/key.pem' + ca_cert_path: '/opt/app/pmsh/etc/certs/cacert.pem' + streams_publishes: + policy_pm_publisher: + type: message_router + dmaap_info: + topic_url: {concat: ["https://message-router:3905/events/", { get_input: pmsh_publish_topic_name }]} + streams_subscribes: + policy_pm_subscriber: + type: message_router + dmaap_info: + topic_url: {concat: ["https://message-router:3905/events/", { get_input: policy_feedback_topic_name }]} + aai_subscriber: + type: message_router + dmaap_info: + topic_url: {concat: ["https://message-router:3905/events/", { get_input: aai_notification_topic_name }]} + resource_config: + limits: + cpu: { get_input: cpu_limit } + memory: { get_input: memory_limit } + requests: + cpu: { get_input: cpu_request } + memory: { get_input: memory_request } + docker_config: + healthcheck: + endpoint: /healthcheck + interval: 15s + timeout: 1s + type: https + image: { get_input: tag_version } + replicas: { get_input: replicas } + log_info: + log_directory: '/var/log/ONAP/dcaegen2/services/pmsh' + tls_info: + cert_directory: '/opt/app/pmsh/etc/certs' + use_tls: true \ No newline at end of file -- cgit 1.2.3-korg