Create Virtual Port
Request
+----------------------------------------+----------------------------------------+
5.1.1. **Request**
>>>>>>>>>>>>>>>>>>
+-------------------+-----------------+-------------------+------------------------+----------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** | **Description** |
+========= |
+========================+=================+===================+===============+=========================+==============================+
| networkId | M | 1 | string | String Network UUID | Network Id |
+------------------------+-----------------+-------------------+---------------+--------------------------------+-----------------------+
| namesubnetId | MO | 1 | string | String Subnet UUID | SubnetName |
+------------------------+-----------------+-------------------+---------------+---------------------------------+----------------------+
| cidrname | M | M | 1 | Stringstring | Port name | Subnet cidr |
+------------------------+-----------------+-------------------+---------------+-----------+--------------------------------------------+
| ipVersion | M macAddress | 1 O | Int 1 | Ip typestring | |Mac address | | | | |
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
| ip | | | O | | 1 | | string | Ip address | 4,6 |
+------------------------+-----------------+-------------------+---------------+--------------------------+-----------------------------+
| enableDhcp vnicType | O | 1 | string boolean | Virtual network card type, | Whether to allow | | |
| | | | | | | | | | | | |
| | | | 1: yes;0: no | | | the value of three kinds of normal/direct/macvtap |
+------------------------+-----------------+-------------------+---------------+--------------------------------+-----------------------+
| gatewayIp \ **securityGroups** | **O ** | 1 **1** | String **string** | Gateway**The ipIDs of security groups applied to the port.** |
+------------------------+-----------------+-------------------+---------------+---------------------------------+----------------------+
|
dnsNameservers | O | 1..n | List of servers | List of servers |
+Response
+----------------------+-----------------+-------------------+---------------+------------------------------+-----------------------+
| hostRoutes**Parameter** | O**Qualifier** | **Cardinality** | **Content** | 1..n| **Description** | List of routes | List of routes |
+-------------------+-----------------+-------------------+------------------------+----------------------+
| allocationPools | O======================+=================+===================+===============+=====================================================+
| returnCode | M | 1..n | 1 | list of "allocation" | list of allocation | int | 0: Already exist 1: Newly created |
+----------------------+-----------------+-------------------+---------------+------------------------------+-----------------------+
| -->allocation vimId | M | 1 | | String | vim id | |
+----------------------+-----------------+-------------------+---------------+-----------------+------------------------------------+
| -->start vimName | O | 1 | Stringstring | vim name | Start ip |
+-------------------+-----------------+-------------------+---------------------------+----------------------------+
| -->end ----------------+
| cloud-owner | OM | 1 | String | End ipcloud owner |
+-------------------+-----------------+-------------------+---------------------------+--------------------------------------------+
::| cloud-region-id | {
M "tenant": "tenant1", | 1 "network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22", "subnetName": "subnet1", | string "cidr": "10.43.35.0/24", "ipVersion": 4, | cloud region id "enableDhcp": 1, "gatewayIp": "10.43.35.1", "dnsNameservers": [],
"allocationPools": [{
"start": "192.168.199.2",
"end": "192.168.199.254"
}],
"hostRoutes": []
}
5.1.2. **Response**
>>>>>>>>>>>>>>>>>>>
+|
+----------------------+----------+-------+----------+----------+---------+--------+----------------+-------------------------------------+
| **Parameter** status | **Qualifier** | **Cardinality** | **Content** M | **Description** 1 | string |
+===================+=================+===================+========================+=====================================+
| returnCode status | M | 1 | int
| 0: Already exist 1: Newly created |
++----------------------+-----------------+-------------------+---------------+----------------+-------------------------------------+
| id vimId | M | 1 | Stringstring | Port Id | vim id |
+----------------------+-----------------+-------------------+---------------+----------+-------------------------------------------+
| vimName name | OM | 1 | string | Port name | vim name |
+----------------------+-----------------+-------------------+---------------+---------------+--------------------------------------+
| cloud-owner tenantId | M | 1 | String | Tenant UUID | cloud owner |
+----------------------+-----------------+-------------------+---------------+-------------------+----------------------------------+
| cloud-region-id networkName | M | 1 | string | Network name | cloud region id |
+----------------------+-----------------+-------------------+---------------+---------+--------------------------------------------+
| statusnetworkId | M | 1 | string | Network Id | subnetwork status |
+----------------------+-----------------+-------------------+---------------+----------------+-------------------------------------+
| subnetName id | M | M | 1 | 1 | string | stringSubnet name | subNetwork id |
+----------------------+-----------------+-------------------+---------------+-----------+-------------------------------------+
-----+
| tenantIdsubnetId | M | 1 | Stringstring | SubnetId | Tenant UUID |
+----------------------+-----------------+-------------------+---------------+----------------+-------------------------------------+
| macAddress networkId | O | 1 | String string | Mac address | Network Id |
+----------------------+-----------------+-------------------+---------------+----------------+-------------------------------------+
| networkName ip | O | 1 | string | StringIp address | Network Name |
+----------------------+-----------------+-------------------+---------------+------------+-----------------------------------------+
| name vnicType | MO | 1 | String string | Virtual network card type, |
| SubnetName | |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| cidr | | M | 1 | String |
| Subnet cidr | | +-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| ipVersion | M | 1 | Int | Ip type |
| | | | | |
| | | | | 4,6 |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| enableDhcp | O | 1 | boolean | Whether to allow |
| | | | | |
| | | | | 1: yes;0: no |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| gatewayIp | O | 1 | String | Gateway ip |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| dnsNameservers | O | 1..n | List of servers | List of servers |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| hostRoutes | O | 1..n | List of routes | List of routes |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| allocationPools | O | 1..n | list of "allocation" | list of allocation |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| -->allocation | | | | |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| -->start | O | 1 | String | Start ip |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
| -->end | O | 1 | String | End ip |
+-------------------+-----------------+-------------------+------------------------+-------------------------------------+
202: accepted
500: failed
::
{
"returnCode": 0,
"vimId": "11111",
"vimName": "11111",
"status": " ACTIVE",
"id": " d62019d3-bc6e-4319-9c1d-6722fc136a23",
"tenant": "tenant1",
"network_id": "d32019d3-bc6e-4319-9c1d-6722fc136a22",
"name": "subnet1",
"cidr": "10.43.35.0/24",
"ipVersion": 4,
"enableDhcp": 1,
"gatewayIp": "10.43.35.1",
"dnsNameservers": [],
"allocationPools": [{
"start": "192.168.199.2",
"end": "192.168.199.254"
}],
"hostRoutes": []
}
6.1. **Create Virtual Port**
----------------------------
+---------------------+------------------------------------------------------------------------------+
| **IF Definition** | **Description** |
+=====================+==============================================================================+
| URI | msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/ports |
+---------------------+------------------------------------------------------------------------------+
| Operation | POST |
+---------------------+------------------------------------------------------------------------------+
| Direction | VNFLCM->MULTIVIM |
+---------------------+------------------------------------------------------------------------------+
6.1.1. **Request**
>>>>>>>>>>>>>>>>>>
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+========================+=================+===================+===============+=======================================================+
| networkId | M | 1 | string | Network UUID |
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
| subnetId | O | 1 | string | Subnet UUID |
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
| name | M | 1 | string | Port name |
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
| macAddress | O | 1 | string | Mac address |
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
| ip | O | 1 | string | Ip address |
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
| vnicType | O | 1 | string | Virtual network card type, |
| | | | | |
| | | | | the value of three kinds of normal/direct/macvtap |
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
| \ **securityGroups** | **O** | **1** | **string** | **The IDs of security groups applied to the port.** |
+------------------------+-----------------+-------------------+---------------+-------------------------------------------------------+
6.1.2. **Response**
>>>>>>>>>>>>>>>>>>>
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+======================+=================+===================+===============+=====================================================+
| returnCode | M | 1 | int | 0: Already exist 1: Newly created |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| vimId | M | 1 | String | vim id |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| vimName | O | 1 | string | vim name |
+-------------------+-----------------+-------------------+---------------------------+--------------------------------------------+
| cloud-owner | M | 1 | String | cloud owner |
+-------------------+-----------------+-------------------+---------------------------+--------------------------------------------+
| cloud-region-id | M | 1 | string | cloud region id |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| status | M | 1 | string | status |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| id | M | 1 | string | Port Id |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| name | M | 1 | string | Port name |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| tenantId | M | 1 | String | Tenant UUID |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| networkName | M | 1 | string | Network name |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| networkId | M | 1 | string | Network Id |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| subnetName | M | 1 | string | Subnet name |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| subnetId | M | 1 | string | SubnetId |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| macAddress | O | 1 | string | Mac address |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| ip | O | 1 | string | Ip address |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| vnicType | O | 1 | string | Virtual network card type, |
| | | | | |
| | | | | the value of three kinds of normal/direct/macvtap |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| **securityGroups** | **O** | **1** | **string** | **List of security group names.** |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
7.1. **Create Server**
----------------------
+---------------------+--------------------------------------------------------------------------------+
| **IF Definition** | **Description** |
+=====================+================================================================================+
| URI | msb.onap.org:80/api/multicloud/v1/{cloud-owner}/{cloud-region-id}/{tenantid}/servers |
+---------------------+--------------------------------------------------------------------------------+
| Operation | POST |
+---------------------+--------------------------------------------------------------------------------+
| Direction | VNFLCM->MULTIVIM |
+---------------------+--------------------------------------------------------------------------------+
7.1.1. **Request**
>>>>>>>>>>>>>>>>>>
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+======================+=================+===================+=======================================+========================================================================================================================================================================================+
| name | M | 1 | string | server name |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| boot | M | 1 | String | Start parameters |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| nicArray | O | 1..n | List of nic | List of nic |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| contextArray | O | 1..n | list of context | list of context |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| volumeArray | O | 1..n | list of volume | list of volume |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| availabilityZone | O | 1 | string | Usable field |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| flavorId | M | 1 | String | server Flavor id |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| metadata | O | 1 | List of metadata | Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each. |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| userdata | O | 1 | string | Configuration information or scripts to use upon launch. Must be Base64 encoded. |
| | | | | |
| | | | | NOTE: The ‘null’ value allowed in Nova legacy v2 API, but due to the strict input validation, it isn’t allowed in Nova v2.1 API. |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| securityGroups | O | 1 | List of names of security group | One or more security groups. Specify the name of the security group in the name attribute. If you omit this attribute, the API creates the server in the default security group. |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| serverGroup | O | 1 | string | the ServerGroup for anti-affinity and affinity |
+----------------------+-----------------+-------------------+---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
**boot**
+-----------------+-----------------+-------------------+---------------+---------------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+=================+=================+===================+===============+===========================+
| type | M | 1 | int | Startup mode |
| | | | | |
| | | | | 1. boot from the volume |
| | | | | |
| | | | | 2. boot from image |
+-----------------+-----------------+-------------------+---------------+---------------------------+
| volumeId | O | 1 | string | Volume Id(type=1) |
+-----------------+-----------------+-------------------+---------------+---------------------------+
| imageId | O | 1 | String | ImageId?type=2? |
+-----------------+-----------------+-------------------+---------------+---------------------------+
**contextArray**
+-----------------+-----------------+-------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+=================+=================+===================+===============+===========================================================================================================================================================+
| fileName | M | 1 | String | Injection file name |
+-----------------+-----------------+-------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
| fileData | M | 1 | string | Injection file content (injection file content inside the <mac>$MAC\_1</mac> $MAC\_1 need to be replaced by the MAC address, of which 1 is NIC index. ) |
+-----------------+-----------------+-------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
**volumeArray**
+-----------------+-----------------+-------------------+---------------+-------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+=================+=================+===================+===============+===================+
| volumeId | M | 1 | String | Volume Id |
+-----------------+-----------------+-------------------+---------------+-------------------+
**nicArray**
+-----------------+-----------------+-------------------+---------------+-------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+=================+=================+===================+===============+===================+
| portId | M | 1 | String | Port Id |
+-----------------+-----------------+-------------------+---------------+-------------------+
**metadata**
+-----------------+-----------------+-------------------+---------------+-------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+=================+=================+===================+===============+===================+
| keyName | M | 1 | | String | Keythe namevalue of three kinds of normal/direct/macvtap |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
| value **securityGroups** | M **O** | **1** | **string** | **List stringof security group names.** | value |
+----------------------+-----------------+-------------------+---------------+-----------------------------------------------------+
Create Server
::
Request
{
"tenant": "tenant1",
"name": "vm1",
"availabilityZone": "az1",
"flavorName": "vm_large",
"boot": {
"type": 1,
" volumeName": "volume1"
},
"flavorId": "vm_large_134213",
"contextArray": [{
"fileName": "test.yaml",
"fileData": "…."
}],
"volumeArray": [{
"volumeName": "vol1",
}],
"nicArray": [{
"portId": "port_a"
}],
"metada": [{
"keyName": "foo",
"value": "foo value"
}],
"userdata": "abcdedf"
}
7.1.2.
**Response**
>>>>>>>>>>>>>>>>>>>
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| **Parameter** | **Qualifier** | **Cardinality** | **Content** | **Description** |
+======================+=================+===================+======================================+========================================================================================================================================================================================+
| vimId | M | 1 | String | vim id |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| vimName | O | 1 | string | vim name |
+-------------------+-----------------+-------------------+---------------------------+--------------------------------------------------------+
| cloud-owner | M | 1 | String | cloud owner |
+-------------------+-----------------+-------------------+---------------------------+--------------------------------------------------------+
| cloud-region-id | M | 1 | string | cloud region id |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| returnCode | | 1 | int | 0: Already exist 1: Newly created |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| id | M | 1 | string | server id |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| name | | 1 | string | server name |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| tenantId | M | 1 | String | Tenant UUID |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| boot | M | 1 | String | Start parameters |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| nicArray | O | 1..n | List of nic | List of nic |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| volumeArray | O | 1..n | list of volume | list of volume |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| availabilityZone | O | 1 | string | Usable field |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| flavorId | M | 1 | String | server Flavor |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| metadata | O | 1 | List of metadata | Metadata key and value pairs. The maximum size of the metadata key and value is 255 bytes each. |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| **securityGroups** | **O** | **1** | **List of name of security group** | **One or more security groups. Specify the name of the security group in the name attribute. If you omit this attribute, the API creates the server in the default security group.** |
| | | | | |
| | | | | **[TBD]** |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| **serverGroup** | **O** | **1** | **string** | the ServerGroup for anti-affinity and affinity |
| | | | | |
| | | | | [TBD] |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| **status** | **M** | **1** | **string** | Server status, 0:INACTIVE,1:ACTIVE,2:ERROR |
+----------------------+-----------------+-------------------+--------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
202: accepted
500: failed
::
{
"id": "3c9eebdbbfd345658269340b9ea6fb73",
"name": "vm1",
"returnCode": 1,
} |