From 573499f2324e400699b83289f6d82056954e6ec5 Mon Sep 17 00:00:00 2001 From: Vijay Date: Wed, 1 Nov 2017 21:26:46 +0000 Subject: holmes bp update for pgvm support Issue-ID: DCAEGEN2-181 Change-Id: Iadd1a0018d999f2f47d7f0a5926aafd39710c020 Signed-off-by: Vijay --- blueprints/holmes-engine.yaml-template | 38 ++++++++++++++++++++++++++++++++-- blueprints/holmes-rules.yaml-template | 38 +++++++++++++++++++++++++++++++--- input-templates/he-ip.yaml | 8 +++++-- input-templates/hr-ip.yaml | 9 +++++--- 4 files changed, 83 insertions(+), 10 deletions(-) diff --git a/blueprints/holmes-engine.yaml-template b/blueprints/holmes-engine.yaml-template index bb4c52e..dae286d 100644 --- a/blueprints/holmes-engine.yaml-template +++ b/blueprints/holmes-engine.yaml-template @@ -3,6 +3,7 @@ imports: - "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dockerplugin/2/dockerplugin_types.yaml" - "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dcaepolicyplugin/1/dcaepolicyplugin_types.yaml" - "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/relationshipplugin/1/relationshipplugin_types.yaml" +- "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_ccsdk_platform_plugins_releases }}/type_files/pgaas/pgaas_types.yaml" inputs: dcae_CL_publish_url: type: string @@ -15,8 +16,25 @@ inputs: default: "zone1" msb_hostname: type: string - default: "" + default: "" + location_domain: + type: string + location_prefix: + type: string + pgaas_cluster_name: + type: string + # use the single-VM PG instance + default: pgvm + database_name: + type: string + default: holmes node_templates: + pgaasvm: + type: dcae.nodes.pgaas.database + properties: + writerfqdn: { concat: [ { get_input: location_prefix }, '-', { get_input: pgaas_cluster_name }, '-write.', { get_input: location_domain } ] } + name: { get_input: database_name } + use_existing: true docker_holmes_host: type: dcae.nodes.SelectedDockerHost properties: @@ -26,6 +44,19 @@ node_templates: get_input: dh_location_id holmesengine: type: dcae.nodes.DockerContainerForComponentsUsingDmaap + interfaces: + cloudify.interfaces.lifecycle: + start: + inputs: + envs: + URL_JDBC: + { get_attribute: [ pgaasvm, admin, host ] } + JDBC_PASSWORD: + { get_attribute: [ pgaasvm, admin, password ] } + JDBC_USERNAME: + { get_attribute: [ pgaasvm, admin, user ] } + MSB_ADDR: + get_input: msb_hostname properties: application_config: msb.hostname: @@ -47,10 +78,13 @@ node_templates: type: http ports: - 9102:9102 - image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/holmes/engine-management:latest" + image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/holmes/engine-management:latest" location_id: get_input: dh_location_id service_component_type: dcae-analytics-holmes-engine-management relationships: + - type: cloudify.relationships.depends_on + target: pgaasvm - target: docker_holmes_host type: dcae.relationships.component_contained_in + diff --git a/blueprints/holmes-rules.yaml-template b/blueprints/holmes-rules.yaml-template index 822370d..8e4bc54 100644 --- a/blueprints/holmes-rules.yaml-template +++ b/blueprints/holmes-rules.yaml-template @@ -3,6 +3,7 @@ imports: - "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dockerplugin/2/dockerplugin_types.yaml" - "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dcaepolicyplugin/1/dcaepolicyplugin_types.yaml" - "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/relationshipplugin/1/relationshipplugin_types.yaml" +- "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_ccsdk_platform_plugins_releases }}/type_files/pgaas/pgaas_types.yaml" inputs: ves_fault_publish_url: type: string @@ -16,7 +17,23 @@ inputs: msb_hostname: type: string default: "" + location_domain: + type: string + location_prefix: + type: string + pgaas_cluster_name: + type: string + # use the single-VM PG instance + default: pgvm + database_name: + type: string + default: holmes node_templates: + pgaasvm: + type: dcae.nodes.pgaas.database + properties: + writerfqdn: { concat: [ { get_input: location_prefix }, '-', { get_input: pgaas_cluster_name }, '-write.', { get_input: location_domain } ] } + name: { get_input: database_name } docker_holmes_host: type: dcae.nodes.SelectedDockerHost properties: @@ -26,11 +43,24 @@ node_templates: get_input: dh_location_id holmesrules: type: dcae.nodes.DockerContainerForComponentsUsingDmaap + interfaces: + cloudify.interfaces.lifecycle: + start: + inputs: + envs: + URL_JDBC: + { get_attribute: [ pgaasvm, admin, host ] } + JDBC_PASSWORD: + { get_attribute: [ pgaasvm, admin, password ] } + JDBC_USERNAME: + { get_attribute: [ pgaasvm, admin, user ] } + MSB_ADDR: + get_input: msb_hostname properties: application_config: holmes.default.rule.volte.scenario1: "package org.onap.holmes.droolsRule;\n\nimport org.onap.holmes.common.dmaap.DmaapService;\nimport org.onap.holmes.common.api.stat.VesAlarm;\nimport org.onap.holmes.common.aai.CorrelationUtil;\nimport org.onap.holmes.common.dmaap.entity.PolicyMsg;\nimport org.onap.holmes.common.dropwizard.ioc.utils.ServiceLocatorHolder;\nimport org.onap.holmes.common.utils.DroolsLog;\n \n\nrule \"Relation_analysis_Rule\"\nsalience 200\nno-loop true\n when\n $root : VesAlarm(alarmIsCleared == 0,\n $sourceId: sourceId, sourceId != null && !sourceId.equals(\"\"),\n\t\t\t$sourceName: sourceName, sourceName != null && !sourceName.equals(\"\"),\n\t\t\t$startEpochMicrosec: startEpochMicrosec,\n specificProblem in (\"The guest OS has indicated a failure, requiring VM restart\"),\n $eventId: eventId)\n $child : VesAlarm( eventId != $eventId, parentId == null,\n CorrelationUtil.getInstance().isTopologicallyRelated(sourceId, $sourceId, $sourceName),\n specificProblem in (\"EPC S/P-GW The slave MPU board is offline or abnormal\"),\n startEpochMicrosec < $startEpochMicrosec + 60000 && startEpochMicrosec > $startEpochMicrosec - 60000 )\n then\n\t\t$child.setParentId($root.getEventId());\n\t\tupdate($child);\n\t\t\nend\n\nrule \"root_has_child_handle_Rule\"\nsalience 150\nno-loop true\n\twhen\n\t\t$root : VesAlarm(alarmIsCleared == 0, rootFlag == 0, $eventId: eventId)\n\t\t$child : VesAlarm(eventId != $eventId, parentId == $eventId)\n\tthen\n\t\tDmaapService dmaapService = ServiceLocatorHolder.getLocator().getService(DmaapService.class);\n\t\tPolicyMsg policyMsg = dmaapService.getPolicyMsg($root, $child, \"org.onap.holmes.droolsRule\");\n dmaapService.publishPolicyMsg(policyMsg, \"unauthenticated.DCAE_CL_OUTPUT\");\n\t\t$root.setRootFlag(1);\n\t\tupdate($root);\nend\n\nrule \"root_no_child_handle_Rule\"\nsalience 100\nno-loop true\n when\n $root : VesAlarm(alarmIsCleared == 0, rootFlag == 0,\n sourceId != null && !sourceId.equals(\"\"),\n\t\t\tsourceName != null && !sourceName.equals(\"\"),\n specificProblem in (\"The guest OS has indicated a failure, requiring VM restart\"))\n then\n\t\tDmaapService dmaapService = ServiceLocatorHolder.getLocator().getService(DmaapService.class);\n\t\tPolicyMsg policyMsg = dmaapService.getPolicyMsg($root, null, \"org.onap.holmes.droolsRule\");\n dmaapService.publishPolicyMsg(policyMsg, \"unauthenticated.DCAE_CL_OUTPUT\");\n\t\t$root.setRootFlag(1);\n\t\tupdate($root);\nend\n\nrule \"root_cleared_handle_Rule\"\nsalience 100\nno-loop true\n when\n $root : VesAlarm(alarmIsCleared == 1, rootFlag == 1)\n then\n\t\tDmaapService dmaapService = ServiceLocatorHolder.getLocator().getService(DmaapService.class);\n\t\tPolicyMsg policyMsg = dmaapService.getPolicyMsg($root, null, \"org.onap.holmes.droolsRule\");\n dmaapService.publishPolicyMsg(policyMsg, \"unauthenticated.DCAE_CL_OUTPUT\");\n\t\tretract($root);\nend\n\nrule \"child_handle_Rule\"\nsalience 100\nno-loop true\n when\n $child : VesAlarm(alarmIsCleared == 1, rootFlag == 0)\n then\n\t\tretract($child);\nend" msb.hostname: - get_input: msb_hostname + get_input: msb_hostname msb.uri: /api/microservices/v1/services services_calls: {} streams_publishes: {} @@ -48,10 +78,12 @@ node_templates: type: http ports: - 9101:9101 - image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/holmes/rule-management:latest" + image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/holmes/rule-management:latest" location_id: get_input: dh_location_id service_component_type: dcae-analytics-holmes-rule-management relationships: + - type: cloudify.relationships.depends_on + target: pgaasvm - target: docker_holmes_host - type: dcae.relationships.component_contained_in + type: dcae.relationships.component_contained_in diff --git a/input-templates/he-ip.yaml b/input-templates/he-ip.yaml index 2d0fd6e..a5f1e39 100644 --- a/input-templates/he-ip.yaml +++ b/input-templates/he-ip.yaml @@ -1,6 +1,10 @@ { - "dh_location_id": "loc1", + "dh_location_id": "{{ dcae_zone }}", "docker_host_override": "component_dockerhost", "msb_hostname": "{{ openo_ip_addr }}", - "dcae_CL_publish_url": "http://{{ mr_ip_addr }}:3904/events/unauthenticated.DCAE_CL_OUTPUT" + "dcae_CL_publish_url": "http://{{ mr_ip_addr }}:3904/events/unauthenticated.DCAE_CL_OUTPUT", + "location_domain" : "{{ dcae_zone }}.{{ dcae_domain }}", + "location_prefix" : "dcae", + "pgaas_cluster_name" : "pgvm", + "database_name":"holmes" } diff --git a/input-templates/hr-ip.yaml b/input-templates/hr-ip.yaml index 856f195..c22f0d3 100644 --- a/input-templates/hr-ip.yaml +++ b/input-templates/hr-ip.yaml @@ -1,7 +1,10 @@ { - "dh_location_id": "loc1", + "dh_location_id": "{{ dcae_zone }}", "docker_host_override": "component_dockerhost", "msb_hostname": "{{ openo_ip_addr }}", - "ves_fault_publish_url": "http://{{ mr_ip_addr }}:3904/events/unauthenticated.SEC_FAULT_OUTPUT" + "ves_fault_publish_url": "http://{{ mr_ip_addr }}:3904/events/unauthenticated.SEC_FAULT_OUTPUT", + "location_domain" : "{{ dcae_zone }}.{{ dcae_domain }}", + "location_prefix" : "dcae", + "pgaas_cluster_name" : "pgvm", + "database_name":"holmes" } - -- cgit 1.2.3-korg