Skip to content
VnfSnapshotsInfo.schema.json 92.8 KiB
Newer Older
		"description": "This type represents an \"Individual VNF snapshot\" resource. The \"id\" attributed is used by the NFVO to index and\nidentify the VNF snapshots information resources that are accessible via the NFVO. The identifier is still\ngenerated by the VNFM and copied into the present \"VnfSnapshotInfo\" representing the \"Individual VNF snapshot\"\nresource hold by the NFVO.\n",
		"type": "object",
		"required": ["id"],
		"properties": {
			"id": {
				"description": "An identifier with the intention of being globally unique.\n",
				"type": "string"
			},
			"vnfSnapshotPkgId": {
				"description": "An identifier with the intention of being globally unique.\n",
				"type": "string"
			},
			"vnfSnapshot": {
				"description": "This type represents a VNF Snapshot. It shall comply with the provisions defined in table 6.5.2.18-1.\n",
				"type": "object",
				"required": ["id", "vnfInstanceId", "triggeredAt", "createdAt", "vnfdId", "vnfInstance", "vnfcSnapshots"],
				"properties": {
					"id": {
						"description": "An identifier with the intention of being globally unique.\n",
						"type": "string"
					},
					"vnfInstanceId": {
						"description": "An identifier with the intention of being globally unique.\n",
						"type": "string"
					},
					"creationStartedAt": {
						"description": "Date-time stamp. Representation: String formatted according toas defined by the date-time production in IETF RFC 3339.\n",
						"format": "date-time"
					},
					"creationFinishedAt": {
						"description": "Date-time stamp. Representation: String formatted according toas defined by the date-time production in IETF RFC 3339.\n",
						"format": "date-time"
					},
					"vnfdId": {
						"description": "An identifier with the intention of being globally unique.\n",
						"type": "string"
					},
					"vnfInstance": {
						"description": "This type represents a VNF instance. It shall comply with the provisions defined in table 6.5.3.57-1.\nNOTE: Clause B.3.2 of ETSI GS NFV-SOL 003 provides examples illustrating the relationship among the      different run-time information elements (CP, VL and link ports) used to represent the connectivity \n      of a VNF.\n\nNOTE 1: Modifying the value of this attribute shall not be performed when conflicts exist between the        previous and the newly referred VNF package, i.e. when the new VNFD is changed with respect to \n        the previous VNFD in other aspects than merely referencing to other VNF software images. \n        In order to avoid misalignment of the VnfInstance with the current VNF's on-boarded VNF Package, \n        the values of attributes in the VnfInstance that have corresponding attributes in the VNFD shall \n        be kept in sync with the values in the VNFD.\nNOTE 2: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. NOTE 3: VNF configurable properties are sometimes also referred to as configuration parameters applicable        to a VNF. Some of these are set prior to instantiation and cannot be modified if the VNF is instantiated, \n        some are set prior to instantiation (are part of initial configuration) and can be modified later, \n        and others can be set only after instantiation. The applicability of certain configuration may depend \n        on the VNF and the required operation of the VNF at a certain point in time.\nNOTE 4: It is possible to have several ExtManagedVirtualLinkInfo for the same VNF internal VL in case of a        multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkInfo corresponding to the same \n        VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed \n        multi-site VL instance (refer to clause 6.5.3.59).\nNOTE 5: Even though externally-managed internal VLs are also used for VNF-internal connectivity, they shall not        be listed in the \"vnfVirtualLinkResourceInfo\" attribute as this would be redundant.\n",
						"type": "object",
						"required": ["id", "vnfdId", "vnfProvider", "vnfProductName", "vnfSoftwareVersion", "vnfdVersion", "vnfPkgId", "instantiationState"],
						"properties": {
							"id": {
								"description": "An identifier with the intention of being globally unique.\n",
								"type": "string"
							},
							"vnfInstanceName": {
								"description": "Name of the VNF instance. Modifications to this attribute can be requested using the \"ModifyVnfInfoData\" structure.\n",
								"type": "string"
							},
							"vnfInstanceDescription": {
								"description": "Human-readable description of the VNF instance. Modifications to this attribute can be requested using the \"ModifyVnfInfoData\" structure.\n",
								"type": "string"
							},
							"vnfdId": {
								"description": "An identifier with the intention of being globally unique.\n",
								"type": "string"
							},
							"vnfProvider": {
								"description": "Provider of the VNF and the VNFD. The value is copied from the VNFD.\n",
								"type": "string"
							},
							"vnfProductName": {
								"description": "Name to identify the VNF Product. The value is copied from the VNFD.\n",
								"type": "string"
							},
							"vnfSoftwareVersion": {
								"description": "A Version. Representation: string of variable length.\n",
								"type": "string"
							},
							"vnfdVersion": {
								"description": "A Version. Representation: string of variable length.\n",
								"type": "string"
							},
							"vnfPkgId": {
								"description": "An identifier with the intention of being globally unique.\n",
								"type": "string"
							},
							"vnfConfigurableProperties": {
								"description": "This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, a set of key- value pairs is represented as an object. It shall comply with the provisions defined in clause 4 of IETF RFC 7159.\n",
								"type": "object"
							},
							"vimId": {
								"description": "An identifier with the intention of being globally unique.\n",
								"type": "string"
							},
							"instantiationState": {
								"description": "The instantiation state of the VNF.\nPermitted values: - NOT_INSTANTIATED: The VNF instance is terminated or not instantiated. - INSTANTIATED: The VNF instance is instantiated.\n",
								"type": "string",
								"enum": ["NOT_INSTANTIATED", "INSTANTIATED"]
							},
							"instantiatedVnfInfo": {
								"description": "Information specific to an instantiated VNF instance. This attribute shall be present if the instantiateState attribute value is INSTANTIATED.\n",
								"type": "object",
								"required": ["flavourId", "vnfState", "extCpInfo"],
								"properties": {
									"flavourId": {
										"description": "Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.\n",
										"type": "string"
									},
									"vnfState": {
										"type": "string",
										"enum": ["STARTED", "STOPPED"]
									},
									"scaleStatus": {
										"description": "Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how \"big\" the VNF has been scaled w.r.t. that aspect.\n",
										"type": "array",
										"items": {
											"required": ["aspectId", "scaleLevel"],
											"type": "object",
											"properties": {
												"aspectId": {
													"description": "Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.\n",
													"type": "string"
												},
												"vnfdId": {
													"description": "An identifier with the intention of being globally unique.\n",
													"type": "string"
												},
												"scaleLevel": {
													"description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n",
													"type": "integer"
												}
									},
									"maxScaleLevels": {
										"description": "Maximum allowed scale levels of the VNF, one entry per aspect. This attribute shall be present if the VNF supports scaling.\n",
										"type": "array",
										"items": {
											"required": ["aspectId", "scaleLevel"],
											"type": "object",
											"properties": {
												"aspectId": {
													"description": "Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.\n",
													"type": "string"
												},
												"vnfdId": {
													"description": "An identifier with the intention of being globally unique.\n",
													"type": "string"
												},
												"scaleLevel": {
													"description": "Indicates the scale level. The minimum value shall be 0 and the maximum value shall be <= maxScaleLevel as described in the VNFD.\n",
													"type": "integer"
												}
									},
									"extCpInfo": {
										"description": "Information about the external CPs exposed by the VNF instance. When trunking is enabled, the list of entries includes both, external CPs corresponding to parent ports of a trunk, and external CPs associated to sub-ports of a trunk.\n",
										"type": "array",
										"minItems": 1,
										"items": {
											"description": "This type represents information about an external CP of a VNF. It shall comply  with the provisions defined in Table 6.5.3.70-1. NOTE 1:\tThe attributes \"associatedVnfcCpId\", \"associatedVipCpId\" and \"associatedVnfVirtualLinkId\" are mutually exclusive. Exactly one shall be present. NOTE 2:\tAn external CP instance is not associated to a link port in the cases indicated for the “extLinkPorts” attribute in clause 6.5.3.26.\n",
											"type": "object",
											"required": ["id", "cpdId"],
											"oneOf": [{
												"required": ["associatedVnfcCpId"]
											}, {
												"required": ["associatedVnfVirtualLinkId"]
											}],
											"properties": {
												"id": {
													"description": "An identifier that is unique for the respective type within a VNF instance, but may not be globally unique.\n",
													"type": "string"
												},
												"cpdId": {
													"description": "Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.\n",
													"type": "string"
												},
												"cpConfigId": {
													"description": "Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.\n",
													"type": "string"
												},
												"vnfdId": {
													"description": "An identifier with the intention of being globally unique.\n",
													"type": "string"
												},
												"cpProtocolInfo": {
													"description": "Network protocol information for this CP.\n",
													"type": "array",
													"minItems": 1,
													"items": {
														"description": "This type describes the protocol layer(s) that a CP or SAP uses together with protocol-related information, like addresses. It shall comply with the provisions defined in Table 6.5.3.58-1. NOTE:\tThis attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported.\n",
														"type": "object",
														"required": ["layerProtocol", "ipOverEthernet"],
														"properties": {
															"layerProtocol": {
																"description": "The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values:  - IP_OVER_ETHERNET\n\nSee note.\n",
																"type": "string",
																"enum": ["IP_OVER_ETHERNET"]
															},
															"ipOverEthernet": {
																"description": "This type represents information about a network address that has been assigned.\nNOTE 1:\tAt least one of \"macAddress\" or \"ipAddresses\" shall be present. NOTE 2:\tExactly one of \"addresses\" or \"addressRange\" shall be present. NOTE 3:\tIf the Cp instance represents a subport in a trunk, \"segmentationId\" shall be present. Otherwise it shall not be present. NOTE 4:\tDepending on the NFVI networking infrastructure, the \"segmentationId\" may indicate the actual network segment value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the transport header of the packets or it may be an identifier used between the application and the NFVI networking infrastructure to identify the network sub-interface of the trunk port in question. In the latter case the NFVI infrastructure will map this local \"segmentationId\" to whatever \"segmentationId\" is actually used by the NFVI's transport technology.\n",
																"type": "object",
																"anyOf": [{
																	"required": ["macAddress"]
Loading full blame...