summaryrefslogtreecommitdiffstats
path: root/components/pm-subscription-handler/dpo/blueprints/k8s-pmsh.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'components/pm-subscription-handler/dpo/blueprints/k8s-pmsh.yaml')
-rwxr-xr-xcomponents/pm-subscription-handler/dpo/blueprints/k8s-pmsh.yaml213
1 files changed, 213 insertions, 0 deletions
diff --git a/components/pm-subscription-handler/dpo/blueprints/k8s-pmsh.yaml b/components/pm-subscription-handler/dpo/blueprints/k8s-pmsh.yaml
new file mode 100755
index 00000000..13116c19
--- /dev/null
+++ b/components/pm-subscription-handler/dpo/blueprints/k8s-pmsh.yaml
@@ -0,0 +1,213 @@
+#
+# ============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/dmaap/dmaap.yaml'
+ - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.ccsdk.platform.plugins/type_files/pgaas/1.1.0/pgaas_types.yaml'
+ - 'https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/clamppolicyplugin/1.1.0/clamppolicyplugin_types.yaml'
+
+inputs:
+ tag_version:
+ type: string
+ description: Docker image to be used
+ default: 'nexus3.onap.org:10001/onap/org.onap.dcaegen2.services.pmsh:latest'
+ replicas:
+ type: integer
+ description: Number of instances
+ default: 1
+ policy_model_id:
+ type: 'string'
+ default: 'onap.policies.monitoring.dcae-pm-subscription-handler'
+ policy_id:
+ type: 'string'
+ default: 'onap.policies.monitoring.dcae-pm-subscription-handler'
+ operational_policy_name:
+ type: string
+ default: 'pmsh-operational-policy'
+ control_loop_name:
+ type: string
+ pm_publish_topic_name:
+ type: string
+ default: 'DCAE_CL_OUTPUT'
+ pm_subscribe_topic_name:
+ type: string
+ default: 'PMSH_CL_INPUT'
+ aai_subscribe_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'
+ client_id:
+ type: string
+ description: Client id for given AAF client
+ default: 'dcae@dcae.onap.org'
+ client_password:
+ type: string
+ description: Password for AAF client provided as client_id
+ dcae_location:
+ type: string
+ description: DCAE location for the subscriber, used to set up routing
+ default: 'san-francisco'
+ pmsh_service_port:
+ type: string
+ description: PMSH host port
+ default: '8443'
+ dmaap_mr_service_protocol:
+ type: string
+ description: DMAAP Message Router protocol
+ default: 'https'
+ dmaap_mr_service_host:
+ type: string
+ description: DMAAP Message Router host address
+ default: 'message-router'
+ dmaap_mr_service_port:
+ type: string
+ description: DMAAP Message Router host port
+ default: '3905'
+ 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'
+ pm_publish_topic:
+ type: ccsdk.nodes.Topic
+ properties:
+ topic_name: { get_input: pm_publish_topic_name }
+ pm_subscribe_topic:
+ type: ccsdk.nodes.Topic
+ properties:
+ topic_name: { get_input: pm_subscribe_topic_name }
+ aai_subscribe_topic:
+ type: ccsdk.nodes.Topic
+ properties:
+ topic_name: { get_input: aai_subscribe_topic_name }
+ 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: ccsdk.relationships.publish_events
+ target: pm_publish_topic
+ - type: ccsdk.relationships.subscribe_to_events
+ target: pm_subscribe_topic
+ - type: ccsdk.relationships.subscribe_to_events
+ target: aai_subscribe_topic
+ - type: cloudify.relationships.depends_on
+ target: pgaasvm
+ - type: cloudify.relationships.depends_on
+ target: pmsh-policy
+
+ properties:
+ service_component_type: 'dcae-pmsh'
+ service_component_name_override: 'dcae-pmsh'
+ application_config:
+ aaf_identity: { get_input: client_id }
+ aaf_password: { get_input: client_password }
+ 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: <<pm_publish_topic>>
+ streams_subscribes:
+ policy_pm_subscriber:
+ type: message_router
+ dmaap_info: <<pm_subscribe_topic>>
+ aai_subscriber:
+ type: message_router
+ dmaap_info: <<aai_subscribe_topic>>
+ resource_config:
+ limits:
+ cpu: { get_input: cpu_limit }
+ memory: { get_input: memory_limit }
+ requests:
+ cpu: { get_input: cpu_request }
+ memory: { get_input: memory_request }
+ streams_publishes:
+ - name: pm_publish_topic
+ location: { get_input: dcae_location }
+ client_role: { get_input: publisher_client_role }
+ type: message-router
+ streams_subscribes:
+ - name: pm_subscribe_topic
+ location: { get_input: dcae_location }
+ client_role: { get_input: subscriber_client_role }
+ type: message-router
+ - name: aai_subscribe_topic
+ location: { get_input: dcae_location }
+ client_role: { get_input: subscriber_client_role }
+ type: message-router
+ 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
+ pmsh-policy:
+ type: clamp.nodes.policy
+ properties:
+ policy_model_id:
+ get_input: policy_model_id
+ policy_id:
+ get_input: policy_id \ No newline at end of file