In Telco Cloud Automation, workflows are used to automate tasks that are otherwise executed manually by users. A workflow is a collection of steps that can be executed manually or automatically. The purpose of the workflow is to define a collection of administrative actions that implement a single task. For example, a workflow can configure a network function after its resources are allocated to the cloud.

Workflows are used to automate the following:
  • Tasks during Network Function (NF) and Network Service (NS) life cycle management operations - If the inputs of the LCM operation need to be dynamically computed or the task needs to be carried out by initializing scripts on the virtual machines, HELM, Kubernetes PODs, jobs, and operators, workflow supplements the end-to-end configuration of the NS and NF. This type of workflow is automatically executed as part of the LCM pre-operation or post-operation (before or after the resources of the NF / NS are manipulated). For example, a pre-operation is executed to determine the HTTP proxy used by the NF and a post-operation is executed to register the NF. 
  • Tasks that are operator specific - Allows the operator to automate tasks that are not part of LCM operation or are fully operator designed. For example, draining traffic from a selected NF.

Workflow Architecture

The following diagram illustrates the workflow architecture.

You can create workflows by using the TCA user interface. The embedded workflow designs are available in the Network Function and Network Service packages as raw files until the package is onboarded, and the workflow catalog entries are created from these raw files at the time of onboarding.

You can execute a workflow as part of the NF/NS Lifecycle Management operation or through the VMware Telco Cloud Automation user interface. After the workflow execution intent is created, the workflow executor evaluates the intent and executes it. To carry out the execution, the executor on TCA-M needs to contact the executors distributed on the TCA-CP instances. The executor on TCA-M either contacts the external systems directly or through vRealize Orchestrator (vRO). The choice between the two alternatives depends on the step to be executed. It is necessary to have the distributed execution not just from the scaling perspective but also constrained by network connectivity.

Networking Connectivity

Network connectivity is required so that the workflow executor can carry out the various tasks. The following diagram illustrates the network connectivity border conditions.

The system administrators can reach any system (TCA, TCA-CP, Kubernetes, vRO) directly. The other users have access to TCA-M only. Due to security reasons, only the unidirectional network model is supported; that is, the traffic can only be initiated between two entities from one direction minimizing the possible surfaces that can be attacked. Workflow designs consider the possible network connectivity.