community.general.proxmox_disk 模块 – 管理 Proxmox VE 集群中 Qemu(KVM) 虚拟机的磁盘
注意
此模块是 community.general 集合(版本 10.1.0)的一部分。
如果您使用的是 ansible 包,则可能已经安装了此集合。 它不包含在 ansible-core 中。 要检查是否已安装,请运行 ansible-galaxy collection list。
要安装它,请使用:ansible-galaxy collection install community.general。 您需要进一步的要求才能使用此模块,请参阅 要求 了解详细信息。
要在 playbook 中使用它,请指定:community.general.proxmox_disk。
community.general 5.7.0 中的新增功能
概要
- 允许您在 Proxmox VE 集群中的 Qemu(KVM) 虚拟机中的磁盘上执行一些受支持的操作。 
要求
执行此模块的主机需要满足以下要求。
- proxmoxer 
- requests 
参数
| 参数 | 注释 | 
|---|---|
| 要使用的 AIO 类型。 选项 
 | |
| 指定 Proxmox VE 集群的目标主机。 | |
| 指定用于身份验证的密码。 您可以使用  | |
| 指定 Proxmox VE 集群的目标端口。 如果未指定,则使用  | |
| 指定令牌 ID。 需要  | |
| 指定令牌密钥。 需要  | |
| 指定用于身份验证的用户。 | |
| 在进行备份时是否应包含该驱动器。 选项 
 | |
| 总读/写 I/O 突发的最大长度(以秒为单位)。 | |
| 读取 I/O 突发的最大长度(以秒为单位)。 | |
| 写入 I/O 突发的最大长度(以秒为单位)。 | |
| 覆盖 I/O 带宽限制(以 KB/s 为单位)。 仅当  | |
| 驱动器的缓存模式。 选项 
 | |
| 使用  当  当  当  选项 
 | |
| 强制驱动器的物理几何形状具有特定的柱面计数。 | |
| 控制是否检测并尝试优化零写入。 选项 
 | |
| 控制是否将丢弃/修剪请求传递给底层存储。 选项 
 | |
| 要操作的磁盘键( 磁盘总线(IDE、SATA 等)在 Proxmox API 中接受的  对于 IDE:0-3;对于 SCSI:0-30;对于 SATA:0-5;对于 VirtIO:0-15;对于未使用:0-255。 | |
| 驱动器后备文件的数据格式。 选项 
 | |
| 强制驱动器的物理几何形状具有特定的磁头计数。 | |
| 每秒最大无限制的总 r/w I/O 池操作数。 | |
| 总读/写 I/O 突发的最大长度(以秒为单位)。 | |
| 每秒最大读取 I/O 操作数。 您可以指定读取限制或总限制(与  | |
| 每秒最大无限制的读取 I/O 池操作数。 | |
| 读取 I/O 突发的最大长度(以秒为单位)。 | |
| 每秒最大写入 I/O 操作数。 您可以指定写入限制或总限制(与  | |
| 每秒最大无限制的写入 I/O 池操作数。 | |
| 写入 I/O 突发的最大长度(以秒为单位)。 | |
| 是否为此驱动器使用 iothreads(仅适用于 SCSI 和 VirtIO) 选项 
 | |
| 要挂载在  需要指定  镜像字符串格式 
 
 
 | |
| 每秒最大无限制的总 r/w 池速度,单位为兆字节。 | |
| 每秒最大读取速度,单位为兆字节。 您可以指定读取限制或总限制(与  | |
| 每秒最大无限制的读取池速度,单位为兆字节。 | |
| 每秒最大写入速度,单位为兆字节。 您可以指定写入限制或总限制(与  | |
| 每秒最大无限制的写入池速度,单位为兆字节。 | |
| 驱动器的介质类型。 选项 
 | |
| 队列数(仅限 SCSI)。 | |
| 是否应将驱动器视为复制作业。 选项 
 | |
| 读取错误操作。 选项 
 | |
| 驱动器是否为只读。 选项 
 | |
| 是否使用 scsi-block 来完全直通主机块设备。 与主机上的低内存或高内存碎片结合使用可能会导致 I/O 错误。 选项 
 | |
| 强制驱动器的物理几何形状具有特定的扇区计数。 | |
| 驱动器报告的序列号,采用 url 编码,最长 20 个字节。 | |
| 将此本地管理的卷标记为在所有节点上可用。 此选项不会自动共享卷,它假定该卷已共享! 选项 
 | |
| 当  当  | |
| 控制 qemu 的快照模式功能。 如果激活,对磁盘所做的更改是临时的,并且在虚拟机关闭时将被丢弃。 选项 
 | |
| 是否将此驱动器公开为 SSD,而不是旋转式硬盘。 选项 
 | |
| 指示磁盘的所需状态。 
 某些选项的更新(如  使用  
 
 要完全从后备存储中移除磁盘,请使用  选项 
 | |
| 驱动器的后备存储。 仅当  | |
| 强制磁盘几何结构 BIOS 转换模式。 选项 
 | |
| 如果为  这仅应在使用自签名证书的个人控制站点上使用。 选项 
 | |
| 写入错误操作。 选项 
 | |
| 驱动器的全球名称,编码为 16 字节十六进制字符串,前缀为  | 
属性
| 属性 | 支持 | 描述 | 
|---|---|---|
| 操作组: community.general.proxmox 在 community.general 9.0.0 中添加 | 在  | |
| 支持: 无 | 可以在  | |
| 支持: 无 | 当处于差异模式时,将返回有关已更改的内容(或可能需要在  | 
示例
- name: Create new disk in VM (do not rewrite in case it exists already)
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_token_id: token1
    api_token_secret: some-token-data
    name: vm-name
    disk: scsi3
    backup: true
    cache: none
    storage: local-zfs
    size: 5
    state: present
- name: Create new disk in VM (force rewrite in case it exists already)
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_token_id: token1
    api_token_secret: some-token-data
    vmid: 101
    disk: scsi3
    format: qcow2
    storage: local
    size: 16
    create: forced
    state: present
- name: Update existing disk
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_token_id: token1
    api_token_secret: some-token-data
    vmid: 101
    disk: ide0
    backup: false
    ro: true
    aio: native
    state: present
- name: Grow existing disk
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_token_id: token1
    api_token_secret: some-token-data
    vmid: 101
    disk: sata4
    size: +5G
    state: resized
- name: Detach disk (leave it unused)
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_token_id: token1
    api_token_secret: some-token-data
    name: vm-name
    disk: virtio0
    state: detached
- name: Move disk to another storage
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_password: secret
    vmid: 101
    disk: scsi7
    target_storage: local
    format: qcow2
    state: moved
- name: Move disk from one VM to another
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_token_id: token1
    api_token_secret: some-token-data
    vmid: 101
    disk: scsi7
    target_vmid: 201
    state: moved
- name: Remove disk permanently
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_password: secret
    vmid: 101
    disk: scsi4
    state: absent
- name: Mount ISO image on CD-ROM (create drive if missing)
  community.general.proxmox_disk:
    api_host: node1
    api_user: root@pam
    api_token_id: token1
    api_token_secret: some-token-data
    vmid: 101
    disk: ide2
    media: cdrom
    iso_image: local:iso/favorite_distro_amd64.iso
    state: present
返回值
常见返回值记录在此处,以下是此模块特有的字段
| 键 | 描述 | 
|---|---|
| 关于模块所做操作的简短消息。 返回: 始终 示例:  | |
| 虚拟机 vmid。 返回: 成功 示例:  | 
