netapp.ontap.na_ontap_export_policy_rule – NetApp ONTAP manage export policy rules

Note

This plugin is part of the netapp.ontap collection.

To install it use: ansible-galaxy collection install netapp.ontap.

To use it in a playbook, specify: netapp.ontap.na_ontap_export_policy_rule.

New in version 2.6: of netapp.ontap

Synopsis

  • Create or delete or modify export rules in ONTAP

Requirements

The below requirements are needed on the host that executes this module.

  • A physical or virtual clustered Data ONTAP system. The modules support Data ONTAP 9.1 and onward.

  • REST support requires ONTAP 9.6 or later.

  • Ansible 2.6

  • Ansible 2.9 or later is strongly recommended as it enables the new collection delivery system.

  • Python2 netapp-lib (2017.10.30) or later. Install using ‘pip install netapp-lib’

  • Python3 netapp-lib (2018.11.13) or later. Install using ‘pip install netapp-lib’

  • netapp-lib 2020.3.12 is strongly recommended as it provides better error reporting for connection issues.

  • To enable http on the cluster you must run the following commands ‘set -privilege advanced;’ ‘system services web modify -http-enabled true;’

Parameters

Parameter Choices/Defaults Comments
allow_suid
boolean
    Choices:
  • no
  • yes
If 'true', NFS server will honor SetUID bits in SETATTR operation. Default value on creation is 'true'
anonymous_user_id
integer
User name or ID to which anonymous users are mapped. Default value is '65534'.
cert_filepath
string
added in 20.6.0 of netapp.ontap
path to SSL client cert file (.pem).
not supported with python 2.6.
client_match
list / elements=string
List of Client Match host names, IP Addresses, Netgroups, or Domains
If rule_index is not provided, client_match is used as a key to fetch current rule to determine create,delete,modify actions. If a rule with provided client_match exists, a new rule will not be created, but the existing rule will be modified or deleted. If a rule with provided client_match doesn't exist, a new rule will be created if state is present.
feature_flags
dictionary
added in 20.5.0 of netapp.ontap
Enable or disable a new feature.
This can be used to enable an experimental feature or disable a new feature that breaks backward compatibility.
Supported keys and values are subject to change without notice. Unknown keys are ignored.
hostname
string / required
The hostname or IP address of the ONTAP instance.
http_port
integer
Override the default port (80 or 443) with this port
https
boolean
    Choices:
  • no ←
  • yes
Enable and disable https.
Ignored when using REST as only https is supported.
Ignored when using SSL certificate authentication as it requires SSL.
key_filepath
string
added in 20.6.0 of netapp.ontap
path to SSL client key file.
name
string / required
The name of the export rule to manage.

aliases: policy_name
ontapi
integer
The ontap api version to use
password
string
Password for the specified user.

aliases: pass
protocol
list / elements=string
    Choices:
  • any
  • nfs
  • nfs3
  • nfs4
  • cifs
  • flexcache
List of Client access protocols.
Default value is set to 'any' during create.
ro_rule
list / elements=string
    Choices:
  • any
  • none
  • never
  • krb5
  • krb5i
  • krb5p
  • ntlm
  • sys
List of Read only access specifications for the rule
rule_index
integer
rule index of the export policy
rw_rule
list / elements=string
    Choices:
  • any
  • none
  • never
  • krb5
  • krb5i
  • krb5p
  • ntlm
  • sys
List of Read Write access specifications for the rule
state
string
    Choices:
  • present ←
  • absent
Whether the specified export policy rule should exist or not.
super_user_security
list / elements=string
    Choices:
  • any
  • none
  • never
  • krb5
  • krb5i
  • krb5p
  • ntlm
  • sys
List of Read Write access specifications for the rule
use_rest
string
Default:
"auto"
REST API if supported by the target system for all the resources and attributes the module requires. Otherwise will revert to ZAPI.
always -- will always use the REST API
never -- will always use the ZAPI
auto -- will try to use the REST Api
username
string
This can be a Cluster-scoped or SVM-scoped account, depending on whether a Cluster-level or SVM-level API is required.
For more information, please read the documentation https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/.
Two authentication methods are supported
1. basic authentication, using username and password,
2. SSL certificate authentication, using a ssl client cert file, and optionally a private key file.
To use a certificate, the certificate must have been installed in the ONTAP cluster, and cert authentication must have been enabled.

aliases: user
validate_certs
boolean
    Choices:
  • no
  • yes ←
If set to no, the SSL certificates will not be validated.
This should only set to False used on personally controlled sites using self-signed certificates.
vserver
string / required
Name of the vserver to use.

Notes

Note

  • The modules prefixed with na\_ontap are built to support the ONTAP storage platform.

Examples

- name: Create ExportPolicyRule
  na_ontap_export_policy_rule:
    state: present
    name: default123
    vserver: ci_dev
    client_match: 0.0.0.0/0,1.1.1.0/24
    ro_rule: krb5,krb5i
    rw_rule: any
    protocol: nfs,nfs3
    super_user_security: any
    anonymous_user_id: 65534
    allow_suid: true
    hostname: "{{ netapp_hostname }}"
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"

- name: Modify ExportPolicyRule
  na_ontap_export_policy_rule:
    state: present
    name: default123
    rule_index: 100
    client_match: 0.0.0.0/0
    anonymous_user_id: 65521
    ro_rule: ntlm
    rw_rule: any
    protocol: any
    allow_suid: false
    hostname: "{{ netapp_hostname }}"
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"

- name: Delete ExportPolicyRule
  na_ontap_export_policy_rule:
    state: absent
    name: default123
    rule_index: 100
    vserver: ci_dev
    hostname: "{{ netapp_hostname }}"
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"

Authors