To which Ansible module for Dell EMC Isilon version does this FAQ apply?
This FAQ applies to version 1.1 of the module
Where can I get this Ansible module for Dell EMC Isilon?
We have a community in GitHub: https://github.com/dell/ansible-isilon
What is the software prerequisites?
- Isilon OneFS 8 or higher
- Ansible 2.7 or higher
- Python 2.7.12 or higher
- Red Hat Enterprise Linux 7.6
What are the supported features for this Ansible module for Dell EMC Isilon?
The Ansible Modules for Dell EMC Isilon includes:
- File System Module
- Access Zone Module
- Users Module
- Groups Module
- Snapshot Module
- Snapshot Schedule Module
- NFS Module
- SMB Module
- Gather Facts Module
Each module includes View, Create, Delete and Modify operations. For the details, refer to the table below:
|
user
|
group
|
filesystem
|
Access zone
|
NFS export
|
SMB share
|
snapshot
|
Snapshot schedule
|
Create
|
y
|
y
|
y
|
n
|
y
|
y
|
y
|
y
|
Modify
|
y
|
y
|
y
|
y
|
y
|
y
|
y
|
y
|
Delete
|
y
|
y
|
y
|
n
|
y
|
y
|
y
|
y
|
View
|
y
|
y
|
y
|
y
|
y
|
y
|
y
|
y
|
What is the filesystem as we don’t see this concept in Isilon?
Filesystem in this Ansible module represents a directory in a given access zone with owner, ACL and even quotas specified.
How to install it?
I’ve listed high-level steps below. For the details, refer to the product guide at
https://github.com/dell/ansible-isilon/blob/dellemc_ansible/docs/Ansible%20for%20Dell%20EMC%20Isilon%20v1.1%20Product%20Guide.pdf
The following example is using CenoOS 8 + python 3.6 + Ansible 2.9.5 + Isilon sdk 8.1.1 + OneFS 8.2.2. The overall steps are as the followings:
- Install Ansible 2.9.5
# dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# dnf install ansible
- Check the python version for ansible by using the following command
# ansible –version
In my case it’s python 3.6.8
[root@c8 ~]# ansible –version
ansible 2.9.5
config file = /etc/ansible/ansible.cfg
configured module search path = [‘/root/.ansible/plugins/modules’, ‘/usr/share/ansible/plugins/modules’]
ansible python module location = /usr/lib/python3.6/site-packages/ansible
executable location = /usr/bin/ansible
python version = 3.6.8 (default, Nov 21 2019, 19:31:34) [GCC 8.3.1 20190507 (Red Hat 8.3.1-4)]
- Install Isilon sdk 8.1.1
# pip3 install isi_sdk_8_1_1
- Install Isilon Ansible module: (make sure the path is aligned with the python version)
Copy utils/dellemc_ansible_utils.py to /usr/lib/python3.6/site-packages/ansible/module_utils/
Copy all module Python files from ‘isilon/library’ folder to /usr/lib/python3.6/site-packages/ansible/modules/storage/emc
- Install the playbook
Coyp dellemc_ansible/isilon/playbooks to any place you want
- Test the installation
Update the playbooks/ flo_test.yml. mine is as below:
—
– name: Collect set of facts in Isilon
hosts: localhost
connection: local
vars:
onefs_host: ‘192.168.116.88’
verify_ssl: False
api_user: ‘root’
api_password: ‘a’
access_zone: ‘System’
tasks:
– name: Get nodes of the Isilon cluster
dellemc_isilon_gatherfacts:
onefs_host: “{{onefs_host}}”
verify_ssl: “{{verify_ssl}}”
api_user: “{{api_user}}”
api_password: “{{api_password}}”
gather_subset:
– nodes
register: subset_result
– debug:
var: subset_result
run the playbook:
ansible-playbook <path to playbooks/flo_test.yml>
If everything is good, you should see the Info for your Isilon is returned:
…………
“release”: “v9.0.0.BETA.0”,
“uptime”: 24533,
“version”: “Isilon OneFS v8.2.2(RELEASE): 0x900003000000001:Tue Feb 25 09:19:10 PST 2020 root@se********-build11-114:/b/mnt/obj/b/mnt/src/********md64.********md64/sys/IQ.********md64.rele********se FreeBSD cl********ng version 5.0.0 (t********gs/RELEASE_500/fin********l 312559) (b********sed on LLVM 5.0.0svn)”
}
}
],
“total”: 1
},
“Providers”: [],
“Users”: [],
“changed”: false,
“failed”: false
}
}
PLAY RECAP *********************************************************************
localhost : ok=3 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
Does this module support quota?
The current version only support directory(file system) quotas, but not user or group quotas.
Where can I find the examples?
Check examples from each module’s file in /ansible-isilon/dellemc_ansible/isilon/library/
I’ve also create a short video on how to use this module to create and mount NFS export from Isilon.
What is the limitation of this module?
Gatherfacts
|
Getting the list of users and groups with very long names may fail.
|
Users and Groups
|
Only local users and groups can be created.
Operations on users and groups with very long names may fail.
|
Access Zone
|
Creation and deletion of access zones is not supported.
|
Filesystems
|
ACLs can only be modified from POSIX to POSIX mode.
Only directory quotas are supported but not user or group quotas.
Modification of include_snap_data flag is not supported.
|
NFS Export
|
If there multiple exports present with the same path in an access zone, operations on such exports fail.
|
Advanced Isilon features
|
No support for advanced Isilon features like SyncIQ, tiering, WORM and so on.
|
How to uninstall the module?
- pip3 uninstall isi_sdk_8_1_1
- Remove dellemc_ansible_utils.py from /usr/lib/python3.6/site-packages/ansible/module_utils/
- Remove the following files from /usr/lib/python3.6/site-packages/ansible/modules/storage/emc
dellemc_isilon_accesszone.py
dellemc_isilon_filesystem.py
dellemc_isilon_gatherfacts.py
dellemc_isilon_group.py
dellemc_isilon_nfs.py
dellemc_isilon_smb.py
dellemc_isilon_snapshot.py
dellemc_isilon_snapshotschedule.py
dellemc_isilon_user.py
- Remove all the play book
Where do submit an issue against the driver?
The Ansible module for Dell EMC Isilon is officially by Dell EMC. Therefore you can open a ticket directly to the support website : https://www.dell.com/support/ or open a discussion in the forum : https://www.dell.com/community/Containers/bd-p/Containers
Can I run this module in a production environment?
Yes, the module is production-grade. Please make sure your environment follows the pre-requisites and Ansible best practices.