vmware.vmware_rest.vcenter_vm_hardware_serial 模块 – 向虚拟机添加虚拟串行端口。

注意

此模块是 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_vm_hardware_serial

vmware.vmware_rest 0.1.0 中的新增功能

概要

  • 向虚拟机添加虚拟串行端口。

要求

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

  • vSphere 7.0.3 或更高版本

  • python >= 3.6

  • aiohttp

参数

参数

注释

allow_guest_control

布尔值

指示访客是否可以连接和断开设备连接的标志。

如果未设置,则该值不会更改。

选项

  • false

  • true

backing

字典

虚拟串行端口的物理资源支持。

如果未设置,则默认为自动检测合适的宿主机设备。state=['present'] 时需要。

有效属性为

  • type (str):此选项定义虚拟串行端口的有效支持类型。 (['present'])

此键在 ['present'] 时是必需的。

  • 接受的值

  • FILE

  • HOST_DEVICE

  • NETWORK_CLIENT

  • NETWORK_SERVER

  • PIPE_CLIENT

  • PIPE_SERVER

  • file (str):支持虚拟串行端口的文件路径。

此字段是可选的,并且仅当 type 的值为 FILE 时才相关。 (['present'])

  • host_device (str):支持虚拟串行端口的设备名称。

如果未设置,则虚拟串行端口将配置为自动检测合适的宿主机设备。 (['present'])

  • pipe (str):支持虚拟串行端口的管道名称。

此字段是可选的,并且仅当 type 的值为 PIPE_SERVER 或 PIPE_CLIENT 时才相关。 (['present'])

  • no_rx_loss (bool):启用通过管道优化数据传输的标志。当值为 true 时,主机缓冲数据以防止数据溢出。这允许虚拟机读取通过管道传输的所有数据,而不会丢失数据。

如果未设置,则默认为 false。 (['present'])

  • network_location (str):URI,指定支持虚拟串行端口的网络服务的位置。

  • 如果 type 为 NETWORK_SERVER,则此字段是客户端用于连接到此服务器的位置。URI 的主机名部分应为空或应指定虚拟机在其上运行的主机的地址。

  • 如果 type 为 NETWORK_CLIENT,则此字段是虚拟机用于连接到远程服务器的位置。

此字段是可选的,并且仅当 type 的值为 NETWORK_SERVER 或 NETWORK_CLIENT 时才相关。 (['present'])

  • proxy (str):为网络支持提供网络访问的代理服务。如果设置,虚拟机将启动与代理服务的连接,并将流量转发到代理。

如果未设置,则不应使用代理服务。 (['present'])

label

字符串

项目的名称

port

字符串

虚拟串行端口标识符。

该参数必须是 vmware.vmware_rest.vcenter_vm_hardware_serial 返回的资源 ID。state=['absent', 'connect', 'disconnect', 'present'] 时需要。

session_timeout

浮点数

在 vmware.vmware_rest 2.1.0 中添加

客户端会话的超时设置。

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

默认值为 300 秒。

start_connected

布尔值

指示虚拟机上电时是否应连接虚拟设备的标志。

如果未设置,则该值不会更改。

选项

  • false

  • true

state

字符串

选项

  • "absent"

  • "connect"

  • "disconnect"

  • "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 ← (默认)

vm

字符串 / 必需

虚拟机标识符。

该参数必须是由 vmware.vmware_rest.vcenter_vm_info 返回的资源的 id。此参数是必需的。

yield_on_poll

布尔值

CPU 让出行为。如果设置为 true,则虚拟机如果其唯一任务是轮询虚拟串行端口,则会定期放弃处理器。重新获得处理器所需的时间将取决于主机上其他虚拟机的活动程度。

此字段可以随时修改,并且应用于已连接的虚拟串行端口的更改会立即生效。

如果未设置,则该值不会更改。

选项

  • false

  • true

注意

注意

  • 已在 vSphere 7.0.3 上测试。

示例

- name: Look up the VM called test_vm1 in the inventory
  register: search_result
  vmware.vmware_rest.vcenter_vm_info:
    filter_names:
    - test_vm1

- name: Collect information about a specific VM
  vmware.vmware_rest.vcenter_vm_info:
    vm: '{{ search_result.value[0].vm }}'
  register: test_vm1_info

- name: Create a new serial port
  vmware.vmware_rest.vcenter_vm_hardware_serial:
    vm: '{{ test_vm1_info.id }}'
    label: Serial port 2
    allow_guest_control: true
  register: _result

- name: Create another serial port with a label
  vmware.vmware_rest.vcenter_vm_hardware_serial:
    vm: '{{ test_vm1_info.id }}'
    label: Serial port 2
    allow_guest_control: true
  register: _result

- name: Create an existing serial port (label)
  vmware.vmware_rest.vcenter_vm_hardware_serial:
    vm: '{{ test_vm1_info.id }}'
    label: Serial port 1
    allow_guest_control: true
  register: _result

- name: Get an existing serial port (label)
  vmware.vmware_rest.vcenter_vm_hardware_serial_info:
    vm: '{{ test_vm1_info.id }}'
    label: Serial port 1
  register: serial_port_1

- name: Delete an existing serial port (port id)
  vmware.vmware_rest.vcenter_vm_hardware_serial:
    vm: '{{ test_vm1_info.id }}'
    port: '{{ serial_port_1.id }}'
    state: absent
  register: _result

- name: Delete an existing serial port (label)
  vmware.vmware_rest.vcenter_vm_hardware_serial:
    vm: '{{ test_vm1_info.id }}'
    label: Serial port 2
    state: absent
  register: _result

返回值

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

描述

id

字符串

资源的 moid

返回: 成功时

示例: "9000"

value

字典

创建一个现有的串行端口(标签)

返回: 成功时

示例: {"allow_guest_control": 1, "backing": {"auto_detect": 1, "host_device": "", "type": "HOST_DEVICE"}, "label": "Serial port 1", "start_connected": 0, "state": "NOT_CONNECTED", "yield_on_poll": 0}

作者

  • Ansible Cloud Team (@ansible-collections)