Add API documentation for vnflcm APIs
Added documentation for following vnflcm APIs:- 1. Create Vnf instance API 2. Instantiate Vnf API 3. Heal Vnf API 4. Terminate Vnf API 5. List Vnf API 6. Show API 7. Delete API Change-Id: I4ca0d8a15ae422de0d04e3e5570e43ec841acac8 blueprint: bp/support-etsi-nfv-specs
This commit is contained in:
parent
428096a247
commit
12badc2455
@ -20,3 +20,4 @@ NFV Orchestration API v1.0
|
||||
.. include:: nsds.inc
|
||||
.. include:: nss.inc
|
||||
.. include:: vnf_packages.inc
|
||||
.. include:: vnflcm.inc
|
737
api-ref/source/v1/parameters_vnflcm.yaml
Normal file
737
api-ref/source/v1/parameters_vnflcm.yaml
Normal file
@ -0,0 +1,737 @@
|
||||
# variables in header
|
||||
|
||||
vnf_instance_id:
|
||||
description: |
|
||||
Identifier of the VNF instance.
|
||||
in: path
|
||||
required: true
|
||||
type: string
|
||||
|
||||
# variables in body
|
||||
cause:
|
||||
description: |
|
||||
Indicates the reason why a healing procedure is required.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
cp_config:
|
||||
description: |
|
||||
List of instance data that need to be configured on the CP instances
|
||||
created from the respective CPD.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
cp_instance_id:
|
||||
description: |
|
||||
Identifier of the external Connection Point instance to which this set of
|
||||
configuration parameters is requested to be applied.
|
||||
|
||||
Shall be present if this instance has already been created.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
cp_protocol_data:
|
||||
description: |
|
||||
Parameters for configuring the network protocols on the link port that
|
||||
connects the CP to a VL.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
cpd_id:
|
||||
description: |
|
||||
The identifier of the CPD in the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_cp_info:
|
||||
description: |
|
||||
Information about the external CPs exposed by the VNF instance.
|
||||
in: body
|
||||
required: true
|
||||
type: array
|
||||
ext_cp_info_cp_protocol_info:
|
||||
description: |
|
||||
Network protocol information for this CP.
|
||||
in: body
|
||||
required: true
|
||||
type: array
|
||||
ext_cp_info_cpd_id:
|
||||
description: |
|
||||
Identifier of the external CPD, VnfExtCpd, in the VNFD.
|
||||
An identifier that is unique for the respective type within a VNF
|
||||
instance, but that need not be globally unique. Representation: string of
|
||||
variable length.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_cp_info_ext_link_port_id:
|
||||
description: |
|
||||
Identifier of the "extLinkPortInfo" structure inside the "extVirtualLinkInfo"
|
||||
structure. Shall be present if the CP is associated to a link port.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
ext_cp_info_id:
|
||||
description: |
|
||||
Identifier of the external CP instance and the related information instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_cps:
|
||||
description: |
|
||||
External CPs of the VNF to be connected to this external VL.
|
||||
in: body
|
||||
required: true
|
||||
type: array
|
||||
ext_link_port_id:
|
||||
description: |
|
||||
Identifier of this link port as provided by the entity that has created the
|
||||
link port.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_link_port_resource_handle:
|
||||
description: |
|
||||
Reference to the virtualised resource realizing this link port.
|
||||
in: body
|
||||
required: true
|
||||
type: object
|
||||
ext_link_ports:
|
||||
description: |
|
||||
Externally provided link ports to be used to connect external connection
|
||||
points to this external VL. If this attribute is not present, the VNFM
|
||||
shall create the link ports on the external VL.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
ext_managed_virtual_link_data_id:
|
||||
description: |
|
||||
The identifier of the externally-managed internal VL instance. The
|
||||
identifier is assigned by the NFV-MANO entity that manages this
|
||||
VL instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_managed_virtual_link_data_resource_id:
|
||||
description: |
|
||||
The identifier of the resource in the scope of the VIM or the
|
||||
resource provider.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_managed_virtual_link_info:
|
||||
description: |
|
||||
Information about the externally-managed internal VLs of the VNF instance.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
ext_managed_virtual_link_info_id:
|
||||
description: |
|
||||
Identifier of the externally-managed internal VL and the related
|
||||
externally-managed VL information instance. The identifier is assigned
|
||||
by the NFV-MANO entity that manages this VL instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_managed_virtual_link_info_network_resource:
|
||||
description: |
|
||||
Reference to the VirtualNetwork resource.
|
||||
in: body
|
||||
required: true
|
||||
type: object
|
||||
ext_managed_virtual_link_info_vnf_virtual_link_desc_id:
|
||||
description: |
|
||||
Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_managed_virtual_links:
|
||||
description: |
|
||||
List of information about internal VLs that are managed by the NFVO.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
ext_virtual_link_info:
|
||||
description: |
|
||||
Information about the external VLs the VNF instance is connected to.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
ext_virtual_link_info_ext_link_ports:
|
||||
description: |
|
||||
Link ports of this VL.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
ext_virtual_link_info_ext_link_ports_cp_instance_id:
|
||||
description: |
|
||||
Identifier of the external CP of the VNF connected to this link port.
|
||||
There shall be at most one link port associated with any external
|
||||
connection point instance.
|
||||
The value refers to an "extCpInfo" item in the VnfInstance.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
ext_virtual_link_info_ext_link_ports_id:
|
||||
description: |
|
||||
Identifier of this link port as provided by the entity that
|
||||
has created the link port.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_virtual_link_info_id:
|
||||
description: |
|
||||
Identifier of the external VL and the related external VL information
|
||||
instance. The identifier is assigned by the NFV-MANO entity that manages
|
||||
this VL instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_virtual_links:
|
||||
description: |
|
||||
Information about external VLs to connect the VNF to.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
ext_virtual_links_id:
|
||||
description: |
|
||||
The identifier of the external VL instance. The identifier is assigned
|
||||
by the NFV-MANO entity that manages this VL instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ext_virtual_links_resource_id:
|
||||
description: |
|
||||
The identifier of the resource in the scope of the VIM or the
|
||||
resource provider.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
fixed_addresses:
|
||||
description: |
|
||||
Fixed addresses to assign (from the subnet defined by "subnetId"
|
||||
if provided).
|
||||
in: body
|
||||
required: true
|
||||
type: array
|
||||
flavour_id:
|
||||
description: |
|
||||
Identifier of the VNF deployment flavour to be instantiated.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
flavour_id_response:
|
||||
description: |
|
||||
Identifier of the VNF deployment flavour applied to this VNF instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
graceful_termination_timeout:
|
||||
description: |
|
||||
This attribute is only applicable in case of graceful termination.
|
||||
It defines the time to wait for the VNF to be taken out of service
|
||||
before shutting down the VNF and releasing the resources.
|
||||
|
||||
The unit is seconds.
|
||||
|
||||
If not given and the "terminationType" attribute is set to "GRACEFUL",
|
||||
it is expected that the VNFM waits for the successful taking out of
|
||||
service of the VNF, no matter how long it takes, before shutting down
|
||||
the VNF and releasing the resources.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
instantiated_vnf_info:
|
||||
description: |
|
||||
Information specific to an instantiated VNF instance. This attribute shall
|
||||
be present if the instantiateState attribute value is INSTANTIATED.
|
||||
in: body
|
||||
required: false
|
||||
type: object
|
||||
instantiation_level_id:
|
||||
description: |
|
||||
Identifier of the instantiation level of the deployment flavour to be
|
||||
instantiated. If not present, the default instantiation level as declared
|
||||
in the VNFD is instantiated.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
ip_address_type:
|
||||
description: |
|
||||
The type of the IP addresses. Permitted values: IPV4, IPV6.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
ip_addresses:
|
||||
description: |
|
||||
List of IP addresses to assign to the CP instance. Each entry represents
|
||||
IP address data for fixed or dynamic IP address assignment per subnet.
|
||||
|
||||
If this attribute is not present, no IP address shall be assigned.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
ip_addresses_cp_info:
|
||||
description: |
|
||||
Addresses assigned to the CP instance. Each entry represents IP
|
||||
addresses assigned by fixed or dynamic IP address assignment per
|
||||
subnet.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
ip_over_ethernet:
|
||||
description: |
|
||||
Network address data for IP over Ethernet to assign to the extCP instance.
|
||||
Shall be present if layerProtocol is equal to "IP_OVER_ETHERNET", and
|
||||
shall be absent otherwise.
|
||||
in: body
|
||||
required: false
|
||||
type: object
|
||||
ip_over_ethernet_cp_info:
|
||||
description: |
|
||||
IP addresses over Ethernet to assign to the extCP instance. Shall be
|
||||
present if layerProtocol is equal to "IP_OVER_ETHERNET", and shall
|
||||
be absent otherwise.
|
||||
in: body
|
||||
required: false
|
||||
type: object
|
||||
is_dynamic:
|
||||
description: |
|
||||
Indicates whether this set of addresses was assigned dynamically (true)
|
||||
or based on address information provided as input from the API consumer
|
||||
(false). Shall be present if "addresses" is present and shall be absent
|
||||
otherwise.
|
||||
in: body
|
||||
required: false
|
||||
type: boolean
|
||||
layer_protocol:
|
||||
description: |
|
||||
Identifier of layer(s) and protocol(s).
|
||||
|
||||
Permitted values: IP_OVER_ETHERNET
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
layer_protocol_cp_info:
|
||||
description: |
|
||||
The identifier of layer(s) and protocol(s) associated to the network
|
||||
address information.
|
||||
|
||||
Permitted values: IP_OVER_ETHERNET
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
link_port_id:
|
||||
description: |
|
||||
Identifier of a pre-configured link port to which the external CP will
|
||||
be associated. See note.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
mac_address:
|
||||
description: |
|
||||
MAC address. If this attribute is not present, it shall be chosen by the
|
||||
VIM. At least one of "macAddress" or "ipAddresses" shall be present.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
mac_address_cp_info:
|
||||
description: |
|
||||
MAC address, if assigned.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
resource_handle:
|
||||
description: |
|
||||
Reference to the resource realizing this VL.
|
||||
in: body
|
||||
required: true
|
||||
type: object
|
||||
resource_handle_resource_id:
|
||||
description: |
|
||||
Identifier of the resource in the scope of the VIM or the resource
|
||||
provider.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
resource_handle_vim_level_resource_type:
|
||||
description: |
|
||||
Type of the resource in the scope of the VIM or the resource provider.
|
||||
provider.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
subnet_id:
|
||||
description: |
|
||||
Subnet defined by the identifier of the subnet resource in the VIM.
|
||||
In case this attribute is present, IP addresses from that subnet will be
|
||||
assigned; otherwise, IP addresses not bound to a subnet will be assigned.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
termination_type:
|
||||
description: |
|
||||
Indicates whether forceful or graceful termination is requested.
|
||||
Permitted values:
|
||||
|
||||
FORCEFUL: The VNFM will shut down the VNF and release the resources
|
||||
immediately after accepting the request.
|
||||
|
||||
GRACEFUL: The VNFM will first arrange to take the VNF out of service
|
||||
after accepting the request. Once the operation of taking the VNF out of
|
||||
service finishes (irrespective of whether it has succeeded or failed) or
|
||||
once the timer value specified in the "gracefulTerminationTimeout"
|
||||
attribute expires, the VNFM will shut down the VNF and release the
|
||||
resources.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vim_connection_info_access_info:
|
||||
description: |
|
||||
Authentication credentials for accessing the VIM, and other access-related
|
||||
information such as tenants or infrastructure resource groups (see note).
|
||||
The applicable keys are dependent on the content of vimType.
|
||||
|
||||
If the VimConnectionInfo structure is part of an HTTP response payload
|
||||
body, sensitive attributes that are children of this attributes
|
||||
(such as passwords) shall not be included.
|
||||
|
||||
If the VimConnectionInfo structure is part of an HTTP request payload
|
||||
body, sensitive attributes that are children of this attribute (such as
|
||||
passwords) shall be present if they have not been provisioned out of band.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vim_connection_info_id:
|
||||
description: |
|
||||
The identifier of the VIM Connection. This identifier is managed by
|
||||
the NFVO.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vim_connection_info_vim_id:
|
||||
description: |
|
||||
The identifier of the VIM instance. This identifier is managed by
|
||||
the NFVO.
|
||||
|
||||
Shall be present to address additional information about the VIM
|
||||
if such information has been configured into the VNFM by means outside
|
||||
the scope of the present document, and should be absent otherwise.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vim_connection_info_vim_type:
|
||||
description: |
|
||||
Discriminator for the different types of the VIM information.
|
||||
|
||||
The value of this attribute determines the structure of the
|
||||
"interfaceInfo" and "accessInfo" attributes, based on the type of the VIM.
|
||||
|
||||
The set of permitted values is expected to change over time as new
|
||||
types or versions of VIMs become available.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
virtual_storage_resource_info:
|
||||
description: |
|
||||
Information about the virtualised storage resources used as storage for
|
||||
the VNF instance.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
virtual_storage_resource_info_id:
|
||||
description: |
|
||||
Identifier of this VirtualStorageResourceInfo instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
virtual_storage_resource_info_storage_resource:
|
||||
description: |
|
||||
Reference to the VirtualStorage resource.
|
||||
in: body
|
||||
required: true
|
||||
type: object
|
||||
virtual_storage_resource_info_virtual_storage_desc_id:
|
||||
description: |
|
||||
Identifier of the VirtualStorageDesc in the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_additional_params:
|
||||
description: |
|
||||
Additional input parameters for the flavour change
|
||||
process, specific to the VNF being modified, as declared
|
||||
in the VNFD as part of "ChangeVnfFlavourOpConfig".
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_create_request_description:
|
||||
description: |
|
||||
Human-readable description of the VNF instance to be created.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnf_instance_create_request_name:
|
||||
description: |
|
||||
Human-readable name of the VNF instance to be created.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnf_instance_create_request_vnfd_id:
|
||||
description: |
|
||||
Identifier that identifies the VNFD which defines the VNF instance to be created.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_description:
|
||||
description: |
|
||||
Human-readable description of the VNF instance.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnf_instance_extensions:
|
||||
description: |
|
||||
description
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnf_instance_id_response:
|
||||
description: |
|
||||
Identifier of the VNF instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_instantiation_state:
|
||||
description: |
|
||||
The instantiation state of the VNF instance.
|
||||
|
||||
NOT_INSTANTIATED: The VNF instance is terminated or not instantiated.
|
||||
|
||||
INSTANTIATED: The VNF instance is instantiated.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_links:
|
||||
description: |
|
||||
Links to resources related to this resource.
|
||||
in: body
|
||||
required: true
|
||||
type: object
|
||||
vnf_instance_metadata:
|
||||
description: |
|
||||
Additional VNF-specific attributes that provide metadata describing
|
||||
the VNF instance. These attributes represent values that are stored
|
||||
persistently in the VnfInstance structure for consumption by functional
|
||||
blocks that invoke the VNF lifecycle management interface. They are not
|
||||
consumed by the VNFM, or the lifecycle management scripts.
|
||||
Modifying the values of these attributes has no effect on the VNF
|
||||
instance, it only affects the information represented in the VnfInstance
|
||||
structure.
|
||||
in: body
|
||||
required: false
|
||||
type: object
|
||||
vnf_instance_name:
|
||||
description: |
|
||||
Name of the VNF instance.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnf_instance_vim_connection_info:
|
||||
description: |
|
||||
Information about VIM connections to be used for managing the resources
|
||||
for the VNF instance, or refer to external / externally-managed virtual links.
|
||||
|
||||
This attribute shall only be supported and may be present if VNF-related
|
||||
resource management in direct mode is applicable.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
vnf_instance_vnf_product_name:
|
||||
description: |
|
||||
Name to identify the VNF Product. The value is copied from the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_vnf_provider:
|
||||
description: |
|
||||
Provider of the VNF and the VNFD. The value is copied from the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_vnf_software_version:
|
||||
description: |
|
||||
Software version of the VNF. The value is copied from the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_vnfd_id:
|
||||
description: |
|
||||
Identifier of the VNFD on which the VNF instance is based.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_instance_vnfd_version:
|
||||
description: |
|
||||
Identifies the version of the VNFD. The value is copied from the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_link_port_cp_instance_id:
|
||||
description: |
|
||||
When the link port is used for external connectivity by the VNF, this
|
||||
attribute represents the identifier associated with this link port.
|
||||
|
||||
When the link port is used for internal connectivity in the VNF, this
|
||||
attribute represents the VNFC CP to be connected to this link port.
|
||||
|
||||
Shall be present when the link port is used for external connectivity
|
||||
by the VNF.
|
||||
|
||||
May be present if used to reference a VNFC CP instance.
|
||||
There shall be at most one link port associated with any external
|
||||
connection point instance or internal connection point (i.e. VNFC CP)
|
||||
instance.
|
||||
|
||||
The value refers to an "extCpInfo" item in the VnfInstance or a
|
||||
"vnfcCpInfo" item of a "vnfcResouceInfo" item in the VnfInstance.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnf_link_port_id:
|
||||
description: |
|
||||
Identifier of this link port as provided by the entity that has created
|
||||
the link port.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_link_port_resource_handle:
|
||||
description: |
|
||||
Reference to the virtualised network resource realizing this link port.
|
||||
in: body
|
||||
required: true
|
||||
type: object
|
||||
vnf_link_ports:
|
||||
description: |
|
||||
Links ports of this VL.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
vnf_state:
|
||||
description: |
|
||||
State of the VNF instance.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnf_virtual_link_desc_id:
|
||||
description: |
|
||||
The identifier of the VLD in the VNFD for this VL.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_virtual_link_resource_info:
|
||||
description: |
|
||||
Information about the virtualised network
|
||||
resources used by the VLs of the VNF instance.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
vnf_virtual_link_resource_info_id:
|
||||
description: |
|
||||
Identifier of this VnfVirtualLinkResourceInfo instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnf_virtual_link_resource_info_network_resource:
|
||||
description: |
|
||||
Reference to the VirtualNetwork resource.
|
||||
in: body
|
||||
required: true
|
||||
type: object
|
||||
vnf_virtual_link_resource_info_vnf_virtual_link_desc_id:
|
||||
description: |
|
||||
Identifier of the VNF Virtual Link Descriptor (VLD) in the
|
||||
VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnfc_cp_info_cp_protocol_info:
|
||||
description: |
|
||||
Network protocol information for this CP.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
vnfc_cp_info_cpd_id:
|
||||
description: |
|
||||
Identifier of the VDU CPD, cpdId, in the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnfc_cp_info_id:
|
||||
description: |
|
||||
Identifier of this VNFC CP instance and the associated array entry.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnfc_cp_info_vnf_ext_cp_id:
|
||||
description: |
|
||||
When the VNFC CP is exposed as external CP of the VNF, the
|
||||
identifier of this external VNF CP.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnfc_cp_info_vnf_link_port_id:
|
||||
description: |
|
||||
Identifier of the "vnfLinkPorts" structure in the
|
||||
"VnfVirtualLinkResourceInfo" structure. Shall be present if the CP is
|
||||
associated to a link port.
|
||||
in: body
|
||||
required: false
|
||||
type: string
|
||||
vnfc_resource_info:
|
||||
description: |
|
||||
Information about the virtualised compute and storage resources used by
|
||||
the VNFCs of the VNF instance.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
vnfc_resource_info_compute_resource:
|
||||
description: |
|
||||
Reference to the VirtualCompute resource.
|
||||
in: body
|
||||
required: true
|
||||
type: object
|
||||
vnfc_resource_info_id:
|
||||
description: |
|
||||
Identifier of this VnfcResourceInfo instance.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnfc_resource_info_ids:
|
||||
description: |
|
||||
List of VNFC instances requiring a healing action.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
vnfc_resource_info_storage_resource_ids:
|
||||
description: |
|
||||
References to the VirtualStorage resources. The value refers to a
|
||||
VirtualStorageResourceInfo item in the VnfInstance.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
||||
vnfc_resource_info_vdu_id:
|
||||
description: |
|
||||
Reference to the applicable VDU in the VNFD.
|
||||
in: body
|
||||
required: true
|
||||
type: string
|
||||
vnfc_resource_info_vnfc_cp_info:
|
||||
description: |
|
||||
CPs of the VNFC instance.
|
||||
Shall be present when that particular CP
|
||||
of the VNFC instance is associated to an external CP of the VNF
|
||||
instance.
|
||||
May be present otherwise.
|
||||
in: body
|
||||
required: false
|
||||
type: array
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"vnfdId": "b1bb0ce7-ebca-4fa7-95ed-4840d70a1177",
|
||||
"vnfInstanceName": "Instance name",
|
||||
"vnfInstanceDescription": "Instance description"
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
{
|
||||
"id": "1502ef16-8f4a-41f3-8c77-5a0eeee9c8d7",
|
||||
"vnfInstanceName": "Instance name",
|
||||
"vnfInstanceDescription": "Instance description",
|
||||
"vnfdId": "b1bb0ce7-ebca-4fa7-95ed-4840d70a1177",
|
||||
"vnfProvider": "Company name",
|
||||
"vnfProductName": "Sample VNF",
|
||||
"vnfSoftwareVersion": "1.0",
|
||||
"vnfdVersion": "1.0",
|
||||
"instantiationState": "NOT_INSTANTIATED",
|
||||
"_links": {
|
||||
"self": {
|
||||
"href": "/vnflcm/v1/vnf_instances/1502ef16-8f4a-41f3-8c77-5a0eeee9c8d7"
|
||||
},
|
||||
"instantiate": {
|
||||
"href": "/vnflcm/v1/vnf_instances/1502ef16-8f4a-41f3-8c77-5a0eeee9c8d7/instantiate"
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cause": "healing",
|
||||
"vnfcInstanceId": ["c51c98dc-b918-4681-a9eb-4f32a57c4e08"]
|
||||
}
|
@ -0,0 +1,68 @@
|
||||
{
|
||||
"flavourId": "simple",
|
||||
"extVirtualLinks": [
|
||||
{
|
||||
"id": "ext-vl-uuid-VL1"
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f",
|
||||
"extCps": [
|
||||
{
|
||||
"cpdId": "CP2",
|
||||
"cpConfig": [
|
||||
{
|
||||
"linkPortId": "1d868d02-ecd4-4402-8e6b-54e77ebdcc28",
|
||||
"cpProtocolData": [
|
||||
{
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"extLinkPorts": [
|
||||
{
|
||||
"id": "1d868d02-ecd4-4402-8e6b-54e77ebdcc28",
|
||||
"resourceHandle": {
|
||||
"resourceId": "109f5049-b51e-409a-9a99-d740ba5f3acb",
|
||||
"vimLevelResourceType": "LINKPORT"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ext-vl-uuid-VL1",
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f",
|
||||
"extCps": [
|
||||
{
|
||||
"cpdId": "CP1",
|
||||
"cpConfig": [
|
||||
{
|
||||
"cpProtocolData": [
|
||||
{
|
||||
"layerProtocol": "IP_OVER_ETHERNET",
|
||||
"ipOverEthernet": {
|
||||
"macAddress": "fa:16:3e:22:17:05"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"extManagedVirtualLinks": [
|
||||
{
|
||||
"id": "extMngVLnk-uuid_VL3",
|
||||
"vnfVirtualLinkDescId": "VL4",
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f"
|
||||
}
|
||||
],
|
||||
"vimConnectionInfo": [
|
||||
{
|
||||
"id": "8a3adb69-0784-43c7-833e-aab0b6ab4470",
|
||||
"vimId": "c576eb55-5bec-4881-a573-5b0f3a05c370",
|
||||
"vimType": "openstack"
|
||||
}
|
||||
]
|
||||
}
|
175
api-ref/source/v1/samples/vnflcm/list-vnf-instance-response.json
Normal file
175
api-ref/source/v1/samples/vnflcm/list-vnf-instance-response.json
Normal file
@ -0,0 +1,175 @@
|
||||
[
|
||||
{
|
||||
"id": "8941a2ce-cf50-4d5f-8907-71a937902a50",
|
||||
"vnfInstanceName": "Instance name",
|
||||
"vnfInstanceDescription": "Instance description",
|
||||
"vnfdId": "b1bb0ce7-ebca-4fa7-95ed-4840d70a1177",
|
||||
"vnfProvider": "Company Name",
|
||||
"vnfProductName": "Sample VNF",
|
||||
"vnfSoftwareVersion": "1.0",
|
||||
"vnfdVersion": "1.0",
|
||||
"vimConnectionInfo": [
|
||||
{
|
||||
"vimType": "openstack",
|
||||
"vimId": "7dc3c839-bf15-45ac-8dff-fc5b95c2940e",
|
||||
"id": "8a3adb69-0784-43c7-833e-aab0b6ab4470"
|
||||
}
|
||||
],
|
||||
"instantiationState": "INSTANTIATED",
|
||||
"instantiatedVnfInfo": {
|
||||
"flavourId": "simple",
|
||||
"vnfState": "STARTED",
|
||||
"extCpInfo": [
|
||||
{
|
||||
"cpProtocolInfo": [
|
||||
{
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
],
|
||||
"cpdId": "CP2",
|
||||
"id": "c7943daf-c702-41a1-b215-d5d40130d047"
|
||||
},
|
||||
{
|
||||
"cpProtocolInfo": [
|
||||
{
|
||||
"ipOverEthernet": {
|
||||
"macAddress": "fa:16:3e:22:17:05"
|
||||
},
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
],
|
||||
"cpdId": "CP1",
|
||||
"id": "f5c68d94-5736-4e38-ade5-c9462514f8b9"
|
||||
}
|
||||
],
|
||||
"extVirtualLinkInfo": [
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f"
|
||||
},
|
||||
"id": "ext-vl-uuid-VL1",
|
||||
"extLinkPorts": [
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "109f5049-b51e-409a-9a99-d740ba5f3acb",
|
||||
"vimLevelResourceType": "LINKPORT"
|
||||
},
|
||||
"cpInstanceId": "f5c68d94-5736-4e38-ade5-c9462514f8b9",
|
||||
"id": "1d868d02-ecd4-4402-8e6b-54e77ebdcc28"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"extManagedVirtualLinkInfo": [
|
||||
{
|
||||
"vnfVirtualLinkDescId": "VL4",
|
||||
"networkResource": {
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f",
|
||||
"vimLevelResourceType": "OS::Neutron::Net"
|
||||
},
|
||||
"id": "extMngVLnk-uuid_VL3"
|
||||
}
|
||||
],
|
||||
"vnfcResourceInfo": [
|
||||
{
|
||||
"storageResourceIds": [],
|
||||
"computeResource": {
|
||||
"resourceId": "241ac10d-e522-4909-9379-c78135b960a2",
|
||||
"vimLevelResourceType": "OS::Nova::Server"
|
||||
},
|
||||
"vduId": "VDU1",
|
||||
"vnfcCpInfo": [
|
||||
{
|
||||
"cpProtocolInfo": [
|
||||
{
|
||||
"ipOverEthernet": {
|
||||
"macAddress": "fa:16:3e:22:17:05"
|
||||
},
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
],
|
||||
"vnfLinkPortId": "5c54a7f2-f738-49ee-9672-ce01486b9548",
|
||||
"cpdId": "CP1",
|
||||
"id": "4f879c91-1991-43a3-996e-90fefdb3de67"
|
||||
},
|
||||
{
|
||||
"cpProtocolInfo": [
|
||||
{
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
],
|
||||
"vnfLinkPortId": "9fc28e3f-36d2-44d8-b481-bfc7d7a4be27",
|
||||
"cpdId": "CP2",
|
||||
"vnfExtCpId": "1d868d02-ecd4-4402-8e6b-54e77ebdcc28",
|
||||
"id": "4ee9714a-8ae2-49e7-b2b4-2c00ed928425"
|
||||
},
|
||||
{
|
||||
"vnfLinkPortId": "d7572a96-ef2a-423f-b21d-000c124b07d5",
|
||||
"id": "d8ef6c78-ee5e-4845-a20d-db112f23b4ef",
|
||||
"cpdId": "CP3"
|
||||
}
|
||||
],
|
||||
"id": "a8a9d5ed-4e33-40ac-b7d7-4540d053d6da"
|
||||
}
|
||||
],
|
||||
"vnfVirtualLinkResourceInfo": [
|
||||
{
|
||||
"networkResource": {
|
||||
"resourceId": "f28e578a-0368-4f1a-b439-2fa552a084ec",
|
||||
"vimLevelResourceType": "OS::Neutron::Net"
|
||||
},
|
||||
"vnfLinkPorts": [
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "c1719c85-b758-45e2-b6d3-98f0cbafe9f5",
|
||||
"vimLevelResourceType": "OS::Neutron::Port"
|
||||
},
|
||||
"cpInstanceId": "d8ef6c78-ee5e-4845-a20d-db112f23b4ef",
|
||||
"id": "d7572a96-ef2a-423f-b21d-000c124b07d5"
|
||||
}
|
||||
],
|
||||
"vnfVirtualLinkDescId": "VL3",
|
||||
"id": "791e0266-3c8e-4dda-83ec-c0d26d0968ec"
|
||||
},
|
||||
{
|
||||
"networkResource": {
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f",
|
||||
"vimLevelResourceType": "OS::Neutron::Net"
|
||||
},
|
||||
"vnfLinkPorts": [
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "1d868d02-ecd4-4402-8e6b-54e77ebdcc28",
|
||||
"vimLevelResourceType": "OS::Neutron::Port"
|
||||
},
|
||||
"cpInstanceId": "4ee9714a-8ae2-49e7-b2b4-2c00ed928425",
|
||||
"id": "9fc28e3f-36d2-44d8-b481-bfc7d7a4be27"
|
||||
},
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "0781c700-3f9c-4189-a688-582db8d1c853",
|
||||
"vimLevelResourceType": "OS::Neutron::Port"
|
||||
},
|
||||
"cpInstanceId": "4f879c91-1991-43a3-996e-90fefdb3de67",
|
||||
"id": "5c54a7f2-f738-49ee-9672-ce01486b9548"
|
||||
}
|
||||
],
|
||||
"vnfVirtualLinkDescId": "ext-vl-uuid-VL1",
|
||||
"id": "d94ff4b1-8148-476e-a8c3-b14c5b1f5270"
|
||||
}
|
||||
],
|
||||
"additionalParams": {}
|
||||
},
|
||||
"_links": {
|
||||
"self": {
|
||||
"href": "/vnflcm/v1/vnf_instances/8941a2ce-cf50-4d5f-8907-71a937902a50"
|
||||
},
|
||||
"terminate": {
|
||||
"href": "/vnflcm/v1/vnf_instances/8941a2ce-cf50-4d5f-8907-71a937902a50/terminate"
|
||||
},
|
||||
"heal": {
|
||||
"href": "/vnflcm/v1/vnf_instances/8941a2ce-cf50-4d5f-8907-71a937902a50/heal"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
173
api-ref/source/v1/samples/vnflcm/show-vnf-instance-response.json
Normal file
173
api-ref/source/v1/samples/vnflcm/show-vnf-instance-response.json
Normal file
@ -0,0 +1,173 @@
|
||||
{
|
||||
"id": "8941a2ce-cf50-4d5f-8907-71a937902a50",
|
||||
"vnfInstanceName": "Instance name",
|
||||
"vnfInstanceDescription": "Instance description",
|
||||
"vnfdId": "b1bb0ce7-ebca-4fa7-95ed-4840d70a1177",
|
||||
"vnfProvider": "Company Name",
|
||||
"vnfProductName": "Sample VNF",
|
||||
"vnfSoftwareVersion": "1.0",
|
||||
"vnfdVersion": "1.0",
|
||||
"vimConnectionInfo": [
|
||||
{
|
||||
"vimType": "openstack",
|
||||
"vimId": "7dc3c839-bf15-45ac-8dff-fc5b95c2940e",
|
||||
"id": "8a3adb69-0784-43c7-833e-aab0b6ab4470"
|
||||
}
|
||||
],
|
||||
"instantiationState": "INSTANTIATED",
|
||||
"instantiatedVnfInfo": {
|
||||
"flavourId": "simple",
|
||||
"vnfState": "STARTED",
|
||||
"extCpInfo": [
|
||||
{
|
||||
"cpProtocolInfo": [
|
||||
{
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
],
|
||||
"cpdId": "CP2",
|
||||
"id": "c7943daf-c702-41a1-b215-d5d40130d047"
|
||||
},
|
||||
{
|
||||
"cpProtocolInfo": [
|
||||
{
|
||||
"ipOverEthernet": {
|
||||
"macAddress": "fa:16:3e:22:17:05"
|
||||
},
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
],
|
||||
"cpdId": "CP1",
|
||||
"id": "f5c68d94-5736-4e38-ade5-c9462514f8b9"
|
||||
}
|
||||
],
|
||||
"extVirtualLinkInfo": [
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f"
|
||||
},
|
||||
"id": "ext-vl-uuid-VL1",
|
||||
"extLinkPorts": [
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "109f5049-b51e-409a-9a99-d740ba5f3acb",
|
||||
"vimLevelResourceType": "LINKPORT"
|
||||
},
|
||||
"cpInstanceId": "f5c68d94-5736-4e38-ade5-c9462514f8b9",
|
||||
"id": "1d868d02-ecd4-4402-8e6b-54e77ebdcc28"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"extManagedVirtualLinkInfo": [
|
||||
{
|
||||
"vnfVirtualLinkDescId": "VL4",
|
||||
"networkResource": {
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f",
|
||||
"vimLevelResourceType": "OS::Neutron::Net"
|
||||
},
|
||||
"id": "extMngVLnk-uuid_VL3"
|
||||
}
|
||||
],
|
||||
"vnfcResourceInfo": [
|
||||
{
|
||||
"storageResourceIds": [],
|
||||
"computeResource": {
|
||||
"resourceId": "241ac10d-e522-4909-9379-c78135b960a2",
|
||||
"vimLevelResourceType": "OS::Nova::Server"
|
||||
},
|
||||
"vduId": "VDU1",
|
||||
"vnfcCpInfo": [
|
||||
{
|
||||
"cpProtocolInfo": [
|
||||
{
|
||||
"ipOverEthernet": {
|
||||
"macAddress": "fa:16:3e:22:17:05"
|
||||
},
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
],
|
||||
"vnfLinkPortId": "5c54a7f2-f738-49ee-9672-ce01486b9548",
|
||||
"cpdId": "CP1",
|
||||
"id": "4f879c91-1991-43a3-996e-90fefdb3de67"
|
||||
},
|
||||
{
|
||||
"cpProtocolInfo": [
|
||||
{
|
||||
"layerProtocol": "IP_OVER_ETHERNET"
|
||||
}
|
||||
],
|
||||
"vnfLinkPortId": "9fc28e3f-36d2-44d8-b481-bfc7d7a4be27",
|
||||
"cpdId": "CP2",
|
||||
"vnfExtCpId": "1d868d02-ecd4-4402-8e6b-54e77ebdcc28",
|
||||
"id": "4ee9714a-8ae2-49e7-b2b4-2c00ed928425"
|
||||
},
|
||||
{
|
||||
"vnfLinkPortId": "d7572a96-ef2a-423f-b21d-000c124b07d5",
|
||||
"id": "d8ef6c78-ee5e-4845-a20d-db112f23b4ef",
|
||||
"cpdId": "CP3"
|
||||
}
|
||||
],
|
||||
"id": "a8a9d5ed-4e33-40ac-b7d7-4540d053d6da"
|
||||
}
|
||||
],
|
||||
"vnfVirtualLinkResourceInfo": [
|
||||
{
|
||||
"networkResource": {
|
||||
"resourceId": "f28e578a-0368-4f1a-b439-2fa552a084ec",
|
||||
"vimLevelResourceType": "OS::Neutron::Net"
|
||||
},
|
||||
"vnfLinkPorts": [
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "c1719c85-b758-45e2-b6d3-98f0cbafe9f5",
|
||||
"vimLevelResourceType": "OS::Neutron::Port"
|
||||
},
|
||||
"cpInstanceId": "d8ef6c78-ee5e-4845-a20d-db112f23b4ef",
|
||||
"id": "d7572a96-ef2a-423f-b21d-000c124b07d5"
|
||||
}
|
||||
],
|
||||
"vnfVirtualLinkDescId": "VL3",
|
||||
"id": "791e0266-3c8e-4dda-83ec-c0d26d0968ec"
|
||||
},
|
||||
{
|
||||
"networkResource": {
|
||||
"resourceId": "991a1e07-e8a2-4e1b-b77d-3937177a5b7f",
|
||||
"vimLevelResourceType": "OS::Neutron::Net"
|
||||
},
|
||||
"vnfLinkPorts": [
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "1d868d02-ecd4-4402-8e6b-54e77ebdcc28",
|
||||
"vimLevelResourceType": "OS::Neutron::Port"
|
||||
},
|
||||
"cpInstanceId": "4ee9714a-8ae2-49e7-b2b4-2c00ed928425",
|
||||
"id": "9fc28e3f-36d2-44d8-b481-bfc7d7a4be27"
|
||||
},
|
||||
{
|
||||
"resourceHandle": {
|
||||
"resourceId": "0781c700-3f9c-4189-a688-582db8d1c853",
|
||||
"vimLevelResourceType": "OS::Neutron::Port"
|
||||
},
|
||||
"cpInstanceId": "4f879c91-1991-43a3-996e-90fefdb3de67",
|
||||
"id": "5c54a7f2-f738-49ee-9672-ce01486b9548"
|
||||
}
|
||||
],
|
||||
"vnfVirtualLinkDescId": "ext-vl-uuid-VL1",
|
||||
"id": "d94ff4b1-8148-476e-a8c3-b14c5b1f5270"
|
||||
}
|
||||
],
|
||||
"additionalParams": {}
|
||||
},
|
||||
"_links": {
|
||||
"self": {
|
||||
"href": "/vnflcm/v1/vnf_instances/8941a2ce-cf50-4d5f-8907-71a937902a50"
|
||||
},
|
||||
"terminate": {
|
||||
"href": "/vnflcm/v1/vnf_instances/8941a2ce-cf50-4d5f-8907-71a937902a50/terminate"
|
||||
},
|
||||
"heal": {
|
||||
"href": "/vnflcm/v1/vnf_instances/8941a2ce-cf50-4d5f-8907-71a937902a50/heal"
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
{
|
||||
"terminationType": "GRACEFUL",
|
||||
"gracefulTerminationTimeout": 10
|
||||
}
|
527
api-ref/source/v1/vnflcm.inc
Normal file
527
api-ref/source/v1/vnflcm.inc
Normal file
@ -0,0 +1,527 @@
|
||||
.. -*- rst -*-
|
||||
|
||||
=====================================================================
|
||||
Virtualized Network Function Lifecycle Management Interface (VNF LCM)
|
||||
=====================================================================
|
||||
|
||||
This interface manages the VNF lifecycle management operations of VNF instances.
|
||||
|
||||
This interface allows the NFVO to invoke VNF lifecycle management operations
|
||||
of VNF instances towards the VNFM.
|
||||
|
||||
Creates a new VNF instance resource
|
||||
===================================
|
||||
|
||||
.. rest_method:: POST /vnflcm/v1/vnf_instances
|
||||
|
||||
The POST method creates a new VNF instance resource.
|
||||
|
||||
As the result of successfully executing this method, a new Individual VNF
|
||||
instance resource shall have been created, and the value of the
|
||||
instantiationState attribute in the representation of that resource shall be
|
||||
NOT_INSTANTIATED.
|
||||
|
||||
Response Codes
|
||||
--------------
|
||||
|
||||
.. rest_status_code:: success status.yaml
|
||||
|
||||
- 201
|
||||
|
||||
.. rest_status_code:: error status.yaml
|
||||
|
||||
- 400
|
||||
- 401
|
||||
- 403
|
||||
|
||||
Request Parameters
|
||||
------------------
|
||||
|
||||
.. rest_parameters:: parameters_vnflcm.yaml
|
||||
|
||||
- vnfdId: vnf_instance_create_request_vnfd_id
|
||||
- vnfInstanceName: vnf_instance_create_request_name
|
||||
- vnfInstanceDescription: vnf_instance_create_request_description
|
||||
|
||||
Request Example
|
||||
---------------
|
||||
|
||||
.. literalinclude:: samples/vnflcm/create-vnf-instance-request.json
|
||||
:language: javascript
|
||||
|
||||
Response Parameters
|
||||
-------------------
|
||||
|
||||
.. rest_parameters:: parameters_vnflcm.yaml
|
||||
|
||||
- id: vnf_instance_id_response
|
||||
- vnfInstanceName: vnf_instance_name
|
||||
- vnfInstanceDescription: vnf_instance_description
|
||||
- vnfdId: vnf_instance_vnfd_id
|
||||
- vnfProvider: vnf_instance_vnf_provider
|
||||
- vnfProductName: vnf_instance_vnf_product_name
|
||||
- vnfSoftwareVersion: vnf_instance_vnf_software_version
|
||||
- vnfdVersion: vnf_instance_vnfd_version
|
||||
- instantiationState: vnf_instance_instantiation_state
|
||||
- _links: vnf_instance_links
|
||||
|
||||
Response Example
|
||||
----------------
|
||||
|
||||
.. literalinclude:: samples/vnflcm/create-vnf-instance-response.json
|
||||
:language: javascript
|
||||
|
||||
Instantiate a VNF instance
|
||||
==========================
|
||||
|
||||
.. rest_method:: POST /vnflcm/v1/vnf_instances/{vnfInstanceId}/instantiate
|
||||
|
||||
The POST method instantiates a VNF instance.
|
||||
|
||||
Once the VNFM has successfully completed the underlying VNF LCM operation
|
||||
occurrence, it shall set the instantiationState attribute to the value
|
||||
INSTANTIATED and the vnfState attribute to the value STARTED in the
|
||||
representation of the Individual VNF instance resource.
|
||||
|
||||
Response Codes
|
||||
--------------
|
||||
|
||||
.. rest_status_code:: success status.yaml
|
||||
|
||||
- 202
|
||||
|
||||
.. rest_status_code:: error status.yaml
|
||||
|
||||
- 400
|
||||
- 401
|
||||
- 403
|
||||
- 404
|
||||
- 409
|
||||
|
||||
Request Parameters
|
||||
------------------
|
||||
|
||||
.. rest_parameters:: parameters_vnflcm.yaml
|
||||
|
||||
- vnfInstanceId: vnf_instance_id
|
||||
- flavourId: flavour_id
|
||||
- instantiationLevelId: instantiation_level_id
|
||||
- extVirtualLinks: ext_virtual_links
|
||||
- id: ext_virtual_links_id
|
||||
- resourceId: ext_virtual_links_resource_id
|
||||
- extCps: ext_cps
|
||||
- cpdId: cpd_id
|
||||
- cpConfig: cp_config
|
||||
- cpInstanceId: cp_instance_id
|
||||
- linkPortId: link_port_id
|
||||
- cpProtocolData: cp_protocol_data
|
||||
- layerProtocol: layer_protocol
|
||||
- ipOverEthernet: ip_over_ethernet
|
||||
- macAddress: mac_address
|
||||
- ipAddresses: ip_addresses
|
||||
- type: ip_address_type
|
||||
- fixedAddresses: fixed_addresses
|
||||
- subnetId: subnet_id
|
||||
- extLinkPorts: ext_link_ports
|
||||
- id: ext_link_port_id
|
||||
- resourceHandle: ext_link_port_resource_handle
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- extManagedVirtualLinks: ext_managed_virtual_links
|
||||
- id: ext_managed_virtual_link_data_id
|
||||
- vnfVirtualLinkDescId: vnf_virtual_link_desc_id
|
||||
- resourceId: ext_managed_virtual_link_data_resource_id
|
||||
- vimConnectionInfo: vnf_instance_vim_connection_info
|
||||
- id: vim_connection_info_id
|
||||
- vimId: vim_connection_info_vim_id
|
||||
- vimType: vim_connection_info_vim_type
|
||||
- accessInfo: vim_connection_info_access_info
|
||||
- additionalParams: vnf_instance_additional_params
|
||||
|
||||
|
||||
Request Example
|
||||
---------------
|
||||
|
||||
.. literalinclude:: samples/vnflcm/instantiate-vnf-instance-request.json
|
||||
:language: javascript
|
||||
|
||||
Terminate a VNF instance
|
||||
========================
|
||||
|
||||
.. rest_method:: POST /vnflcm/v1/vnf_instances/{vnfInstanceId}/terminate
|
||||
|
||||
This task resource represents the "Terminate VNF" operation. The client can
|
||||
use this resource to terminate a VNF instance.
|
||||
|
||||
The POST method terminates a VNF instance.
|
||||
|
||||
Once the VNFM has successfully completed the underlying VNF LCM operation
|
||||
occurrence, it shall set the instantiationState attribute in the
|
||||
representation of the Individual VNF instance resource to the value
|
||||
NOT_INSTANTIATED.
|
||||
|
||||
Response Codes
|
||||
--------------
|
||||
|
||||
.. rest_status_code:: success status.yaml
|
||||
|
||||
- 202
|
||||
|
||||
.. rest_status_code:: error status.yaml
|
||||
|
||||
- 400
|
||||
- 401
|
||||
- 403
|
||||
- 404
|
||||
- 409
|
||||
|
||||
Request Parameters
|
||||
------------------
|
||||
|
||||
.. rest_parameters:: parameters_vnflcm.yaml
|
||||
|
||||
- vnfInstanceId: vnf_instance_id
|
||||
- terminationType: termination_type
|
||||
- gracefulTerminationTimeout: graceful_termination_timeout
|
||||
|
||||
|
||||
Request Example
|
||||
---------------
|
||||
|
||||
.. literalinclude:: samples/vnflcm/terminate-vnf-instance-request.json
|
||||
:language: javascript
|
||||
|
||||
Heal a VNF instance
|
||||
========================
|
||||
|
||||
.. rest_method:: POST /vnflcm/v1/vnf_instances/{vnfInstanceId}/heal
|
||||
|
||||
This task resource represents the "Heal VNF" operation. The client can use
|
||||
this resource to request healing a VNF instance.
|
||||
|
||||
The POST method requests to heal a VNF instance.
|
||||
|
||||
|
||||
|
||||
Response Codes
|
||||
--------------
|
||||
|
||||
.. rest_status_code:: success status.yaml
|
||||
|
||||
- 202
|
||||
|
||||
.. rest_status_code:: error status.yaml
|
||||
|
||||
- 400
|
||||
- 401
|
||||
- 403
|
||||
- 404
|
||||
- 409
|
||||
|
||||
Request Parameters
|
||||
------------------
|
||||
|
||||
.. rest_parameters:: parameters_vnflcm.yaml
|
||||
|
||||
- vnfInstanceId: vnf_instance_id
|
||||
- cause: cause
|
||||
- vnfcInstanceId: vnfc_resource_info_ids
|
||||
|
||||
|
||||
Request Example
|
||||
---------------
|
||||
|
||||
.. literalinclude:: samples/vnflcm/heal-vnf-instance-request.json
|
||||
:language: javascript
|
||||
|
||||
Delete a VNF instance
|
||||
=====================
|
||||
|
||||
.. rest_method:: DELETE /vnflcm/v1/vnf_instances/{vnfInstanceId}
|
||||
|
||||
This method deletes an "Individual VNF instance" resource.
|
||||
|
||||
As the result of successfully executing this method, the
|
||||
"Individual VNF instance" resource shall not exist any longer.
|
||||
|
||||
Response Codes
|
||||
--------------
|
||||
|
||||
.. rest_status_code:: success status.yaml
|
||||
|
||||
- 204
|
||||
|
||||
.. rest_status_code:: error status.yaml
|
||||
|
||||
- 400
|
||||
- 401
|
||||
- 403
|
||||
- 404
|
||||
- 409
|
||||
|
||||
Request Parameters
|
||||
------------------
|
||||
|
||||
.. rest_parameters:: parameters_vnflcm.yaml
|
||||
|
||||
- vnfInstanceId: vnf_instance_id
|
||||
|
||||
Show VNF Instance
|
||||
==================
|
||||
|
||||
.. rest_method:: GET /vnflcm/v1/vnf_instances/{vnfInstanceId}
|
||||
|
||||
Show information of given individual VNF instance.
|
||||
|
||||
The GET method retrieves information about a VNF instance by reading
|
||||
an "Individual VNF instance" resource.
|
||||
|
||||
Response Codes
|
||||
--------------
|
||||
|
||||
.. rest_status_code:: success status.yaml
|
||||
|
||||
- 200
|
||||
|
||||
.. rest_status_code:: error status.yaml
|
||||
|
||||
- 400
|
||||
- 401
|
||||
- 403
|
||||
|
||||
Request Parameters
|
||||
------------------
|
||||
|
||||
.. rest_parameters:: parameters_vnflcm.yaml
|
||||
|
||||
- vnfInstanceId: vnf_instance_id
|
||||
|
||||
Response Parameters
|
||||
-------------------
|
||||
|
||||
.. rest_parameters:: parameters_vnflcm.yaml
|
||||
|
||||
- id: vnf_instance_id
|
||||
- vnfInstanceName: vnf_instance_name
|
||||
- vnfInstanceDescription: vnf_instance_description
|
||||
- vnfdId: vnf_instance_vnfd_id
|
||||
- vnfProvider: vnf_instance_vnf_provider
|
||||
- vnfProductName: vnf_instance_vnf_product_name
|
||||
- vnfSoftwareVersion: vnf_instance_vnf_software_version
|
||||
- vnfdVersion: vnf_instance_vnfd_version
|
||||
- vimConnectionInfo: vnf_instance_vim_connection_info
|
||||
- id: vim_connection_info_id
|
||||
- vimId: vim_connection_info_vim_id
|
||||
- vimType: vim_connection_info_vim_type
|
||||
- accessInfo: vim_connection_info_access_info
|
||||
- instantiationState: vnf_instance_instantiation_state
|
||||
- instantiatedVnfInfo: instantiated_vnf_info
|
||||
- flavourId: flavour_id_response
|
||||
- vnfState: vnf_state
|
||||
- extCpInfo: ext_cp_info
|
||||
- id: ext_cp_info_id
|
||||
- cpdId: ext_cp_info_cpd_id
|
||||
- cpProtocolInfo: ext_cp_info_cp_protocol_info
|
||||
- layerProtocol: layer_protocol_cp_info
|
||||
- ipOverEthernet: ip_over_ethernet_cp_info
|
||||
- macAddress: mac_address_cp_info
|
||||
- ipAddresses: ip_addresses_cp_info
|
||||
- type: ip_address_type
|
||||
- addresses: fixed_addresses
|
||||
- isDynamic: is_dynamic
|
||||
- subnetId: subnet_id
|
||||
- extLinkPortId: ext_cp_info_ext_link_port_id
|
||||
- extVirtualLinkInfo: ext_virtual_link_info
|
||||
- id: ext_virtual_link_info_id
|
||||
- resourceHandle: resource_handle
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- extLinkPorts: ext_virtual_link_info_ext_link_ports
|
||||
- id: ext_virtual_link_info_ext_link_ports_id
|
||||
- resourceHandle: resource_handle
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- cpInstanceId: ext_virtual_link_info_ext_link_ports_cp_instance_id
|
||||
- extManagedVirtualLinkInfo: ext_managed_virtual_link_info
|
||||
- id: ext_managed_virtual_link_info_id
|
||||
- vnfVirtualLinkDescId: ext_managed_virtual_link_info_vnf_virtual_link_desc_id
|
||||
- networkResource: ext_managed_virtual_link_info_network_resource
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- vnfLinkPorts: vnf_link_ports
|
||||
- id: vnf_link_port_id
|
||||
- resourceHandle: vnf_link_port_resource_handle
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- cpInstanceId: vnf_link_port_cp_instance_id
|
||||
- vnfcResourceInfo: vnfc_resource_info
|
||||
- id: vnfc_resource_info_id
|
||||
- vduId: vnfc_resource_info_vdu_id
|
||||
- computeResource: vnfc_resource_info_compute_resource
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- storageResourceIds: vnfc_resource_info_storage_resource_ids
|
||||
- vnfcCpInfo: vnfc_resource_info_vnfc_cp_info
|
||||
- id: vnfc_cp_info_id
|
||||
- cpdId: vnfc_cp_info_cpd_id
|
||||
- vnfExtCpId: vnfc_cp_info_vnf_ext_cp_id
|
||||
- cpProtocolInfo: vnfc_cp_info_cp_protocol_info
|
||||
- layerProtocol: layer_protocol_cp_info
|
||||
- ipOverEthernet: ip_over_ethernet_cp_info
|
||||
- macAddress: mac_address_cp_info
|
||||
- ipAddresses: ip_addresses_cp_info
|
||||
- type: ip_address_type
|
||||
- addresses: fixed_addresses
|
||||
- isDynamic: is_dynamic
|
||||
- subnetId: subnet_id
|
||||
- vnfLinkPortId: vnfc_cp_info_vnf_link_port_id
|
||||
- vnfVirtualLinkResourceInfo: vnf_virtual_link_resource_info
|
||||
- id: vnf_virtual_link_resource_info_id
|
||||
- vnfVirtualLinkDescId: vnf_virtual_link_resource_info_vnf_virtual_link_desc_id
|
||||
- networkResource: vnf_virtual_link_resource_info_network_resource
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- vnfLinkPorts: vnf_link_ports
|
||||
- id: vnf_link_port_id
|
||||
- resourceHandle: vnf_link_port_resource_handle
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- cpInstanceId: vnf_link_port_cp_instance_id
|
||||
- virtualStorageResourceInfo: virtual_storage_resource_info
|
||||
- id: virtual_storage_resource_info_id
|
||||
- virtualStorageDescId: virtual_storage_resource_info_virtual_storage_desc_id
|
||||
- storageResource: virtual_storage_resource_info_storage_resource
|
||||
- resourceId: resource_handle_resource_id
|
||||
- vimLevelResourceType: resource_handle_vim_level_resource_type
|
||||
- _links: vnf_instance_links
|
||||
|
||||
Response Example
|
||||
----------------
|
||||
|
||||
.. literalinclude:: samples/vnflcm/show-vnf-instance-response.json
|
||||
:language: javascript
|
||||
|
||||
List VNF Instance
|
||||
==================
|
||||
|
||||
.. rest_method:: GET /vnflcm/v1/vnf_instances
|
||||
|
||||
The GET method queries information about multiple VNF instances.
|
||||
|
||||
Response Codes
|
||||
--------------
|
||||
|
||||
.. rest_status_code:: success status.yaml
|
||||
|
||||