Note
This plugin is part of the purestorage.flasharray collection (version 1.11.0).
You might already have this collection installed if you are using the ansible
package. It is not included in ansible-core
. To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install purestorage.flasharray
.
To use it in a playbook, specify: purestorage.flasharray.purefa_policy
.
New in version 1.5.0: of purestorage.flasharray
The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments |
---|---|---|
api_token string | FlashArray API token for admin privileged user. | |
client string | Specifies which SMB or NFS clients are given access Accepted notation, IP, IP mask, or hostname | |
directory list / elements=string added in 1.9.0 of purestorage.flasharray | Directories to have the quota rule applied to. | |
enabled boolean |
| Define if policy is enabled or not |
fa_url string | FlashArray management IPv4 address or Hostname. | |
ignore_usage boolean added in 1.9.0 of purestorage.flasharray |
| Flag used to override checks for quota management operations. If set to true, directory usage is not checked against the quota_limits that are set. If set to false, the actual logical bytes in use are prevented from exceeding the limits set on the directory. Client operations might be impacted. If the limit exceeds the quota, the client operation is not allowed. |
name string / required | Name of the policy | |
nfs_access string |
| Specifies access control for the export |
nfs_permission string |
| Specifies which read-write client access permissions are allowed for the export |
policy string / required |
| The type of policy to use |
quota_enforced boolean |
| Defines if the directory quota is enforced. |
quota_limit string added in 1.9.0 of purestorage.flasharray | Logical space limit of the share in M, G, T or P units. See examples. If size is not set at filesystem creation time the filesystem size becomes unlimited. This value cannot be set to 0. | |
quota_notifications list / elements=string added in 1.9.0 of purestorage.flasharray |
| Targets to notify when usage approaches the quota limit. The list of notification targets is a comma-separated string If not specified, notification targets are not assigned. |
rename string | New name of policy | |
smb_anon_allowed boolean |
| Specifies whether access to information is allowed for anonymous users |
smb_encrypt boolean |
| Specifies whether the remote client is required to use SMB encryption |
snap_at string | Specifies the number of hours since midnight at which to take a snapshot or the hour including AM/PM Can only be set on the rule with the smallest snap_every value. Cannot be set if the snap_every value is not measured in days. Can only be set for at most one rule in the same policy. | |
snap_client_name string | The customizable portion of the client visible snapshot name. | |
snap_every integer | Specifies the interval between snapshots, in minutes. The value for all rules must be multiples of one another. Must be unique for each rule in the same policy. Value must be between 5 and 525600. | |
snap_keep_for integer | Specifies the period that snapshots are retained before they are eradicated, in minutes. Cannot be less than the snap_every value of the rule. Value must be unique for each rule in the same policy. Value must be between 5 and 525600. | |
snap_suffix string added in 1.10.0 of purestorage.flasharray | The snapshot suffix name The suffix value can only be set for one rule in the same policy The suffix value can only be set on a rule with the same ``keep_for`` value and ``every`` value The suffix value can only be set on the rule with the largest ``keep_for`` value If not specified, defaults to a monotonically increasing number generated by the system. | |
state string |
| Define whether the policy should exist or not. |
Note
purestorage
and py-pure-client
Python librariesPUREFA_URL
and PUREFA_API
environment variables if fa_url and api_token arguments are not passed to the module directly- name: Create an NFS policy with initial rule 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 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 purefa_policy: name: snap1 policy: snapshot fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592 - name: Disable a policy 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 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 purefa_policy: name: export1 policy: smb smb_encrypt: yes smb_anon_allowed: no 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 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 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 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 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 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 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 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 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 purefa_policy: name: foo policy: quota quota_limit: 10G state: absent fa_url: 10.10.10.2 api_token: e31060a7-21fc-e277-6240-25983c6c4592
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/purestorage/flasharray/purefa_policy_module.html