Tuesday 17 November 2015

System Center Orchestrator Migration


Microsoft have made no secret of its love of all things cloudy and that same feeling certainly encompasses the System Center components.

Microsoft's cloudy re-imagining of System Center Orchestrator is known as OMS Automation (Also known and still branded as Azure Automation). This has grown over the last couple of years from a cloud hosted version of the on-premises version of the Service Management Automation (SMA) subcomponent of Orchestrator which featured a service that allowed PowerShell Workflow (PSWF) scripts to be executed on Azure IaaS VM triggers and schedules through to the more recent incarnation that can be found within the new (still in preview) Azure Resource Manager Portal experience.

This new version added to the PSWF capabilities by adding a Graphical Authoring method, easier navigation, methods to execute runbooks via API calls (and recently webhooks). A gallery for searching to find modules and examples has been added, along with pure PowerShell script support making it very easy to lift and shift those scripts kicking around and organise them better.

Add to this ongoing list the new ability to execute runbooks either within Azure or on a "hybrid" worker, which is essentially any device that you install the OMS agent on and register as a Hybrid Runbook worker, and you have a very nice cloud managed hybrid automation solution.



"So now you're going to tell me to ditch Orchestrator and re-do all my work in OMS automation aren't you… /sigh"

Well… kind of… but even then it's not all doom and gloom.

Microsoft have made it perfectly clear, Orchestrator is not deprecated and there will indeed be a new release (sometime in 2016 if we're lucky…) it's just that we won't see a ton of new features nor improvements, just some bug fixes and version support (OS & SQL most likely).

There's also the fact that a fair few customers using Orchestrator are using it in conjunction with Service Manager, which has a nice integration story, but currently has no awareness nor integration with OMS Automation.

Therefore, until we see anything change within that space, Orchestrator won't be up for full migration for some time yet.


However… time for the good news.

For those that are interested in exploring OMS Automation, or maybe for those that are chomping at the bit to use it more but the thought of re-working all your Orchestrator runbooks was as scary as the thought of Pennywise hiding under your bed, here's something to push away the darkness.

Microsoft have released a collection of tools to ease the migration of Integration Packs and Runbooks from Orchestrator to OMS Automation.


This toolkit contains:

  • All the standard activities you find in a default installation of Orchestrator, pre-converted into PowerShell modules ready to be imported into your Automation workspace.
  • An Integration Pack Convertor to allow you to convert any other IP's with Activities you use.
  • Runbook Convertor to convert your runbooks into new Graphical Runbooks for import and use within OMS Automation.

Microsoft have also released another download which contains all of the Microsoft released and supported Integration Packs for Orchestrator, pre-converted and ready for import into OMS Automation.


These cover the following IP's:

  • System Center Virtual Machine Manager
  • System Center Data Protection Manager
  • FTP
  • Exchange Admin
  • Exchange User
  • SharePoint
  • REST
  • Active Directory
  • Azure
  • VMware vSphere
  • HP Operations Manager

When you download the Migration Toolkit, the first installation wizard is really just an extraction of the files, so point it either at the default or some folder in your downloads. Inside the extracted files you'll find installers for the IP Converter, the Runbook Converter along with another zip file containing the converted standard activities (leave this zipped as we will import the zip file into OMS Automation).

First, get the converted Integration Packs you need imported into your Automation Account.
Click into Assets
Then Modules
And click Add a Module

Browse for the Integration Pack zip file that you downloaded and keep repeating to get all the modules you require.

Next, export the runbook you want to convert from Orchestrator.
I've chosen this runbook to test (Example from the System Center 2012 R2 Orchestrator Cookbook from Packt).


Once exported, it's time to convert.

Either load the Runbook Converter from the start menu, or import the PS Module (assuming a default install location) by using:

Import-Module 'C:\Program Files (x86)\Microsoft System Center 2012 R2\Orchestrator\Runbook Converter\Orchestrator.ScoMigration.Cmdlet.psd1'

Either way will give you access to the ConvertFrom-SCORunbook cmdlet.

The cmdlet has three main parameters:
  • Module
  • OutputFolder
  • RunbookPath

You can however get away with just running the command with RunbookPath and allow it to use the same folder as the source for exporting to with the export name based on the runbook name.

ConvertFrom-SCORunbook -RunbookPath C:\Runbooks\ConvertTest.ois_export

Once you have the exported .graphrunbook file, importing it into OMS Automation should give you a graphical runbook something like this:

So… While Orchestrator is still an awesome tool for integrating with and automating System Center Service Manager processes, you now have options at looking to migrate other workloads into a much more scalable automation solution, where in effect, you only need worry about the automation processes rather than the infrastructure they're running on!

Now this release is a preview and that means it certainly isn't without it's nuances.
You will need to do some post conversion fixes and not all activities may migrate successfully. Start your testing and planning now while Microsoft listens to feedback and refines the tool.