diff options
-rw-r--r-- | docs/APPC LCM API Guide/APPC LCM API Guide.rst | 125 |
1 files changed, 92 insertions, 33 deletions
diff --git a/docs/APPC LCM API Guide/APPC LCM API Guide.rst b/docs/APPC LCM API Guide/APPC LCM API Guide.rst index 92a5d09d8..83427f95b 100644 --- a/docs/APPC LCM API Guide/APPC LCM API Guide.rst +++ b/docs/APPC LCM API Guide/APPC LCM API Guide.rst @@ -1,6 +1,6 @@ .. ============LICENSE_START========================================== .. =================================================================== -.. Copyright © 2017 AT&T Intellectual Property. All rights reserved. +.. Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved. .. =================================================================== .. Licensed under the Creative Commons License, Attribution 4.0 Intl. (the "License"); .. you may not use this documentation except in compliance with the License. @@ -235,9 +235,9 @@ Table 2 LCM Request Fields +---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+ | payload | An action-specific open-format field. | No | | | | | -| | The payload can be any valid JSON string value. JSON escape characters need to be added when an inner JSON string is included within the payload, for example: ``"{\\"vnf-host-ip-address\\": \\"<VNF-HOST-IP-ADDRESS>\\"}"``. | | -| | | | +| | The payload can be any valid JSON string value. JSON escape characters need to be added when an inner JSON string is included within the payload, for example: ``"{\\" vnf -host- ip | | | | | | +| | -address\\": \\"<VNF-HOST-IP-ADDRESS>\\"}"``. | | | | | | | | The payload is typically used to provide parametric data associated with the command, such as a list of configuration parameters. | | | | | | @@ -570,6 +570,8 @@ Commands, or actions, may be currently supported on all VNF types or a limited s +------------------------+-----------+------------------+----------------+----------+------------------------------------------------------------+ | ConfigRestore | Yes | | | | Chef and Ansible only (requires self-service onboarding) | +------------------------+-----------+------------------+----------------+----------+------------------------------------------------------------+ +| ConfigScaleOut | Yes | | | | Any (requires self-service onboarding) | ++------------------------+-----------+------------------+----------------+----------+------------------------------------------------------------+ | DetachVolume | | | | Yes | Any (uses OpenStack command) | +------------------------+-----------+------------------+----------------+----------+------------------------------------------------------------+ | Evacuate | | | | Yes | Any (uses OpenStack command) | @@ -1056,6 +1058,63 @@ ConfigRestore Response The ConfigRestore response returns an indication of success or failure of the request. +ConfigScaleOut +-------------- + +The ConfigScaleOut command is used to apply any actions on a VNF as part of a ScaleOut flow. Actions could include updating the VNF configuration or running a set of other tasks. + +The ConfigScaleOut action can have multiple APPC templates associated with it. APPC retrieves the VfModuleModelName from A&AI (model.model-vers.model-name), which is used as the unique identifier to select the correct APPC template. +APPC creates or updates VNFC records in A&AI for the newly instantiated VM’s. The orchestration-status of the VNFC’s is set to CONFIGURED. + +This action is supported via the Netconf (limited to configuration changes), Chef, and Ansible protocols. + +| + ++------------------------------+------------------------------------------------------------------------------------------+ +| **Target URL** | /restconf /operations/ appc-provider-lcm: config-scale-out | ++------------------------------+------------------------------------------------------------------------------------------+ +| **Action** | ConfigScaleOut | ++------------------------------+------------------------------------------------------------------------------------------+ +| **Action-Identifiers** | Vnf-id | ++------------------------------+------------------------------------------------------------------------------------------+ +| **Payload Parameters** | See below | ++------------------------------+------------------------------------------------------------------------------------------+ +| **Revision History** | New in Beijing | ++------------------------------+------------------------------------------------------------------------------------------+ + +| + ++---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+---------------------------------------------+ +| **Payload Parameter** | **Description** | **Required?** | **Example** | ++=================================+==================================================================================================================================================================+=====================+=============================================+ +| request-parameters | vnf-host-ip-address: optional if Netconf or other direct interface to the VNF. If not provided, the vnf-host-ip-address will be obtained from A&AI. | No | "payload": | +| +------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+ "{\"request-parameters \": | +| | vf-module-id: used to determine the A&AI VM inventory associated with ConfigScaleOut. | Yes | { | +| +------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+ \"vnf-host-ip-address\": | +| | controller-template-id: optional. This is a unique identifier that will identify the template associated with the ConfigScaleOut. | | \”value\”, | +| | Will be needed if A&AI does not contain the template identifier. | No | \”vf-module-id\”: \”value\”, | ++---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+ \”controller-template-id\”: | +| configuration-parameters | A set of instance specific configuration parameters should be specified. If provided, APP-C replaces variables in the configuration template with the | No | \”value\” | +| | values supplied. | | } | +| | | | | +| | | | \"configuration-parameters\": | +| | | | {\"<CONFIG- PARAMS>\"} | +| | | | | ++---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+---------------------------------------------+ + +ConfigScaleOut Response +^^^^^^^^^^^^^^^^^^^^^^^ + +**Success:** + + - A successful ConfigScaleOut returns a success status code 400 when completed. + +**Failure:** + + - A failed ConfigScaleOut returns a failure code 401 and the failure message. + - If the ConfigScaleOut is successfully performed on the VNF but there is a failure to update A&AI inventory, an intermediate failure message with failure code 501 is returned prior to the final 400 success message. + + DetachVolume ------------ @@ -1288,21 +1347,21 @@ A failed Migrate action returns a failure and the failure messages in the respon Payload Parameters -+---------------------+-------------------------------------------------------------------------+---------------------+------------------------------------+ -| **Parameter** | **Description** | **Required?** | **Example** | -+=====================+=========================================================================+=====================+====================================+ -| vm-id | The unique identifier (UUID) of | Yes | | -| | the resource. For backwards- compatibility, this can be the self- | | | -| | link URL of the VM. | | "payload": | -| | | | "{\\"vm-id\": \\"<VM-ID>\\", | -| | | | \\"identity-url\\": | -| | | | \\"<IDENTITY-URL>\\", | -+---------------------+-------------------------------------------------------------------------+---------------------+ \\"tenant-id\\": \\"<TENANT- | -| identity- url | The identity url used to access the resource | No | ID>\\"}" | -| | | | | -+---------------------+-------------------------------------------------------------------------+---------------------+ | -| tenant-id | The id of the provider tenant that owns the resource | No | | -+---------------------+-------------------------------------------------------------------------+---------------------+------------------------------------+ ++---------------------+-------------------------------------------------------------------------+---------------------+----------------------------------------+ +| **Parameter** | **Description** | **Required?** | **Example** | ++=====================+=========================================================================+=====================+========================================+ +| vm-id | The unique identifier (UUID) of | Yes | | +| | the resource. For backwards- compatibility, this can be the self- | | | +| | link URL of the VM. | | "payload": | +| | | | "{\\"vm-id\": \\"<VM-ID>\\", | +| | | | \\"identity-url\\": | +| | | | \\"<IDENTITY-URL>\\", | ++---------------------+-------------------------------------------------------------------------+---------------------+ \\"tenant-id\\": \\"<TENANT- | +| identity- url | The identity url used to access the resource | No | ID>\\"}" | +| | | | | ++---------------------+-------------------------------------------------------------------------+---------------------+ | +| tenant-id | The id of the provider tenant that owns the resource | No | | ++---------------------+-------------------------------------------------------------------------+---------------------+----------------------------------------+ QuiesceTraffic @@ -1496,21 +1555,21 @@ Note: Snapshot is not reliable unless the VM is in a stopped, paused, or quiesce Payload Parameters -+---------------------+-------------------------------------------------------------------------+---------------------+------------------------------------+ -| **Parameter** | **Description** | **Required?** | **Example** | -+=====================+=========================================================================+=====================+====================================+ -| vm-id | The unique identifier (UUID) of | Yes | | -| | the resource. For backwards- compatibility, this can be the self- | | "payload": | -| | link URL of the VM. | | "{\\"vm-id\": \\"<VM-ID> | -| | | | \\", | -| | | | \\"identity-url\\": | -| | | | \\"<IDENTITY-URL>\\", | -+---------------------+-------------------------------------------------------------------------+---------------------+ \\"tenant-id\\": \\"<TENANT- | -| identity- url | The identity url used to access the resource | No | ID>\\"}" | -| | | | | -+---------------------+-------------------------------------------------------------------------+---------------------+ | -| tenant-id | The id of the provider tenant that owns the resource | No | | -+---------------------+-------------------------------------------------------------------------+---------------------+------------------------------------+ ++---------------------+-------------------------------------------------------------------------+---------------------+----------------------------------------+ +| **Parameter** | **Description** | **Required?** | **Example** | ++=====================+=========================================================================+=====================+========================================+ +| vm-id | The unique identifier (UUID) of | Yes | | +| | the resource. For backwards- compatibility, this can be the self- | | "payload": | +| | link URL of the VM. | | "{\\"vm-id\": \\"<VM-ID> | +| | | | \\", | +| | | | \\"identity-url\\": | +| | | | \\"<IDENTITY-URL>\\", | ++---------------------+-------------------------------------------------------------------------+---------------------+ \\"tenant-id\\": \\"<TENANT- | +| identity- url | The identity url used to access the resource | No | ID>\\"}" | +| | | | | ++---------------------+-------------------------------------------------------------------------+---------------------+ | +| tenant-id | The id of the provider tenant that owns the resource | No | | ++---------------------+-------------------------------------------------------------------------+---------------------+----------------------------------------+ Snapshot Response ^^^^^^^^^^^^^^^^^ |