Documentation

bigip_vcmp_guest - Manages vCMP guests on a BIG-IP

New in version 2.5.

Synopsis

  • Manages vCMP guests on a BIG-IP. This functionality only exists on actual hardware and must be enabled by provisioning vcmp with the bigip_provision module.

Requirements

The below requirements are needed on the host that executes this module.

  • f5-sdk >= 3.0.9

Parameters

Parameter
Choices/Defaults
Comments
cores_per_slot
Specifies the number of cores that the system allocates to the guest.
Each core represents a portion of CPU and memory. Therefore, the amount of memory allocated per core is directly tied to the amount of CPU. This amount of memory varies per hardware platform type.
The number you can specify depends on the type of hardware you have.
In the event of a reboot, the system persists the guest to the same slot on which it ran prior to the reboot.
delete_virtual_disk
Default:
no
When state is absent, will additionally delete the virtual disk associated with the vCMP guest. By default, this value is no.
initial_image
Specifies the base software release ISO image file for installing the TMOS hypervisor instance and any licensed BIG-IP modules onto the guest's virtual disk. When creating a new guest, this parameter is required.
mgmt_address
Specifies the IP address, and subnet or subnet mask that you use to access the guest when you want to manage a module running within the guest. This parameter is required if the mgmt_network parameter is bridged.
When creating a new guest, if you do not specify a network or network mask, a default of /24 (255.255.255.0) will be assumed.
mgmt_network
    Choices:
  • bridged
  • isolated
  • host only
Specifies the method by which the management address is used in the vCMP guest.
When bridged, specifies that the guest can communicate with the vCMP host's management network.
When isolated, specifies that the guest is isolated from the vCMP host's management network. In this case, the only way that a guest can communicate with the vCMP host is through the console port or through a self IP address on the guest that allows traffic through port 22.
When host only, prevents the guest from installing images and hotfixes other than those provided by the hypervisor.
If the guest setting is isolated or host only, the mgmt_address does not apply.
Concerning mode changing, changing bridged to isolated causes the vCMP host to remove all of the guest's management interfaces from its bridged management network. This immediately disconnects the guest's VMs from the physical management network. Changing isolated to bridged causes the vCMP host to dynamically add the guest's management interfaces to the bridged management network. This immediately connects all of the guest's VMs to the physical management network. Changing this property while the guest is in the configured or provisioned state has no immediate effect.
mgmt_route
Specifies the gateway address for the mgmt_address.
If this value is not specified when creating a new guest, it is set to none.
The value none can be used during an update to remove this value.
name
required
The name of the vCMP guest to manage.
partition
Default:
Common
Device partition to manage resources on.
password
required
The password for the user account used to connect to the BIG-IP. You can omit this option if the environment variable F5_PASSWORD is set.

aliases: pass, pwd
provider
(added in 2.5)
A dict object containing connection details.
 
ssh_keyfile
Specifies the SSH keyfile to use to authenticate the connection to the remote device. This argument is only used for cli transports. If the value is not specified in the task, the value of environment variable ANSIBLE_NET_SSH_KEYFILE will be used instead.
 
timeout
Default:
10
Specifies the timeout in seconds for communicating with the network device for either connecting or sending commands. If the timeout is exceeded before the operation is completed, the module will error.
 
server
required
The BIG-IP host. You can omit this option if the environment variable F5_SERVER is set.
 
user
required
The username to connect to the BIG-IP with. This user must have administrative privileges on the device. You can omit this option if the environment variable F5_USER is set.
 
server_port
Default:
443
The BIG-IP server port. You can omit this option if the environment variable F5_SERVER_PORT is set.
 
password
required
The password for the user account used to connect to the BIG-IP. You can omit this option if the environment variable F5_PASSWORD is set.

aliases: pass, pwd
 
validate_certs
    Choices:
  • no
  • yes ←
If no, SSL certificates will not be validated. Use this only on personally controlled sites using self-signed certificates. You can omit this option if the environment variable F5_VALIDATE_CERTS is set.
 
transport
required
    Choices:
  • rest
  • cli ←
Configures the transport connection to use when connecting to the remote device.
server
required
The BIG-IP host. You can omit this option if the environment variable F5_SERVER is set.
server_port
(added in 2.2)
Default:
443
The BIG-IP server port. You can omit this option if the environment variable F5_SERVER_PORT is set.
state
    Choices:
  • configured
  • disabled
  • provisioned
  • present ←
  • absent
The state of the vCMP guest on the system. Each state implies the actions of all states before it.
When configured, guarantees that the vCMP guest exists with the provided attributes. Additionally, ensures that the vCMP guest is turned off.
When disabled, behaves the same as configured the name of this state is just a convenience for the user that is more understandable.
When provisioned, will ensure that the guest is created and installed. This state will not start the guest; use deployed for that. This state is one step beyond present as present will not install the guest; only setup the configuration for it to be installed.
When present, ensures the guest is properly provisioned and starts the guest so that it is in a running state.
When absent, removes the vCMP from the system.
user
required
The username to connect to the BIG-IP with. This user must have administrative privileges on the device. You can omit this option if the environment variable F5_USER is set.
validate_certs
(added in 2.0)
    Choices:
  • no
  • yes ←
If no, SSL certificates will not be validated. Use this only on personally controlled sites using self-signed certificates. You can omit this option if the environment variable F5_VALIDATE_CERTS is set.
vlans
VLANs that the guest uses to communicate with other guests, the host, and with the external network. The available VLANs in the list are those that are currently configured on the vCMP host.
The order of these VLANs is not important; in fact, it's ignored. This module will order the VLANs for you automatically. Therefore, if you deliberately re-order them in subsequent tasks, you will find that this module will not register a change.

Notes

Note

  • This module can take a lot of time to deploy vCMP guests. This is an intrinsic limitation of the vCMP system because it is booting real VMs on the BIG-IP device. This boot time is very similar in length to the time it takes to boot VMs on any other virtualization platform; public or private.
  • When BIG-IP starts, the VMs are booted sequentially; not in parallel. This means that it is not unusual for a vCMP host with many guests to take a long time (60+ minutes) to reboot and bring all the guests online. The BIG-IP chassis will be available before all vCMP guests are online.
  • netaddr
  • For more information on using Ansible to manage F5 Networks devices see https://www.ansible.com/integrations/networks/f5.
  • Requires the f5-sdk Python package on the host. This is as easy as pip install f5-sdk.

Examples

- name: Create a vCMP guest
  bigip_vcmp_guest:
    name: foo
    password: secret
    server: lb.mydomain.com
    state: present
    user: admin
    mgmt_network: bridge
    mgmt_address: 10.20.30.40/24
  delegate_to: localhost

- name: Create a vCMP guest with specific VLANs
  bigip_vcmp_guest:
    name: foo
    password: secret
    server: lb.mydomain.com
    state: present
    user: admin
    mgmt_network: bridge
    mgmt_address: 10.20.30.40/24
    vlans:
      - vlan1
      - vlan2
  delegate_to: localhost

- name: Remove vCMP guest and disk
  bigip_vcmp_guest:
    name: guest1
    state: absent
    delete_virtual_disk: yes
  register: result

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key
Returned
Description
vlans
list
changed
The VLANs assigned to the vCMP guest, in their full path format.

Sample:
['/Common/vlan1', '/Common/vlan2']


Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

Author

  • Tim Rupp (@caphrim007)

Hint

If you notice any issues in this documentation you can edit this document to improve it.