Before even starting to talk about the installation of “SMA” (which standands for “Service Management Automation” ) let’s briefly explain what it is and where it comes from.

What is SMA?

 

In the Microsoft’s System Center family products there is a tool called “System Center Orchestrator” or “SCORCH“. This tool is an orchestration tool (like his name indicates us) and actually helps IT pros to automate tasks in our infrastructure.

 

Hey! But isn’t PowerShell there for that?

 

Indeed! But Orchestrator goes a bit ‘deeper’ in the automation by providing actually a graphical tool that will help us automate things.

What this tools accomplishes is actually great! (How to do so is a total other story….) It is persistent to reboots, connection loses and much more! A lot can be accomplished with it. For each new automation task, a “runbook” would be created within Orchestrator. Runbooks could be called one from another, and we could push the scenarios quite far. Especially when it is combined with PowerShell scripts.

 

For instance, we have implemented a solution at a client of ours, that would make a copy of an entire SCCM infrastructure from production to a lab environment on a weekly basis. The object was to have a LAB environment that would reflect at 100% the production environement, avoiding the normal “Configuration drift” that can appear through time. (This saves a LOT of time because the operations done in production do not need to be redone in the Lab environment).

 

Orchestrator 2012 R2 comes with a small optional add-on feature called “Service Management Automation“. It is available as an .MSI file on the SCORCH 2012 R2 installation CD(should we still talk about CD’s in 2014 by the way? o_O..). Once  SMA is installed, it will allow us to orchestrate tasks programatically just like through the graphical interface from Scorch using the well knowed PowerShell syntax.

SMA can actually be installed separately and using independently from System center Orchestrator.

 

SMA is actually nothing else then PowerShell Workflows

 

Windows Azure Pack benefit from these amazing automation capabilities and help us manage our datacenters in a whole new fashion.

But enough talking for today. Let’s continue and finalyze the installation and write our first Runbook with SMA.

How to install Service Management automation?

 

Now that we have our Windows Azure Pack up and running, we want to go further and install the missing components in order to be able to use our infrastructure and leverage the automation capabilities  of Windows Azure Pack through SMA.

For now we have the following up and running in our environement:

  • Windows Server SQL with an WAP instance
  • Windows Azure Pack (express edition)

Also, the installation of the following components are needed in order to be able to use SMA, but are not automated (at least not in this blog post), and although it can be helpfull, there is no Powershell code, thus, it can be a bit boring. (But please, keep on reading :))

[stextbox id=”note”]If you are missing one of these requirements, you can go back here and install the missing parts.[/stextbox]

 

Information you will need prior to start the SMA installation:

 

  • SQL Server and instance Name.
  • SQL Server ports.
  • An SMA service Account.
  • Orchestrator 2012 R2 Iso file.
  • A certificate (optional).
  • A cup of coffee.

Install SMA:

 

Are you ready? here comes the boring stuff… :S

On the Orchestrator 2012 R2 Media launch :

msiexec.exe /i PowershellModuleInstaller.msi

This will install the powershell module on the WAP server. In other words, this installs SMA on the current server.

Insert the CD in the CD-ROM of System Center Orchestrator 2012 R2 ( hehe, I know, that is sooo Old school to say that). Load the ISO i meant and click on “Web Service” on the lower left.

Installation

 

Of course you want to install it, so…Click install.

installation02

 

Input your information and click next

Installation03

 

Next

Installation04

...

Installation05

 

The next part is quite important: Spcefiy the SQL server name and the SQL Instance name where the orchestrator SMA should connect to (The Windoes Azure Pack database).

Installation06

 

 

If you have problems connecting to your SQL server, try the following:

  • Be sure of your Instance name

  • do not use a FQDN to reach your server

  • Use ServerName\Instance as naming convention.

 

Configure the web service that will be used to communicate with the azure pack infrastructure.

Installation07

 

 

Be sure to add select the user accounts / groups using the following notation:

  • <DomainName>\GroupName
  • Lab\GG_SMA_Admins

The installation wizard will not do the verification until he actually starts the installation. this means that it might not be able to find the account and the installation will fail. This will make you do the whole operation again from the beggining.

 

If you have a certificate, you can provide it here. I choose to go with a self signed certificate since it is a LAB environment.

Installation08

 

Specify the Web Service file location.

Installation09

 

Click next.

Installation10

 

Review the installation summary and click install.

Installation11

 

And after a moment, voilà!

Installation12

 

 

2) How to install a runbook worker:

 

First of all, let’s clarify what a runbook worker actually is:

What is a Orchestrator Runbook worker?

A runbook worker is the architectural component that allows Orchestrator to run his runbooks. Like with most of Microsoft infrastructure related products, it is possible to seperate roles for various different reasons. Having several runbook workers allows us to seperate the work loead on several servers, and offers the possiblity to dispatch runbooks on different georgraphical locations for instance in order to make them more higly available on the location where they are actually really needed.

But the most important thing is that Orchestration will not work without a runbook worker. The runbook worker is simply the component that executes the orchestration task.

Why do we need a Runbook Worker?

I think you already got it. But if you want to use SMA, you will need a runbook worker. Since SMA is actually a part of orchstrator, and Orchestrator runbooks need to have a runbook worker to work.

If we should image-it at a high level, the depencies would look something like this:

 

sma runbook worker

 

How to identify your runbook servers?

If you want to know if you have a runbook worker already present in your environment, your should search for a service called “RBSVC“.

If that server is running on a server, you know that it is a runbook worker.

How to install a Orchestrator runbook worker?

 

The runbook worker is a key component of the SMA architecture since it will host our SMA runbooks for us.

It is possible to scale up the number of runbook servers in order to offer high availability, or better performance if you organization has spreaded offices.

For our lab environement one runbook server will be more then enough. The steps bellow will guide you throug the installation process:

 

 

 

runbookworker01

 

Launch the Orchestrator R2 CD Select runbook worker

runbookworker02

Click Install

runbookworker03

Input name, organisation and optionnaly the product key

 

 

runbookworker04

Accept the license terms and click next

runbookworker05

Click next

runbookworker06

Specify the database server name and database name where to install the SMA database.

runbookworker07

Specify the service account credentials that will run the runbooks.

runbookworker08

Choose the install path.

runbookworker09

Next

runbookworker10

Next

runbookworker11

 

Close.

once all of this is finsihed, you need to do one last thing before beeing able to go play in the sandbox; Register the service manager Automation server.

 

How to register Service Manger Automation?

Follow these simple steps:

Open your WAP administation portal.

Click on Automation and then on “Register Service manager Automation”. Click on it.

register Service management Automation

You will be asked to provide the information of the WebService.

register Service management Automation

How to troubleshoot a WebService installation?

This is not really a troubleshooting guide, but more some points that you should check if it is not working.

If you cannot register your WebService in the WAP pack, you can try using the following:

  • Try to reach your server through internet explorer.
    • Try https://ServerName:9090
    • Try https://ServerNameFQDN:9090

One of these two should return you either a prompt asking for a password, or a whole list of XML data. In both cases this means that you can connect and should use that info to register your service.

If non of it works, check if the Runbook server service is running on the server (RBsvc). If not, start it and try again.

Be sure that you are trying to connect with the accout that you specified during the installation.

 

Stay tuned for our next episode where we will finaly start to write some powerShell runbooks.

References:

 

SMA Module –> http://blogs.technet.com/b/orchestrator/archive/2014/03/11/sma-capabilities-in-depth-the-sma-powershell-module.aspx

 

Orchestrator Service management automation installation –> http://technet.microsoft.com/library/dn308244.aspx

 

Technet web page on how to install SMA for the Windows Azure Pack –> http://technet.microsoft.com/fr-fr/library/dn469265.aspx

 

Install a Runbook Worker –> http://technet.microsoft.com/en-us/library/dn469255.aspx

 

Updates rollup 3 for Orchestrator 2012 r2 –>  http://support.microsoft.com/kb/2931268

 

Windows Azure pack Wiki site (Quite complete!!) –> http://social.technet.microsoft.com/wiki/contents/articles/20689.the-windows-azure-pack-wiki-wapack.aspx

A step by step guid on how on how to install your lab –> http://blogs.catapultsystems.com/mdowst/archive/2013/10/21/service-management-automation-lab-step-by-step-install.aspx