On this page
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).
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 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.
- infinisdk (https://infinisdk.readthedocs.io/en/latest/)
 - munch
 - python2 >= 2.7 or python3 >= 3.6
 
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| access_mode
        
        string
         | 
      
       
  | 
      
        
        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
         | 
      
       
  | 
      
        
        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
         | 
      
       
  | 
      
        
        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.iniif 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)
 
© 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/infinidat/infinibox/infini_export_client_module.html