Automating cDOT Configuration: How to Make a 4-Hour Process Only 5 Minutes

by Ezra Tingler, Sr. Storage Engineer, NetApp IT

revised zexplore screen shot with captionAs a senior storage engineer in our Customer-1 organization, I am responsible for storage lifecycle management including the installation, decommission, and capacity management of our clustered Data ONTAP (cDOT) and 7-Mode storage controllers. Our group is in the midst of moving all data hosted on 7-Mode storage controllers to cDOT clusters.

Business Challenge
As part of our migration, we are installing additional cDOT clusters and nodes. The configuration of each high availability (HA) pair took about four hours, spread out over 2 to 3 days. The four hours did not include the time needed to configure the cluster inter-connect switches or initialize disks; this takes 2 to 12 hours depending on disk type. Plus typical office interruptions added more time as I had to figure out where I had left off. This sporadic schedule seemed to result in some configuration inconsistencies.

The Solution
I challenged myself to see if I could automate the process to save time and reduce errors. Although I’m not a developer, I found it easy to write the script using the NetApp Software Development Kit (SDK). I run the script after the disks are initialized, cluster setup is complete, and the cluster inter-connect switches are properly configured. The script reads configuration information from a file, then applies the configuration to the cluster nodes. It does so by accessing the nodes via ZAPI calls, which is why it is fast.

The results have been amazing. The four-hour process now takes about five minutes to complete 99% of the configuration. It is now possible to install 24 nodes in two hours rather than 96 hours, a time savings of 94 hours or 2½ work weeks. Errors caused by interruptions have been eliminated. Automating this process has freed up my time to work on other projects.

revised perl screen shot with captionIf you are a storage admin, you can easily do this yourself with the SDK. I used an SDK tool called Z-Explorer that contains a complete list of all ZAPI calls for the cluster. With Z-Explorer most of the development work is done for you. It took me just three weeks to automate all the builds. This KnowledgeBase article is a good place to start.  

It was a fun project because I could write the script without feeling like I had to be a developer. I wrote the scripts in PERL, but the SDK works with any language you are familiar with. I also used the SDK forum online to get advice from others. People were quick to answer my questions.

The Future
I’m now using the SDK to automate and streamline other storage tasks to save time and reduce errors. My next project is a quality assurance (QA) script that will login to a cluster and verify if nodes are properly configured per NetApp IT Standards and NetApp best practice guidelines. I plan to automate the cluster interconnect switch configuration in the same way as well as e-Series configuration.


UPDATE: The automation script is now available for download in the NetApp Storage Automation Store.

The NetApp-on-NetApp blog series features advice from subject matter experts from NetApp IT who share their real-world experiences using NetApp’s industry-leading storage solutions to support business goals. Want to view learn more about the program? Visit


Where can I download the code?


Currently my code is not available for public consumption.  However, you can download SDK which contains Z-Explorer to help you write your own code.  Follow this link scroll down to NetApp Manageability SDK and select your prefered platform on the right hand side then click Go and follow the instructions to download the SDK.  I would also advise you to use the forums to ask specific questions as they may arrise.

What is the point of the artical? You can automate anytihg all of us know this. If you going to write an artical then please be willing to share the code.


I understand your point, however the my script is very specific to NetApp IT.  The point of the article was not to provide an example or to teach people how to use the SDK, but rather to inspire others to try to do the same on their own. 


Just wanted to post a quick update, the code to the script is not yet available.  But what is available is the Day-0 WFA workflow which was written based 100% on the script.  Using this workflow you can complete all of the configuration steps you could complete using the script.  And it is nearly as fast, after filling in the required information the workflow completes in about 6 to 7 minutes. Download it and give it a try!

Thanks for the post. This is motivating. The SDK always appeared daunting as a non-developer. 

Hi EzraTingler.


Thanks for the WFA update. We will try asap Smiley Happy



 Anton Oks