VNF Instance Model Update

Rationale:

There are some updates of the AAI schema regarding the VNF instance model, and it's identified that VFC also has an internal inventory which stores information of the VNF instance.

Propose to have an analysis from the updated AAI schema and VFC inputs (and potential ETSI spec updates) to update the R3 VNF instance model in R4.

In addition, there's some leftover issues regarding the R3 VNF instance model needs to be resolved in R4 and there're some suggestions need to be taken from the service instance model discussion.

Source:

R3 model: R3 Resource Clean Draft (Papyrus Based) - 1.2.19 VNF

AAI schema v15: https://gerrit.onap.org/r/gitweb?p=aai/aai-common.git;a=blob;f=aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd;h=545efe035a04ab79e12cb32c2a81ec22edd13369;hb=refs/heads/master - generic-vnf

VFC: https://gerrit.onap.org/r/gitweb?p=vfc/gvnfm/vnflcm.git;a=blob;f=lcm/lcm/pub/database/models.py;h=3ac4a83274a16497877cde6fb3625318bd8540bb;hb=refs/heads/master - NfInstModel

Model Analysis:

R3 Model

AAI Schema v15

VFC

Description

Note

Belongs in

Action

Comment

R3 Model

AAI Schema v15

VFC

Description

Note

Belongs in

Action

Comment

vnfInstanceId

vnf-id / vnf-instance-id

nfInstId

identifier of the VNF instance







Xu: What's the relationship between vnf-id and vnf-instance-id within the AAI model?

vnfInstanceName

vnf-name

nf_name

name of the VNF instance. Multiple names are possible.









vnfProductName





name to identify the VNF Product, invariant for the VNF Product lifetime







Chesla: Think this should be removed as it should be identifiable by "joining" to the descriptor.

description





description of the VNF instance







Chesla: At least within AT&T, we were trying to standardize on type/role/function fields to help describe.  Is it necessary to rename the function to description?  When I see description, I generally think of something quite free form.  We thought there could be policy and automation around type/role/function.  We were planning to have type/role/function in the descriptor.  Is this something in addition?

vnfProvider





provider of the VNF model







Chesla: Think this should be removed as it should be identifiable by "joining" to the descriptor.

vnfdId

model-invariant-id



identifier of the VNF model









vnfdVersion





version of the VNF model







Chesla: If this is a UUID uniquely pointing to the specific version of a model, then OK.  Don't want to see, e.g., v1.0, in this field.

vnfSoftwareVersion





Software version of the VNF. This is changed when there is any change to the software that is included in the VNF package









onboardedVnfPkgInfoId

vnf-package-name



identifier of the specific VNF package on which the VNF instance is based









availabilityZone

regional-resource-zone



availability zone information of the VNF instance







Chesla: This should be removed and expressed as a relationship to the availability zone.

operationalStatus

operational-status



indicator for whether the resource is considered operational. Valid values are in-service-path and out-of-service-path.









orchestrationStatus

orchestration-status



whether the VNF instance is instantiated









oamlpv4Address

ipv4-oam-address



oam ip address, ipv4







Chesla: Would like the whole IM to standardize on naming of IP address field names. 

oamlpv6Address

management-v6-address



oam ip address, ipv6







Chesla: Would like the whole IM to standardize on naming of IP address field names. 

instantiatedVnfInfo





information specific to an instantiated VNF instance, e.g., vm information







Chesla: VM information doesn't belong as an attribute of the VNF.  I would expect the VNF would be related to a set of VNFC instances, and each VNFC instance is related to its VM (execution environment) instance.

inMaint

in-maint



whether the VNF instance is in maintenance mode, if yes, DCAE will not observe alarms/traps, etc.









isClosedLoopDisabled

is-closed-loop-disabled



whether closed loop function is enabled









encryptedAccessFlag

encrypted-access-flag



whether this VNF is accessed using SSH









vnfConfigurableProperty





indicator for whether autoHeal and autoScale is enabled







Chesla: Need more info about the purpose of this. E.g., should there be a configuration object which the VNF is related to?  The model-customization-id is used today to link to configuration in ECOMP.  This one probably needs discussion with the SO team.

nfNamingCode

nf-naming-code



String assigned to this model used for naming purpose.







Chesla: This is used by naming policies as a short string which is used to construct the name of the VNF instance.  It could be removed if it is in the descriptor.

vnfNamingPolicyId





Identifier of the policy which has the naming logic for this VNF instance









vnfHomingPolicyId





Identifier of the policy which provides homing conditions.









nfType

nf-type



Generic description of the type of network function









nfFunction

nf-function



English description of network function that the   specific VNF deployment is providing.









nfRole

nf-role



Role in the network this model will be providing









closedLoopStatus





Whether closed loop capabilities are enabled for this or not.









_nfc   (vnfcinstance)





Relatonship to the NF components that are part of this VNF.

relationship







_vnfd





Relationship to the VNF descriptor

relationship







_vnfvirtuallink





Relationship to VnfVirtualLink

relationship









vnf-name2















vnf-type















service-id















prov-status















license-key















equipment-role















vnf-discriptor-name















job-id















heat-stack-id















mso-catalog-key















management-option















ipv4-loopback0-address















nm-lan-v6-address















vcpu















vcpu-units















vmemory















vmemory-units















vdisk















vdisk-units















nshd















nvm















nnet















resource-version















summary-status















entitlement-assignment-group-uuid















entitlement-resource-uuid















license-assignment-group-uuid















license-key-uuid















persona-model-version















model-customization-id















widget-model-id















widget-model-version















as-number















regional-resource-subzone















ipv4-oam-gateway-address















ipv4-oam-gateway-address-prefix-length















vlan-id-outer















nm-profile-name

















vnfmInstId