purestorage.flasharray.purefa_policy 模块 – 管理 FlashArray 文件系统策略

注意

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

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

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

要在 playbook 中使用它,请指定:purestorage.flasharray.purefa_policy

purestorage.flasharray 1.5.0 中的新增功能

概要

  • 管理 NFS、SMB 和快照的 FlashArray 文件系统策略

要求

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

  • python >= 3.3

  • purestorage >= 1.19

  • py-pure-client >= 1.26.0

  • netaddr

  • requests

  • pycountry

  • urllib3

参数

参数

注释

access_based_enumeration

布尔值

在 purestorage.flasharray 1.26.0 中添加

定义是否启用 SMB 的基于访问的枚举

选项

  • false ←(默认)

  • true

anongid

字符串

在 purestorage.flasharray 1.14.0 中添加

任何 GID 受 accessroot-squashall-squash 影响的用户将被映射到的 ID。

当启用 user_mapping 时,此项将被忽略。

使用 "" 清除。

默认:"65534"

anonuid

字符串

在 purestorage.flasharray 1.14.0 中添加

任何 UID 受 accessroot-squashall-squash 影响的用户将被映射到的 ID。

使用 "" 清除。

默认:"65534"

api_token

字符串

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

client

字符串

指定哪些 SMB 或 NFS 客户端被授予访问权限

接受的表示法、IP、IP 掩码或主机名

directory

列表 / 元素=字符串

在 purestorage.flasharray 1.9.0 中添加

要应用配额规则的目录。

disable_warnings

布尔值

在 purestorage.flasharray 1.29.0 中添加

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

选项

  • false ←(默认)

  • true

enabled

布尔值

定义是否启用策略

选项

  • false

  • true ←(默认)

enforce_dictionary_check

布尔值

在 purestorage.flasharray 1.33.0 中添加

如果为 true,则针对已知泄露密码的字典测试密码。

仅适用于长度超过 6 个字符的密码。

选项

  • false

  • true

enforce_username_check

布尔值

在 purestorage.flasharray 1.33.0 中添加

如果为 true,则用户名不能是密码的子字符串。

它仅适用于 3 个字符或更长的用户名

选项

  • false

  • true

fa_url

字符串

FlashArray 管理 IPv4 地址或主机名。

ignore_usage

布尔值

在 purestorage.flasharray 1.9.0 中添加

用于覆盖配额管理操作检查的标志。

如果设置为 true,则不会根据设置的 quota_limits 检查目录使用情况。

如果设置为 false,则会阻止正在使用的实际逻辑字节数超过目录上设置的限制。

客户端操作可能会受到影响。

如果限制超过配额,则不允许客户端操作。

选项

  • false ←(默认)

  • true

lockout_duration

整数

在 purestorage.flasharray 1.33.0 中添加

超出 max_login_attempts 后,帐户锁定的持续时间(以秒为单位)

范围介于 1 秒和 90 天(7776000 秒)之间

max_login_attempts

整数

在 purestorage.flasharray 1.33.0 中添加

帐户锁定前失败的最大登录次数

min_character_groups

整数

在 purestorage.flasharray 1.33.0 中添加

密码中必须存在的最小字符组数。

min_characters_per_group

整数

在 purestorage.flasharray 1.33.0 中添加

每个组中将该组计为存在的最小字符数。

最大值受最小密码长度除以字符组数的限制

min_password_length

整数

在 purestorage.flasharray 1.33.0 中添加

最小用户密码长度

name

字符串 / 必需

策略的名称

nfs_access

字符串

指定导出的访问控制

选项

  • "root-squash"

  • "no-root-squash" ←(默认)

  • "all-squash"

nfs_permission

字符串

指定允许导出的读写客户端访问权限

选项

  • "ro"

  • "rw" ←(默认)

nfs_version

列表 / 元素=字符串

在 purestorage.flasharray 1.22.0 中添加

允许导出的 NFS 协议版本

选项

  • "nfsv3"

  • "nfsv4"

password_history

整数

在 purestorage.flasharray 1.33.0 中添加

为防止密码重用而跟踪的密码数量。

值为 0 将不检查密码历史记录

policy

字符串 / 必需

要使用的策略类型

选项

  • "nfs"

  • "smb"

  • "snapshot"

  • "quota"

  • "autodir"

  • "password"

quota_enforced

布尔值

定义是否强制执行目录配额。

选项

  • false

  • true ←(默认)

quota_limit

字符串

在 purestorage.flasharray 1.9.0 中添加

共享的逻辑空间限制,单位为 M、G、T 或 P。请参阅示例。

如果在文件系统创建时未设置大小,则文件系统大小变为无限制。

此值不能设置为 0。

quota_notifications

列表 / 元素=字符串

在 purestorage.flasharray 1.9.0 中添加

当使用量接近配额限制时要通知的目标。

通知目标列表是一个以逗号分隔的字符串

如果未指定,则不分配通知目标。

选项

  • "user"

  • "group"

rename

字符串

策略的新名称

security

列表 / 元素=字符串

在 purestorage.flasharray 1.25.0 中添加

用于访问挂载点上文件的安全协议。

如果服务器不支持请求的协议,则挂载操作将失败。

此操作会更新指定策略的所有规则。

选项

  • "auth_sys"

  • "krb5"

  • "krb5i"

  • "krb5p"

smb_anon_allowed

布尔值

指定是否允许匿名用户访问信息

选项

  • false ←(默认)

  • true

smb_encrypt

布尔值

指定是否要求远程客户端使用 SMB 加密

选项

  • false ←(默认)

  • true

snap_at

字符串

指定自午夜起多少小时执行快照,或指定包含 AM/PM 的小时数

只能在具有最小 snap_every 值的规则上设置。

如果 snap_every 值不是以天为单位,则无法设置。

同一策略中最多只能为一个规则设置。

snap_client_name

字符串

客户端可见快照名称的可自定义部分。

snap_every

整数

指定快照之间的时间间隔,以分钟为单位。

所有规则的值必须互为倍数。

对于同一策略中的每个规则,必须是唯一的。

值必须介于 5 和 525600 之间。

snap_keep_for

整数

指定快照在被删除之前保留的时间段,以分钟为单位。

不能小于规则的 snap_every 值。

对于同一策略中的每个规则,值必须是唯一的。

值必须介于 5 和 525600 之间。

snap_suffix

字符串

在 purestorage.flasharray 1.10.0 中添加

快照后缀名称

后缀值只能为同一策略中的一个规则设置

后缀值只能在具有相同 ``keep_for`` 值和 ``every`` 值的规则上设置

后缀值只能在具有最大 ``keep_for`` 值的规则上设置

如果未指定,则默认为系统生成的单调递增数字。

state

字符串

定义策略是否应该存在。

选项

  • "absent"

  • "present" ← (默认)

user_mapping

布尔值

在 purestorage.flasharray 1.14.0 中添加

定义是否启用用户映射

选项

  • false

  • true ←(默认)

注释

注意

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

  • 特定模块可能需要额外的 Python 库。

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

示例

- name: Create an NFS policy with initial rule
  purestorage.flasharray.purefa_policy:
    name: export1
    policy: nfs
    nfs_access: root-squash
    nfs_permission: ro
    client: client1
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create an empty NFS policy with no rules
  purestorage.flasharray.purefa_policy:
    name: export1
    policy: nfs
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create an empty snapshot policy with no rules
  purestorage.flasharray.purefa_policy:
    name: snap1
    policy: snapshot
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create an empty snapshot policy with single directory member
  purestorage.flasharray.purefa_policy:
    name: snap1
    policy: snapshot
    directory: "foo:bar"
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Disable a policy
  purestorage.flasharray.purefa_policy:
    name: export1
    policy: nfs
    enabled: false
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Add rule to existing NFS export policy
  purestorage.flasharray.purefa_policy:
    name: export1
    policy: nfs
    nfs_access: root-squash
    nfs_permission: ro
    client: client2
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Add rule to existing SMB export policy
  purestorage.flasharray.purefa_policy:
    name: export1
    policy: smb
    smb_encrypt: true
    smb_anon_allowed: false
    client: client1
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Add non-suffix rule to existing snapshot export policy
  purestorage.flasharray.purefa_policy:
    name: snap1
    policy: snapshot
    snap_client_name: foo
    snap_every: 15
    snap_keep_for: 1440
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Add suffix rule to existing snapshot export policy
  purestorage.flasharray.purefa_policy:
    name: snap1
    policy: snapshot
    snap_client_name: foo
    snap_suffix: bar
    snap_every: 1440
    snap_keep_for: 1440
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Delete policy rule for a client
  purestorage.flasharray.purefa_policy:
    name: export1
    policy: nfs
    client: client2
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Delete policy
  purestorage.flasharray.purefa_policy:
    name: export1
    policy: nfs
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create directory quota policy for directory bar
  purestorage.flasharray.purefa_policy:
    name: foo
    directory:
     - "foo:root"
     - "bar:bin"
    policy: quota
    quota_limit: 10G
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Delete directory quota policy foo
  purestorage.flasharray.purefa_policy:
    name: foo
    policy: quota
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Create empty directory quota policy foo
  purestorage.flasharray.purefa_policy:
    name: foo
    policy: quota
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Detach directory "foo:bar" from quota policy quota1
  purestorage.flasharray.purefa_policy:
    name: quota1
    directory:
     - "foo:bar"
    state: absent
    policy: quota
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Remove quota rule from quota policy foo
  purestorage.flasharray.purefa_policy:
    name: foo
    policy: quota
    quota_limit: 10G
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Update password police management
  purestorage.flasharray.purefa_policy:
    name: management
    policy: password
    max_login_attempts: 5
    enforce_username_check: true
    enforce_dictopnary_check: true
    min_password_length: 5
    password_history: 2
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

作者

  • Pure Storage Ansible 团队 (@sdodsley)