...
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
# #Example 1: vFW, Basic Capability and sriovNICNetwork #one VNFC(VFC) with one basic capability requirement and two sriovNICNetworkF requirements. # { "service": "hpaPolicy", "policyName": "oofCasablanca.hpaPolicy_vFW", "description": "HPA policy for vFW", "templateVersion": "0.0.1", "version": "1.0", "priority": "3", "riskType": "test", "riskLevel": "2", "guard": "False", "content": { "resources": "vFW", "identity": "hpaPolicy_vFW", "policyScope": ["vFW", "US", "INTERNATIONAL", "ip", "vFW"], "policyType": "hpaPolicy", "flavorFeatures": [ { "id" : "<vdu.Name>", "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives":[ { "directive_nametype":"flavor_directives", "attributes":[ { "attribute_name":" oof_returned_flavor_label_for_firewall ", //Admin needs to ensure that this value is same as flavor parameter in HOT "attribute_value": "<Blank>" } ] } ], "flavorProperties": [ { "hpa-feature": "basicCapabilities", "mandatory": "True", "architecture": "generic", "hpa-version": "v1", "directives": [], "hpa-feature-attributes": [ { "hpa-attribute-key": "numVirtualCpu", "hpa-attribute-value": "6", "operator": "=", "unit": "" } ] }, { "hpa-feature": "basicCapabilities", "mandatory": "True", "architecture": "generic", "directives": [], "hpa-feature-attributes": [ { "hpa-attribute-key": "virtualMemSize", "hpa-attribute-value": "6", "operator": "=", "unit": "GB" }, ] }, ] { } ] } } # #Example 2: vFW, Pcie Passthrough #one VNFC(VFC) with two Pcie Passthrough requirements # { "service"hpa-feature": "sriovNICNetwork", "mandatory": "hpaPolicyTrue", "policyName "architecture": "oofCasablanca.hpaPolicy_vFWgeneric", "description": "HPA policy for vFW", "templateVersionhpa-version": "0.0.1v1", "version": "1.0", "priority": "3", "riskTypedirectives" : "test",[ "riskLevel": "2", "guard": "False", "content": { "resources": "vFW", "identity": "hpaPolicy_vFW", "policyScopetype": ["vFWsriovNICNetwork_directives", "US", "INTERNATIONAL", "ip", "vFW"], "policyType": "hpaPolicy", "flavorFeaturesattributes": [ { "id" : "<vdu.Name>", { "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute"attribute_name": "oof_returned_vnic_type_for_firewall_protected", "directives":[ { "directive_name":"flavor","attribute_value": "direct" "attributes":[ }, { { "attribute_name": " oof_returned_flavorprovider_labelnetwork_for_firewall ", //Admin needs to ensure that this value is same as flavor parameter in HOT_protected", "attribute_value": "<Blank>physnet1" } ] } } ], ], "flavorProperties": [ "hpa-feature-attributes": [ { { "hpa-attribute-featurekey": "pciePassthroughpciVendorId", "hpa-attribute-value": "1234", "mandatory"operator": "=", "unit": "True" }, "architecture { "hpa-attribute-key": "genericpciDeviceId", "hpa-attribute-value": "5678", "operator": "directives" : ["=", "unit": "" }, { "hpa-attribute-key": "pciCount", "hpa-attribute-value": "1", "operator": "directive_name">=", "unit": "pciePassthrough_directive" }, { "attributeshpa-attribute-key": [ "physicalNetwork", "hpa-attribute-value": "physnet1", "operator": "=", "unit": "" } ] { "attribute_name": "oof_returned_vnic_type_for_firewall_protected", }, { "attribute_valuehpa-feature": "directsriovNICNetwork", "mandatory": "True", }, "architecture": "generic", { "attribute_namehpa-version": "oof_returned_provider_network_for_firewall_protectedv1", "directives" : [ "attribute_value": "physnet1" { } "type": "sriovNICNetwork_directives", ] "attributes": [ } { ],"attribute_name": "oof_returned_vnic_type_for_firewall_unprotected", "hpa-feature-attributes "attribute_value": ["direct" { "hpa-attribute-key": "pciVendorId", "hpa-attribute-value": "1234", "operator": "=", "unit": "" }, }, { "hpa-attribute-key_name": "pciDeviceId", "hpa-attribute-value": "5678", "operator": "=", "unit": "" },oof_returned_provider_network_for_firewall_unprotected", { "hpa-attribute-key_value": "pciCountphysnet2", "hpa-attribute-value": "1", "operator": ">=", "unit": "" } } ] ] }, { } "hpa-feature": "pciePassthrough" ], "mandatoryhpa-feature-attributes": "True", [ "architecture{ "hpa-attribute-key": "genericpciVendorId", "hpa-attribute-value": "3333", "operator": "=", "unit": "" }, "directives" : [ { "hpa-attribute-key": "pciDeviceId", "hpa-attribute-value": "7777", "operator": "=", { "unit": "" }, { "directive_namehpa-attribute-key": "pciePassthrough_directivepciCount", "hpa-attribute-value": "1", "operator": "attributes">=", "unit": ["" }, { "hpa-attribute-key": "physicalNetwork", { "attribute_name"hpa-attribute-value": "physnet2", "operator": "oof_returned_vnic_type_for_firewall_unprotected=", "unit": "" } ] "attribute_value": "direct" } ] } ] } } # #Example 2: vFW, basicCapabilities, hugePages, sriovNICNetwork, cpuPinning. { "attribute_name": "oof_returned_provider_for_firewall_unprotected", "attribute_value": "physnet2" } ] } #one VNFC(VFC) with basic capablity requirements, cpuPinning requirement and huge page requirement. #the other VNFC(VFC) with basic capability requirements and sriovNICNetwork requirements. # { "service": "hpaPolicy", "policyName": "oofCasablanca.hpaPolicy_vFW", "description": "HPA policy for vFW", "templateVersion": "0.0.1", "version": "1.0", "priority": "3", "riskType": "test", "riskLevel": "2", "guard": "False", "content": { "resources": "vFW", "identity": "hpaPolicy_vFW", "policyScope": ["vFW", "US", "INTERNATIONAL", "ip", "vFW"], "policyType": "hpaPolicy", "hpa-feature-attributes"flavorFeatures": [ { { "hpa-attribute-keyid" : "pciVendorId<vdu.Name>", "hpa-attribute-value": "3333", "operator": "=", "unit": "" } "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives":[ { "hpa-attribute-key": "pciDeviceId", "hpa-attribute-value": "7777", "operator": "=", "unit": "" },{ { "hpa-attribute-keytype": "pciCountflavor_directives", "hpa-attribute-value": "1", "operator": ">=", "unit": "" } "attributes":[ ] { } ] "attribute_name":" } ] } } | ||||||||||
Code Block | ||||||||||
| ||||||||||
# #Example 1: vCPE vgw, Burstable QoS #vCPE: Infrastructure Resource Isolation for VNF with Burstable QoS # { "service": "cloudPolicy", "policyName": "oofCasablanca.cloudPolicy_vgw", "description": "Cloud policy for vgw", "templateVersion": "0.0.1", "version": "1.0", "priority": "3", "riskType": "test", "riskLevel": "2", "guard": "False", "content": { "resources": "vgw", "identity": "cloudPolicy_vgw", "policyScope": ["vgw", "US", "INTERNATIONAL", "ip", "vgw"], "policyType": "hpaPolicy", "flavorFeatures": [ {oof_returned_flavor_label_for_firewall ", //Admin needs to ensure that this value is same as flavor parameter in HOT "attribute_value": "<Blank>" } ] } ], "flavorProperties": [ { "idhpa-feature" : "basicCapabilities"<vdu.Name>",, "typemandatory":"vnfc/tocsa.nodes.nfv.Vdu.Compute", "True", "directivesarchitecture":[ "generic", { "hpa-version": "v1", "directive_namedirectives":"flavor" [], "hpa-feature-attributes": [ { "hpa-attribute-key": "numVirtualCpu", "hpa-attribute-value": "6", "operator": "=", "unit": "" } "attribute_name":" oof_returned_flavor_label_for_vgw ", //Admin needs to ensure that this value is same as flavor parameter in HOT ] }, { "attribute_valuehpa-feature": "<Blank>basicCapabilities", "mandatory": "True", } "architecture": "generic", "directives": [], } "hpa-feature-attributes": [ ], { "hpa-attribute-key": "virtualMemSize", "hpa-attribute-value": "6", "flavorProperties": [operator": "=", "unit": "GB" } ] }, { "hpa-feature": "basicCapabilitiessriovNICNetwork", "mandatory": "True", "architecture": "generic", "hpa-feature-attributesversion": ["v1", {"hpa-attribute-key":"Infrastructure Resource Isolation for VNF", "hpa-attribute-value": "Burstable QoS","operator": "=", "unit": ""}, {"hpa-attribute-key":"Burstable QoS Oversubscription Percentage", "hpa-attribute-value": "25","operator": "=", "unit": ""},"directives" : [ { "type": "sriovNICNetwork_directives", ] }, "attributes": [ ] } ] } } # #Example 2: vCPE vgw, Guaranteed QoS #vCPE: Infrastructure Resource Isolation for VNF with Guaranteed QoS # { "service": "cloudPolicy", "policyName": "oofCasablanca.cloudPolicy_vgw", "description": "Cloud policy for vgw", "templateVersion": "0.0.1", "version": "1.0", "priority": "3", "riskType": "test", "riskLevel": "2", "guard": "False", "content": { "resources": "vgw", "identity": "cloudPolicy_vgw", "policyScope": ["vgw", "US", "INTERNATIONAL", "ip", "vgw"], "policyType": "hpaPolicy", "flavorFeatures": [ {{ "attribute_name": "oof_returned_vnic_type_for_firewall_protected", "attribute_value": "direct" }, { "attribute_name": "oof_returned_provider_network_for_firewall_protected", "attribute_value": "physnet1" } "id" : "<vdu.Name>", ] "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives":[} { "directive_name":"flavor"], "hpa-feature-attributes": [ { "hpa-attribute-key": "pciVendorId", { "hpa-attribute-value": "1234", "operator": "=", "unit": "" }, { "hpa-attribute_name-key":" oof_returned_flavor_label_for_vgw ", //Admin needs to ensure that this value is same as flavor parameter in HOT "pciDeviceId", "hpa-attribute-value": "5678", "operator": "=", "unit": "" }, { "hpa-attribute-key": "attribute_"pciCount", "hpa-attribute-value": "<Blank>1", "operator": ">=", "unit": "" }, } { "hpa-attribute-key": "physicalNetwork", "hpa-attribute-value": "physnet1", "operator": "=", "unit": "" } ] ] } ]}, "flavorProperties": [ { { "hpa-feature""hpa-feature": "basicCapabilitiessriovNICNetwork", "mandatory": "True", "architecture": "generic", "hpa-feature-attributesversion": ["v1", {"hpa-attribute-key":"Infrastructure Resource Isolation for VNF", "hpa-attribute-value": "Guaranteed QoS","operator": "=", "unit": ""},"directives" : [ { ] }"type": "sriovNICNetwork_directives", ] } "attributes": [ ] } } # #Example 3: vDNS, Burstable QoS & Infra HA #vDNS: Infrastructure Resource Isolation for VNF with Burstable QoS & Infrastructure HA # { "service": "cloudPolicy", "policyName": "oofCasablanca.cloudPolicy_vdns", "description": "Cloud policy for vdns", "templateVersion": "0.0.1", "version": "1.0", "priority": "3", "riskType": "test", "riskLevel": "2", "guard": "False", "content": { "resources": "vdns", "identity": "cloudPolicy_vdns{ "attribute_name": "oof_returned_vnic_type_for_firewall_unprotected", "attribute_value": "direct" } { "attribute_name": "oof_returned_provider_for_firewall_unprotected", "policyScope": ["vgw", "US", "INTERNATIONAL", "ip", "vdns"], "policyType": "hpaPolicy", "flavorFeaturesattribute_value": ["physnet2" { "id" : "<vdu.Name>", } "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives":[ ] { } "directive_name":"flavor"], "hpa-feature-attributes": [ { "hpa-attribute-key": "pciVendorId", { "hpa-attribute-value": "3333", "operator": "=", "unit": "" }, { "hpa-attribute_name-key": " oof_returned_flavor_label_for_vdns ", //Admin needs to ensure that this value is same as flavor parameter in HOTpciDeviceId", "hpa-attribute-value": "7777", "operator": "=", "unit": "" }, { "hpa-attribute-key": "attribute_"pciCount", "hpa-attribute-value": "<Blank>1", "operator": ">=", "unit": "" }, } { "hpa-attribute-key": "physicalNetwork", "hpa-attribute-value": "physnet2", "operator": "=", "unit": "" } ] ] } } ], ] "flavorProperties": [ }, { "hpa-feature""id" : "basicCapabilities<vdu.Name>", "mandatorytype": "True"vnfc/tocsa.nodes.nfv.Vdu.Compute", "architecturedirectives": "generic",[ "hpa-feature-attributes": [{ {"hpa-attribute-key"type":"Infrastructure Resource Isolation for VNFflavor_directives", "hpa-attribute-value": "Burstable QoS","operator": "=", "unit": ""}, {"hpa-attribute-key":"Burstable QoS Oversubscription Percentage", "hpa-attribute-value": "25","operatorattributes":[ "=", "unit": ""}, ] { }, { "hpa-feature"attribute_name":" "basicCapabilities", "mandatory": "True",oof_returned_flavor_label_for_generator ", //Admin needs to ensure that this value is same as flavor parameter in HOT "architecture": "generic", "attribute_value": "<Blank>" "hpa-feature-attributes": [ {"hpa-attribute-key":"Infrastructure High Availability for VNF", "hpa-attribute-value": "","operator": "", "unit": ""}, } ] }, ] ], } "flavorProperties": ][ } } # #Example 4: vDNS, Guaranteed QoS{ & Infra HA #vDNS: Infrastructure Resource Isolation for VNF with Burstable QoS & Infrastructure HA # { "service": "cloudPolicy", "hpa-feature": "basicCapabilities", "policyNamemandatory": "oofCasablanca.cloudPolicy_vdnsTrue", "description": "Cloud policy for vdns", "templateVersionarchitecture": "0.0.1generic", "hpa-version": "1.0v1", "priority": "3", "riskType": "test", "riskLeveldirectives": "2"[], "guard": "False", "content": { "resourceshpa-feature-attributes": "vdns", [ "identity": "cloudPolicy_vdns", { "policyScopehpa-attribute-key": ["vgwnumVirtualCpu", "US","hpa-attribute-value": "INTERNATIONAL6", "ipoperator",: "vdns="], "policyTypeunit": "hpaPolicy", } "flavorFeatures": [ {] "id" : "<vdu.Name>"}, "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", { "directiveshpa-feature":[ "basicCapabilities", { "mandatory": "True", "directive_namearchitecture": "flavorgeneric", "hpa-version": "attributes":[v1", "directives": [], { "hpa-feature-attributes": [ { "hpa-attribute_name-key":" oof_returned_flavor_label_for_vdns ", //Admin needs to ensure that this value is same as flavor parameter in HOT "attribute_ "virtualMemSize", "hpa-attribute-value": "<Blank>6", "operator": "=", "unit": "GB" } }] }, ] { } "hpa-feature": "cpuPinning", ], "flavorPropertiesmandatory": [ "True", { "hpa-feature"architecture": "basicCapabilitiesgeneric", "mandatoryhpa-version": "Truev1", "architecturedirectives": "generic"[], "hpa-feature-attributes": [ { "hpa-attribute-key":"Infrastructure Resource Isolation for VNF "logicalCpuThreadPinningPolicy", "hpa-attribute-value": "Guaranteed QoSprefer", "operator": "=", "unit": "" }, ] }, { "hpa-feature": "basicCapabilitiescpuPinning", "mandatory": "True", "architecture": "generic", "hpa-version": "v1", "directives": [], "hpa-feature-attributes": [ { "hpa-attribute-key":"Infrastructure High Availability for VNF "logicalCpuPinningPolicy", "hpa-attribute-value": "dedicated", "operator": "=", "unit": "" }, ] }, ] { } ] } } | ||||||||||
Code Block | ||||||||||
| ||||||||||
# #Example 1: vFW, Basic Capability + Cloud Agnostic Guaranteed QoS #one VNFC(VFC) with one basic capability requirement # { "service": "hpaPolicy", "policyName": "oofCasablanca.hpaPolicy_vFW", "description": "HPA policy for vFW", "templateVersion": "0.0.1", "version": "1.0", "priority": "3", "riskType": "test", "riskLevel": "2", "guard": "False", "content": { "resources": "vFW", "identity": "hpaPolicy_vFW", "policyScope": ["vFW", "US", "INTERNATIONAL", "ip", "vFW"], "policyType": "hpaPolicy", "flavorFeatures": ["hpa-feature": "hugePages", "mandatory": "True", "architecture": "generic", "hpa-version": "v1", "directives": [], "hpa-feature-attributes": [ { "hpa-attribute-key": "memoryPageSize", "hpa-attribute-value": "2", "operator": "=", "unit": "GB" } { ] "id" : "<vdu.Name>", } "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", ] } "directives":[ ] } } |
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
# #Example 1: {virtual firewall vpg, Burstable QoS #vCPE: Infrastructure Resource Isolation for VNF with Burstable QoS # { "directive_nameservice": "flavorcloudPolicy", "policyName": "oofCasablanca.cloudPolicy_vpg", "description": "Cloud policy for vpg", "attributestemplateVersion":[ "0.0.1", "version": "1.0", "priority": "3", "riskType": "test", "riskLevel": "2", { "guard": "False", "content": { "resources": "vpg", "identity": "cloudPolicy_vpg", "attribute_namepolicyScope": [" oof_returned_flavor_label_for_firewall ", //Admin needs to ensure that this value is same as flavor parameter in HOTvgw", "US", "INTERNATIONAL", "ip", "vpg"], "policyType": "hpaPolicy", "flavorFeatures": [ { "attribute_value""id" : "<Blank><vdu.Name>", "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives":[ } { ] }"type":"flavor_directives", ], "attributes":[ "flavorProperties": [ { "hpa-feature "attribute_name": "basicCapabilities" oof_returned_flavor_label_for_vpg ", //Admin needs to ensure that this value is same as flavor "mandatory": "True",parameter in HOT "architectureattribute_value": "generic<Blank>", "hpa-feature-attributes": [ } { "hpa-attribute-key": "numVirtualCpu", "hpa-attribute-value": "6", "operator": "=", "unit": "" }, ] } ], },"flavorProperties": [ { "hpa-feature": "basicCapabilitiesqosIntentCapabilities", "mandatory": "True", "architecture": "generic", "hpa-version": "v1", "directives": [], "hpa-feature-attributes": [ { "hpa-attribute-key":"Infrastructure "virtualMemSize"Resource Isolation for VNF", "hpa-attribute-value": "6Burstable QoS", "operator": "=", "unit": "GB" }, {"hpa-attribute-key":"Burstable QoS Oversubscription Percentage", "hpa-attribute-value": "25","operator": "=", "unit": ""}, ] ] }, }, { ] "hpa-feature": "basicCapabilities", } ] } } # #Example "mandatory"2: "True"virtual firewall vfw, Guaranteed QoS #vCPE: Infrastructure Resource Isolation for VNF with Guaranteed QoS # { "architectureservice": "genericcloudPolicy", "hpa-feature-attributes"policyName": ["oofCasablanca.cloudPolicy_vfw", {"hpa-attribute-key"description": "InfrastructureCloud Resource Isolationpolicy for VNFvfw", "hpa-attribute-valuetemplateVersion": "Guaranteed QoS0.0.1", "operatorversion": "=1.0", "unitpriority": "3"}, "riskType": "test", "riskLevel": "2", ]"guard": "False", "content": { "resources": "vfw", } "identity": "cloudPolicy_vfw", ] "policyScope": ["vfw", "US", "INTERNATIONAL", "ip", "vfw"], } ]"policyType": "hpaPolicy", } } "flavorFeatures": #[ #Example 2: vFW, Pcie Passthrough #one VNFC(VFC){ with two Pcie Passthrough requirements # { "service": "hpaPolicyid", "policyName": "oofCasablanca<vdu.hpaPolicy_vFWName>", "description": "HPA policy for vFW", "templateVersiontype": "0.0.1"vnfc/tocsa.nodes.nfv.Vdu.Compute", "version": "1.0", "priority": "3", "riskTypedirectives":[ "test", "riskLevel": "2", "guard": "False", "content": { "resources": "vFW", "identity": "hpaPolicy_vFW", "policyScopetype": ["vFWflavor_directives", "US", "INTERNATIONAL", "ip", "vFW"], "policyType": "hpaPolicy", "flavorFeaturesattributes": [ { "id" : "<vdu.Name>", { "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives":[ { "directive_name":"flavor", "attributes":[ { "attribute_name":" oof_returned_flavor_label_for_firewallvfw ", //Admin needs to ensure that this value is same as flavor parameter in HOT "attribute_value": "<Blank>" } ] } ], "flavorProperties": [ { "hpa-feature": "basicCapabilitiesqosIntentCapabilities", "mandatory": "True", "architecture": "generic", "hpa-version": "v1", "directives": [], "hpa-feature-attributes": [ {"hpa-attribute-key":"Infrastructure Resource Isolation for VNF", "hpa-attribute-value": "Guaranteed QoS","operator": "=", "unit": ""}, ] }, ] } {] } } # #Example 3: vDNS, Burstable QoS "hpa-feature": "pciePassthrough", & Infra HA #vDNS: Infrastructure Resource Isolation for VNF with Burstable QoS & Infrastructure HA # { "mandatoryservice": "TruecloudPolicy", "policyName": "oofCasablanca.cloudPolicy_vdns", "description": "Cloud policy for vdns", "architecturetemplateVersion": "generic0.0.1", "version": "1.0", "priority": "3", "directivesriskType" : ["test", "riskLevel": "2", "guard": "False", "content": { "resources": "vdns", "identity": "cloudPolicy_vdns", "directive_namepolicyScope": ["pciePassthrough_directivevgw", "US", "INTERNATIONAL", "ip", "vdns"], "policyType": "hpaPolicy", "attributesflavorFeatures": [ { { "attribute_name": "oof_returned_vnic_type_for_firewall_protected", "id" : "<vdu.Name>", "attribute_value"type": "direct""vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives":[ }, { { "attribute_nametype": "oof_returned_provider_network_for_firewall_protectedflavor_directives", "attribute_value": "physnet1""attributes":[ { } ] } "attribute_name":" oof_returned_flavor_label_for_vdns ", //Admin needs to ensure that this value is same as flavor parameter in HOT ], "attribute_value": "hpa-feature-attributes": [<Blank>" { "hpa-attribute-key": "pciVendorId", "hpa-attribute-value": "1234", "operator": "=", "unit": "" },} ] { "hpa-attribute-key": "pciDeviceId", "hpa-attribute-value": "5678", "operator": "=", "unit": "" }, } ], { "hpa-attribute-keyflavorProperties": "pciCount", "hpa-attribute-value": "1", "operator": ">=", "unit": "" }[ ] }, { "hpa-feature": "pciePassthroughqosIntentCapabilities", "mandatory": "True", "architecture": "generic", "directiveshpa-version" : [ "v1", { "directive_name"directives": "pciePassthrough_directive", [], "hpa-feature-attributes": [ {"hpa-attribute-key":"Infrastructure Resource Isolation for VNF", { "hpa-attribute_name-value": "oof_returned_vnic_type_for_firewall_unprotectedBurstable QoS","operator": "=", "unit": ""}, {"hpa-attribute-key":"Burstable QoS Oversubscription Percentage", "hpa-attribute-value": "25","operator": "=", "unit": ""}, "attribute_value": "direct" ] }, } { { "attribute_name"hpa-feature": "oof_returned_provider_for_firewall_unprotectedbasicCapabilities", "mandatory": "True", "attribute_valuearchitecture": "physnet2generic", "hpa-version": "v1", } "directives": [], ] } ], ""hpa-feature-attributes": [ { "hpa-attribute-key": "pciVendorId"Infrastructure High Availability for VNF", "hpa-attribute-value": "3333", "operator": "=", "unit": "" }, ] { "hpa-attribute-key": "pciDeviceId", "hpa-attribute-value": "7777", "operator": "=", "unit": "" }, ] { "hpa-attribute-key": "pciCount", "hpa-attribute-value": "1", "operator": ">=", "unit": ""} ] } } # #Example 4: vDNS, Guaranteed QoS & Infra HA #vDNS: Infrastructure ]Resource Isolation for VNF with Burstable QoS & Infrastructure HA # }{ "service": "cloudPolicy", "policyName": ]"oofCasablanca.cloudPolicy_vdns", "description": "Cloud policy for vdns", } "templateVersion": "0.0.1", ] "version": "1.0", } } |
HAS Homing Response after changes
Accordingly, the data structure 'directives' will also be added inside OOF HAS response. Since currently the pcie_directives can be get from either Policy or AAI, HAS still need to process the pcie_directives.
...
title | Sample directive data in AAI |
---|
hpa-feature=”pciePassthrough”,
architecture=”{hw_arch}",
version=”v1”,
...
Hpa-attribute-key
...
Hpa-attribute-value
...
pciVendorId
...
2345
...
pciDeviceId
...
6789
...
pciCount
...
1
...
directive
...
[
{"attribute_name": "vnic-type", "attribute_value": "direct"},
{"attribute_name": "physical-network", "attribute_value": "physnet2"},
]
'id' and 'type' will help VF-C to filter one VDU(VNFC in HEAT accordingly), and attributes inside will be used to pass down values of SRIOV NIC information.
In order to make the response more generic and extensible, all the attributes added will be add inside that 'directive' data block. Please find the sample below for vG.
Status - Done
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
{ "plans": [ { "status": "done", "id": "plan_id", "name": "Plan Name 1", "links": [ ["priority": "3", "riskType": "test", "riskLevel": "2", "guard": "False", "content": { "resources": "vdns", "identity": "cloudPolicy_vdns", "policyScope": ["vgw", "US", "INTERNATIONAL", "ip", "vdns"], "policyType": "hpaPolicy", "flavorFeatures": [ { "id" : "<vdu.Name>", "type":"vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives":[ { "type":"flavor_directives", "attributes":[ { "attribute_name":" oof_returned_flavor_label_for_vdns ", //Admin needs to ensure that this value is same as flavor parameter in HOT "attribute_value": "<Blank>" } ] } ], "flavorProperties": [ { "hpa-feature": "qosIntentCapabilities", "mandatory": "True", "architecture": "generic", "hpa-version": "v1", "directives": [], "hpa-feature-attributes": [ {"hpa-attribute-key":"Infrastructure Resource Isolation for VNF", "hpa-attribute-value": "Guaranteed QoS","operator": "=", "unit": ""}, ] }, { "hpa-feature": "basicCapabilities", "mandatory": "True", "architecture": "generic", "hpa-version": "v1", "directives": [], "hpa-feature-attributes": [ {"hpa-attribute-key":"Infrastructure High Availability for VNF", "hpa-attribute-value": "","operator": "", "unit": ""}, ] }, ] } ] } } |
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#
#Example 1: vFW, Basic Capability + sriovNICNetwork + Cloud Agnostic Guaranteed QoS
#one VNFC(VFC) with one basic capability requirement
#
{
"service": "hpaPolicy",
"policyName": "oofCasablanca.hpaPolicy_vFW",
"description": "HPA policy for vFW",
"templateVersion": "0.0.1",
"version": "1.0",
"priority": "3",
"riskType": "test",
"riskLevel": "2",
"guard": "False",
"content": {
"resources": "vFW",
"identity": "hpaPolicy_vFW",
"policyScope": ["vFW", "US", "INTERNATIONAL", "ip", "vFW"],
"policyType": "hpaPolicy",
"flavorFeatures": [
{
"id" : "<vdu.Name>",
"type":"vnfc/tocsa.nodes.nfv.Vdu.Compute",
"directives":[
{
"type":"flavor_directives",
"attributes":[
{
"attribute_name":" oof_returned_flavor_label_for_firewall ", //Admin needs to ensure that this value is same as flavor parameter in HOT
"attribute_value": "<Blank>"
}
]
}
],
"flavorProperties": [
{
"hpa-feature": "basicCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{ "hpa-attribute-key": "numVirtualCpu", "hpa-attribute-value": "6", "operator": "=", "unit": "" }
]
},
{
"hpa-feature": "basicCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{ "hpa-attribute-key": "virtualMemSize", "hpa-attribute-value": "6", "operator": "=", "unit": "GB" }
]
},
{
"hpa-feature": "sriovNICNetwork",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives" : [
{
"type": "sriovNICNetwork_directives",
"attributes": [
{ "attribute_name": "oof_returned_vnic_type_for_firewall_protected",
"attribute_value": "direct"
},
{ "attribute_name": "oof_returned_provider_network_for_firewall_protected",
"attribute_value": "physnet1"
}
]
}
],
"hpa-feature-attributes": [
{ "hpa-attribute-key": "pciVendorId", "hpa-attribute-value": "1234", "operator": "=", "unit": "" },
{ "hpa-attribute-key": "pciDeviceId", "hpa-attribute-value": "5678", "operator": "=", "unit": "" },
{ "hpa-attribute-key": "pciCount", "hpa-attribute-value": "1", "operator": ">=", "unit": "" },
{ "hpa-attribute-key": "physicalNetwork", "hpa-attribute-value": "physnet1", "operator": "=", "unit": "" }
]
},
{
"hpa-feature": "sriovNICNetwork",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives" : [
{
"type": "sriovNICNetwork_directives",
"attributes": [
{ "attribute_name": "oof_returned_vnic_type_for_firewall_unprotected",
"attribute_value": "direct"
}
{ "attribute_name": "oof_returned_provider_for_firewall_unprotected",
"attribute_value": "physnet2"
}
]
}
],
"hpa-feature-attributes": [
{ "hpa-attribute-key": "pciVendorId", "hpa-attribute-value": "3333", "operator": "=", "unit": "" },
{ "hpa-attribute-key": "pciDeviceId", "hpa-attribute-value": "7777", "operator": "=", "unit": "" },
{ "hpa-attribute-key": "pciCount", "hpa-attribute-value": "1", "operator": ">=", "unit": "" },
{ "hpa-attribute-key": "physicalNetwork", "hpa-attribute-value": "physnet1", "operator": "=", "unit": "" }
]
},
{
"hpa-feature": "qosIntentCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{"hpa-attribute-key":"Infrastructure Resource Isolation for VNF", "hpa-attribute-value": "Guaranteed QoS","operator": "=", "unit": ""},
]
}
]
}
]
}
}
#
#Example two: vFW, basicCapabilities, hugePages, sriovNICNetwork, cpuPinning.
#one VNFC(VFC) with basic capablity requirements, cpuPinning requirement and huge page requirement.
#the other VNFC(VFC) with basic capability requirements and sriovNICNetwork requirements.
#
{
"service": "hpaPolicy",
"policyName": "oofCasablanca.hpaPolicy_vFW",
"description": "HPA policy for vFW",
"templateVersion": "0.0.1",
"version": "1.0",
"priority": "3",
"riskType": "test",
"riskLevel": "2",
"guard": "False",
"content": {
"resources": "vFW",
"identity": "hpaPolicy_vFW",
"policyScope": ["vFW", "US", "INTERNATIONAL", "ip", "vFW" ],
"policyType": "hpaPolicy",
"flavorFeatures": [
{
"id": "<vdu.Name>",
"type": "vnfc/tocsa.nodes.nfv.Vdu.Compute",
"directives": [
{
"type": "flavor_directives",
"attributes": [
{
"attribute_name": " oof_returned_flavor_label_for_firewall ",
"attribute_value": "<Blank>"
}
]
}
],
"flavorProperties": [
{
"hpa-feature": "qosIntentCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{"hpa-attribute-key": "Infrastructure Resource Isolation for VNF", "hpa-attribute-value": "Guaranteed QoS", "operator": "=", "unit": ""}
]
},
{
"hpa-feature": "basicCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{ "hpa-attribute-key": "numVirtualCpu", "hpa-attribute-value": "6", "operator": "=", "unit": "" }
]
},
{
"hpa-feature": "basicCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{ "hpa-attribute-key": "virtualMemSize", "hpa-attribute-value": "6", "operator": "=", "unit": "GB" }
]
},
{
"hpa-feature": "sriovNICNetwork",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [
{
"type": "sriovNICNetwork_directives",
"attributes": [
{
"attribute_name": "oof_returned_vnic_type_for_firewall_protected",
"attribute_value": "direct"
},
{
"attribute_name": "oof_returned_provider_network_for_firewall_protected",
"attribute_value": "physnet1"
}
]
}
],
"hpa-feature-attributes": [
{"hpa-attribute-key": "pciVendorId", "hpa-attribute-value": "1234", "operator": "=", "unit": ""},
{"hpa-attribute-key": "pciDeviceId", "hpa-attribute-value": "5678", "operator": "=", "unit": ""},
{"hpa-attribute-key": "pciCount", "hpa-attribute-value": "1", "operator": ">=", "unit": ""},
{ "hpa-attribute-key": "physicalNetwork", "hpa-attribute-value": "physnet1", "operator": "=", "unit": "" }
]
},
{
"hpa-feature": "sriovNICNetwork",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [
{
"type": "sriovNICNetwork_directives",
"attributes": [
{
"attribute_name": "oof_returned_vnic_type_for_firewall_unprotected",
"attribute_value": "direct"
},
{
"attribute_name": "oof_returned_provider_for_firewall_unprotected",
"attribute_value": "physnet2"
}
]
}
],
"hpa-feature-attributes": [
{"hpa-attribute-key": "pciVendorId", "hpa-attribute-value": "3333", "operator": "=", "unit": ""},
{"hpa-attribute-key": "pciDeviceId", "hpa-attribute-value": "7777", "operator": "=", "unit": ""},
{"hpa-attribute-key": "pciCount", "hpa-attribute-value": "1", "operator": ">=", "unit": ""},
{ "hpa-attribute-key": "physicalNetwork", "hpa-attribute-value": "physnet1", "operator": "=", "unit": "" }
]
}
]
},
{
"id": "<vdu.Name>",
"type": "vnfc/tocsa.nodes.nfv.Vdu.Compute",
"directives": [
{
"type": "flavor_directives",
"attributes": [
{
"attribute_name": " oof_returned_flavor_label_for_generator ",
"attribute_value": "<Blank>"
}
]
}
],
"flavorProperties": [
{
"hpa-feature": "qosIntentCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{"hpa-attribute-key": "Infrastructure Resource Isolation for VNF", "hpa-attribute-value": "Guaranteed QoS", "operator": "=", "unit": ""}
]
},
{
"hpa-feature": "basicCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{ "hpa-attribute-key": "numVirtualCpu", "hpa-attribute-value": "6", "operator": "=", "unit": "" }
]
},
{
"hpa-feature": "basicCapabilities",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{ "hpa-attribute-key": "virtualMemSize", "hpa-attribute-value": "6", "operator": "=", "unit": "GB" }
]
},
{
"hpa-feature": "cpuPinning",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{"hpa-attribute-key": "logicalCpuThreadPinningPolicy", "hpa-attribute-value": "prefer", "operator": "=", "unit": ""}
]
},
{
"hpa-feature": "cpuPinning",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{"hpa-attribute-key": "logicalCpuPinningPolicy", "hpa-attribute-value": "dedicated", "operator": "=", "unit": ""}
]
},
{
"hpa-feature": "hugePages",
"mandatory": "True",
"architecture": "generic",
"hpa-version": "v1",
"directives": [],
"hpa-feature-attributes": [
{"hpa-attribute-key": "memoryPageSize", "hpa-attribute-value": "2", "operator": "=", "unit": "GB"}
]
}
]
}
]
}
}
|
Sample HPA capability data in AAI
Here lists the sample HPA capability data inside AAI for the examples above:
Section | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
HAS Homing Response after changes
Accordingly, the data structure 'directives' will also be added inside OOF HAS response.
'id' and 'type' will help VF-C to filter one VDU(VNFC in HEAT accordingly), and attributes inside will be used to pass down values of SRIOV NIC information.
In order to make the response more generic and extensible, all the attributes added will be add inside that 'directive' data block. Please find the sample below for the two examples for vFW.
Status - Done
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#
# Example one: Only one vnfc/vdu inside such VNF, with requirements on basic capability and sriovNICNetwork.
#
{
"plans": [
{
"status": "done",
"id": "plan_id",
"name": "Plan Name 1",
"links": [
[
{
"href": "http://conductor:8091/v1/plans/plan_id",
"rel": "self"
}
]
],
"recommendations": [
{
"vFW": {
"inventory_provider": "aai",
"candidate": {
"candidate_id": "DLLSTX1A",
"cloud_owner": "CloudOwner1",
"inventory_type": "cloud",
"location_id": "DLLSTX1A",
"location_type": "openstack-cloud"
},
"attributes": {
"directives": {
"directives": [
{
"id": "<vdu.Name>",
"type": "<vnfc/tocsa.nodes.nfv.Vdu.Compute>",
"directives": [
{
"type": "flavor_directives",
"attributes": [
{
"attribute_name": "oof_returned_flavor_label_for_firewall",
"attribute_value": "vim_flavor_X"
}
]
},
{
"type": "sriovNICNetwork_directives",
"attributes": [
{
"attribute_name": "oof_returned_vnic_type_for_firewall_protected",
"attribute_value": "direct"
},
{
"attribute_name": "oof_returned_provider_network_for_firewall_protected",
"attribute_value": "physnet1"
}
]
},
{
"type": "sriovNICNetwork_directives",
"attributes": [
{
"attribute_name": "oof_returned_vnic_type_for_firewall_unprotected",
"attribute_value": "direct"
},
{
"attribute_name": "oof_returned_provider_network_for_firewall_unprotected",
"attribute_value": "physnet2"
}
]
}
]
}
]
},
"cloud_owner": "CloudOwner1",
"physical-location-id": "DLLSTX1A",
"cloud_version": "3.0",
"vim-id": "CloudOwner1_DLLSTX1A"
}
}
}
]
}
]
}
#
# Example two: Two vnfc/vdu inside such VNF. One with requirements on basic capability and sriovNICNetwork and the other one with requirements on basic capabilities, cpu pinning and huge pages.
#
{
"plans": [
{
"status": "done",
"id": "plan_id",
"name": "Plan Name 2",
"links": [
[
{
"href": "http://conductor:8091/v1/plans/plan_id",
"rel": "self"
}
]
],
"recommendations": [
{
"vFW": {
"inventory_provider": "aai",
"candidate": {
"candidate_id": "DLLSTX1A",
"cloud_owner": "CloudOwner1",
"inventory_type": "cloud",
"location_id": "DLLSTX1A",
"location_type": "openstack-cloud"
},
"attributes": {
"directives":{
"directives": [
{
"id": "<vdu.Name>",
"type": "<vnfc/tocsa.nodes.nfv.Vdu.Compute>",
"directives": [
{
"type": "flavor_directives",
"attributes": [
{
"attribute_name": "oof_returned_flavor_label_for_firewall",
"attribute_value": "vim_flavor_X"
}
]
},
{
"type": "sriovNICNetwork_directives",
"attributes": [
{
"attribute_name": "oof_returned_vnic_type_for_firewall_protected",
"attribute_value": "direct"
},
{
"attribute_name": "oof_returned_provider_network_for_firewall_protected",
"attribute_value": "physnet1"
}
]
},
{
"type": "sriovNICNetwork_directives",
"attributes": [
{
"attribute_name": "oof_returned_vnic_type_for_firewall_unprotected",
"attribute_value": "direct"
},
{
"attribute_name": "oof_returned_provider_network_for_firewall_unprotected",
"attribute_value": "physnet2"
}
]
}
]
},
{
"id": "<vdu.Name>",
"type": "<vnfc/tocsa.nodes.nfv.Vdu.Compute>",
"directives": [
{
"type": "flavor_directives",
"attributes": [
{
"attribute_name": "oof_returned_flavor_label_for_generator",
"attribute_value": "vim_flavor_Y"
}
]
}
]
}
]
}
},
"cloud_owner": "CloudOwner1",
"physical-location-id": "DLLSTX1A",
"cloud_version": "3.0",
"vim-id": "CloudOwner1_DLLSTX1A"
}
}
]
}
]
}
|
OOF Asynchronous Response after changes
The asynchronous will be changed accordingly. And it also aligns with the schema from Multicloud( Gerrit link: https://gerrit.onap.org/r/#/c/60691/).
Here provides two asynchronous responses according to the two examples.
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
# # Example one: Only one vnfc/vdu inside such VNF, with requirements on basic capability and sriovNICNetwork. # { "requestId": "xxxx", "transactionId": " xxxx ", "statusMessage": " xxxx ", "requestStatus": "completed", "solutions": { "placementSolutions": [ [ { "resourceModuleName": " vFW ", "serviceResourceId": " xxxx ", "solution": { "identifierType": "serviceInstanceId", "identifiers": [ " xxxx " ], "cloudOwner": "CloudOwner1 " }, "assignmentInfo": [ { "key": "isRehome", "value": "false" }, { "key": "locationId", "value": "DLLSTX1A" }, { "key": "locationType", "value": "openstack-cloud" }, { "key": "vimId", "value": "CloudOwner1_DLLSTX1A" }, { "key": "physicalLocationId", "value": "DLLSTX1223" }, { "key": "oof_directives", "value": { "directives": [ { "id": "<vdu.name>", "type": "vnfc/tocsa.nodes.nfv.Vdu.Compute", "directives": [ { "type": "flavor_directives", "attributes": [ { "attribute_name": "oof_returned_flavor_label_for_firewall", "attribute_value": "<flavor_name>" } ] }, { "type": "sriovNICNetwork_directives", "attributes": [ { "attribute_name": "oof_returned_vnic_type_for_firewall_protected", "attribute_value": "direct" }, { "attribute_name": "oof_returned_provider_network_for_firewall_protected", "attribute_value": "physnet1" } ] }, { "type": "sriovNICNetwork_directives", "attributes": [ { "attribute_name": "oof_returned_vnic_type_for_firewall_unprotected", "attribute_value": "direct" }, { "attribute_name": "oof_returned_provider_network_for_firewall_unprotected", "attribute_value": "physnet2" } ] } ] }, { "id": "", "type": "vnf", "directives": [ { "type": " ", "attributes": [ { "attribute_name": " ", "attribute_value": " " } ] } { "href": "http://conductor:8091/v1/plans/plan_id", ] "rel": "self" } ] ], } "recommendations": [ { } "vG": { ] } "inventory_provider": "aai", ] ], "candidatelicenseSoutions": {[ { "candidate_idresourceModuleName": "DLLSTX1Astring", "serviceResourceId": "string", "cloud_owner": "CloudOwner1", "entitlementPoolUUID": [ "inventory_type": "cloud",string" ], "location_idlicenseKeyGroupUUID": "DLLSTX1A",[ "string" "location_type": "openstack-cloud" ], }, "entitlementPoolInvariantUUID": [ "attributesstring": { ], "directiveslicenseKeyGroupInvariantUUID": [ "string" {"id": "<vdu.Name>", ] } ] "type": "<vnfc/vdu>",} } # # Example two: Two vnfc/vdu inside such VNF. One with requirements on basic "directives": [ {"type": "flavor_directivescapability and sriovNICNetwork and the other one with requirements on basic capabilities, cpu pinning and huge pages. # { "requestId": "xxxx", "transactionId": " xxxx ", "statusMessage": " xxxx ", "requestStatus": "completed", "attributessolutions": [{ "placementSolutions": [ [ {"attribute_name":"oof_returned_flavor_label", "attribute_value"resourceModuleName": "vim_flavor_X vFW ", "serviceResourceId": " xxxx ", } "solution": { ] "identifierType": "serviceInstanceId", "identifiers": [ }, " xxxx " {"type": "pciePassthrough_directive", ], "attributescloudOwner": ["CloudOwner1 " }, {"attribute_nameassignmentInfo": "vnic_label_1",[ "attribute_value{ "key": "directisRehome", "value": "false" }, }, { {"attribute_namekey": "physicalNetworklocationId", "attribute_value": "physnet1DLLSTX1A" }, } { "key": "locationType", "value": "openstack-cloud" ] }, }, { "key": "vimId", {"typevalue": "pciePassthroughCloudOwner1_directiveDLLSTX1A", }, "attributes": [ { "key": "physicalLocationId", {"attribute_namevalue": "vnic_label_2",DLLSTX1223" }, { "attribute_valuekey": "directoof_directives", "value": { }, {"attribute_name":"physicalNetwork", "directives": [ { "attribute_value": "physnet2" "id": "<vdu.name>", } "type": "vnfc/vdu", ] "directives": [ } ] { "type": "flavor_directives", }, "cloud_ownerattributes": "CloudOwner1", [ "physical-location-id": "DLLSTX1A", { "cloud_version": "3.0", "vim-id": "CloudOwner1_DLLSTX1A" } }"attribute_name": "oof_returned_flavor_label_for_firewall", }, { "vGMuxInfraattribute_value": "<flavor_name>" { "attributes": { } "host_id": "vgmux_host_name", "cloud_owner": "CloudOwner1", ] "physical-location-id": "DLLSTX1A", }, "service_instance_id": "21d5f3e8-e714-4383-8f99-cc480144505a", "cloud_version": "3.0", { "vim-idtype": "CloudOwner1sriovNICNetwork_DLLSTX1Adirectives", }, "inventory_providerattributes": "aai", [ "service_resource_id": "12345", { "candidate": { "isattribute_rehomename": "falseoof_returned_vnic_type_for_firewall_protected", "location_id "attribute_value": "DLLSTX1A",direct" "inventory_type": "service", }, "candidate_id": "21d5f3e8-e714-4383-8f99-cc480144505a", "host_id": "vgmux_host_name", { "cloud_owner": "CloudOwner1", "locationattribute_typename": "openstack-cloud"oof_returned_provider_network_for_firewall_protected", } } "attribute_value": "physnet1" } ] } ] } |
OOF Asynchronous Response after changes
The asynchronous will be changed accordingly. And it also aligns with the schema from Multicloud( Gerrit link: https://gerrit.onap.org/r/#/c/60691/).
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
{ "requestId": "xxxx", "transactionId": " xxxx ", "statusMessage": " xxxx ", } "requestStatus": "completed", "solutions": { "placementSolutions": [ [ ] { "resourceModuleName": " vG ", "serviceResourceId": " xxxx "}, "solution": { { "identifierTypetype": "serviceInstanceIdsriovNICNetwork_directives", "identifiers": [ "attributes": [ " xxxx " ], { "cloudOwner": " xxxx " }, "assignmentInfoattribute_name": [ "oof_returned_vnic_type_for_firewall_unprotected", { "key":"isRehome", "attribute_value": "falsedirect" }, { "key":"locationId", }, "value":"DLLSTX1A" }, { "key":"locationType", { "value":"openstack-cloud" }, { "keyattribute_name":"vimId "oof_returned_provider_network_for_firewall_unprotected", "value":"rackspace_DLLSTX1A" }, { "key"attribute_value": "physicalLocationIdphysnet2", "value":"DLLSTX1223" }, } { "key":"oofDirectives", ] "value": { "directives":[ } { "id":"<vdu.name>", ] "type":"vnfc", }, "directives":[ { "id": "<vdu.name>", { "type":"flavor_directive "vnfc/vdu", "attributes":[ directives": [ { "attribute_nametype": "oof_returned_flavor_labeldirectives", "attribute_valueattributes":"<flavor_name>" [ #VIM Flavor, which oof seleted. { } "attribute_name": "oof_returned_flavor_label_for_generator", ] }, "attribute_value": "<flavor_name>" { "type": "pciePassthrough_directive", } "attributes":[ ] {"attribute_name":"vnic_label_1", "attribute_value":"direct"}, ] {"attribute_name":"provider_network", "attribute_value":"physnet1"} }, ] { }, "id": " ", { "type": "pciePassthrough_directivevnf", "attributesdirectives": [ { {"attribute_name"type": "vnic_label_2 ", "attribute_value":"direct"}, "attributes": [ { {"attribute_name": "provider_network ", "attribute_value":"physnet2"} ] "attribute_value": " " } } ] ] } ] } ] } } ] } ] ], "licenseSoutions": [ { "resourceModuleName": "string", "serviceResourceId": "string", "entitlementPoolUUID": [ "string" ], "licenseKeyGroupUUID": [ "string" ], "entitlementPoolInvariantUUID": [ "string" ], "licenseKeyGroupInvariantUUID": [ "string" ] } ] } } |