Update vLB ScaleOut use case doc

Improve documentation with Guilin testing findings

Issue-ID: INT-1736
Signed-off-by: ChrisC <christophe.closset@intl.att.com>
Change-Id: Idbaaba42c832045efcffbf17b4afea2dee230b3a
(cherry picked from commit c0e30837ca33e5a7775c3aefffe3ab96ea58b14f)
diff --git a/docs/docs_scaleout.rst b/docs/docs_scaleout.rst
index 77ab6f7..2933423 100644
--- a/docs/docs_scaleout.rst
+++ b/docs/docs_scaleout.rst
@@ -7,12 +7,19 @@
 
 Source files
 ~~~~~~~~~~~~
-- Heat templates directory: https://git.onap.org/demo/tree/heat/vLB_CDS?h=elalto
+- Heat templates directory: https://git.onap.org/demo/tree/heat/vLB_CDS?h=guilin
 
 Additional files
 ~~~~~~~~~~~~~~~~
 - TOSCA model template: https://git.onap.org/integration/tree/docs/files/scaleout/service-Vloadbalancercds-template.yml
-- Naming policy script: https://git.onap.org/integration/tree/docs/files/scaleout/push_naming_policy.sh
+- Naming policy script: :download:`push_naming_poliy.sh <files/scaleout/push_naming_policy.sh>`
+- Controller Blueprint Archive (to use with CDS) : https://git.onap.org/ccsdk/cds/tree/components/model-catalog/blueprint-model/service-blueprint/vLB_CDS_Kotlin?h=guilin
+- TCA blueprint : :download:`guilin-tca.yaml <files/scaleout/latest-tca-guilin.yaml>`
+
+Useful tool
+~~~~~~~~~~~
+
+- Postman collection that can be used to simulate all inter process queries : https://www.getpostman.com/collections/878061d291f9efe55463
 
 Description
 ~~~~~~~~~~~
@@ -104,6 +111,7 @@
 
 Please look at the CDS documentation for details about how to create configuration models, blueprints, and use the CDS tool: https://wiki.onap.org/display/DW/Modeling+Concepts. For running the use case, users can use the standard model package that CDS provides out of the box, which can be found here: https://wiki.onap.org/pages/viewpage.action?pageId=64007442
 
+The provided CBA blueprint (see top of this documentation) can also be loaded to CDS using the sample POSTMAN collection
 
 1-2 VNF Onboarding and Service Creation with SDC
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -141,7 +149,7 @@
 .. figure:: files/scaleout/1.png
    :align: center
 
-Upload the DCAE blueprint linked at the top of the page using the pop-up window.
+Upload the DCAE blueprint (choose the one depending on your ONAP release, as the orginal TCA was depecrated in Guilin a new one is available to use) linked at the top of the page using the pop-up window.
 
 .. figure:: files/scaleout/2.png
    :align: center
@@ -176,6 +184,7 @@
     kubectl exec -it dev-policy-drools-0
     ./push_naming_policy.sh
 
+Note that in Guilin, the default naming policy is already deployed in policy so this step is optional
 
 1-4 Closed Loop Design with CLAMP
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -351,6 +360,8 @@
 - Click "Reference Data" Tab
 - Click "Save All to APPC"
 
+Note, if a user gets an error when saving to Appc (cannot connect to AppC network), he should open a browser to http://ANY_K8S_IP:30211 to accept AppC proxy certificate
+
 For health check operation, we just need to specify the protocol, the port number and username of the VNF (REST, 8183, and "admin" respectively, in the case of vLB/vDNS) and the API. For the vLB/vDNS, the API is:
 ::
 
@@ -898,6 +909,8 @@
 
 PART 2 - Scale Out Use Case Instantiation
 -----------------------------------------
+Note that the postman collection linked at the top of this page, does provide some level of automatic scripting that will automatically get values between request and provision the following queries
+
 This step is only required if CDS is used.
 
 GET information from SDC catalogdb
@@ -2078,3 +2091,6 @@
 - Change "eventName" in the vLB default policy to something different, for example "vLB" instead of the default value "vLoadBalancer"
 - Change "subscriberConsumerGroup" in the TCA configuration to something different, for example "OpenDCAE-c13" instead of the default value "OpenDCAE-c12"
 - Click "UPDATE" to upload the new TCA configuration
+
+2) During Guilin testing, it has been noticed that there is an issue between SO and APPC for Healthcheck queries, this does not prevent the use case to proceed but limit APPC capabilities
+
diff --git a/docs/files/scaleout/latest-tca-guilin.yaml b/docs/files/scaleout/latest-tca-guilin.yaml
new file mode 100644
index 0000000..e7d967a
--- /dev/null
+++ b/docs/files/scaleout/latest-tca-guilin.yaml
@@ -0,0 +1,141 @@
+# ============LICENSE_START====================================================
+# =============================================================================
+# Copyright (C) 2019-2020 AT&T 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.
+# 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======================================================
+#k8s-tca-gen2-v3.yaml
+
+tosca_definitions_version: cloudify_dsl_1_3
+imports:
+  - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml
+  - plugin:k8splugin?version=3.4.2
+  - plugin:clamppolicyplugin?version=1.1.0
+inputs:
+  service_name:
+    type: string
+    default: 'dcae-tcagen2'
+  log_directory:
+    type: string
+    default: "/opt/logs/dcae-analytics-tca"
+  replicas:
+    type: integer
+    description: number of instances
+    default: 1
+  spring.data.mongodb.uri:
+    type: string
+    default: "mongodb://dcae-mongohost/dcae-tcagen2"
+  tag_version:
+    type: string
+    default: "nexus3.onap.org:10001/onap/org.onap.dcaegen2.analytics.tca-gen2.dcae-analytics-tca-web:1.2.1"
+  tca.aai.password:
+    type: string
+    default: "DCAE"
+  tca.aai.url:
+    type: string
+    default: "http://aai.onap.svc.cluster.local"
+  tca.aai.username:
+    type: string
+    default: "DCAE"
+  tca_handle_in_subscribe_url:
+    type: string
+    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_MEASUREMENT_OUTPUT"
+  tca_handle_out_publish_url:
+    type: string
+    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.DCAE_CL_OUTPUT"
+  tca_consumer_group:
+    type: string
+    default: "cg1"
+  policy_model_id:
+    type: string
+    default: "onap.policies.monitoring.tcagen2"
+  policy_id:
+    type: string
+    default: "onap.restart.tca"
+node_templates:
+  docker.tca:
+    type: dcae.nodes.ContainerizedServiceComponent
+    relationships:
+      - target: tcagen2_policy
+        type: cloudify.relationships.depends_on
+    interfaces:
+      cloudify.interfaces.lifecycle:
+        start:
+          inputs:
+            ports:
+              - concat: ["9091:", "0"]
+    properties:
+      application_config:
+        service_calls: []
+        streams_publishes:
+          tca_handle_out:
+            dmaap_info:
+              topic_url:
+                get_input: tca_handle_out_publish_url
+            type: message_router
+        streams_subscribes:
+          tca_handle_in:
+            dmaap_info:
+              topic_url:
+                get_input: tca_handle_in_subscribe_url
+            type: message_router
+        spring.data.mongodb.uri:
+          get_input: spring.data.mongodb.uri
+        streams_subscribes.tca_handle_in.consumer_group:
+          get_input: tca_consumer_group
+        streams_subscribes.tca_handle_in.consumer_ids[0]: c0
+        streams_subscribes.tca_handle_in.consumer_ids[1]: c1
+        streams_subscribes.tca_handle_in.message_limit: 50000
+        streams_subscribes.tca_handle_in.polling.auto_adjusting.max: 60000
+        streams_subscribes.tca_handle_in.polling.auto_adjusting.min: 30000
+        streams_subscribes.tca_handle_in.polling.auto_adjusting.step_down: 30000
+        streams_subscribes.tca_handle_in.polling.auto_adjusting.step_up: 10000
+        streams_subscribes.tca_handle_in.polling.fixed_rate: 0
+        streams_subscribes.tca_handle_in.timeout: -1
+        tca.aai.enable_enrichment: true
+        tca.aai.generic_vnf_path: aai/v11/network/generic-vnfs/generic-vnf
+        tca.aai.node_query_path: aai/v11/search/nodes-query
+        tca.aai.password:
+          get_input: tca.aai.password
+        tca.aai.url:
+          get_input: tca.aai.url
+        tca.aai.username:
+          get_input: tca.aai.username
+        tca.policy: '{"domain":"measurementsForVfScaling","metricsPerEventName":[{"eventName":"vFirewallBroadcastPackets","controlLoopSchemaType":"VM","policyScope":"DCAE","policyName":"DCAE.Config_tca-hi-lo","policyVersion":"v0.0.1","thresholds":[{"closedLoopControlName":"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta","thresholdValue":300,"direction":"LESS_OR_EQUAL","severity":"MAJOR","closedLoopEventStatus":"ONSET"},{"closedLoopControlName":"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta","thresholdValue":700,"direction":"GREATER_OR_EQUAL","severity":"CRITICAL","closedLoopEventStatus":"ONSET"}]},{"eventName":"vLoadBalancer","controlLoopSchemaType":"VM","policyScope":"DCAE","policyName":"DCAE.Config_tca-hi-lo","policyVersion":"v0.0.1","thresholds":[{"closedLoopControlName":"ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta","thresholdValue":300,"direction":"GREATER_OR_EQUAL","severity":"CRITICAL","closedLoopEventStatus":"ONSET"}]},{"eventName":"Measurement_vGMUX","controlLoopSchemaType":"VNF","policyScope":"DCAE","policyName":"DCAE.Config_tca-hi-lo","policyVersion":"v0.0.1","thresholds":[{"closedLoopControlName":"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value","thresholdValue":0,"direction":"EQUAL","severity":"MAJOR","closedLoopEventStatus":"ABATED"},{"closedLoopControlName":"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value","thresholdValue":0,"direction":"GREATER","severity":"CRITICAL","closedLoopEventStatus":"ONSET"}]}]}'
+        tca.processing_batch_size: 10000
+        tca.enable_abatement: true
+        tca.enable_ecomp_logging: true
+      docker_config:
+        healthcheck:
+          endpoint: /actuator/health
+          interval: 30s
+          timeout: 10s
+          type: http
+      image:
+        get_input: tag_version
+      log_info:
+        log_directory:
+          get_input: log_directory
+      tls_info:
+        use_tls: true
+        cert_directory: '/etc/tca-gen2/ssl'
+      replicas:
+        get_input: replicas
+      service_component_type: { get_input: service_name }
+  tcagen2_policy:
+    type: clamp.nodes.policy
+    properties:
+      policy_id:
+        get_input: policy_id
+      policy_model_id:
+        get_input: policy_model_id