cm_next_deploy_vmware – Module to manage deployments of BIG-IP Next instances on VMWARE

New in version 1.0.0.

Synopsis

  • Module to manage deployments of BIG-IP Next instances on VMWARE using vSphere provider.

Parameters

Parameter Choices/Defaults Configuration Comments
instance
dictionary
Settings related to BIG-IP Next instance provisioning.
cpus
integer
Default:
8
The number of cpus to allocate for deployed instance.
dns
list / elements=string
The addresses of DNS servers to configure in the deployed instance.
external_ip_address
string
The non-floating IP address for external network in the BIG-IP Next instance.
When provided this parameter requires external_vlan_name to be defined.
The IP address must be provided in CIDR format e.g. 192.168.1.1/24.
external_network_name
string / required
The name of the network in vSphere that will be used as an external network in deployed BIG-IP Next instance.
external_vlan_name
string
The name of the VLAN to configure for external network in the BIG-IP Next instance.
external_vlan_tag
integer
The vlan tag for external vlan.
When provided this parameter requires external_vlan_name to be defined.
ha_dp_network_name
string
The name of the network in vSphere that will be used as a dataplane network for HA in deployed BIG-IP Next instance.
instance_hostname
string / required
Hostname for the deployed BIG-IP Next instance.
internal_ip_address
string
The non-floating IP address for internal network in the BIG-IP Next instance.
When provided this parameter requires internal_vlan_name to be defined.
The IP address must be provided in CIDR format e.g. 192.168.1.1/24.
internal_network_name
string
The name of the network in vSphere that will be used as an external network in deployed BIG-IP Next instance.
internal_vlan_name
string
The name of the VLAN to configure for internal network in the BIG-IP Next instance.
When provided this parameter requires internal_network_name to be defined.
internal_vlan_tag
integer
The vlan tag for internal vlan.
When provided this parameter requires internal_vlan_name to be defined.
memory
integer
Default:
16384
The amount of memory in kilobytes to allocate for deployed instance.
mgmt_address
string / required
The desired management IP address for the BIG-IP Next instance.
The IP address must be provided in CIDR format e.g. 192.168.1.1/24.
mgmt_gateway
string / required
The gateway to set so that mgmt_address can be reached.
The address must be in the provided mgmt_address CIDR range, otherwise deployment will fail.
mgmt_network_name
string / required
The name of the network in vSphere used to communicate with created BIG-IP Next instances.
mgmt_password
string / required
The desired password used by CM to manage BIG-IP Next instance.
mgmt_user
string / required
The desired username used by CM to manage BIG-IP Next instance.
ntp
list / elements=string
The addresses of NTP servers to configure in the deployed instance.
provider
dictionary
Settings related to vSphere environment.
cluster
string / required
The name of the vSphere cluster in the datacenter where to deploy the instance.
content_library
string / required
The name of the vSphere content library to use.
datacenter
string / required
The name of the vSphere datacenter to use.
datastore
string / required
The name of the vSphere datastore to use.
provider_name
string / required
Name of the configured vSphere provider as it exists on CM.
resource_pool
string / required
The name of the vSphere resource_pool to use.
template
string / required
The name of the vSphere content library to use.
state
string
    Choices:
  • present
  • deploy ←
When state is deploy, ensures the deployment task is started.
When state is present, checks for status of existing deployment task.
task_id
string
The unique id to identify the deployment task.
Parameter required when state is present.
timeout
integer
Default:
900
The amount of time to wait for the deployment task to finish, in seconds.
The accepted value range is between 10 and 3600 seconds.
wait_for_finish
boolean
    Choices:
  • no
  • yes ←
Allows the user to specify if the module should wait for task with the given task_id to finish.
If yes the module will wait for the given timeout period for the deployment task to finish running.
If no the module will check for the status of the deployment task and return the result.
If the task has finished running successfully, the module will indicate a change and return a message.
If the task has failed the module will throw an exception and return the failure reason.

Notes

Note

  • Module runs asynchronously, this means it is not IDEMPOTENT until the desired BIG-IP Next instance has been provisioned and registered in CM. Repeating the same deployment task twice will produce unexpected results.
  • To check the results of deploy task use the provided task_id and state set to present.

Examples

- name: Deploy BIG-IP Next instance on vSphere
  cm_next_deploy_vmware:
    state: "deploy"
    provider:
      provider_name: "vCenterDemo"
      cluster: "DemoCluster"
      datacenter: "DemoDatacenter"
      resource_pool: "Demos"
      datastore: "DemoSAN"
      content_library: "EXT-DEM"
      template: "BIG-IP-Next-20.0.1-2.139.10-0.0.136-VM-template"
    instance:
      instance_hostname: "demoVM01.lab.local"
      dns:
        - "8.8.8.8"
        - "8.8.4.4"
      ntp:
        - "time.google.com"
        - "time1.google.com"
      mgmt_address: "172.16.1.1/24"
      mgmt_gateway: "172.16.1.254"
      mgmt_user: "admin"
      mgmt_password: "s3KrI!T"
      mgmt_network_name: "VM_DEMO_MGMT"
      external_network_name: "DemoNet123"
      internal_network_name: "DemoNet456"
      external_vlan_name: "ExtDemoVlan"
      external_vlan_tag: 123
      external_ip_address: "192.168.1.1/24"
      internal_vlan_name: "IntDemoVlan"
      internal_vlan_tag: 456
      internal_ip_address: "192.168.2.1/24"
  register: task

- name: Check the deployment status
  cm_next_deploy_vmware:
    state: "present"
    task_id: "{{ task.task_id }}"
    timeout: 1000

Return Values

The following are the fields unique to this module:

Key Returned Description
message
string
changed
Informative message about the deployment task.

Sample:
Deployment has started
task_id
string
changed
The unique task id returned when deployment task has started.

Sample:
6a0c8602-a115-4d16-b684-103318e703fc


Status

Authors

  • Ravinder Reddy (@RavinderReddyF5)
  • Wojciech Wypior (@wojtek0806)