Ansible users rejoice. Today NetApp is proud to announce the release of 33 new and updated ONTAP modules for Ansible.

Ansible is an open source IT automation framework, initiated and managed by Red Hat, which acts as a layer for connecting automation across DevOps services and tooling. It was created to help developers and IT operators accelerate the deployment of IT applications and environments by automating routine activities such as network configuration, cloud deployments, and creation of development environments. NetApp is proud to be one of the few storage vendors to have done any integration for Ansible, and even more so to have done the most integration available. We know that more and more businesses are looking to automate and manage their configurations across their environment and Ansible is a major choice for that. NetApp is dedicated to being a full partner in this space.

With the new storage modules, playbooks can be written to handle full ONTAP system setup and deployments, from complex day 0 infrastructure and application deployments to mundane volume creations. Playbooks can also be combined with other modules to provide full stack presentations of storage to hosts including the host side presentations. Since these are ONTAP modules they can be used with on-premises AFF or Select systems, and hyperscaler located ONTAP Cloud system. Configuring ONTAP in this way saves time, and resources as a single playbook can handle almost all of your configurations.

Check regularly at for example playbooks that can be easily modified to fit your environment, as well as for tips and tricks, you may not know.

The following steps will help you install the updated Ansible modules into your Ansible system.

git clone
cd ansible
ansible --version

Your output might differ but it will look something like this:

config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/local/lib/python2.7/dist-packages/ansible
executable location = /usr/local/bin/ansible
python version = 2.7.12 (default, Nov 20 2017, 18:23:56) [GCC 5.4.0 20160609]

The line that starts with "ansible python module location" shows you where your local modules are so replace your path if different for the export command

export ANSIBLE_PATH=/usr/local/lib/python2.7/dist-packages/ansible
cp -aRv lib/ansible/module_utils/netapp* $ANSIBLE_PATH/module_utils/
cp -aRv lib/ansible/modules/storage/netapp/* $ANSIBLE_PATH/modules/storage/netapp/

Finally, these modules use http by default for communication.  You will need to enable it on the ONTAP system.

cluster::> set -privilege advanced
cluster::> system services web modify -http-enabled true
  • All NetApp modules are now just a full part of Ansible.  No side loading necessary.  Simply install Ansible via your choice of method, then using pip install 'netapp-lib' for ONTAP support, and 'solidfire-sdk-python' for ElementSW support. - Updated with Ansible 2.7 10-4-18

That's it.  You are now ready to start using all the new and improved modules for your ONTAP needs.

Documentation for each module can be found at

Be sure to join the #configurationmgmt channel on thePub with any questions.

About David Blackwell

David is a twenty year IT veteran who has been an admin for just about every aspect of a DataCenter at one time or another. When not working, or tinkering with new software at home, David spends most of his free time with his six year old son and his lovely wife.

Pin It on Pinterest