purestorage.flasharray.purefa_pg 模块 – 管理 Pure Storage FlashArrays 上的保护组

注意

此模块是 purestorage.flasharray 集合(版本 1.32.0)的一部分。

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

要安装它,请使用:ansible-galaxy collection install purestorage.flasharray。您需要进一步的要求才能使用此模块,有关详细信息,请参阅 要求

要在 Playbook 中使用它,请指定:purestorage.flasharray.purefa_pg

purestorage.flasharray 1.0.0 中的新增功能

概要

  • 在 Pure Storage FlashArrays 上创建、删除或修改保护组。

  • 如果保护组存在,并且您尝试添加无效类型,例如将主机添加到卷保护组,则该模块将忽略无效类型。

  • 支持卸载目标上的保护组。

要求

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

  • python >= 3.3

  • purestorage >= 1.19

  • py-pure-client >= 1.26.0

  • netaddr

  • requests

  • pycountry

  • urllib3

参数

参数

注释

api_token

字符串

具有管理员权限的用户的 FlashArray API 令牌。

disable_warnings

布尔值

在 purestorage.flasharray 1.29.0 中添加

在调试日志中禁用不安全证书警告

选项

  • false ←(默认)

  • true

enabled

布尔值

定义是否为保护组启用快照。

选项

  • false

  • true ←(默认)

eradicate

布尔值

定义是否在删除时彻底删除保护组并将其留在回收站中。

选项

  • false ←(默认)

  • true

fa_url

字符串

FlashArray 管理 IPv4 地址或主机名。

host

列表 / elements=字符串

要添加到保护组的现有主机列表。

请注意,主机名区分大小写,但 FlashArray 主机名是唯一的并且忽略大小写 - 您不能同时拥有 hostahostA

hostgroup

列表 / elements=字符串

要添加到保护组的现有主机组列表。

请注意,主机组区分大小写,但 FlashArray 主机组名称是唯一的并且忽略大小写 - 您不能同时拥有 groupagroupA

name

别名:pgroup

字符串 / 必需

保护组的名称。

rename

字符串

重命名保护组

如果源保护组在 Pod 或卷组“容器”中,您只需要在同一“容器”中提供新的保护组名称

safe_mode

布尔值

在 purestorage.flasharray 1.13.0 中添加

启用对保护组的 SafeMode 限制

一旦设置,禁用此功能只能由 Pure 技术支持执行

选项

  • false ←(默认)

  • true

state

字符串

定义保护组是否应该存在。

如果指定了 volumehosthostgroup,则仅对保护组中的这些项目起作用。

选项

  • "absent"

  • "present" ←(默认)

target

列表 / elements=字符串

用于连接的复制保护组的远程阵列或卸载目标列表。

请注意,所有复制的保护组都是异步的。

目标阵列或卸载目标必须已连接到源阵列。

每个保护组的最大目标数为 4,假设您的配置支持此值。

volume

列表 / elements=字符串

要添加到保护组的现有卷列表。

请注意,卷区分大小写,但 FlashArray 卷名称是唯一的并且忽略大小写 - 您不能同时拥有 volumeavolumeA

备注

注意

  • 此模块需要 purestoragepy-pure-client Python 库

  • 特定模块可能需要其他 Python 库。

  • 如果未直接将 fa_urlapi_token 参数传递给模块,则必须设置 PUREFA_URLPUREFA_API 环境变量

示例

- name: Create new local protection group
  purestorage.flasharray.purefa_pg:
    name: foo
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create new protection group called bar in pod called foo
  purestorage.flasharray.purefa_pg:
    name: "foo::bar"
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create new replicated protection group
  purestorage.flasharray.purefa_pg:
    name: foo
    target:
      - arrayb
      - arrayc
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create new replicated protection group to offload target and remote array
  purestorage.flasharray.purefa_pg:
    name: foo
    target:
      - offload
      - arrayc
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create new protection group with snapshots disabled
  purestorage.flasharray.purefa_pg:
    name: foo
    enabled: false
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Delete protection group
  purestorage.flasharray.purefa_pg:
    name: foo
    eradicate: true
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: absent

- name: Eradicate protection group foo on offload target where source array is arrayA
  purestorage.flasharray.purefa_pg:
    name: "arrayA:foo"
    target: offload
    eradicate: true
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592
    state: absent

- name: Rename protection group foo in pod arrayA to bar
  purestorage.flasharray.purefa_pg:
    name: "arrayA::foo"
    rename: bar
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create protection group for hostgroups
  purestorage.flasharray.purefa_pg:
    name: bar
    hostgroup:
      - hg1
      - hg2
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create protection group for hosts
  purestorage.flasharray.purefa_pg:
    name: bar
    host:
      - host1
      - host2
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create replicated protection group for volumes
  purestorage.flasharray.purefa_pg:
    name: bar
    volume:
      - vol1
      - vol2
    target: arrayb
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Remove a volume from protection group
  purestorage.flasharray.purefa_pg:
    name: bar
    volume:
      - vol1
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

作者

  • Pure Storage Ansible 团队 (@sdodsley)