vmware.vmware.cluster_drs 模块 – 在 VMware vSphere 集群上管理分布式资源调度程序 (DRS)

注意

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

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

要安装它,请使用:ansible-galaxy collection install vmware.vmware

要在 playbook 中使用它,请指定:vmware.vmware.cluster_drs

概要

  • 管理 VMware vSphere 集群上的 DRS。

参数

参数

注释

advanced_settings

字典

高级 DRS 设置的字典。

默认值: {}

cluster

别名:cluster_name

字符串 / 必需

要管理的集群的名称。

datacenter

别名:datacenter_name

字符串 / 必需

数据中心的名称。

drs_default_vm_behavior

字符串

指定虚拟机的集群范围内的默认 DRS 行为。

如果设置为 partiallyAutomated,vCenter 将生成虚拟机迁移和主机放置的建议,然后在启动时自动实施放置建议。

如果设置为 manual,则 vCenter 将生成虚拟机迁移和主机放置的建议,但不会自动实施这些建议。

如果设置为 fullyAutomated,则 vCenter 将自动执行虚拟机的迁移及其在启动时与主机的放置。

选项

  • "fullyAutomated" ← (默认)

  • "manual"

  • "partiallyAutomated"

drs_enable_vm_behavior_overrides

布尔值

是否启用单个虚拟机的 DRS 行为覆盖。

如果设置为 true,则覆盖 drs_default_vm_behavior

选项

  • false

  • true ← (默认)

drs_vmotion_rate

整数

生成的 ClusterRecommendations 的阈值,范围从 1 (最低) 到 5 (最高)。

选项

  • 1

  • 2

  • 3 ← (默认)

  • 4

  • 5

enable

布尔值

是否启用 DRS。

选项

  • false

  • true ← (默认)

hostname

字符串

vSphere vCenter 或 ESXi 服务器的主机名或 IP 地址。

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

password

别名:pass, pwd

字符串

vSphere vCenter 或 ESXi 服务器的密码。

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

port

整数

vSphere vCenter 或 ESXi 服务器的端口号。

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

默认值: 443

predictive_drs

布尔值

除了实时指标外,DRS 还将响应 vRealize Operations Manager 提供的预测指标。

您还必须在支持此功能的 vRealize Operations 版本中配置 Predictive DRS。

选项

  • false ← (默认)

  • true

proxy_host

字符串

将接收所有 HTTPS 请求并转发它们的代理的地址。

格式为主机名或 IP。

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

proxy_port

整数

将接收所有 HTTPS 请求并转发它们的 HTTP 代理的端口。

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

username

别名:admin, user

字符串

vSphere vCenter 或 ESXi 服务器的用户名。

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

validate_certs

布尔值

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

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

选项

  • false

  • true ← (默认)

备注

注意

  • 所有模块都需要 API 写入权限,因此在免费 ESXi 许可证上不支持。

  • 所有变量和 VMware 对象名称都区分大小写。

示例

- name: Enable DRS
  vmware.vmware.cluster_drs:
    hostname: '{{ vcenter_hostname }}'
    username: '{{ vcenter_username }}'
    password: '{{ vcenter_password }}'
    datacenter_name: datacenter
    cluster_name: cluster
    enable: true
  delegate_to: localhost

- name: Enable DRS and distribute a more even number of virtual machines across hosts for availability
  vmware.vmware.cluster_drs:
    hostname: '{{ vcenter_hostname }}'
    username: '{{ vcenter_username }}'
    password: '{{ vcenter_password }}'
    datacenter_name: datacenter
    cluster_name: cluster
    enable: true
    advanced_settings:
      'TryBalanceVmsPerHost': '1'
  delegate_to: localhost

- name: Enable DRS and set default VM behavior to partially automated
  vmware.vmware.cluster_drs:
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    datacenter_name: DC0
    cluster_name: "{{ cluster_name }}"
    enable: true
    drs_default_vm_behavior: partiallyAutomated
  delegate_to: localhost

返回值

常见的返回值已在此处记录,以下是此模块特有的字段

描述

result

字典

如果发生更改,则包含有关DRS配置更新任务的信息

如果没有更改,则返回空字典

返回:成功时

示例: {"result": {"completion_time": "2024-07-29T15:27:37.041577+00:00", "entity_name": "test-5fb1_cluster_drs_test", "error": null, "result": null, "state": "success"}}

作者

  • Ansible云团队 (@ansible-collections)