NetApp Storage Provisioning Using System Center Service Manager (SCSM) and Orchestrator (SCORCH) and DataOntap PowerShell Toolkit

Here's a cool way we can automate several aspects of NetApp Storage Provisioning Activities by Integrating System Center Technologies like SCSM (System Center Service Manager) and SCORCH ( System Center Orchestrator) with the PowerShell Toolkit.



The following scenario depicts a demo of a production environment where we can use SCSM to manage Change Requests and Service Offerings for NetApp related Storage Activities.


For the following scenario i have used Full Installation of System Center Service Manager (SCSM) 2012 SP1 and System Center Orchestrator (SCORCH) 2012 SP1 and also the DataOntap PowerShell Toolkit.


Service Manager provides an integrated platform for automating and adapting your organization’s IT service management best practices, such as those found in Microsoft Operations Framework (MOF) and Information Technology Infrastructure Library (ITIL). It provides built-in processes for incident and problem resolution, change control, and asset lifecycle management.


Orchestrator is a workflow management solution for the data center. Orchestrator lets you automate the creation, monitoring, and deployment of resources in your environment. Orchestrator is the new version of Opalis.


In this tutorial i would show you an end to end example on how to set up a new request offering on the service catalog that is automatically fulfilled by an Orchestrator RunBook to automate Provisioning of NetApp LUN.


So to Begin with we will start by creating the automation piece by creating a Runbook in System Center Orchestrator.


We need to drag in activities using the activities Toolbox, Typically the RunBooks which integrate with SCSM start with an Initialize Data and it defines the input parameters to the runbook.

The Service manager would use this to pass the information to Orchestrator using the same.



So in this case we would define 4 Input parameters VolumeName, ControllerName LunSize and LunName.



Next i would drag an Execute PowerShell Script Activity and connect it to the Initialize Data Activity using DataBus Connector.


The PowerShell script consists of the actual code using PSToolKit which would facilitate the Service Offering from SCSM, the powershell script uses the data published by Initialize Data Activity.



So at this point we are done creating the Automation Piece, next we would need to bring this runbook into SCSM (System Center Service Manager)


To Do that we would use the Service Manager to Orchestrator Connector, We need to hit the Synchronize button in the Connector so that all Runbooks showing up in SCORCH show up in SCSM



Next we would Go to the Library Section of SCSM Console and click on Runbooks and indeed we do see that the RunBooks have been synchronized.


Next i need to Create a RunBook Automation Template by clicking on "Create Runbook Automation Activity Template", i would enter in the required details and create a New Management Pack "NetApp LUN" to store this in.



So every thing we create related to this solution we would be save in the same Management Pack, That makes its easy to move this solution from one MGMTPack to another, or if we dont need this solution we can delete the management pack and all solution related to this would be deleted.


Next when i click on Ok i would have the Runbook Activity Template form which would pop up, here we would specify some information like the Title for this kind of activity.


But the most important part would be to select the checkbox " Is Ready for Automation", If this check box is not checked the Service Manager would not call the Orchestrator Web Service to start that runbook.



Next we will create a Service Request Template which would include this RunBook Activity Template.


To do that we would Move on to Templates Section in SCSM Library Tab and click on Create Template. enter the necessary details, click o browse and select the "Service Request" Class and store it in our NetApp Lun Management pack.



Next when i click on ok it would bring up the "Service Request" Form, we need to fill in the required details.


Next i would click on the activities tab, and here's where i define the process


So now lets define our process, click on the "+" sign add in the activities, first we would be having a review activity to approve the service request and we can also add in a reviewer here



Here's an overview of Review Activity Template, notice that we can add in approver's  to approve this service request.




Also similarly we would add in the Runbook Automation Activity related to Orchestrator.


At this point we are done creating our service request template.


The Next step is to take this service request and create a service offering based on that service request template.


To do that we would go to the Request Offering Area of the Console and click on create request offering.


Next we will go through the wizard select appropriate Tempplate Name to associate this service offering with.


Next we would enter prompts for user to give information.



Next we need to Map prompts to The Run Book properties, Here's where we exactly define the inputs which come from Service Manager to Orchestrator. additionally we can also input KB articles so that when the user logs on to the Self Service Portal he is able to find much details and help related to the service request.



Next i would need to change the Offering Status to Published and go through the wizard and click on create , the request offerings with the status of published only show up in the service catalog.


Now the last step to complete this process is to add in this Request Offering to a Service Offering.


The service offering is a container for request offerings on the service catalog.


Here i have a service offering "NetApp Service Requests" created, and i would add in the Request offering to this service offering by clicking on "Add Request Offering" and selecting the appropriate object,



Here i already selected the request offering.



Now if i go to the Self Service Portal Service Catalog, im able to see that my Service Offering listed .



Now to test out the scenario i would log in as a requester into the SM Portal and click on "NetApp Service Requests" and click on "Provison NetApp Lun" Service Offering and head to the Request Form.



In The Request form i would enter in the required details for LUN.



Once i submit the request i would get an Service Request Number which i could further automate by triggering and email to the SCSM admin and Affected user.



Now the SCSM admin would log into the SCSM Console open "Work Items" Tab, here he would be able to see pending requests present which need approval in this case SR141.



Open SR141 and click on RA142 and approve the request.




Once the Request is approved, RB143 (Orchestrator Activity) would get triggered which would in turn call the RunBook Present in System Center Orchestrator to create the LUN.



Now to verify this i do a Get-NaLun on the associated controller and i do see that the LUN got created automatically -



I hope that you have enjoyed this blog on how to integrate System Center Service Manager (SCSM) and Orchestrator (SCORCH) with NetApp PowerShell Toolkit and have found this information helpful.

I hope you leverage this knowledge to create your own NetApp RunBooks.