
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
05-24-2016 05:22 AM - edited 03-01-2019 06:41 AM
Task Name | This page is going to describe on how to integrate UCSD with Cisco Cloud Center formerly know as CliQr |
Description | |
Prerequisites | Tested on UCSD 5.4.0.3 CCC 4.4.2 Attached document for Cisco Cloud Center 4.7 and UCSD 6.0 |
Category | Workflow |
Components | vSphere 5.x |
User Inputs |
Instructions for Regular Workflow Use:
- Download the attached .ZIP file below to your computer. *Remember the location of the saved file on your computer.
- Unzip the file on your computer. Should end up with a .WFD file.
- Log in to UCS Director as a user that has "system-admin" privileges.
- Navigate to "Policies-->Orchestration" and click on "Import".
- Click "Browse" and navigate to the location on your computer where the .WFD file resides. Choose the .WFD file and click "Open".
- Click "Upload" and then "OK" once the file upload is completed. Then click "Next".
- Click the "Select" button next to "Import Workflows". Click the "Check All" button to check all checkboxes and then the "Select" button.
- Click "Submit".
- A new folder should appear in "Policies-->Orchestration" that contains the imported workflow. You will now need to update the included tasks with information about the specific environment.
Many thanks go out to Tuan Nguyen
Here are the steps to initiate a workflow in UCSD from Cisco Cloud Center:
Reference:
https://editor-docs.cloudcenter.cisco.com/display/CCD48/Configure+a+Cisco+UCSD+Cloud
1) Deploy a CilQr CCO and Rabbit MQ vCenter template and power up.
2) Hostname and re-IP
2.1) Hostname CCO
vi /etc/hostname (change the current hostname)
hostname cliqrccoucsd
vi /etc/hosts (add host name to the 127 line at the end)
2.2) Hostname Rabbit
vi /etc/hostname (change the current hostname)
hostname CliqrRabbitUCSD
vi /etc/hosts (add host name to the 127 line at the end)
2.3) re-IP (both systems) (My example CCO =172.17.33.109, Rabbit = 172.17.33.113)
nmtui (Note the IP has to have a /24 or /23 or /25, no field for mask)
3) File fix up CCO
Add the AMQ (Rabbit) Server
/usr/local/osmosix/bin/cco_config_wizard.sh
Update 2 files:
vi /usr/local/osmosix/etc/cloud
change to CiscoUCSD
vi /usr/local/osmosix/etc/profile.properties
change to cloud=CiscoUCSD
Re-boot
init 6
4) File fix up Rabbit (UCSD)
File gets re-created after boot with new hostname
rm -f /usr/local/osmosix/etc/.RABBITINSTALLED
Have to investigate what was changed
/usr/local/osmosix/bin/gua_config_wizard.sh
Re-boot
init 6
Aftger Boot test
rabbitmqctl list_users
rabbitmqctl list_connections
5) Fix up CCM (UCSD)
Stop Tomcat
/etc/init.d/tomcat stop
Update the DB
mysql -uosmosix -p osmosixdb
(osmosix)
select * from IMAGES where name='Callout Workflow';
update IMAGES set deleted=0 and privateImg=TRUE where name='Callout Workflow';
quit
For Postgress DB
cliqrdb=> update IMAGES set private_img=true and deleted=false where name='Callout Workflow';
psql -d cliqrdb -U cliqr
[root@cliqr-centos7-base-image ~]# psql -d cliqrdb -U cliqr
Password for user cliqr:
psql (9.5.4)
Type "help" for help.
cliqrdb=> select * from IMAGES where name='Callout Workflow';
image_id | name | description | published | private_img | os_name | cloud_node_type | owner | internal_image_name | disabled | system_image | num_of_nics | deleted
----------+------------------+------------------+-----------+-------------+---------+-----------------+-------+-----------------------------+----------+--------------+-------------+---------
22 | Callout Workflow | Callout Workflow | t | f | Linux | CloudWorker | 2 | CloudWorker-calloutWorkflow | f | t | 1 | t
(1 row)
cliqrdb=> update IMAGES set private_img=true and deleted=false where name='Callout Workflow';
UPDATE 1
cliqrdb=> update IMAGES set private_img=true where name='Callout Workflow';
UPDATE 1
cliqrdb=> select * from IMAGES where name='Callout Workflow';
image_id | name | description | published | private_img | os_name | cloud_node_type | owner | internal_image_name | disabled | system_image | num_of_nics | deleted
----------+------------------+------------------+-----------+-------------+---------+-----------------+-------+-----------------------------+----------+--------------+-------------+---------
22 | Callout Workflow | Callout Workflow | t | t | Linux | CloudWorker | 2 | CloudWorker-calloutWorkflow | f | t | 1 | f
(1 row)
Start Tomcat
/etc/init.d/tomcat start
Logfile
tail -f /usr/local/tomcat/logs/osmosix.log
Version
cat /usr/local/osmosix//etc/version
6) GUI changes in Cisco Cloud Center (Cliqr)
6.1) Add a cloud
6.2) Configure Cloud Account
Note: Folder name has to match to a folder in UCSD with workflows!
6.3) Add a Region
6.4) Configure Orchestrator
6.5) Create an Instance Type
6.6) Create a Cloud/Image Mapping
Don't for get to add UCSD as a Deployment Environment.
6.7) Application Modeling (N-tier)
6.8) Select UCSD / drag to designer
6.9) Parameters Properties/Hardware Specifications (Workflow names show up in Dropdown)
6.10) Deploy
The custom task that will return the instance ID is attached.
Further the in this test workflow is also attached.
Workflow:
Global output:
Custom task mapping within the workflow for the SR ID to be returned to CCC
Return of Resource ID to Cisco Cloud Center
Cisco Cloud Center when talking to UCSD does need with in the to be called workflow a last task to report back to Cisco Could Center a resource ID. This resource ID can be the UCSD SR ID. The custom task will provide this function.
Workflow SR ID:
Cisco Cloud Center Resource ID:
The Custom Task Code to return the resource ID:
The termination workflow:
For the termination portion in Cisco Cloud Center:
The associated input:
Note:
Cisco Cloud Center logic expects the termination workflow to have that input label (the ‘resourceId’). If it does, then Cisco Cloud Center will inject the ‘resourceId’ that was returned from the original JSON output (we stored it to display the node name on the UI)
The roll back code:
The Workflow inputs:
The termination and rollback in UCSD:
Please find attached document for Cisco Cloud Center 4.7 and UCSD 6.0

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Great work Orf, I was trying to get this working in our lab and hit a few hurdles. I will try the above to see if I can get it working as expected.

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Let me know if I need to update anything. thx

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Orf,
I am trying to achieve the integration with v4.6, all looks good however the service CISCO UCSD doesn't get created on its own I had to create the service but then the Orchestrator did not pull the workflows.
Can you suggest something?

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Do you have the workflows in the special directory ?

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
yes Orf, I have created a separate folder to keep the workflows exclusively for CC

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
I am glad it works.

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
In case of you met with below Error Message on CCO log files within integration CCC 4.7.0 and UCSD 5.4.0.0:
ERROR impl.JobServiceImpl [threadPoolExecutor-2] - Failed to start job: 88
java.lang.IllegalStateException: No executor defined by name for type CLUSTER
at com.osmosix.gateway.lifecycle.helpers.LifecycleBuilder.getEventActionMapping(LifecycleBuilder.java:177)
Put below text for value on "service_param_spec_text" column in SERVICES table for serviceId=58 (CiscoUCSD). Restarting of tomcat service on CCM/CCO is not required.
[{"id":1,"paramName":"deploymentWorkflow","displayName":"Deployment Workflow","defaultValue":"","type":"workflow", "userVisible":true,"userEditable":true,"systemParam":true,"other":{}},{"id":2,"paramName":"reconfigurationWorkflow","displayName":"Reconfiguration Workflow","defaultValue":"","type":"workflow", "userVisible":true,"userEditable":true,"systemParam":true,"other":{}},{"id":3,"paramName":"fetchDetailsWorkflow","displayName":"Details Workflow","defaultValue":"","type":"workflow", "userVisible":true,"userEditable":true,"systemParam":true,"other":{}},{"id":4,"paramName":"terminationWorkflow","displayName":"Termination Workflow","defaultValue":"","type":"workflow", "userVisible":true,"userEditable":true,"systemParam":true,"other":{}},{"id":5,"paramName":"CalloutWorkflowExecutor","displayName":"Callout Workflow Executor Bean","type":"Executor Bean","valueConstraint":{},"defaultValue":"CalloutWorkflowExecutor","userVisible":false,"userEditable":false,"systemParam":true,"exampleValue":"CalloutWorkflowExecutor","optional":true,"other":{}}]

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Thank you very much

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Hello,
I've tried to do an integration following all of the steps and got an error while deploying 'Send Email 2 submitter' application.
The error is: Failed to start job: No executor defined by name for type CLUSTER

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Did you try out the message 2 above yours?
In case of you met with below Error Message on CCO log files within integration CCC 4.7.0 and UCSD 5.4.0.0:
ERROR impl.JobServiceImpl [threadPoolExecutor-2] - Failed to start job: 88
java.lang.IllegalStateException: No executor defined by name for type CLUSTER
at com.osmosix.gateway.lifecycle.helpers.LifecycleBuilder.getEventActionMapping(LifecycleBuilder.java:177)
Put below text for value on "service_param_spec_text" column in SERVICES table for serviceId=58 (CiscoUCSD). Restarting of tomcat service on CCM/CCO is not required.
[{"id":1,"paramName":"deploymentWorkflow","displayName":"Deployment Workflow","defaultValue":"","type":"workflow", "userVisible":true,"userEditable":true,"systemParam":true,"other":{}},{"id":2,"paramName":"reconfigurationWorkflow","displayName":"Reconfiguration Workflow","defaultValue":"","type":"workflow", "userVisible":true,"userEditable":true,"systemParam":true,"other":{}},{"id":3,"paramName":"fetchDetailsWorkflow","displayName":"Details Workflow","defaultValue":"","type":"workflow", "userVisible":true,"userEditable":true,"systemParam":true,"other":{}},{"id":4,"paramName":"terminationWorkflow","displayName":"Termination Workflow","defaultValue":"","type":"workflow", "userVisible":true,"userEditable":true,"systemParam":true,"other":{}},{"id":5,"paramName":"CalloutWorkflowExecutor","displayName":"Callout Workflow Executor Bean","type":"Executor Bean","valueConstraint":{},"defaultValue":"CalloutWorkflowExecutor","userVisible":false,"userEditable":false,"systemParam":true,"exampleValue":"CalloutWorkflowExecutor","optional":true,"other":{}}]

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Thanks Orf! Somehow I've missed this comment. Actually I'm trying to integrate CC 4.7 with UCSD 6.5.
So, changes in the DB as described above helped to resolve the issue with No executor defined by name for type CLUSTER
But now I've got another error:'Failed to invoke workflow'
2017-04-04 08:15:26,194 INFO cisco.CiscoUCSDCalloutWorkflowProvider [scheduler- 10] - workflow 13 status: FAILED
2017-04-04 08:15:26,247 INFO impl.AbstractLifecycle [scheduler-10] - Deploymen tJobName=ciscoucsd_1 DeploymentJobID=8 ClusterLifecycleImpl[8,ciscoucsd_1,ERRORE D,0] state from STARTING -> ERRORED (Failed to invoke workflow. )
2017-04-04 08:15:28,299 INFO impl.AbstractLifecycle [scheduler-10] - Deploymen tJobName=test_3 DeploymentJobID=7 AppLifecycleImpl[7,test_3,ERRORED] state from STARTING -> ERRORED (Failed to invoke workflow. )

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
I put your question onto our internal Cisco Cloud Center mailer. I don’t know the answer to your question either. Sorry.
Orf Gelbrich
Check out UCS Director Workflow INDEX<https://communities.cisco.com/docs/DOC-56419> on Cisco Communities Site (Twitter @UCSDGURU)

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Hi Orf,
Thanks for the detailed steps on cloudcenter integration with UCSD.
So I am trying to integrate cloudcenter Version: 4.8.1 with UCSD 6.5.
Please let me know if the above steps still holds good or are there any changes to the configuration steps.

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Some changes do apply and they are in the notes section.

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content