From b0affc86d209c7dc103e22036e14d30364fe7ed2 Mon Sep 17 00:00:00 2001 From: Vijay Venkatesh Kumar Date: Wed, 10 Apr 2019 19:12:49 +0000 Subject: add heartbeat blueprint and input Change-Id: I56719375580aeda48ca0a6c3cafc53c15e473aa9 Signed-off-by: Vijay Venkatesh Kumar Issue-ID: DCAEGEN2-1270 Signed-off-by: Vijay Venkatesh Kumar --- dpo/k8s-heartbeat-inputs.yaml | 19 +++++ dpo/k8s-heartbeat.yaml | 184 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 203 insertions(+) create mode 100644 dpo/k8s-heartbeat-inputs.yaml create mode 100644 dpo/k8s-heartbeat.yaml diff --git a/dpo/k8s-heartbeat-inputs.yaml b/dpo/k8s-heartbeat-inputs.yaml new file mode 100644 index 0000000..7a81d9e --- /dev/null +++ b/dpo/k8s-heartbeat-inputs.yaml @@ -0,0 +1,19 @@ +tag_version: "nexus.onap.org:10001/onap/org.onap.dcaegen2.services.heartbeat:2.1.0" +heartbeat_name: "dcae-heartbeat-service" +replicas: 1 +host_port: 30230 +container_port: 10002 +consul_host: "consul-server.onap" +consul_port: 8500 +CBS_polling_allowed: "True" +CBS_polling_interval: "300" +consumerID: "1" +groupID: "groupID" +pg_ipAddress: "hbpostgres-write" +pg_passwd: "postgres" +pg_dbName: postgres +pg_portNum: "5432" +pg_userName: "postgres" +ves_heartbeat_publish_url: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.SEC_HEARTBEAT_OUTPUT" +dcae_CL_publish_url: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.DCAE_CL_OUTPUT" +namespace: "onap" diff --git a/dpo/k8s-heartbeat.yaml b/dpo/k8s-heartbeat.yaml new file mode 100644 index 0000000..0c633e8 --- /dev/null +++ b/dpo/k8s-heartbeat.yaml @@ -0,0 +1,184 @@ +# ============LICENSE_START==================================================== +# ============================================================================= +# Copyright (C) 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. +# ============LICENSE_END====================================================== + +tosca_definitions_version: cloudify_dsl_1_3 + +imports: + - 'http://www.getcloudify.org/spec/cloudify/3.4/types.yaml' + - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.12/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 + default: 'nexus.onap.org:10001/onap/org.onap.dcaegen2.services.heartbeat:2.1.0' + heartbeat_name: + type: string + default: 'dcae-heartbeat-service' + replicas: + type: integer + description: number of instances + default: 1 + host_port: + type: integer + description: Network port that the platform service is expecting to expose on the host + default: 30228 + container_port: + type: integer + description: Network port that the platform service exposes in the container + default: 10002 + consul_host: + type: string + description: Consul endpoint address + default: 'consul-server.onap' + consul_port: + type: integer + description: Consul endpoint port + default: 8500 + CBS_polling_allowed: + type: string + default: 'True' + CBS_polling_interval: + type: string + default: '300' + consumerID: + type: string + default: "1" + groupID: + type: string + default: groupID + namespace: + type: string + pg_dbName: + type: string + default: hb_vnf + pg_ipAddress: + type: string + default: hbpostgres-write + pg_passwd: + type: string + default: pg-heartbeatpwd + pg_portNum: + type: string + default: "5432" + pg_userName: + type: string + default: heartbeat + ves_heartbeat_publish_url: + type: string + default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.SEC_HEARTBEAT_OUTPUT" + dcae_CL_publish_url: + type: string + default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.DCAE_CL_OUTPUT" +node_templates: + hbpostgres: + type: dcae.nodes.ContainerizedApplication + properties: + name: + "hbpostgres-write" + image: + "postgres:9.5.2" + interfaces: + cloudify.interfaces.lifecycle: + start: + inputs: + envs: + PGDATA: + "/var/lib/postgresql/data/hbpostgres" + POSTGRES_PASSWORD: + { get_input: pg_passwd } + POSTGRES_USER: + { get_input: pg_userName } + SERVICE_NAME: + "hbpostgres-write" + ports: + - "5432:0" + heartbeat: + interfaces: + cloudify.interfaces.lifecycle: + start: + inputs: + envs: + CBS_polling_allowed: + get_input: CBS_polling_allowed + CBS_polling_interval: + get_input: CBS_polling_interval + consumerID: + get_input: consumerID + groupID: + get_input: groupID + pg_ipAddress: + get_input: pg_ipAddress + pg_passwd: + get_input: pg_passwd + pg_portNum: + get_input: pg_portNum + pg_userName: + get_input: pg_userName + pg_dbName: + get_input: pg_dbName + ports: + - "10002:0" + properties: + application_config: + CBS_polling_allowed: + get_input: CBS_polling_allowed + CBS_polling_interval: + get_input: CBS_polling_interval + consumerID: + get_input: consumerID + groupID: + get_input: groupID + pg_ipAddress: + get_input: pg_ipAddress + pg_passwd: + get_input: pg_passwd + pg_portNum: + get_input: pg_portNum + pg_userName: + get_input: pg_userName + pg_dbName: + get_input: pg_dbName + heartbeat_config: '{"vnfs": [{"eventName": "Heartbeat_vDNS","heartbeatcountmissed": 3,"heartbeatinterval": 60,"closedLoopControlName": "ControlLoopEvent1", "policyVersion": "1.0.0.5", "policyName":"vFireWall","policyScope": "resource=sampleResource,type=sampletype,CLName=sampleCLName","target_type": "VNF", "target": "genVnfName", "version": "1.0"}, {"eventName": "Heartbeat_vFW","heartbeatcountmissed": 3, "heartbeatinterval": 60,"closedLoopControlName": "ControlLoopEvent1","policyVersion": "1.0.0.5","policyName": "vFireWall","policyScope": "resource=sampleResource,type=sampletype,CLName=sampleCLName", "target_type":"VNF", "target": "genVnfName", "version": "1.0"}, {"eventName": "Heartbeat_xx","heartbeatcountmissed": 3, "heartbeatinterval": 60,"closedLoopControlName": "ControlLoopEvent1","policyVersion": "1.0.0.5","policyName": "vFireWall", "policyScope": "resource=sampleResource,type=sampletype,CLName=sampleCLName","target_type": "VNF","target": "genVnfName","version": "1.0"}]}' + streams_publishes: + dcae_cl_out: + dmaap_info: + topic_url: + get_input: dcae_CL_publish_url + type: message_router + streams_subscribes: + ves-heartbeat: + dmaap_info: + topic_url: + get_input: ves_heartbeat_publish_url + type: message_router + docker_config: + healthcheck: + type: http + endpoint: / + interval: 15s + timeout: 1s + service_component_type: + get_input: heartbeat_name + image: { get_input: tag_version } + replicas: { get_input: replicas } + log_info: + log_directory: '/var/log/ONAP/dcae-heartbeat-services' + type: dcae.nodes.ContainerizedServiceComponent + relationships: + - type: cloudify.relationships.depends_on + target: hbpostgres -- cgit 1.2.3-korg