aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--dpo/k8s-heartbeat-inputs.yaml19
-rw-r--r--dpo/k8s-heartbeat.yaml184
2 files changed, 203 insertions, 0 deletions
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