Create Pool & Virtual Server (BIG-IP) - Workflow
  • 05 Feb 2024
  • Dark
    Light
  • PDF

Create Pool & Virtual Server (BIG-IP) - Workflow

  • Dark
    Light
  • PDF

Article Summary

Let’s move into the Create Pool & Virtual Server use case. We will begin by reviewing the Itential Pre-Builts that we are using for today’s exercise.

  • Create Pool and Members - F5
  • Create Virtual Server - F5

These Itential Pre-Builts are an excellent example of modular automations. They can be incorporated as steps in a larger automation very easily. We will incorporate these modular automations through the use of child jobs. A child job is a workflow nested within another workflow, allowing for the same workflows to be referenced in multiple automations. Rather than recreating the same workflow multiple times, we are reusing the same asset so that only one workflow needs to be maintained going forward.

Pre-Built Workflow Video

Step 1

From the Itential Automation Platform dashboard, click Automation Studio in the left navigation panel.

Step 2

Click Workflows to expand. 

Step 3

In the filter box, enter create pool to filter the workflow list.  Double-click Create Pool and Members- F5.

Step 4

IAP has four task types: Termination, Automatic, Manual and Operational. Let’s define these individually.

Every automation has Termination tasks at the beginning and end. All other tasks in the automation will be placed between the beginning and ending tasks. 

The green tasks represent Automatic tasks. These tasks will execute without intervention, but can also be restricted by scheduling when an automatic tasks will run. 

Next are the Manual tasks which are represented by grey tasks. These require human intervention and the workflow designer authorizes who can claim and work each manual task. 

The fourth task type is Operational tasks, which are purple. Operational Tasks are used to control workflows with conditional branches and loops and to manipulate runtime data. 

Step 5

The Create Pool and Members - F5 Pre-Built workflow utilizes IAG to configure the F5 load balancer. There are three main steps: a Pre-Check, provisioning, and a Post-Check. Those tasks are executed as REST calls from IAG.

Step 6
Filter for Create Virtual Server - F5.  

Step 7
Next, click on the Create Virtual Server - F5 workflow. Similar to the Create Pool and Members - F5 Pre-Built, the Create Virtual Server - F5 Pre-Built workflow has tasks for a Pre-Check, Provisioning, and a Post-Check.

Step 8

Now that we’ve reviewed the pre-built workflows, let’s review the JSON Form and the transformation the automation will use as part of our exercise. Click on JSON Forms in the left navigation window. Then click on the Create Pool and Virtual Server JSON Form.

Step 9

Similar to the JSON Form you created earlier in our use case, this JSON Form will be used to provide the inputs necessary to provision our pool, pool members and virtual server. It includes Drop Down, Text and Number elements. It also includes a Table element that will submit the data as an array of objects. 

We know that users will be submitting data using our form, but when doing that the values are not sent to the workflow individually as our workflow currently expects; they are sent in as a single variable called formData.  To handle this, we will need to transform the data.  To do that, we’ll use a pre-existing Transformation. 

Click on Transformations in the left navigation menu. 

Step 10

In the search box, begin entering Lab – F5 Create Pool and Virtual Server. The list of transformations will filter as you type. 

Select the Lab – F5 Create Pool and Virtual Server transformation. 

Step 11

The transformation appears. Use the zoom out / zoom in controls to view the entire transformation. For the purposes of this video, we have cropped the image and zoomed in so you can see all of the transformation’s variables.

The Incoming schema is how the formData variable data will be presented from the Create Pool and Virtual Server JSON Form. It is then broken apart into the individual variables required by our workflow in the Outgoing Schemas.

Workflow Video

Step 12

Now that you have reviewed the pre-built automations as well as the JSON Form and Transformation we will use in our use case, it is time to create our workflow. 

Click the + at the top of the left navigation panel.

Step 13

Select Workflow from the dropdown list. Name it Lab - Create Pool and Virtual Server - F5 - XX and click CREATE.

Step 14

A fresh workflow canvas opens. We need to add three tasks. A Transformation task and two Child Job tasks.

Step 15

Add the Transformation task by entering transformation into the Search box.  The task list is filtered.  Click and drag the Transformation task to the canvas, placing it to the right of the Start task.

Step 16

Next, we need to add two Child Job tasks to the canvas. Enter child into the search field and the list will filter. Click and drag two Child Job tasks to the right of the Transformation task. 

Step 17

The next step is to add transitions. Which will connect the START, Transformation and Child Job tasks together to form the workflow. This is done by clicking the first task, in this example the START task. A dotted line box will appear around the task. Click the dotted line and drag the transition to the next task.

Step 18

Repeat to connect the remaining tasks.

Step 19

We are ready to configure the tasks. Double click the Transformation task.

Step 20

Click the Details tab to give the task a name and summary. Enter F5 for the title and extract the individual values submitted in the form for the description. 

Step 21

Click the Data tab. 

Step 22

Click the Transformation dropdown and enter Lab - F5. The Transformation list will filter. Click Lab - F5 Create Pool and Virtual Server JST to select. 

Step 23

By changing the Variable Source formData from Static to Job, we are configuring the Transformation task to source the data from the form inputs submitted to the workflow, rather than static inputs.

Change Variable Source for formData under Input from Static to Job. Ensure formData is selected in the Job Variable field. 

Click the Save icon.

Step 24

Double-click the first childjob task to configure it.

Step 25

Click the Details tab. Enter Create Pool and Members for the Title at the top and then Create Pool and Members with Itential Pre-Built for the Description.

Step 26

Next, you will need to find the workflow. Click the Workflow dropdown and filter the list, by entering Create Pool and Members.  Select Create Pool and Members - F5  from the list. This is the first pre-built workflow we reviewed earlier.

Step 27

For each Job Variable on the child job task, ensure Task is selected as the Variable Source. Set the Previous Task to Lab - F5 Create Pool and Virtual Server JST.  This tells the child job task that the source for all variables is the transformation task. 

Set the Task Variable for each task as follows:   

VariableValue
hostloadBalancer
namepoolName
descriptionpoolDescription
partitionpartition
memberspoolMembers

Click Save and close the task configuration panel

Step 28

We now need to configure the second Child Job.   Double-click the second Child Job.

Step 29

Click the Details tab. Enter Create Virtual Server for the Summary and then Create Virtual Server using Itential Pre-Built for the Description.

Step 30
Click the Data tab. Next, click the Workflow dropdown and enter Create Virtual Server - F5 and select Create Virtual Server – F5 from the list. This is the second pre-built workflow we reviewed earlier.

Step 31

For each Job Variable on the child job task, ensure Task is selected as the Variable Source. Set the Previous Task to Lab - F5 Create Pool and Virtual Server JST.  Set the Task Variable for each task as follows:  

Set the Task Variable for each task as follows:  

VariableValue
hostloadBalancer
namevirtualServerName
descriptionvirtualServerDescription
partitionpartition
poolNamepoolName
destinationAddressvirtualServerDestinationAddress
destinationPortvirtualServerDestinationPort

Step 32

Click the SAVE at the top and then the  icon.  

Step 33

The Run Workflow window opens, showing the variables the workflow requires to run. This workflow expects to receive one variable, formData, which will be passed in from Operations Manager.  We will cover Operations Manager in the next module.



Was this article helpful?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.