This work is licensed under a Creative Commons Attribution 4.0
International License.
-===================================
+====================================
ONAP MultiCloud HPA Deployment Guide
-===================================
+====================================
The guide for MultiCloud HPA Deployment.
Architecture & Policies & Mappings
-============
+==================================
Please refer to the link for more architecture details:
https://wiki.onap.org/display/DW/HPA+Policies+and+Mappings
Prerequisites
-============
+=============
configure openstack with proper flavors (with name prefixed by "onap." to carry HPA information to ONAP), example flavor:
.. code-block:: console
export ONAP_MSB_PORT=30280
The geographic location of the cloud region
-============
+===========================================
make sure there is complex object to represent the geographic location of the cloud region
in case you need create a complex object "clli1":
}'
Register a cloud region
-============
+=======================
register a cloud region to represent the VIM with the specific tenant
note: please update the parameters enclosed with "<>"
This API consists of several parts referred as below terminologies:
- - **Terminology | Description | Example**
- - **service endpoint** | http(s)://{service IP}:{service port}| http://1.2.3.4:9001
- - **service namespace** | api/{service-name} | api/multicloud
- - **service API version** | v0, v1, etc. | v0
- - **ID of a cloud region**| the ID to specify a cloud region| OnaplabOwner_RegionOne
- - **proxied API catalog** | identity,compute, network, image,volume,etc.| identity
- - **proxied API endpoint**| consists of all above| *http://1.2.3.4:9001/api/multicloud/v0/OnaplabOwner_RegionOne/identity*
- - **proxied API resource**| URI for an OpenStack resource | v3/auth/tokens
+ - **Terminology | Description | Example**
+ - **service endpoint** | http(s)://{service IP}:{service port} | http://1.2.3.4:9001
+ - **service namespace** | api/{service-name} | api/multicloud
+ - **service API version** | v0, v1, etc. | v0
+ - **ID of a cloud region** | the ID to specify a cloud region | OnaplabOwner_RegionOne
+ - **proxied API catalog** | identity,compute, network, image,volume,etc. | identity
+ - **proxied API endpoint** | consists of all above | *http://1.2.3.4:9001/api/multicloud/v0/OnaplabOwner_RegionOne/identity*
+ - **proxied API resource** | URI for an OpenStack resource | v3/auth/tokens
Given the terminology above, the general rules to upgrade MultiCloud North Bound API are:
- Upgrade "service API version" from "v0" to "v1"
2. ONAP user should put this key-value pair into "cloud-extra-info" property via ESR GUI Portal, the input string
looks like: "{\"openstack-region-id\":\"RegionOne\"}"
3. the corresponding MultiCloud plugin should decode this string to extract this key-value pair "openstack-region-id" during cloud region on-boarding phase.
-4, Update AAI schema to add one more property "openstack-region-id" to AAI "esr-system-info" object which is the child of AAI "cloud-region" object.
-5, MultiCloud plugin for OpenStack should populate this property with the information acquired in step 3.
-6, MultiCloud should use this property to determine what OpenStack Region ID is when interacting with represented OpenStack Instance
+4. Update AAI schema to add one more property "openstack-region-id" to AAI "esr-system-info" object which is the child of AAI "cloud-region" object.
+5. MultiCloud plugin for OpenStack should populate this property with the information acquired in step 3.
+6. MultiCloud should use this property to determine what OpenStack Region ID is when interacting with represented OpenStack Instance
7. Given the workflow above, the AAI's "cloud-region-id" can be populated by arbitrary string.
8. In cases that either ONAP user doesn't input the key-value pair of "openstack-region-id" into "cloud-extra-info" or MultiCloud Plugin does not support the decoding/using key-value pair "openstack-region-id", the legacy constraint should be applied, that is: ONAP user should make sure AAI's "cloud-region-id" is populated by OpenStack Region ID.
this API should return the only one OpenStack Region information. In case of multi-region configuration for underlying OpenStack instances,
The list of OpenStack Regions will be returned. In this case, I assume you either go with Option 1,
or go with another proposal "MultiCloud Multi-Region support" to on-board all cloud regions at one time.
-
..
https://developer.openstack.org/api-ref/identity/v3/index.html#regions
==================
The ONAP functional requirement for Edge Automation aims to automate the VNF orchestration across edge stacks.
-
..
https://wiki.onap.org/display/DW/Edge+Automation+through+ONAP
Proposed Design and Workflow
============================
-**This automation assumes**:
+This automation assumes:
- ONAP could use the same set of credentials (project, user/password) to access all OpenStack regions for orchestration.
- ONAP user will explicitly enable the automation of discovery OpenStack secondary regions during manually on-boarding the OpenStack primary region.
- ONAP users could manually manage the cloud regions representing those secondary regions just like a normal cloud region
-**With OpenStack primary region, the ONAP user will**:
+With OpenStack primary region, the ONAP user will:
..
https://wiki.onap.org/pages/viewpage.action?pageId=25431491
+
- Manually on-board this primary region with ESR VIM registration portal.
- Input the {cloud-owner} and {cloud-region-id} as the ID of cloud region which is unique.
- Specify the location id