...
Assuming you have a OpenStack ocata instance with Region ID is RegionTwo, Registering it into A&AI basically refers to following actions:
- Action 1: create a cloud region object
There are at least 2 approaches to create a cloud region object: Post curl commands to A&AI directly, or utilize ESR VIM registration portal.
approach Approach 1: curl commands to A&AI
e.g. Create a OpenStack Ocata instance as a cloud region identified by "CloudOwner/RegionTwo" into AAI,
...
Click the "register button", the registration portal will show up.
Caveat: approach 2 which utilizes ESR VIM register portal will trigger MultiCloud to discover resources of VIM/Cloud instance and populate them into AAI. Right now with Amsterdam Release, it supports OpenStack ocata, Wind River Titanium Cloud, and VMware VIO. More options will be available in future releases.
- Action 2: associate this cloud region object with a complex object
This association will be important for ONAP Beijing Release when OOF needs to find out the location approximity of different cloud regions.
...
Code Block | ||||
---|---|---|---|---|
| ||||
curl -X PUT \ https://<AAI_VM1_IP>:8443/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionTwo/relationship-list/relationship \ -H 'accept: application/json' \ -H 'authorization: Basic QUFJOkFBSQ==' \ -H 'cache-control: no-cache' \ -H 'content-type: application/json' \ -H 'postman-token: e68fd260-5cac-0570-9b48-c69c512b034f' \ -H 'real-time: true' \ -H 'x-fromappid: jimmy-postman' \ -H 'x-transactionid: 9999' \ -d '{ { "related-to": "complex", "related-link": "/aai/v11/cloud-infrastructure/complexes/complex/clli2", "relationship-data": [ { "relationship-key": "complex.physical-location-id", "relationship-value": "clli2" } ] }' |
- Action 3: associate this cloud region object with a subscriber's service subscription
With this association, this cloud region will be populated into list of selection for deploying VNF/VF-Modules from VID.
...
2, Register VIM/Cloud instance into SO
SO does not not utilize the cloud region representation in A&AI. It stores information of the VIM/Cloud instances inside of the container as configuration file. So to add a VIM/Cloud instance to SO, you need attach to the SO service container and then update the configuration file "" accordingly.
Code Block | ||||
---|---|---|---|---|
| ||||
ubuntu@vm0-so:~$ sudo docker exec -it testlab_mso_1 bash
root@mso:/# apt-get install vim
root@mso:/# vi /etc/mso/config.d/cloud_config.json
{
"cloud_config":
{
"identity_services":
{
"DEFAULT_KEYSTONE":
{
"identity_url": "http://10.12.25.2:5000/v2.0",
"mso_id": "demonstrable",
"mso_pass": "9f0933d3664e07961856781c9add38bc",
"admin_tenant": "service",
"member_role": "admin",
"tenant_metadata": true,
"identity_server_type": "KEYSTONE",
"identity_authentication_type": "USERNAME_PASSWORD"
},
"DEFAULT_KEYSTONE2":
{
"identity_url": "<keystone auth url, support only keystone API v2.0>",
"mso_id": "<username>",
"mso_pass": "<encrypted password by http://<MSO VM IP>:8080/networks/rest/cloud/encryptPassword/<password> >",
"admin_tenant": "service",
"member_role": "admin",
"tenant_metadata": true,
"identity_server_type": "KEYSTONE",
"identity_authentication_type": "USERNAME_PASSWORD"
}
},
"cloud_sites":
{
"RegionOne":
{
"region_id": "RegionOne",
"clli": "RegionOne",
"aic_version": "2.5",
"identity_service_id": "DEFAULT_KEYSTONE"
},
"<cloud_site name, must align to cloud-region-id in AAI>":
{
"region_id": "cloud_site name, must align to cloud-region-id in AAI",
"clli": "cloud_site name, must align to cloud-region-id in AAI",
"aic_version": "2.5",
"identity_service_id": "DEFAULT_KEYSTONE2"
}
}
}
}
|
3, Change Robot service to operate with the VIM/Cloud instance
...