Solving Common System Center Orchestrator Problems

Written by Rachel

November 8, 2023

Orchestrator Questions and Answers

 Sometimes, when building Runbooks in Orchestrator, it can feel like you’ve hit a dead end with no way to achieve the functionality or automation you require. For newer users, Orchestrator can be daunting because it is a completely blank canvas; there are no sample runbooks included or out-of-the-box automations. In addition, with a shift in focus to cloud automation, there is limited guidance and ‘how to’ advice available to help users.

In the last decade, we’ve not encountered any problem that cannot be resolved by using the standard activities, the Kelverion Utility Pack activities or by implementing a different approach to designing your runbooks.

Regular readers of Kelverion blogs know one of our golden rules for implementation – use a SQL database alongside Orchestrator to give it a memory and store progress; do not use text files!

The golden rule on using a persistent data store solves many issues users face related to scaling runbooks, dealing with lists or variables, and performance.

But there are issues that a database alone won’t fix. Let’s dig into our most common Orchestrator questions and answers:

How do I publish data from ServiceNow using scripts?

Integrating with any enterprise management system, especially a Service Desk, can be difficult. Unfortunately, most just provide an API that the user will need to understand (read more in our blog about the importance of using supported integrations). Once you have investigated the API and confirmed that the methods you would need to use to publish the data are available, you need to authenticate the data and identify how the low-level data is structured and named. This is typically quite different from what is presented in the User Interface of a Service Desk.

As you might expect, the above is rather time-consuming. It is the main reason why specific Integration Packs were developed, removing the need to spend months building bespoke integrations for each use case. Using a supported Integration Pack will allow you to focus on the process to be automated, not spending time identifying each system’s API call in detail.

How do I perform AND & OR statements in a link in Orchestrator?

This is a common question in Orchestrator, and it is correct that you can only use OR conditions in a link, not AND. This can be restricting and will stop you from performing the logic you intend to achieve in the link. However, it is possible to use multiple ‘Not Equal to’ statements to achieve an AND function , i.e. Not Equal to A or Not Equal to D – B AND C are acceptable. Alternatively, apply the logic in a database table with multiple options to achieve the required logic, i.e. find a row where column a = input 1 AND Column B equals input 2 AND Column C equals input 3 and read the rule column. The next link then states if rule column equals X then proceed this way, or if rule column equals Y, stop and go this way instead.

How do I initiate multiple parallel runbook executions at the same time?

System Center Orchestrator was developed as a multi-threaded application. It is capable of performing numerous executions at the same time and dealing with large workloads; one example of this can be found in the event management use case. The problem comes with writing single-threaded runbooks, allowing you to execute only one activity at a time. The approach comes down to having the right runbook design and making use of the side-by-side database for scale, then, you can enable concurrent execution of a given runbook.

How do I return usable data in Orchestrator from a database table, rather than CSV-delimited output, which is hard to process?

This is a question we frequently see, as the standard Orchestrator database select activity can be cumbersome, the CSV output needs to be processed into published data before being available to use in a runbook.

This is one of the main reasons why our Integration Pack for SQL Server is the most popular Kelverion Integration Packs. When working with SQL Server, this IP automatically outputs published data from its activities.

The same is true for other structured data types where the Integration Packs for Text Manipulation and Data Manipulation process in one activity to provide published data. All three of these IPs are available as part of the Utility Package; providing excellent value for resolving data-related challenges.

How do I manage HyperV from Orchestrator?

The approach to answer this question starts the same way as most ‘how do I manage’ infrastructure questions, which is, how do you do it today? Do you use a management tool, or is it a completely manual process where each device/endpoint is accessed directly?

For HyperV, we would suggest starting with the existing management tool already in use; for example, do you use System Center Virtual Machine Manager (VMM)? We would then look to orchestrate the process via that tool. If not, we would look to see what PowerShell cmdlets or other methods are available.

How do I dynamically route the execution of another specific runbook at the end of a runbook or in between execution?

A key benefit of Orchestrator is the ability to have parent/child runbooks with the parent runbook calling a component runbook (or child runbook) at the appropriate steps in the process. The ability to build child runbooks to be used in multiple parent runbooks is powerful for reusability and supportability. The Integration Pack for Runbook Management was developed to make dynamically starting runbooks straightforward; it can be used to find any runbook by name, so you can use an item of published data to define the runbook name to be called, the Integration Pack will find the runbook with that name and trigger the runbook execution. This means the child runbook to be called, can be changed based on your parent runbook logic at the exact child execution point, rather than having to hard-code each child runbook execution.

How do I stop all runbooks?

Our final Orchestrator question and answer is a common follow-on question to managing runbooks – how do I stop all runbooks? The simplest way to stop all runbooks is to use the activity provided in the Integration Pack for Runbook Management.

The above Orchestrator questions and answers all highlight the value of the Kelverion Utility Package, which provides a set of 5 Utility IPs to make working with databases, parsing data outputs, and documenting and managing runbooks simple to perform and support.

If you would like more information on best practices for designing runbooks and making them reliable, performant and supportable, download the Kelverion System Center Orchestrator Best Practices Guide.

Alternatively, book a consultation session for further guidance on these or other issues you are facing with Orchestrator.

 

About Kelverion

Experts in Cloud, On-Premise and Hybrid automation, Kelverion provide solutions and integrations that remove the manual process tying up IT staff; transforming the productivity, efficiency, and supportability of IT service automation. Our products utilize and enhance the power of Microsoft Azure and System Center Orchestrator.

Working closely alongside Microsoft we have developed our integrations and automation solutions to help bridge the gap between Microsoft’s automation platforms and third-party systems, in the process building key alliance partnerships with multiple vendors to ensure our products are fully certified. Find Kelverion on the Azure Marketplace.

Since 2010, Kelverion has expanded to become a global company, with offices now in the UK,  Canada, and the US. Through this, we are able to offer and support products and professional services engagements to enterprise-level organizations no matter where they are.

For more information, to arrange a discovery call or to see a demonstration please contact our helpful team today via info@kelverion.com.

You May Also Like…

Why Have a Test Environment

As part of our best practices Kelverion always recommends having a test automation platform. There are several reasons...