vmware.vmware_rest.vcenter_resourcepool 模块 – 创建资源池。

注意

此模块是 vmware.vmware_rest 集合(版本 4.3.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install vmware.vmware_rest。您需要更多要求才能使用此模块,请参阅 要求 以了解详细信息。

要在 Playbook 中使用它,请指定: vmware.vmware_rest.vcenter_resourcepool

vmware.vmware_rest 0.3.0 中的新功能

概要

  • 创建资源池。

要求

执行此模块的主机上需要以下要求。

  • vSphere 7.0.3 或更高版本

  • python >= 3.6

  • aiohttp

参数

参数

注释

cpu_allocation

字典

CPU 的资源分配。

如果未设置或为空,则不会更改资源池的 CPU 分配。

有效属性是

  • reservation (int): 保证资源池可用的资源量。如果未使用,则保留的资源不会浪费。如果利用率小于保留量,则资源可供其他正在运行的虚拟机使用。单位是内存的 MB,CPU 的 MHz。

如果未设置或为空,reservation 将设置为 0。(['present'])

  • expandable_reservation (bool): 在具有可扩展预留的资源池中,如果父资源池具有未预留的资源,则预留可以增长到指定值之外。不可扩展的预留称为固定预留。

如果未设置或为空,expandable_reservation 将设置为 true。(['present'])

  • limit (int): 资源池的利用率不会超过此限制,即使有可用资源。这通常用于确保资源池的性能一致,而与可用资源无关。如果设置为 -1,则资源使用没有固定限制(仅受可用资源和份额的限制)。单位是内存的 MB,CPU 的 MHz。

如果未设置或为空,limit 将设置为 -1。(['present'])

  • shares (dict): 在发生资源争用时使用份额。(['present'])

  • 接受的键

  • level (string): 此选项定义分配级别的可能值。

此字段的接受值

  • CUSTOM

  • HIGH

  • LOW

  • NORMAL

  • shares (integer): 当 level 设置为 CUSTOM 时,它是分配的份额数。否则,将忽略此值。

此值没有单位。它是基于其他资源池设置的相对度量。

此字段是可选的,仅当 level 的值为 CUSTOM 时才相关。

memory_allocation

字典

CPU 的资源分配。

如果未设置或为空,则不会更改资源池的 CPU 分配。

有效属性是

  • reservation (int): 保证资源池可用的资源量。如果未使用,则保留的资源不会浪费。如果利用率小于保留量,则资源可供其他正在运行的虚拟机使用。单位是内存的 MB,CPU 的 MHz。

如果未设置或为空,reservation 将设置为 0。(['present'])

  • expandable_reservation (bool): 在具有可扩展预留的资源池中,如果父资源池具有未预留的资源,则预留可以增长到指定值之外。不可扩展的预留称为固定预留。

如果未设置或为空,expandable_reservation 将设置为 true。(['present'])

  • limit (int): 资源池的利用率不会超过此限制,即使有可用资源。这通常用于确保资源池的性能一致,而与可用资源无关。如果设置为 -1,则资源使用没有固定限制(仅受可用资源和份额的限制)。单位是内存的 MB,CPU 的 MHz。

如果未设置或为空,limit 将设置为 -1。(['present'])

  • shares (dict): 在发生资源争用时使用份额。(['present'])

  • 接受的键

  • level (string): 此选项定义分配级别的可能值。

此字段的接受值

  • CUSTOM

  • HIGH

  • LOW

  • NORMAL

  • shares (integer): 当 level 设置为 CUSTOM 时,它是分配的份额数。否则,将忽略此值。

此值没有单位。它是基于其他资源池设置的相对度量。

此字段是可选的,仅当 level 的值为 CUSTOM 时才相关。

name

字符串

资源池的名称。

如果未设置或为空,则不会更改资源池的名称。当 state=['present'] 时是必需的

parent

字符串

创建的资源池的父级。

当客户端将此结构的某个值作为参数传递时,该字段必须是由 vmware.vmware_rest.vcenter_resourcepool_info 返回的资源的 ID。当 state=['present'] 时是必需的

resource_pool

字符串

要删除的资源池的标识符。

该参数必须是由 vmware.vmware_rest.vcenter_resourcepool_info 返回的资源的 ID。当 state=['absent', 'present'] 时是必需的

session_timeout

浮点数

在 vmware.vmware_rest 2.1.0 中添加

客户端会话的超时设置。

整个操作的最大秒数,包括建立连接、发送请求和响应。

默认值为 300 秒。

state

字符串

选择

  • "absent"

  • "present" ← (默认)

vcenter_hostname

字符串 / 必需

vSphere vCenter 的主机名或 IP 地址

如果任务中未指定该值,则将改用环境变量 VMWARE_HOST 的值。

vcenter_password

字符串 / 必需

vSphere vCenter 密码

如果任务中未指定该值,则将改用环境变量 VMWARE_PASSWORD 的值。

vcenter_rest_log_file

字符串

您可以使用此可选参数来设置日志文件的位置。

此文件将用于记录 HTTP REST 交互。

该文件将存储在运行该模块的主机上。

如果任务中未指定该值,则

将改用环境变量 VMWARE_REST_LOG_FILE 的值。

vcenter_username

字符串 / 必需

vSphere vCenter 用户名

如果任务中未指定该值,则将改用环境变量 VMWARE_USER 的值。

vcenter_validate_certs

布尔值

当 SSL 证书无效时,允许连接。当证书不受信任时,设置为 false

如果任务中未指定该值,则将改用环境变量 VMWARE_VALIDATE_CERTS 的值。

选择

  • false

  • true ← (默认)

注释

注意

  • 在 vSphere 7.0.3 上测试

示例

- name: Get the existing resource pools
  vmware.vmware_rest.vcenter_resourcepool_info:
  register: resource_pools
- name: Create an Ad hoc resource pool
  vmware.vmware_rest.vcenter_resourcepool:
    name: my_resource_pool
    parent: '{{ resource_pools.value[0].resource_pool }}'
    cpu_allocation:
      expandable_reservation: true
      limit: 40
      reservation: 0
      shares:
        level: NORMAL
    memory_allocation:
      expandable_reservation: false
      limit: 2000
      reservation: 0
      shares:
        level: NORMAL
  register: my_resource_pool
- name: Remove a resource pool
  vmware.vmware_rest.vcenter_resourcepool:
    resource_pool: '{{ my_resource_pool.id }}'
    state: absent
- name: Create a generic resource pool
  vmware.vmware_rest.vcenter_resourcepool:
    name: my_resource_pool
    parent: '{{ resource_pools.value[0].resource_pool }}'
  register: my_resource_pool
- name: Modify a resource pool
  vmware.vmware_rest.vcenter_resourcepool:
    resource_pool: '{{ my_resource_pool.id }}'
    cpu_allocation:
      expandable_reservation: true
      limit: -1
      reservation: 0
      shares:
        level: NORMAL
    memory_allocation:
      expandable_reservation: false
      limit: 1000
      reservation: 0
      shares:
        level: NORMAL

返回值

常见的返回值记录在这里,以下是本模块特有的字段。

描述

id

字符串

资源的 moid

返回: 成功时

示例: "resgroup-1009"

字典

创建一个通用资源池

返回: 成功时

示例: {"cpu_allocation": {"expandable_reservation": 1, "limit": -1, "reservation": 0, "shares": {"level": "NORMAL"}}, "memory_allocation": {"expandable_reservation": 1, "limit": -1, "reservation": 0, "shares": {"level": "NORMAL"}}, "name": "my_resource_pool", "resource_pools": []}

作者

  • Ansible 云团队 (@ansible-collections)