infinidat.infinibox.infini_export_client – Create, Delete or Modify NFS Client(s) for existing exports on Infinibox

Note

This plugin is part of the infinidat.infinibox collection (version 1.2.4).

To install it use: ansible-galaxy collection install infinidat.infinibox.

To use it in a playbook, specify: infinidat.infinibox.infini_export_client.

New in version 2.3: of infinidat.infinibox

Synopsis

  • This module creates, deletes or modifys NFS client(s) for existing exports on Infinibox.

Requirements

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

Parameters

Parameter Choices/Defaults Comments
access_mode
string
    Choices:
  • RW ←
  • RO
Read Write or Read Only Access.
client
string / required
Client IP or Range. Ranges can be defined as follows 192.168.0.1-192.168.0.254.

aliases: name
export
string / required
Name of the export.
no_root_squash
boolean
    Choices:
  • no ←
  • yes
Don't squash root user to anonymous. Will be set to "no" on creation if not specified explicitly.
password
string
Infinibox User password.
state
string
    Choices:
  • present ←
  • absent
Creates/Modifies client when present and removes when absent.
system
string / required
Infinibox Hostname or IPv4 Address.
user
string
Infinibox User username with sufficient priveledges ( see notes ).

Notes

Note

  • This module requires infinisdk python library

  • You must set INFINIBOX_USER and INFINIBOX_PASSWORD environment variables if user and password arguments are not passed to the module directly

  • Ansible uses the infinisdk configuration file ~/.infinidat/infinisdk.ini if no credentials are provided. See http://infinisdk.readthedocs.io/en/latest/getting_started.html

  • All Infinidat modules support check mode (–check). However, a dryrun that creates resources may fail if the resource dependencies are not met for a task. For example, consider a task that creates a volume in a pool. If the pool does not exist, the volume creation task will fail. It will fail even if there was a previous task in the playbook that would have created the pool but did not because the pool creation was also part of the dry run.

Examples

- name: Make sure nfs client 10.0.0.1 is configured for export. Allow root access
  infini_export_client:
    client: 10.0.0.1
    access_mode: RW
    no_root_squash: yes
    export: /data
    state: present  # Default
    user: admin
    password: secret
    system: ibox001

- name: Add multiple clients with RO access. Squash root privileges
  infini_export_client:
    client: "{{ item }}"
    access_mode: RO
    no_root_squash: no
    export: /data
    user: admin
    password: secret
    system: ibox001
  with_items:
    - 10.0.0.2
    - 10.0.0.3

Authors

  • Gregory Shulov (@GR360RY)