dellemc.powerflex.replication_consistency_group 模块 – 在 Dell PowerFlex 上管理复制一致性组

注意

此模块是 dellemc.powerflex 集合(版本 2.5.0)的一部分。

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

要安装它,请使用:ansible-galaxy collection install dellemc.powerflex。您需要更多要求才能使用此模块,请参阅 要求了解详情。

要在 playbook 中使用它,请指定:dellemc.powerflex.replication_consistency_group

dellemc.powerflex 1.5.0 中的新增功能

概要

  • 在 PowerFlex 存储系统上管理复制一致性组包括获取详细信息、创建、修改、创建快照、暂停、恢复、冻结、解冻、激活、故障转移、反转、恢复、同步、切换、停用和删除复制一致性组。

要求

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

  • Dell PowerFlex 存储系统版本 3.6 或更高版本。

  • PyPowerFlex 1.12.0。

参数

参数

注释

activity_mode

字符串

RCG 的活动模式。

此参数支持 3.6 及更高版本。

选项

  • "Active"

  • "Inactive"

create_snapshot

布尔值

是否创建复制一致性组的快照。

选项

  • false

  • true

force

布尔值

强制切换 RCG。

选项

  • false

  • true

freeze

布尔值

冻结或解冻 RCG。

此参数已弃用。请改用 rcg_state。

选项

  • false

  • true

hostname

别名:gateway_host

字符串 / 必需

PowerFlex 主机的 IP 或 FQDN。

is_consistent

布尔值

RCG 的一致性。

选项

  • false

  • true

new_rcg_name

字符串

要重命名的 RCG 的名称。

password

字符串 / 必需

PowerFlex 主机的密码。

pause

布尔值

暂停或恢复 RCG。

此参数已弃用。请改用 rcg_state。

选项

  • false

  • true

pause_mode

字符串

暂停模式。

如果 pause 设置为 true,则为必需项。

选项

  • "StopDataTransfer"

  • "OnlyTrackChanges"

port

整数

与 PowerFlex 主机通信的端口号。

默认值: 443

protection_domain_id

字符串

保护域 ID。

protection_domain_name 互斥。

protection_domain_name

字符串

保护域名。

protection_domain_id 互斥。

rcg_id

字符串

复制一致性组的 ID。

rcg_name 互斥。

rcg_name

字符串

复制一致性组的名称。

在 PowerFlex 阵列中是唯一的。

rcg_id 互斥。

rcg_state

字符串

指定 RCG 的操作。

故障转移 RCG。

反转 RCG。

恢复 RCG。

切换 RCG。

暂停或恢复 RCG。

冻结或解冻 RCG。

同步 RCG。

选项

  • "failover"

  • "reverse"

  • "restore"

  • "switchover"

  • "sync"

  • "pause"

  • "resume"

  • "freeze"

  • "unfreeze"

remote_peer

字典

远程对等系统。

hostname

别名:gateway_host

字符串 / 必需

远程对等网关主机的 IP 或 FQDN。

password

字符串 / 必需

远程对等网关主机的密码。

port

整数

与远程对等网关主机通信的端口号。

默认值: 443

protection_domain_id

字符串

远程保护域 ID。

protection_domain_name 互斥。

protection_domain_name

字符串

远程保护域名。

protection_domain_id 互斥。

timeout

整数

连接终止的时间。

以秒为单位提及。

默认值: 120

username

字符串 / 必需

远程对等网关主机的用户名。

validate_certs

别名:verifycert

布尔值

布尔变量,用于指定是否验证 SSL 证书。

true - 表示应验证 SSL 证书。

false - 表示不应验证 SSL 证书。

选项

  • false

  • true ← (默认)

rpo

整数

所需的 RPO(以秒为单位)。

state

字符串

复制一致性组的状态。

选项

  • "present" ← (默认)

  • "absent"

target_volume_access_mode

字符串

目标卷访问模式。

选项

  • "ReadOnly"

  • "NoAccess"

timeout

整数

连接终止的时间。

以秒为单位提及。

默认值: 120

username

字符串 / 必需

PowerFlex 主机的用户名。

validate_certs

别名:verifycert

布尔值

布尔变量,用于指定是否验证 SSL 证书。

true - 表示应验证 SSL 证书。

false - 表示不应验证 SSL 证书。

选项

  • false

  • true ← (默认)

备注

注意

  • 支持 check_mode

  • 创建快照操作不支持幂等性。

  • 在 RCG 上执行一些更新操作后,RCG 的最终状态反映存在延迟。

  • 在 3.6 及更高版本中,如果出现一致性障碍,则复制一致性组在更改为不一致模式后将返回到一致模式。因此,设置为不一致模式的幂等性将返回 changed 为 true。

  • 名为“dellemc.powerflex”的集合中提供的模块旨在支持 Dell PowerFlex 存储平台。

示例

- name: Get RCG details
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "{{rcg_name}}"

- name: Create a snapshot of the RCG
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_id: "{{rcg_id}}"
    create_snapshot: true
    state: "present"

- name: Create a replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rpo: 60
    protection_domain_name: "domain1"
    activity_mode: "active"
    remote_peer:
      hostname: "{{hostname}}"
      username: "{{username}}"
      password: "{{password}}"
      validate_certs: "{{validate_certs}}"
      port: "{{port}}"
      protection_domain_name: "domain1"

- name: Modify replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rpo: 60
    target_volume_access_mode: "ReadOnly"
    activity_mode: "Inactive"
    is_consistent: true

- name: Rename replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    new_rcg_name: "rcg_test_rename"

- name: Pause replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "pause"
    pause_mode: "StopDataTransfer"

- name: Resume replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "resume"

- name: Freeze replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "freeze"

- name: UnFreeze replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "unfreeze"

- name: Failover replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "failover"

- name: Reverse replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "reverse"

- name: Restore replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "restore"

- name: Switchover replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "switchover"

- name: Synchronize replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    rcg_state: "sync"

- name: Delete replication consistency group
  dellemc.powerflex.replication_consistency_group:
    hostname: "{{hostname}}"
    username: "{{username}}"
    password: "{{password}}"
    validate_certs: "{{validate_certs}}"
    port: "{{port}}"
    rcg_name: "rcg_test"
    state: "absent"

返回值

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

描述

changed

布尔值

资源是否已更改。

返回: 始终

示例: false

replication_consistency_group_details

字典

复制一致性组的详细信息。

返回: 当复制一致性组存在时

示例: {"abstractState": "Ok", "activeLocal": true, "activeRemote": true, "currConsistMode": "Consistent", "disasterRecoveryState": "None", "error": 65, "failoverState": "None", "failoverType": "None", "freezeState": "Unfrozen", "id": "aadc17d500000000", "inactiveReason": 11, "lastSnapCreationRc": "SUCCESS", "lastSnapGroupId": "e58280b300000001", "lifetimeState": "Normal", "localActivityState": "Active", "name": "test_rcg", "pauseMode": "None", "peerMdmId": "6c3d94f600000000", "protectionDomainId": "b969400500000000", "remoteActivityState": "Active", "remoteDisasterRecoveryState": "None", "remoteId": "2130961a00000000", "remoteMdmId": "0e7a082862fedf0f", "remoteProtectionDomainId": "4eeb304600000000", "remoteProtectionDomainName": "domain1", "replicationDirection": "LocalToRemote", "rpoInSeconds": 30, "snapCreationInProgress": false, "targetVolumeAccessMode": "NoAccess", "type": "User"}

abstractState

字符串

复制一致性组的抽象状态。

返回值: 成功

activeLocal

布尔值

本地复制一致性组是否处于活动状态。

返回值: 成功

activeRemote

布尔值

远程复制一致性组是否处于活动状态。

返回值: 成功

currConsistMode

字符串

复制一致性组的当前一致性模式。

返回值: 成功

disasterRecoveryState

字符串

本地复制一致性组的灾难恢复状态。

返回值: 成功

error

整数

复制一致性组的错误代码。

返回值: 成功

failoverState

字符串

复制一致性组的故障转移状态。

返回值: 成功

failoverType

字符串

复制一致性组的故障转移类型。

返回值: 成功

freezeState

字符串

复制一致性组的冻结状态。

返回值: 成功

id

字符串

复制一致性组的 ID。

返回值: 成功

inactiveReason

整数

复制一致性组不活动的原因。

返回值: 成功

lastSnapCreationRc

整数

复制一致性组上次快照的返回代码。

返回值: 成功

lastSnapGroupId

字符串

复制一致性组上次快照的 ID。

返回值: 成功

lifetimeState

字符串

复制一致性组的生命周期状态。

返回值: 成功

localActivityState

字符串

本地复制一致性组的活动状态。

返回值: 成功

name

字符串

复制一致性组的名称。

返回值: 成功

pauseMode

字符串

复制一致性组的生命周期状态。

返回值: 成功

peerMdmId

字符串

复制一致性组的对等 MDM 的 ID。

返回值: 成功

protectionDomainId

字符串

复制一致性组的保护域 ID。

返回值: 成功

remoteActivityState

字符串

远程复制一致性组的活动状态。

返回值: 成功

remoteDisasterRecoveryState

字符串

远程复制一致性组的灾难恢复状态。

返回值: 成功

remoteId

字符串

远程复制一致性组的 ID。

返回值: 成功

remoteMdmId

字符串

远程复制一致性组的远程 MDM 的 ID。

返回值: 成功

remoteProtectionDomainId

字符串

远程保护域的 ID。

返回值: 成功

remoteProtectionDomainName

字符串

远程保护域的名称。

返回值: 成功

replicationDirection

字符串

复制一致性组的复制方向。

返回值: 成功

rpoInSeconds

整数

复制一致性组的 RPO 值(以秒为单位)。

返回值: 成功

snapCreationInProgress

布尔值

复制一致性组的快照创建过程是否正在进行。

返回值: 成功

targetVolumeAccessMode

字符串

复制一致性组的目标卷的访问模式。

返回值: 成功

type

字符串

复制一致性组的类型。

返回值: 成功

作者

  • Trisha Datta (@Trisha-Datta)

  • Jennifer John (@Jennifer-John)