Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Summary: Edge Scoping 

...

  • Cloud SW Capability example 
    • Cloud region "x" with SR-IOV, GPU, Min-guarantee support
    • Cloud region "y" with SR-IOV support
  • Cloud HW Capability example 
    • Resource cluster "xa" in Cloud region "x" with SR-IOV and GPU support 
    • Resource cluster "xb" in Cloud region "x" with GPU support
    • Resource cluster "ya" in Cloud region "y" with SR-IOV support

Note 3:

  • 5G Service/VNF placement example
    • Constraints used by Optimization Framework (OOF)
      • 5G CU-UP VNF location to be fixed to a specific physical DC based on 5G DU, bounded by a max distance from 5G DU

    • Optimization Policy used by OOF
      • Choose optimized cloud region (or instance) for the placement of 5G CU UP for subscriber group based on the above constraints

Note 4:

  • For the 5G Service/VNF placement example in Note 3
    • 5G CU-UP VNF preferably maps to a specific Cloud region & Physical DC End Point 

Note 5:

  • For the 5G Service/VNF placement example in Note 3
    • OOF will pass the Physical DC End Point to SO as a opaque data

Note 6:

  • For the 5G Service/VNF placement example in Note 3
    • SO passes the Physical DC End Point to Multi-Cloud as a opaque data, besides the Cloud Region

Cloud-agnostic Placement/Networking & Homing Policies (Phase 1 - Casablanca MVP, Phase 2 - Stretch Goal)

...

Code Block
languagepy
themeEmacs
titleSO <-> MC Cloud-Agnostic Workload Deployment Policy API
linenumberstrue
collapsetrue
#
#Spec Reference: https://wiki.onap.org/display/DW/Edge+Scoping+MVP+for+Casablanca+-+ONAP+Enhancements#EdgeScopingMVPforCasablanca-ONAPEnhancements-Cloud-agnosticPlacement/Networking&HomingPolicies(Phase1-CasablancaMVP,Phase2-StretchGoal)
#
#The same information is opaquely passed from OOF to SO
#

from jsonschema import validate

oof_to_so_and_so_to_mc_policyapi_apiext_request_schema = {
     "type"  : "objectvnfc-directives",: {
   "properties" : {          # vnfc is not used in the OOF->MC path for R3, this is kept to be consistent
        # with the SO-> MC path
  "type": "array",
                "items": { "$ref": "#/definitions/xxx1" }
        },
             "vnfcdefinitions": {"type":
"string"},                  "deployment-intentxxx1": {"type": "object"},
                        "propertiestype": :"object",
{                        "properties" : #{
Azure, K8S, OpenStack, VMware VIO, Wind River Titanium                         "Cloud# Type (Cloud Provider)": {"type", "string"},VNFC name/id
                            "Infrastructure High Availability for VNF "vnfc-name-id": {"type",: "booleanstring"},

                        "Infrastructure Resource Isolation for VNF": {"type", "string"},  # cloud-specific realization of the specified deployment intent
                # Infrastructure Resource Isolation for VNF           # happens in multi-cloud in the cloud-specific plugin
      # Only certain pre-defined over-subscription values are allowed to                  "directive-list": {
     # reflect practical deployment and simplify implementation for R3                         "Infrastructure Resource Isolation for VNF - Burstable QoS Oversubscription Percentage": {"type": "int"},"type": "array",
                        },         },       "items": { "required$ref": ["deployment-intent"]"#/definitions/xxx2" }
 #    #Example 1: vCPE, Burstable QoS #vCPE: Infrastructure Resource Isolation for VNF with Burstable QoS # so_mc_policy_api_instance1 = {         "vnfc": "vgw" },
        "deployment-intent": {                   "Cloud Type (Cloud Provider)   "definitions": "VMware{
VIO",                 "Infrastructure Resource Isolation for VNF": "Burstable QoS",                 "Infrastructure Resource Isolation for VNF - Burstable QoS Oversubscription Percentage": 25,"xxx2": {
                     }, }  # #Example 2: #vCPE: Infrastructure Resource Isolation for VNF with Guaranteed QoS # so_mc_policy_api_instance2 = {         "vnfctype": "vgwobject",
        "deployment-intent": {                     "Infrastructure Resource Isolation for VNF": "Guaranteed QoS",         }, }  # #Example"properties" 3: #vDNS:{
 Infrastructure HA for VNF & Infrastructure Resource Isolation for VNF with Burstable QoS # so_mc_policy_api_instance3 = {         "vnfc": "vdns",         "deployment-intent": {                 "Cloud Type (Cloud Provider)": "VMware VIO",
  #Intent, e.g. Infrastructure High Availability for VNF
             "Infrastructure High Availability for VNF": True,                 "Infrastructure Resource Isolation for VNF": "Burstable QoS",               "attribute_name": {"type", "Infrastructurestring"},
 Resource Isolation for VNF - Burstable QoS Oversubscription Percentage": 25,         }, }  # # Example 4: # vDNS: Infrastructure HA for VNF & Infrastructure Resource Isolation for VNF # with Guaranteed QoS # so_mc_policy_api_instance4 = {         "vnfc": "vdns", #Optional
       "deployment-intent": {                 "Infrastructure High Availability for VNF": True,                            "attribute_value": {"type", "string"},

                                                        "directive-list-inner": {
                                                                "type": "array",
                                                                "items": { "$ref": "#/definitions/xxx3" }
                                                        },
                                                        "definitions": {
                                                                "xxx3": {
                                                                        "type": "object",
                                                                        #Intent, e.g. Infrastructure High Availability for VNF
                                                                        "attribute_name": {"type", "string"},
                                                                        #Optional
                                                                        "attribute_value": {"type", "string"},
                                                                },
                                                        },
                                                },
                                        },
                                },
                        },
                },
        },
}

#
#Example 1: vCPE, Burstable QoS
#vCPE: Infrastructure Resource Isolation for VNF with Burstable QoS
#
oof_to_so_and_so_to_mc_api_ext_request_instance1 = {
        "vnfc-directives": [
                {
                        "vnfc-name-id": "vgw",
                        "intent-directive-list": [
                                {
                                        "attribute_name": "Infrastructure Resource Isolation for VNF",
                                        "attribute_value": "Burstable QoS",
                                        "intent-directive-list-inner": [
                                                {
                                                        "attribute_name": "Infrastructure Resource Isolation for VNF - Burstable QoS Oversubscription Percentage",
                                                        "attribute_value": "25",
                                                },
                                        ],
                                },
                        ],
                },
                #
                #hpa is purely exemplary in this example
                #
                {
                        "vnfc-name-id": "vgw",
                        "hpa-directive-list": [
                                {
                                        "attribute_name": "sriov-param1",
                                        "attribute_value": "sriov-param1-value",
                                },
                        ],
                },
        ],
}

#
#Example 2:
#vCPE: Infrastructure Resource Isolation for VNF with Guaranteed QoS
#
oof_to_so_and_so_to_mc_api_ext_request_instance2 = {
        "vnfc-directives": [
                {
                        "vnfc-name-id": "vdns",
                        "intent-directive-list": [
                                {
                                        "attribute_name": "Infrastructure Resource Isolation for VNF",
                                        "attribute_value": "Guaranteed QoS",
                                },
                        ],
                },
        ],
}

#
#Example 3:
#vDNS: Infrastructure HA for VNF & Infrastructure Resource Isolation for VNF with Burstable QoS
#
oof_to_so_and_so_to_mc_api_ext_request_instance3 = {
        "vnfc-directives": [
                {
                        "vnfc-name-id": "vdns",
                        "intent-directive-list": [
                                {
                                        "attribute_name": "Infrastructure High Availability for VNF",
                                },
                                {
                                        "attribute_name": "Infrastructure Resource Isolation for VNF",
                                        "attribute_value": "Burstable QoS",
                                        "intent-directive-list-inner": [
                                                {
                                                        "attribute_name": "Infrastructure Resource Isolation for VNF - Burstable QoS Oversubscription Percentage",
                                                        "attribute_value": "25",
                                                },
                                        ],
                                },
                        ],
                },
        ],
}

#
# Example 4:
# vDNS: Infrastructure HA for VNF & Infrastructure Resource Isolation for VNF
# with Guaranteed QoS
#
oof_to_so_and_so_to_mc_api_ext_request_instance4 = {
        "vnfc-directives": [
                {
                        "vnfc-name-id": "vdns",
                        "intent-directive-list": [
                                {
                                        "attribute_name": "Infrastructure High Availability for VNF",
                                },
                                {
                                        "attribute_name": "Infrastructure Resource Isolation for VNF",
                                        "attribute_value": "Guaranteed QoS",
                                },
                        ],
         "Infrastructure  Resource Isolation for VNF": "Guaranteed QoS"},
        }],
}

validate(oof_to_so_and_so_to_mc_policyapi_ext_apirequest_instance1, oof_to_so_and_so_to_mc_policyapi_apiext_request_schema)
validate(oof_to_so_and_so_to_mc_policyapi_ext_apirequest_instance2, oof_to_so_and_so_to_mc_policyapi_apiext_request_schema)
validate(oof_to_so_and_so_to_mc_policyapi_ext_apirequest_instance3, oof_to_so_and_so_to_mc_policyapi_apiext_request_schema)
validate(oof_to_so_and_so_to_mc_api_policyext_apirequest_instance4, oof_to_so_and_so_to_mc_policyapi_apiext_request_schema) 

Follow ups:

...

View file
namePromethus-aggregation.pdf
height250

ONAP Edge Analytics with DCAE/DMaaP independent of closed loop (Beyond Casablanca)

Value

  • 5G Analytics

ONAP ComponentLife cycle phaseEnhancements
OOM - ONAP CentralDeploy
  • Separate ONAP-edge Instance per 'edge domain', (ie., separate from onap-central instance, of course)
    • Note: Independent of any Edge CP's Orchestration components.
  • SP uses a central-OOM with a 'policy' for deployment of an onap-edge instance, e.g., xyz edge provider with abc components, etc.
    • However, onap-edge instance can be 'lighter weight' with subset of components needed (per MVP discussed below)
    • Desirable to managed as a separate K8s cluster (ie., separate from onap-central instance, of course) and, only for onap-edge use, ie., don't use for other 'workloads' like network apps or 3rd party apps
  • Central OOM to deploy the following ONAP edge instance
    • DMaaP with mirror capability

...