/
Cloudify Blueprint validation under OOM

Cloudify Blueprint validation under OOM



For DCAE services deployed via blueprint, below steps can be followed to trial out new blueprint/inputs



1) Using ONAP key, you can login into rancher vm on required tenant DCAE/integration-SB04/Integration-OOM-Daily/Integration-OOM-Staging-Daily

For e.g – for SB04 rancher ip 
>>ssh -i ~/onap_dev  ubuntu@10.12.5.47

    Note: Use DCAE tenant if your components is not targeted for current release. The onap_dev is common key used across all VM in WINlab.

 
2) Using kubectl find the pod for bootstrap and exec into it


>>kubectl exec -it -n onap dev-dcaegen2-dcae-bootstrap-776cf86d49-mxzq6 /bin/bash



3) The blueprint for Holmes rules/engine component are under /blueprints (this is basically pulled from nexus raw during container build) and corresponding input file is under /inputs (this gets mapped during deployment from what is specified under oom repo). Here you can basically modify the image tag or any other blueprint changes to trial/deploy.

4) Deploy (or undeploy) commands.



If the component is already deployed (run "cfy deployments list" to check), then uninstall first

Uninstall

Syntax - cfy uninstall <deployment to be uninstalled>
>>cfy uninstall holmes_rules



Remove the deployment (this is required if uninstall does not remove the deployment automatically)

Syntax - cfy deployments delete -f <deployment name>

>>cfy deployments delete -f holmes_rules



Delete older version of blueprint (run "cfy blueprints list" to get current list; this is required if uninstall does not remove the deployment automatically) 

Syntax - cfy blueprints delete <blueprint name>
>>cfy blueprints delete holmes_rules



Validate the new blueprint changes

Syntax - cfy blueprints validate <blueprint filename>

>> cfy blueprints validate k8s-holmes-rules.yaml



Upload the new blueprint

Syntax - cfy blueprints upload -b <blueprintname> <blueprint file path>
>>cfy blueprints upload -b holmes_rules /blueprints/k8s-holmes-rules.yaml



Create a new deployment with updated blueprint

Syntax - cfy deployments create -b <blueprint name> -i <input file path> <deployment name>
>>cfy deployments create -b holmes_rules -i /inputs/k8s-holmes_rules-inputs.yaml holmes_rules



Execute install workflow

Syntax - cfy executions start -d <deployment name> install
>>cfy executions start -d holmes_rules install 

Note: Examples are captured around  holmes_engine; replace holmes_engine and corresponding blueprint/input file name required.


5) Verify status/logs


>>root@onap-oom-rancher:~# kubectl get pods -n onap | grep holmes
dep-holmes-engine-mgmt-885d86d49-czh28                       0/1       Running   61         10h
dep-holmes-rule-mgmt-5ffd74f697-bb7xp                         0/1       Running   61         10h                                                                               

The component version used in deployment can be checked using below command.



>> kubectl describe pod -n onap dep-holmes-engine-mgmt-885d86d49-czh28 








Rolling upgrade of deployed components



DCAE platform for R3 supports rolling upgrade of individual component deployed via cloudify.



To upgrade a running pod, follow below syntax

cfy execution start -d <deployment name> <inputfile> execute_operation

<input file> - should be under following structure

operation: update_image

operation_kwargs:

    image: <complete path of image:tag>

node_ids:

    - <list of node_id's in blueprint to be updated>





Example: cfy executions start -d ves -p k8s-ves-image.yaml execute_operation

Where k8s-ves-image.yaml is set as below



operation: update_image

operation_kwargs:

    image: nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:1.3.0

node_ids:

    - "ves"



Example of rolling upgrade executions (logs for Data-file collector)

cfy executions start -d datafile-collector -p k8s-datafile-collector-image.yaml execute_operation

Executing workflow execute_operation on deployment datafile-collector [timeout=900 seconds]

2018-10-10 20:42:07.234  CFY <datafile-collector> Starting 'execute_operation' workflow execution

2018-10-10 20:42:07.971  CFY <datafile-collector> [datafile-collector_8avn6c] Starting operation update_image (Operation parameters: {u'image':u'10.12.5.2:5000/onap/org.onap.dcaegen2.collectors.datafile.datafile-app-server:1.0.2'})

2018-10-10 20:42:07.971  CFY <datafile-collector> [datafile-collector_8avn6c.update_image] Sending task 'k8splugin.update_image'

2018-10-10 20:42:07.971  CFY <datafile-collector> [datafile-collector_8avn6c.update_image] Task started 'k8splugin.update_image'

2018-10-10 20:42:08.682  LOG <datafile-collector> [datafile-collector_8avn6c.update_image] INFO: Updating app image for dcae-datafile-collector from 10.12.5.2:5000/onap/org.onap.dcaegen2.collectors.datafile.datafile-app-server:1.0.0 to 10.12.5.2:5000/onap/org.onap.dcaegen2.collectors.datafile.datafile-app-server:1.0.2

2018-10-10 20:42:09.358  LOG <datafile-collector> [datafile-collector_8avn6c.update_image] INFO: Waiting up to 300 secs for dcae-datafile-collector to be updated and become ready 2018-10-10 20:42:25.703  LOG <datafile-collector> [datafile-collector_8avn6c.update_image] INFO: Update complete: dcae-datafile-collector from 10.12.5.2:5000/onap/org.onap.dcaegen2.collectors.datafile.datafile-app-server:1.0.0 to 10.12.5.2:5000/onap/org.onap.dcaegen2.collectors.datafile.datafile-app-server:1.0.2

2018-10-10 20:42:26.250  CFY <datafile-collector> [datafile-collector_8avn6c.update_image] Task succeeded 'k8splugin.update_image' 2018-10-10 20:42:26.991  CFY <datafile-collector> [datafile-collector_8avn6c] Finished operation update_image

2018-10-10 20:42:26.991  CFY <datafile-collector> 'execute_operation' workflow execution succeeded

Finished executing workflow execute_operation on deployment datafile-collector

* Run 'cfy events list -e 14cca5f1-ea89-4a0b-9ce0-bb8b25cc8cc1' to retrieve the execution's events/logs

 











Related content

DCAE Service Component (MS) Deployment Options
DCAE Service Component (MS) Deployment Options
More like this
dcae-cli Tool
dcae-cli Tool
More like this
Running Blueprints Controller Microservice Locally
Running Blueprints Controller Microservice Locally
More like this
Adding Blueprint Manually in SDC
Adding Blueprint Manually in SDC
More like this
Dublin Deployment Strategy
Dublin Deployment Strategy
More like this
Running Blueprints Processor Microservice Locally
Running Blueprints Processor Microservice Locally
More like this