Versions Compared

Key

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

...

  1. ETSI SOL001-based model orchestration leveraging Helm Processor needs to be sort out further. 
  2. Helm Processor realization (e.g., MultiCloud??, EMCO?? others??) will be discussed
  3. Placement realization (e.g., OOF?? others??) will be discussed


Sequence Steps:


#

Actor

Action

1

Designer

•Design ASD and/or CBA

2

Designer / SDC

•Onboard SOL004-based ASD package (could include CBA)

•Design Resource & Compose Resources into Service

•Enhance ASD (ASD’)

3

SDC

•Distribute Service CSAR to ONAP runtime components (SO, AAI, SDNC, etc.)

•Distribute ASD + ASD’ to Catalog Manager

•Distribute Helm Charts to Helm Repository (centralized)

•Distribute Images to Image Repository (centralized)

4

SO Client

•Start CNF service creation

5

SO

•S1: create service instance to AAI

•S2: resolve parameters

•S3: CDS returns assignment

•Process model & decide flows (in this case, Helm Orchestrator)

•Delegate Resource-level orchestration to Helm Orchestrator

•Pass ASD’ or its reference with input (resolved) parameters

6

Helm Orchestrator

•Retrieve ASD’ (and/or ASD : TBD) from Catalog Manager

7

Helm Orchestrator

•Retrieve Helm Charts from Helm Repository


Helm Orchestrator

•Transform ASD cloud artifacts  with parameters to K8S resource description

•Get additional data as needed

8,9

Placement

•Get placement information

10

Helm Orchestrator

•Send CNF creation request to K8S

11

k8S

•Retrieve images from Image Repository and process for CNF

12

SO

Update CNF to AAI

  1. Onboard package – this will ingest the package, and verify the integrity and authenticity of the package etc.
    1. SDC supports ASD packages in addition to ETSI packages
    2. both ASD and ETSI packages conform to ETSI SOL004
    3. SDC transforms vendor ASD to internal ASD (proposal: ASD specification = internal ASD specification)
  2. Store relevant information in repo – for internal organization and making the package available for deployment.
    1. SDC creates Service CSAR for the ASD AND ETSI VNF/CNFD
      1. Service CSAR includes both vendor ASD and internal ASD
    2. Descriptors will be stored in the Catalog Manager Repository
    3. Helm Charts will be stored in the Helm Repository
    4. Images will be stored in the Image Repository
  3. Receive deployment order, along with required parameters. The required parameters are the ones specified in the ASD under “lifecycleParameters”.
    1. SO receives incoming Service Requests and retrieves the corresponding Service Catalog
    2. So validates required parameters
  4. Fetch descriptors from Service package.
    1. SO decomposes incoming Service Requests into Resources
    2. If the resource is for CNF and ASD-based models, SO follows the ASD orchestration path
    3. If the resource is for ETSI-based models, SO delegates its orchestration to SO NFVO or VFC
  5. SO delegates ASD orchestration to the Helm Processor (Helm v3)
    1. SO passes Descriptor (ASD) information and required parameters (e.g., lifecycleParameters) to the Helm Processor
  6. Helm V3 handles internal ASD-based NF or application
    1. Helm V3 retrieves Helm Charts from the Repository
    2. Using received parameters and default values already in the chart to construct the value files (custom yaml files and will be stored in the database).
    3. With this input, Helm performs a chart render; i.e., translates the charts into concrete K8S resources descriptions.
  7. In the placement use case, the concrete K8S workload description (pod, daemonset, deployment, replicaset, statefulset, job, cronjobs, etc) and the ASD will be used by internal logic of orchestrator for placement decision.
  8. Perform placement decision – the placement function can parse the workload descriptors and ASD and use that information to select the appropriate cluster.
  9. Use Helm to install the application on a particular cluster with the values constructed in the Helm Processor
    1. Helm V3 does dry-run before real deployment; i.e., render templates with the right values
      1. If generating the manifest and verifying the YAML file are only purpose, helm template can be considered
    2. If dry-run is satisfied, Helm V3 sends its requests to K8S

...