Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Gliffy
nameVNFC instantiation

Requirements that are kept in mind are :

...

  • Each cloud-region has a list of HPACapabilities which represents these HW feature groups
  • Each HPACapability is defined as 
    {Capability Name, Schema Version, hardware-architecture, [List of HPAAttributes], [ComplexAtrributes] }
  • HPAAttribute is a list of <hpaAttributeKey, hpaAttributeValue>
  • ComplexAttribute is a list of list of HPAAttributes. For eg: NUMA might have list of HPAttributes for every NUMA node.

Sequence Diagrams

Discovery of HPA-flavors when cloud-region is added

https://sequencediagram.org/index.html?initialData=C4S2BsFMAIGFwPYFcAmBaASpA5iBA7aASXzGgBEQBnAYwQDdIAnATwCg2AHAQydBpA98waAFUqzLr36Duw6AFEAyhil8QAoSICC2omplboAWSThQ8ZOgBCTBAGtJPdZrkjT5kJdRoACuCRcfAMNWXksAFsEYEgANSJjaDZxZjQAPmUMAC4xCSZobhQUKjhEHyYcPGDM9N0iHO0i0qs0CtwCaGAEToALGBB8RmEEVjZMgB40NDroHKUkGhpIKioAegAzbhAAiuS8ybRMuYWllY2tncgxlXSPCzKbO0cmHIA5aJB1lgKisCroBDraD4SAAd2gNAerUqBDYdy8UNsDlSaXh3keyJe0CUkCgNGAJWAfWgnACQWgACNuBIUADCAAdfDxYxoYAsTgwQG9bgiSEtNpVOFme4tJHPW7ChEtfyBAY5AAqTBA2GwzGBYIhUIFHUKKD+sLRUJlQXSkWicQSOQA4pAROtwNx6CM1rFjEoQAAvZarEhUYByJaddnLIWedF+MkDA5mmLMnJYKicAgSaCgsA9ArgcBBjklKhIThJviQFChkU+Y0DU2QKKxy3QG0iFC2i4lLmM+2O52rV3ur1rX3+-CneXBkqMqC8eQDEkVeh4JB5mKcMtSiuR-DRmvmuPQBNJ-ApgAUaaJ0Gb-u2VAAlKvw5X8BKw0aN28RhFuOBPTBO06mC63W-AdDyHJZR1zaBGTkWkFF8bRoAGdZ3x5f4Bi6RQ4LQX9nUg-BqWgSAAA8OXxEtKW+AB5V5tF8O8X1lR80jqBomlg7QsIdP8Smg3DqSoBABB5Mi2KwyAeSQCpxzw-BaTAbjgGAJUKSQGISiQGS1UZIkYD5coYWCIA

Periodic Discovery of HPA-flavors

https://sequencediagram.org/index.html?initialData=C4S2BsFMAIAVIE4gPYBMQGNroM4eQG6ICe0yAZtNAKKwCCAtOeAIYHII4BQXADiwlAYQ-AHbBoAWQCu4UAGFwyaagYAhBMgDWiPgKEiW4qbIVKVDWOGkBzEKL2DMh43ToBJRwbESASpABbZGBIADV3SR4uUWCYQkQTORBFZVUNbUQALmgAMQ5oSBYMAAtocMloYGJeSGjYsiIERLNUy2s7UWy8psKSsojoBEg7ZAcZJJSLK1t7BgA+cZap9vts+CQ0TBp6bBA8eIRSGNByTBZQUa5F5PNVaY7oef8gkPLsgHFICWY2DhwAelCFQAyiAAF6QAHuUQ4YBGDAwKo1bjHGBIGzFCQUZo3Vr3VbQADyNRhcIwWn6khw0GkOBgP3YTRCCACABpoAAdUR0MHSIY0unUgDkQOgoIhOCFlUQAU53IA6sCBZDoEL7LD4YjqpApczZVzgMhBpBeEM6cYCAIULToPgArxpCFoDZNNJeDgAHRXUy45YzUQAHgYDGesTe0H8OF4ozp0AA7mBSgy-tAcG7o4JIKh2Vy48UvvmmvljpVCzABDBIDFbKUuWblAgEdS2CwQKwAEZQaD2Uto4YoUTQcj5YDFPZD1iM70TW5tf1PQJhiIfL7YL6t8DU0YFIpJyccQEg8GQf7QjWiBGVbXTpZ3FaB4Oh14DbKR6MwmAJ0druFtlH1dFMTIShrkmO9-WyAARdc-27C9rFQGACHkWAAFUcHZAJAlTY8c1EXAKRwY9oCMVAClEYpNTIrleFYYBhxZIdCmAPkVTTXgMxCMj21IUdzgnX4EBvX1wI6eZQNnfFOmgAA5DgAhYcBj3+YAECMHA6JgLlkwQQ8xWUs84QvLUajlewGIUi5B0NIkZLoWA11OUQszlWhGB06kLPOYSwLnMS5jcdwVwkSAAA89lAUQbG2dz904MhrPzY0RjGH1fKkoMGEC19IXfWMv1KRTwBipg4ubfDexAJpEN-TcfMk+9xLShr-WgYK1zkFhoHbL440gKs5TCiL7GitzSsE8rqNEZy43AUhcHwRoXLtB0QgYF1lHdL0JLxRqAo8TI6A4uaOrhAURugQLLtgdw5VIkjNyNFhjtIDBnqKMBSA1Fit0HXpa1EMadO6lg6TI7dvptcz5POAdoCgARxC9LggA

VNFC Instantiation 

...

  • .

A&AI Schema Changes

Example: Run time view of A&AI graph instance

...

Code Block
languagexml
themeEmacs
titleModified AAI Schema
collapsetrue
<java-type name="CloudRegion">
    <xml-root-element name="cloud-region" />
    <java-attributes>
        <xml-element java-attribute="cloudOwner" name="cloud-owner" required="true" type="java.lang.String" xml-key="true">
            <xml-properties>
                <xml-property name="description" value="Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname" />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="cloudRegionId" name="cloud-region-id" required="true" type="java.lang.String" xml-key="true">
            <xml-properties>
                <xml-property name="description" value="Identifier used by the vendor for the region. Second part of composite key" />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="cloudType" name="cloud-type" type="java.lang.String">
            <xml-properties>
                <xml-property name="description" value="Type of the cloud (e.g., openstack)" />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="ownerDefinedType" name="owner-defined-type" type="java.lang.String">
            <xml-properties>
                <xml-property name="description" value="Cloud-owner defined type indicator (e.g., dcp, lcp)" />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="cloudRegionVersion" name="cloud-region-version" type="java.lang.String">
            <xml-properties>
                <xml-property name="description" value="Software version employed at the site.  NOTE - THIS FIELD IS NOT KEPT UP TO DATE." />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="identityUrl" name="identity-url" type="java.lang.String">
            <xml-properties>
                <xml-property name="description" value="URL of the keystone identity service" />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="cloudZone" name="cloud-zone" type="java.lang.String">
            <xml-properties>
                <xml-property name="description" value="Zone where the cloud is homed.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="complexName" name="complex-name" type="java.lang.String">
            <xml-properties>
                <xml-property name="description" value="complex name for cloud-region instance.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED." />
            </xml-properties>
        </xml-element>
        <xml-element default-value="false" required="true" java-attribute="sriovAutomation" name="sriov-automation" type="java.lang.Boolean">
            <xml-properties>
                <xml-property name="defaultValue" value="false"/>
                <xml-property name="description" value="Whether the cloud region supports (true) or does not support (false) SR-IOV automation." />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
            <xml-properties>
                <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete." />
            </xml-properties>
        </xml-element>
        <xml-element java-attribute="volumeGroups" name="volume-groups" type="inventory.aai.onap.org.v12.VolumeGroups" />
        <xml-element java-attribute="tenants" name="tenants" type="inventory.aai.onap.org.v12.Tenants" />
        <xml-element java-attribute="flavors" name="flavors" type="inventory.aai.onap.org.v12.Flavors" />
        <xml-element java-attribute="groupAssignments" name="group-assignments" type="inventory.aai.onap.org.v12.GroupAssignments" />
        <xml-element java-attribute="snapshots" name="snapshots" type="inventory.aai.onap.org.v12.Snapshots" />
        <xml-element java-attribute="images" name="images" type="inventory.aai.onap.org.v12.Images" />
        <xml-element java-attribute="dvsSwitches" name="dvs-switches" type="inventory.aai.onap.org.v12.DvsSwitches" />
        <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v12.OamNetworks" />
        <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.onap.org.v12.AvailabilityZones" />
        <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v12.RelationshipList" />
        <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv4AddressList" name="vip-ipv4-address-list" type="inventory.aai.onap.org.v12.VipIpv4AddressList" />
        <xml-element container-type="java.util.ArrayList" java-attribute="vipIpv6AddressList" name="vip-ipv6-address-list" type="inventory.aai.onap.org.v12.VipIpv6AddressList" />
        <xml-element java-attribute="hpaCapabilities" name="hpa-capabilities" type="inventory.aai.onap.org.v12.HPACapabilities" />
    </java-attributes>
    <xml-properties>
        <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation. In cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname" />
        <xml-property name="indexedProps" value="cloud-owner,cloud-region-id,cloud-type,owner-defined-type" />
        <xml-property name="nameProps" value="owner-defined-type" />
        <xml-property name="container" value="cloud-regions" />
        <xml-property name="namespace" value="cloud-infrastructure" />
    </xml-properties>
</java-type>


<!-- NEW NODES for HPA Capabilities -->
<java-type name="HPACapabilities">
    <xml-properties>
        <xml-property name="description" value="Collection of HPA Capabilities" />
    </xml-properties>
    <xml-root-element name="hpa-capabilities" />
    <java-attributes>
        <xml-element container-type="java.util.ArrayList" java-attribute="hpaCapability" name="hpa-capability" type="inventory.aai.onap.org.v12.HPACapability" />
    </java-attributes>
</java-type>

<java-type name="HPACapability">
<xml-root-element name="hpa-capability" />
<java-attributes>
    <xml-element java-attribute="hpaCapabilityName" name="hpa-capability-name" type="java.lang.String" />
    <xml-element java-attribute="version" name="hpa-version" type="java.lang.String" />
    <xml-element java-attribute="hardware-architecture" name="hpa-hw-arch" type="java.lang.String" />
    <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
        <xml-properties>
            <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete." />
        </xml-properties>
    </xml-element>
    <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v12.RelationshipList" />
    <xml-element container-type="java.util.ArrayList" java-attribute="hpaFeatureAtrribute" name="hpa-attribute" type="inventory.aai.onap.org.v12.HPAFeatureAtrribute" />
    <xml-element container-type="java.util.ArrayList" java-attribute="hpaFeatureAtrribute" name="hpa-attribute" type="inventory.aai.onap.org.v12.HPAComplexAtrribute" />
</java-attributes>
<xml-properties>
    <xml-property name="description" value="Represents a HPA capability" />
    <xml-property name="nameProps" value="hpa-capability-name" />
    <xml-property name="indexedProps" value="hpa-capability-name,hardware-architecture" />
    <xml-property name="dependentOn" value="cloud-region" />
    <xml-property name="container" value="hpa-capabilities" />
</xml-properties>
</java-type>

<java-type name="HPAFeatureAttribute">
<xml-properties>
    <xml-property name="description" value="HPA Capability simple attributes" />
</xml-properties>
<xml-root-element name="hpa-attribute" />
<java-attributes>
    <xml-element java-attribute="hpaAttributeKey" name="hpa-attr-key" type="java.lang.String" />
    <xml-element java-attribute="hpaAttributeValue" name="hpa-attr-value" type="java.lang.String" />
    <xml-element java-attribute="hpaAttributeValueType" name="hpa-attr-value-type" type="java.lang.String" />
</java-attributes>
</java-type>

<java-type name="HPAComplexAttribute">
<xml-properties>
    <xml-property name="description" value="HPA Capabilities with a set of FeatureAttributeList" />
</xml-properties>
<xml-root-element name="hpa-complex-attribute" />
<java-attributes>
    <xml-element container-type="java.util.ArrayList" java-attribute="hpaFeatureAtrribute" name="hpa-attribute" type="inventory.aai.onap.org.v12.HPAFeatureAtrribute" />
</java-attributes>
</java-type>


Sequence Diagrams

Discovery of HPA-flavors when cloud-region is added

Gliffy
nameCloud-Region Init Discovery

Periodic Discovery of HPACapabilities

Gliffy
namePeriodic Discover HPA


VNFC Instantiation 

Gliffy
nameVNFC instantiation

TBD

Following table provides HPA features and attributes.  Also, it describes matching constraints for each HPA feature. These constrains constraints are applied while finding the best cloud-region for placing VNFC.

<Hardware or Software feature>-<Generic feature or CPU architecture/vendor specific featuers>-<feature name>

Attributes are represented as:

TBD...

<HPA feature name



AAI

...

APIs for HPA :

Azure

AWS

...

TBD