description: Docker application to collect log file from PNF
 imports:
 - http://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
-- plugin:k8splugin?version=3.0.0
+- plugin:k8splugin?version=3.3.0
 - plugin:dmaap?version=1.5.0
 inputs:
   PM_MEAS_FILES_feed0_location:
     default: false
 node_templates:
   datafile-collector:
-    type: dcae.nodes.ContainerizedServiceComponentUsingDmaap
+    type: dcae.nodes.ContainerizedServiceComponent
     interfaces:
       cloudify.interfaces.lifecycle:
         start:
 
 # ============LICENSE_START====================================================
 # =============================================================================
 # Copyright (c) 2017-2020 AT&T Intellectual Property. All rights reserved.
+# Copyright (c) 2020 Nokia Intellectual Property. All rights reserved.
 # =============================================================================
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 tosca_definitions_version: cloudify_dsl_1_3
 imports:
 - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
-- plugin:k8splugin?version=2.0.0
+- plugin:k8splugin?version=3.3.0
 - plugin:dcaepolicyplugin?version=2.4.0
 - plugin:pgaas?version=1.3.0
 inputs:
   he_image:
     type: string
     default: "nexus3.onap.org:10001/onap/holmes/engine-management:1.2.6"
+  service_component_type:
+    type: string
+    default: "holmes-engine-mgmt"
+  service_id:
+    type: string
+    default: "holmes-engine-mgmt"
 
 node_templates:
   pgaasvm:
       use_existing: true
 
   holmesengine:
-    type:  dcae.nodes.ContainerizedPlatformComponent
+    type: dcae.nodes.ContainerizedServiceComponent
     interfaces:
       cloudify.interfaces.lifecycle:
         start:
            ports:
              - '9102:0'
     properties:
-      name: 'holmes-engine-mgmt'
-      dns_name: 'holmes-engine-mgmt'
+      service_component_type: { get_input: service_component_type }
+      service_id: { get_input: service_id }
       application_config:
         msb.hostname:
          get_input: msb_hostname
 
 tosca_definitions_version: cloudify_dsl_1_3
 imports:
 - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
-- plugin:k8splugin?version=2.0.0
+- plugin:k8splugin?version=3.3.0
 - plugin:dcaepolicyplugin?version=2.4.0
 - plugin:pgaas?version=1.3.0
 inputs:
   hr_image:
     type: string
     default: "nexus3.onap.org:10001/onap/holmes/rule-management:1.2.7"
+  service_component_type:
+    type: string
+    default: "holmes-rule-mgmt"
+  service_id:
+    type: string
+    default: "holmes-rule-mgmt"
 node_templates:
   pgaasvm:
     type: dcae.nodes.pgaas.database
       writerfqdn: { get_input: pgaas_cluster_name }
       name: { get_input: database_name }
   holmesrules:
-    type: dcae.nodes.ContainerizedPlatformComponent
+    type: dcae.nodes.ContainerizedServiceComponent
     interfaces:
       cloudify.interfaces.lifecycle:
         start:
              - '9101:0'
              - '9104:0'
     properties:
-      name: 'holmes-rule-mgmt'
-      dns_name: 'holmes-rule-mgmt'
+      service_component_type: { get_input: service_component_type }
+      service_id: { get_input: service_id }
       application_config:
         holmes.default.rule.volte.scenario1: "ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b$$$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            eventName in (\"Fault_MultiCloud_VMFailure\"),\n            $eventId: eventId)\n        $child : VesAlarm( eventId != $eventId, parentId == null,\n            CorrelationUtil.getInstance().isTopologicallyRelated(sourceId, $sourceId, $sourceName),\n            eventName in (\"Fault_MME_eNodeB out of service alarm\"),\n            startEpochMicrosec < $startEpochMicrosec + 60000 && startEpochMicrosec > $startEpochMicrosec - 60000 )\n    then\n\t\tDroolsLog.printInfo(\"===========================================================\");\n\t\tDroolsLog.printInfo(\"Relation_analysis_Rule: rootId=\" + $root.getEventId() + \", childId=\" + $child.getEventId());\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\tDroolsLog.printInfo(\"===========================================================\");\n\t\tDroolsLog.printInfo(\"root_has_child_handle_Rule: rootId=\" + $root.getEventId() + \", childId=\" + $child.getEventId());\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            eventName in (\"Fault_MultiCloud_VMFailure\"))\n    then\n\t\tDroolsLog.printInfo(\"===========================================================\");\n\t\tDroolsLog.printInfo(\"root_no_child_handle_Rule: rootId=\" + $root.getEventId());\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\tDroolsLog.printInfo(\"===========================================================\");\n\t\tDroolsLog.printInfo(\"root_cleared_handle_Rule: rootId=\" + $root.getEventId());\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\tDroolsLog.printInfo(\"===========================================================\");\n\t\tDroolsLog.printInfo(\"child_handle_Rule: childId=\" + $child.getEventId());\n\t\tretract($child);\nend"
         msb.hostname:
 
 
 imports:
   - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
-  - plugin:k8splugin?version=2.0.0
+  - plugin:k8splugin?version=3.3.0
 
 inputs:
   tag_version:
     type: string
     default: 'nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-main:1.4.0'
-  hv_ves_name:
+  service_component_type:
     type: string
     default: 'dcae-hv-ves-collector'
+  service_id:
+    type: string
+    default: "dcae-hv-ves-collector"
   replicas:
     type: integer
     description: number of instances
         start:
           inputs:
             envs:
-              JAVA_OPTS: { concat: [ '-Dlogback.configurationFile=/etc/ONAP/', { get_input: hv_ves_name }, '/logback.xml' ] }
+              JAVA_OPTS: { concat: [ '-Dlogback.configurationFile=/etc/ONAP/', { get_input: service_component_type }, '/logback.xml' ] }
     properties:
       application_config:
         logLevel: { get_input: log_level }
           script: "/opt/ves-hv-collector/healthcheck.sh"
           interval: 15s
           timeout: 2s
+        ports:
+          - { concat: [ { get_input: container_port }, ':', { get_input: host_port } ] }
       image: { get_input: tag_version }
       replicas: { get_input: replicas }
-      name: { get_input: hv_ves_name }
-      dns_name: { get_input: hv_ves_name }
-      container_port: { get_input: container_port }
-      host_port: { get_input: host_port }
+      service_component_type: { get_input: service_component_type }
+      service_id: { get_input: service_id }
       log_info:
-        log_directory: { concat: [ '/var/log/ONAP/', { get_input: hv_ves_name } ] }
+        log_directory: { concat: [ '/var/log/ONAP/', { get_input: service_component_type } ] }
       tls_info:
         cert_directory: '/etc/ves-hv/ssl'
         use_tls: { get_input: use_tls }
-    type: dcae.nodes.ContainerizedPlatformComponent
+    type: dcae.nodes.ContainerizedServiceComponent
 
 #
 # ============LICENSE_START=======================================================
 #  Copyright (C) 2019-2020 Nordix Foundation.
+#  Copyright (C) 2020 Nokia
 # ================================================================================
 # Licensed under the Apache License, Version 2.0 (the 'License');
 # you may not use this file except in compliance with the License.
 
 imports:
   - 'http://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml'
-  - plugin:k8splugin?version=3.0.0
+  - plugin:k8splugin?version=3.3.0
   - plugin:dmaap?version=1.5.0
 
 inputs:
       topic_name: { get_input: topic_name }
 
   pm-mapper:
-    type: dcae.nodes.ContainerizedServiceComponentUsingDmaap
+    type: dcae.nodes.ContainerizedServiceComponent
     interfaces:
       cloudify.interfaces.lifecycle:
         create:
 
 # ============LICENSE_START====================================================
 # =============================================================================
 # Copyright (c) 2018-2020 AT&T, NOKIA
+# Copyright (c) 2020 NOKIA
 # =============================================================================
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 
 imports:
   - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
-  - plugin:k8splugin?version=2.0.0
+  - plugin:k8splugin?version=3.3.0
 inputs:
   pnfUrl:
     type: string
   host_port:
     description: port on Kubernetes host where PRH API will be exposed
     default: 0
+  container_port:
+    type: integer
+    description: Network port that the platform service exposes in the container
+    default: 8100
+  service_component_type:
+    type: string
+    default: "dcae-prh"
+  service_id:
+    type: string
+    default: "dcae-prh"
   secureEnableCert:
     type: boolean
     description: enable certificate base connection with AAI and DMaap
               type: "message_router"
               dmaap_info:
                 topic_url: { get_input: dmaap_vesPnfRegOutput_url }
-
-      host_port:
-          { get_input: host_port }
-      container_port:
-        8100
       docker_config:
         healthcheck:
           endpoint: /heartbeat
           interval: 15s
           timeout: 1s
           type: http
+        ports:
+          - { concat: [ { get_input: container_port }, ':', { get_input: host_port } ] }
       image:
         { get_input: tag_version }
       replicas: {get_input: replicas}
-      name: 'dcae-prh'
-      dns_name: 'dcae-prh'
+      service_component_type: { get_input: service_component_type }
+      service_id: { get_input: service_id }
       log_info:
         log_directory: "/opt/app/prh/logs"
       tls_info:
         cert_directory: '/opt/app/prh/etc/cert'
         use_tls: true
-    type: dcae.nodes.ContainerizedPlatformComponent
+    type: dcae.nodes.ContainerizedServiceComponent
 
 
 # ============LICENSE_START====================================================
 # =============================================================================
 # Copyright (c) 2018-2020 AT&T Intellectual Property. All rights reserved.
+# Copyright (c) 2020 Nokia Intellectual Property. All rights reserved.
 # =============================================================================
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 
 imports:
   - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
-  - plugin:k8splugin?version=2.0.0
+  - plugin:k8splugin?version=3.3.0
 inputs:
   aaiEnrichmentHost:
     type: string
     type: string
     description: Kubernetes node port on which CDAPgui is exposed
     default: "32010"
+  service_component_type:
+    type: string
+    default: "dcae-tca-analytics"
+  service_id:
+    type: string
+    default: "dcae-tca-analytics"
 
 node_templates:
   tca_k8s:
-    type: dcae.nodes.ContainerizedPlatformComponent
+    type: dcae.nodes.ContainerizedServiceComponent
     properties:
-        name: 'dcae-tca-analytics'
-        dns_name: 'dcae-tca-analytics'
+        service_component_type: { get_input: service_component_type }
+        service_id: { get_input: service_id }
         image:
           get_input: tag_version
         log_info:
 
 tosca_definitions_version: cloudify_dsl_1_3
 imports:
   - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
-  - plugin:k8splugin?version=2.0.0
+  - plugin:k8splugin?version=3.3.0
 inputs:
-  service_name:
+  service_component_type:
     type: string
-    default: 'dcae-tcagen2'
+    default: "dcae-tcagen2"
+  service_id:
+    type: string
+    default: "dcae-tcagen2"
   log_directory:
     type: string
     default: "/opt/logs/dcae-analytics-tca"
 
 node_templates:
   docker.tca:
-    type: dcae.nodes.ContainerizedPlatformComponent
+    type: dcae.nodes.ContainerizedServiceComponent
     interfaces:
       cloudify.interfaces.lifecycle:
         start:
       dns_name: { get_input: service_name }
       replicas:
         get_input: replicas
-      name: { get_input: service_name }
+      service_component_type: { get_input: service_component_type }
+      service_id: { get_input: service_id }
 
 
 imports:
   - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
-  - plugin:k8splugin?version=2.0.0
+  - plugin:k8splugin?version=3.3.0
 
 inputs:
   ves_other_publish_url:
   dns_component_name:
     type: string
     default: "dcae-ves-collector"
+  service_component_type:
+    type: string
+    default: "dcae-ves-collector"
+  service_id:
+    type: string
+    default: "dcae-ves-collector"
   enable_tls:
     type: boolean
     default: false
       image:
         get_input: tag_version
       replicas: {get_input: replicas}
-      name:
-        get_input: component_name
-      dns_name:
-        get_input: dns_component_name
+      service_component_type: { get_input: service_component_type }
+      service_id: { get_input: service_id }
       log_info:
         log_directory: "/opt/app/VESCollector/logs"
       tls_info:
         cert_directory: '/opt/app/dcae-certificate/'
         use_tls:
           get_input: enable_tls
-    type: dcae.nodes.ContainerizedPlatformComponent
+    type: dcae.nodes.ContainerizedServiceComponent
 
 <!--
 ================================================================================
 Copyright (c) 2017-2020 AT&T Intellectual Property. All rights reserved.
+Copyright (c) 2020 Nokia. All rights reserved.
 ================================================================================
 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
   <groupId>org.onap.dcaegen2.deployments</groupId>
   <artifactId>k8s-bootstrap-container</artifactId>
   <name>dcaegen2-deployments-k8s-bootstrap-container</name>
-  <version>2.1.0-SNAPSHOT</version>
+  <version>2.1.1-SNAPSHOT</version>
   <url>http://maven.apache.org</url>
   <packaging>pom</packaging>
 
 
 major=2\r
 minor=1\r
-patch=0\r
+patch=1\r
 base_version=${major}.${minor}.${patch}\r
 release_version=${base_version}\r
 snapshot_version=${base_version}-SNAPSHOT\r