Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Base Candidate Class 

AttributeRequiredContentValuesDescription
inventory_providerYString

aai


inventory_typeY

String

Cloud, Service, Vfmodule, Transport, NSSI


candidate_idYString

uniquenessYBoolean

costYString

Inventory Types

 1) Cloud

 2) Service

 3) Vfmodule

 4) Transport

 5) NSSI

All the candidate for every inventory types extend from the candidate base class

(Should the fields in models (cloud_info, complex_info, location_info ..) come from the configuration (or) should be defined in the models itself as instance variables  (or) should the fields be derived from AAI)

Cloud object

EXAMPLE

{
   "candidate_id":"NYCNY55",
   "candidate_type":"cloud",
   "inventory_type":"cloud",
   "inventory_provider":"aai",
   "cost":"100",

   "location_id":"NYCNY55",
   "location_type":"azure",

   "latitude":"40.7128",
   "longitude":"-74.0060",
   "city":"New York",
   "state":"NY",
   "country":"USA",
   "region":"US",
   "complex_name":"ny_one",

   "cloud_owner":"att-aic",
   "cloud_region_version":"1.1",
   "physical_location_id":"NYCNY55",
   "flavors":{
      "flavor":[
         {
            "flavor-id":"9cf8220b-4d96-4c30-a426-2e9382f3fff2",
            "flavor-name":"flavor-numa-cpu-topology-instruction-set",
            "flavor-vcpus":64,
            "flavor-ram":65536,
            "flavor-disk":1048576,
            "flavor-ephemeral":128,
            "flavor-swap":"0",
            "flavor-is-public":false,
            "flavor-selflink":"pXtX",
            "flavor-disabled":false,
            "hpa-capabilities":{
               "hpa-capability":[
                  {
                     "hpa-capability-id":"8fa22e64-41b4-471f-96ad-6c4708635e4c",
                     "hpa-feature":"cpuTopology",
                     "hpa-version":"v1",
                     "architecture":"generic",
                     "resource-version":"1521306561109",
                     "hpa-feature-attributes":[
                        {
                           "hpa-attribute-key":"numCpuCores",
                           "hpa-attribute-value":"{\"value\":8}",
                           "resource-version":"1521306561114"
                        },
                        {
                           "hpa-attribute-key":"numCpuThreads",
                           "hpa-attribute-value":"{\"value\":8}",
                           "resource-version":"1521306561138"
                        },
                        {
                           "hpa-attribute-key":"numCpuSockets",
                           "hpa-attribute-value":"{\"value\":6}",
                           "resource-version":"1521306561126"
                        }
                     ]
                  }
               ]
            },
            "resource-version":"1521306560203"
         }
      ]
   }
}

MODEL

AttributeRequiredContentValuesDescription
location_infoYObject

location_id, location_type


complex_infoY

Object

physical_location_id, complex_name, latitude, longitude, state, country, city, region


cloud_infoNObjectcloud_region_version, cloud_owner
flavors
Objectflavors 
sriov_automation



Service object

EXAMPLE

 			
 {
    "candidate_id": "1ac71fb8-ad43-4e16-9459-c3f372b8236d",
    "candidate_type": "service",
    "inventory_type": "service",
    "inventory_provider": "aai",
    "host_id": "vnf_123456",
    "cost": "100",

    "location_id": "DLLSTX9A",
    "location_type": "azure",

    "latitude": "32.897480",
    "longitude": "-97.040443",
    "city": "Dallas",
    "state": "TX",
    "country": "USA",
    "region": "US",
    "complex_name": "dalls_one",

    "cloud_owner": "att-aic",
    "cloud_region_version": "1.1",
    "physical_location_id": "DLLSTX9A"
}

MODEL

AttributeRequiredContentValuesDescription
location_infoYObject

location_id, location_type


vlan_infoY

Object

vlan_key, port_key


cloud_infoNObjectcloud_region_version, cloud_owner, vim_id





Vfmodule object

EXAMPLE

{  			
"inventory_provider" : "",
"inventory_type" : "",
"candidate_id" : "",
"uniqueness" : "",
"cost" : "",
"service_resource_id" : "",

"location_id" : "",
"location_type" : "",

"physical_location_id" : "",
"complex_name" : "",
"latitude" : "",
"longitude" : "",
"city" : "",
"state" : "",
"region" : "",
"country" : "",

"vim-id" : "",
"cloud_region_version" : "",
"cloud_owner" : "",   

"host_id" : "",
"vlan_key" : "",
"port_key" : "",

"sriov_automation" : "",

"nf-name" : ""
"nf-id" : ""
"nf-type" : ""
"vnf-type" : ""
"ipv4-oam-address" : ""
"ipv6-oam-address" : ""
"vf-module-name" : ""
"vf-module-id" : ""
"service_instance_id" : ""
"sriov_automation" : ""
"vservers" : [
                 {
                      "vserver-id" : ""
                      "vserver-name" : ""
                      "l-interfaces" : [
                                {
                                   "interface-id" : ""
                                   "interface-name" : ""
                                   "macaddr" : ""
                                   "network-id" : ""
                                   "network-name" : ""
                                   "ipv4-addresses" : ""
                                   "ipv6-addresses" : ""
                                }
                         ]
                  }
               ]

}

MODEL

AttributeRequiredContentValuesDescription
location_infoYObject

location_id, location_type


cloud_infoY

Object

cloud_region_version, cloud_owner, vim_id


vlan_infoNObjectvlan_key, port_key
vserver_info
Object

Transport object

EXAMPLE

{  			
"inventory_provider" : "",
"inventory_type" : "",
"candidate_id" : "",
"uniqueness" : "",
"cost" : "",
"service_resource_id" : "",

"location_id" : "",
"location_type" : "",

"physical_location_id" : "",
"complex_name" : "",
"latitude" : "",
"longitude" : "",
"city" : "",
"state" : "",
"region" : "",
"country" : "",
"vim-id" : "",
"cloud_region_version" : "",
"cloud_owner" : "",   

"zone_id" : "",
"zone_name" : "",

"sriov_automation" : "",

}

MODEL

AttributeRequiredContentValuesDescription
location_infoYObject

location_id, location_type


complex_infoY

Object

physical_location_id, complex_name, latitude, longitude, state, country, city, region


zone_infoNObjectzone_id , zone_name

NSSI object

EXAMPLE

{  			
"inventory_provider" : "",
"inventory_type" : "",
"candidate_id" : "",
"uniqueness" : "",
"cost" : "",
"service_resource_id" : "",

}

MODEL

AttributeRequiredContentValuesDescription
sliceprofile_infoYObject



nsi_infoY

Object



CONFIGURATION

Applicable fields of all the models should be present in the configuration

location_info = ["location_id", "location_type"]

zone_info = ["zone_id", "zone_name"]

cloud_info = ["vim_id". "cloud_region_version", "cloud_owner"]

vlan_info = ["host_id", "vlan_key", "port_key"]

complex_info = ["physical_location_id". "complex_name", "latitude", "longitude", "state", "country", "city", "region", ]


Base candidate class

inventory_provider, inventory_type, candidate_id, uniqueness, cost, service_resource_id


Example of how a cloud inventory type should be defined

  • class cloud → extends from candidate base class
    • location_info → dict()
    • compex_info → dict()
    • cloud_info → dict()
    • other_permitted_fields_for_cloud_cnd → dict() 
  • No labels