# vmware_resource_pool – Add/remove resource pools to/from vCenter

- Synopsis

- Requirements

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- This module can be used to add/remove a resource pool to/from vCenter

## Requirements

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

- python >= 2.6

- PyVmomi

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
cluster string / required |  | Name of the cluster to add the host.

cpu_expandable_reservations
boolean

Choices:
- no
- yes ←

In a resource pool with an expandable reservation, the reservation on a resource pool can grow beyond the specified value.

cpu_limit integer | Default: -1 | The utilization of a virtual machine/resource pool will not exceed this limit, even if there are available resources. The default value -1 indicates no limit.
cpu_reservation integer | Default: 0 | Amount of resource that is guaranteed available to the virtual machine or resource pool.

cpu_shares
string

Choices:
- high
- custom
- low
- normal ←

Memory shares are used in case of resource contention.

datacenter string / required |  | Name of the datacenter to add the host.
hostname string |  | The hostname or IP address of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable `VMWARE_HOST` will be used instead. Environment variable support added in Ansible 2.6.

mem_expandable_reservations
boolean

Choices:
- no
- yes ←

In a resource pool with an expandable reservation, the reservation on a resource pool can grow beyond the specified value.

mem_limit integer | Default: -1 | The utilization of a virtual machine/resource pool will not exceed this limit, even if there are available resources. The default value -1 indicates no limit.
mem_reservation integer | Default: 0 | Amount of resource that is guaranteed available to the virtual machine or resource pool.

mem_shares
string

Choices:
- high
- custom
- low
- normal ←

Memory shares are used in case of resource contention.

password string |  | The password of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable `VMWARE_PASSWORD` will be used instead. Environment variable support added in Ansible 2.6. aliases: pass, pwd
port integer added in 2.5 | Default: 443 | The port number of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable `VMWARE_PORT` will be used instead. Environment variable support added in Ansible 2.6.
proxy_host string added in 2.9 |  | Address of a proxy that will receive all HTTPS requests and relay them. The format is a hostname or a IP. If the value is not specified in the task, the value of environment variable `VMWARE_PROXY_HOST` will be used instead. This feature depends on a version of pyvmomi greater than v6.7.1.2018.12
proxy_port integer added in 2.9 |  | Port of the HTTP proxy that will receive all HTTPS requests and relay them. If the value is not specified in the task, the value of environment variable `VMWARE_PROXY_PORT` will be used instead.
resource_pool string / required |  | Resource pool name to manage.

state
string

Choices:
- present ←
- absent

Add or remove the resource pool

username string |  | The username of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable `VMWARE_USER` will be used instead. Environment variable support added in Ansible 2.6. aliases: admin, user

validate_certs
boolean

Choices:
- no
- yes ←

Allows connection when SSL certificates are not valid. Set to `false` when certificates are not trusted.
If the value is not specified in the task, the value of environment variable `VMWARE_VALIDATE_CERTS` will be used instead.
Environment variable support added in Ansible 2.6.
If set to `yes`, please make sure Python >= 2.7.9 is installed on the given machine.

## Notes

Note

- Tested on vSphere 6.5

## Examples

    - name: Add resource pool to vCenter
      vmware_resource_pool:
        hostname: '{{ vcenter_hostname }}'
        username: '{{ vcenter_username }}'
        password: '{{ vcenter_password }}'
        datacenter: '{{ datacenter_name }}'
        cluster: '{{ cluster_name }}'
        resource_pool: '{{ resource_pool_name }}'
        mem_shares: normal
        mem_limit: -1
        mem_reservation: 0
        mem_expandable_reservations: yes
        cpu_shares: normal
        cpu_limit: -1
        cpu_reservation: 0
        cpu_expandable_reservations: yes
        state: present
      delegate_to: localhost

## Return Values

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

Key | Returned | Description
--- | --- | ---
instance dictionary | always | metadata about the new resource pool Sample: None

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Davis Phillips (@dav1x)

Hint

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