There are tasks to complete before we can use VID to instantiate the vIMS VNF.
- We need to Update AAI to indicate what account or accounts are permitted to use the vIMS service and in which cloud locations.
- We need to declare the service instance via VID
Updating AAI for account, service and location data
For the AAI updates for vFW and vLB we use "demo.sh init" to populate AAI with the data for the "Demonstration" customer but that only support vFW and vLB. For this tutorial we will use POSTMAN to update AAI via the equivalent PUT transaction that the robot testsuite uses but for a "Demonstration3" customer.
Note1: You will have to put your tenantid into the string :
<YOUR_TENANT_HERE>
Note2: We are setting up this account for vFW, vDNS and vIMS so we can use the customer in AAI for all three use cases.
Using POSTMAN to update AAI requires headers and basic authorization shown in the screen shot below.
The Basic authorization credentials are AAI/AAI
Create the vIMS Service in AAI
This will put vIMS in the drop down for new VNFs in VID.
Step 1: Query for the services
https://<AAI_IP>:8443/aai/v8/service-design-and-creation/services
will return the list of services by uuid,
{ "service": [ { "service-id": "4dd0f831-785f-455e-a0d9-b16726dd1a70", "service-description": "vLB", "resource-version": "1493657491" }, { "service-id": "891ab7fa-715f-4556-abd7-db575894e3e2", "service-description": "vFW", "resource-version": "1493657491" }, { "service-id": "c30d0f54-61e8-4475-b029-43fc3f7bebef", "service-description": "vVG", "resource-version": "1493844352" } ] }
Step 2: Generate a UUID
https://www.uuidgenerator.net/
pick the Version 4 UUID like: e8cb8968-5411-478b-906a-f28747de72cd
Step 3: PUT the vIMS Service (see headers in screen shot above)
{
"service-id": "e8cb8968-5411-478b-906a-f28747de72cd",
"service-description": "vIMS"
}
replace "e8cb8968-5411-478b-906a-f28747de72cd" with the UUID you generated
Step 4: Confirm with a GET to the services url.
This complete updating AAI for the service. Now we move to updating AAI for the Infrastructure Customer Account data.
Create the Account
This will put vFW, vLB and vIMS service types as valid services for the Demonstration3 customer in the RACKSPACE location "IAD"
Remember to put your tenant ID in place of <YOUR_TENANT_HERE>.
The URL for the PUT includes the global-customer-id so make sure they match.
https://<AAI_IP>:8443/aai/v8/business/customers/customer/Demonstration3
{ "global-customer-id": "Demonstration3", "subscriber-name": "Demonstration3", "subscriber-type": "INFRA", "service-subscriptions": { "service-subscription": [ { "service-type": "vFW", "relationship-list": { "relationship": [{ "related-to": "tenant", "relationship-data": [ {"relationship-key": "cloud-region.cloud-owner", "relationship-value": "Rackspace"}, {"relationship-key": "cloud-region.cloud-region-id", "relationship-value": "IAD"}, {"relationship-key": "tenant.tenant-id", "relationship-value": "<YOUR_TENANT_HERE>"} ] }] } }, { "service-type": "vLB", "relationship-list": { "relationship": [{ "related-to": "tenant", "relationship-data": [ {"relationship-key": "cloud-region.cloud-owner", "relationship-value": "Rackspace"}, {"relationship-key": "cloud-region.cloud-region-id", "relationship-value": "IAD"}, {"relationship-key": "tenant.tenant-id", "relationship-value": "<YOUR_TENANT_HERE>"} ] }] } }, { "service-type": "vIMS", "relationship-list": { "relationship": [{ "related-to": "tenant", "relationship-data": [ {"relationship-key": "cloud-region.cloud-owner", "relationship-value": "Rackspace"}, {"relationship-key": "cloud-region.cloud-region-id", "relationship-value": "IAD"}, {"relationship-key": "tenant.tenant-id", "relationship-value": "<YOUR_TENANT_HERE>"} ] }] } } ]} }
You should get back a 201 Created response code and be able to see the data in AAI via the matching GET (/aai/v8/business/customers/customer/Demonstration3)
This completes the AAI update.