Connecting vCenter Orchestrator to the WFA database

The last few posts have been describing how to use REST to execute NetApp Workflow Automation (WFA) workflows remotely. The most recent post showed how to use the NetApp Workflow Automation Package for vCenter Orchestrator to execute those workflows by simply calling one vCenter Orchestrator (vCO) workflow.

However, if you followed along in that post you noticed that the data which is dynamically populated in drop downs and lists when executed from WFA is static when executed from vCO. WFA uses it’s database, which is periodically updated from OCUM, to provide real-time information when executing workflows. This includes selecting, and filtering, things like available clusters, storage virtual machines, and other important data when executing WFA workflows from the WFA GUI.

How do we get that information into vCO so that we can provide dynamic, valid, choices to the user who is executing the vCO workflow? Well, it turns out there are a couple of ways, but for this post, and the next one, we are going to focus on connecting vCO to the WFA database. In the future we will also include another way, using REST to query WFA finders.

This post will focus on connecting vCO to the WFA database and executing basic queries. The follow-on post will show how to integrate those queries into vCO workflows.

Read more

Using the NetApp OnCommand WFA package for vCO

The last two posts have shown some interesting possibilities regarding integration between VMware’s vCenter Orchestrator (vCO) and NetApp Workflow Automation (WFA), however both methods were rather cumbersome. Having to write 100+ lines of javascript in a vCO scriptable task is not exactly convenient!

Fortunately, NetApp has published a vCO package which abstracts all of that code into a handful of workflows and actions easily consumed by vCO workflows. To execute a WFA workflow from vCO you only need to know the name of the WFA workflow and the inputs needed.

The package is available from the NetApp Communities here. Once you have downloaded the package, installation is easy, simply import it into your vCO instance using the GUI. You will need to do a bit of configuration (adding the WFA host name and credentials), but that’s it. Jack has a couple of posts that do an excellent job of describing the setup process on his blog.


Read more

Executing WFA workflows from vCenter Orchestrator using REST

In the previous post I showed how to execute a NetApp OnCommand Workflow Automation (WFA) workflow using the REST cmdlets available in Powershell version 4. However, any language or platform can be used for execution via REST, including VMware’s vCenter Orchestrator (vCO).

For the most simple execution we can simply add the WFA host as a REST host to vCO. When the REST plug-in is added to your vCO instance, it adds some helper workflows for managing the connected hosts. Let’s start by executing the “Add a REST host” vCO workflow (located at Library->HTTP-REST->Configuration).

Read more

Executing WFA workflows using REST

NetApp’s Workflow Automation (WFA) tool is a valuable asset for providing easily consumed scriptable tasks to perform nearly any function that storage administrators require.  For administrators who want to get out of the business of doing mundane tasks, like provisioning generic volumes, adjusting volume sizes, etc., WFA gives you the ability to surface those operations to storage consumers and have them do the work for themselves.

WFA can also play a part in a larger scheme of workflows that can be orchestrated by other software, for example VMware’s vCAC, Puppet, Chef, Microsoft Orchestrator, etc.  This leaves the power (and details) of how to automate the task with the storage team, but enables the IT organization to leverage storage resources in a programmatic manner.  This is done using the REST interface.

Read more

SSH to Clustered Data ONTAP using Key Authentication

This post is an update to the earlier post on key based authentication to a ONTAP 7-mode (or ONTAP 7) system. Clustered Data ONTAP’s authentication mechanism is different because it isn’t tied to each node, but rather the cluster itself.

To configure key based authentication for the cluster admin user, you will need to add the authentication method first:

Note that the above warning will occur after executing the command to warn you that a public key must be imported for the user before it can be used. Import the key using the following command:

Note that the -publickey option has double quotes around the public key text, and the key type prefix (ssh-rsa in this case) remains.

Doing this for Storage Virtual Machine admins/users is the same process, just change the appropriate options (-vserver and -username) to valid values.

Also note that you can have multiple keys (up to 99) for an individual user. If you want to enable the entire storage team to access the cluster admin account without having to worry about shared passwords or shared certificates, that is possible.

Clustered Data ONTAP Snapmirror – Removing a relationship from the source

Encountered a situation where the Snapmirror destination had been removed without properly cleaning up the source. This was on a clustered Data ONTAP 8.2 system where I could not delete a volume because of the Snapmirror relationship. This operation is performed from the source, so snapmirror show does not show any relationships (remember…snapmirror is managed from the destination).

Here is what I did to remove the Snapmirror snapshot and the relationship. First, show the destinations:

Once this information is available, you can simply call the snapmirror delete command with the above information to remove the relationship from the source:

The use of -force may be necessary if the destination is not reachable (check cluster peer show for peer status).

NetApp Virtual Storage Console Default Provisioning and Cloning Settings

As a VMware administrator, if you aren’t using Virtual Storage Console (it’s free!) to assist with administering your NetApp storage, you’re missing out on a great tool. It simplifies a lot of tasks through abstraction and a GUI. That being said, I know not everyone has that advantage, especially if you work for an organization where silos are still alive and well.

In order to facilitate best practices when it comes to creating datastores, whether FC/iSCSI LUNs or NFS, I want to publish the settings that VSC uses to create the volumes. As a VMware administrator, you can approach the storage team and ensure the volumes/LUNs/etc. are configured in this manner, or as the storage administrator this is the baseline for VSC configures them.

Remember that these are best practices / recommendations only. They ALWAYS come with the “it depends” caveat…every setup is different, so not all of these may be appropriate for you and your environment.

All of these settings are documented in the VSC Installation and Administration Guide. Additionally, justification and rationale can be found in TR-3749 and TR-4068, the two best practices guides for using vSphere and NetApp together.

Read more

An Exploration of FlexVols that Underlay VMware Datastores

This post is a continuation of the series that I started with aggregates. FlexVols are created inside of an aggregate and are the logical assignment of the aggregate’s capacity to sub-containers. Think of a FlexVol as a folder on a file system with a quota applied to it…while that isn’t technically true, it get’s the gist across.

FlexVols are the data containers from which CIFS/NFS data (including virtual machines) is served, and/or LUNs are hosted from. They are the functional level for which many features are applied, such as deduplication, and provide logical separation for data sets. From a security point of view, no data in one volume is available from another, and even though the disks are shared, there are no shared blocks between volumes (even with deduplication).

Clustered Data ONTAP introduced the ability to move volumes between nodes in the cluster. I won’t preach about the benefits of cDOT, but there are many and they far outweigh the added complexity. This series is meant to stay focused on the data container settings, which are the same between 7-Mode and clustered Data ONTAP.

Before we begin, I want to note that TR-3749 and TR-4068 should always be the primary reference and guide when deploying VMware using NetApp storage.

Read more

An Exploration of Aggregates that Underlay VMware Datastores

NetApp storage, much like ogres and onions, is made up of several layers. Regardless of using Data ONTAP 7-Mode or clustered Data ONTAP (cDOT), there are always aggregates which contain volumes which contain NFS/CIFS shares and/or LUNs. Aggregates are the physical grouping of disks into RAID groups on which all data is stored when using Data ONTAP, they are the foundation on which everything else rides.

Storage Layers

I am going to start examining those configurables which may, or may not, be important when hosting virtual machines. This will be broken into several parts, one for each of the layers:

All of these components are configured similarly with both 7-Mode and C-Mode. C-Mode adds another layer of abstraction, known as the Storage Virtual Machine, which enhances data mobility and manageability on the storage array, but that does not affect the settings on the actual data container constructs.

Each of these entities has configuration options and settings that can be tweaked, tuned, and adjusted for various scenarios. The defaults for these settings are conservative and capable of meeting a broad range of requirements, but they can also be changed to meet a variety of more specific needs for capacity, performance, ease of management, etc. Remember, just because a setting can be adjusted doesn’t mean that it needs to be. All environments are different, and there is rarely only a single “correct” way to configure your storage.

Before we begin, I want to note that TR-3749 and TR-4068 should always be the primary reference and guide when deploying VMware using NetApp storage.

Read more

NetApp’s Integration with VMware’s Ecosystem

As I have transitioned from being a customer to being an employee with NetApp I have become aware of the breadth of integration between VMware and NetApp. I have realized that as a customer, I was only using a small amount of what is available. There are a lot of software bits-and-pieces, and documentation, that make life much easier for admins, and I have struggled to find a consolidated listing (maybe I haven’t looked hard enough…or asked the right people…?). This blog post is my attempt to provide a starting place for information regarding NetApp integration with VMware.

As I go through the process of learning, I hope to document as much as possible, and I invite you to follow along…hopefully we can all gain some insight into the resources available.

Firstly, always begin with TR-3749 and TR-4068. These are the primary references from NetApp regarding VMware integration…I highly recommend that if you have not already read them you do so now.

Read more