System Center Orchestrator Integration Pack для Directum

6 2

Опыт создания пакета интеграции в System Center Orchestrator 2012 R2 для управления отдельными объектами системы Directum.

System Center (далее – SC) компании Microsoft представляет собой корпоративный пакет продуктов для управления инфраструктурой информационных технологий на предприятии. В варианте «из коробки» предлагаемый в SC инструментарий позволяет работать преимущественно только с продуктами от Microsoft. Однако, предоставляемые компанией-разработчиком пакеты software development kit (далее – SDK) позволяют администраторам самостоятельно создавать пакеты для интеграции со сторонними программными системами.

Свой SDK имеет и инструмент System Center Orchestrator (далее – SCO), входящий в состав SC и являющийся, по мысли разработчиков пакета, связующим и управляющим звеном как между компонентами SC, так и между SC и иным программным обеспечением. Для работы с системой Directum через пакеты интеграции SCO можно использовать объектную модель IS-Builder.

Создание собственного пакета интеграции потребует установки следующих компонентов:

  1. Microsoft System Center Orchestrator (последняя версия SCO2012R2: https://www.microsoft.com/ru-ru/evalcenter/evaluate-system-center-2012-r2)
  2. Клиент системы Directum (последняя использованная нами версия 5.0.1200)
  3. Microsoft SCO Integration ToolKit (последняя версия SCO2012R2: https://www.microsoft.com/en-us/download/details.aspx?id=39622)
  4. Windows Installer XML Toolset (для SCO2012R2 Integration Toolkit необходима версия 3.5: http://wixtoolset.org/releases/v3.5/stable)
  5. Microsoft Visual Studio (последняя версия VS2015: https://www.visualstudio.com/ru-ru/downloads/download-visual-studio-vs.aspx)

Подготовка компонентов к работе не вызывает существенных сложностей. Однако, присутствует нюанс, заключающийся в установке WiX. SCO Integration ToolKit имеет жесткую привязку к версии WiX. Устанавливать необходимо именно рекомендуемую Microsoft для SCO 2012R2 ITK версию 3.5.

1. В Visual Studio создаем новый проект и выбираем тип Class Library.

 

 

 

 

 

 

 

 

 

2. В Solution Explorer выбираем раздел References -> Add Reference и подключаем библиотеки:

  • NpoComputer.IsBuilder.SBLogon.dll
  • NpoComputer.IsBuilder.SBRte.dll
  • Microsoft.SystemCenter.Orchestrator.Integration.dll

 

 

 

 

 

 

 

3. Не забываем добавить в код проекта соответствующие пространства имен:

  • NpoComputer.IsBuilder.SBLogon
  • NpoComputer.IsBuilder.SBRte
  • Microsoft.SystemCenter.Orchestrator.Integration

4. Задаем атрибут Active для создаваемого класса и указываем его имя:

[Activity ("MyCustomClassDirectum")]
public class MyCustomClassDirectumActivity
{
    //MyCode
}

5. Для входных данным используем Activity class – ActivityInput. Для вывода результата будем использовать ActivityOutput. Данные ввода могут быть следующих типов:

  • Boolean
  • Integer
  • Float
  • String
  • DateTime
  • Enum

6. Для подключения к системе используем интерфейсы LoginPoint и Application

LoginPoint login = new LoginPoint();
Application app = (Application)login.GetApplication("SystemCode=MyCodeSystem", false);

7. Для работы с объектами системы интерфейсы предоставляются пространством имен NpoComputer.IsBuilder.SBRte.

8. Для корректного и удобного вывода результатов выполнения кода целесообразно использовать конструкцию try-catch. В этом случае выполнение блока создаваемого пакета всегда будет завершено с результатом success, но в ActivityOutput получим либо присвоенный результат вывода, либо корректное сообщение об ошибке.

try
{
    //MyCode
}
catch (Exception e)
{
    return new string(e.Message.ToCharArray());
}

9. Для упаковки получившейся библиотеки классов в OIP запускаем Orchestrator Integration Pack Wizard и указываем необходимые параметры пакета

10. Для корректной работы пакета на этапе добавления дополнительных файлов решения выбираем следующие файлы:

  • NpoComputer.IsBuilder.SBLogon.dll
  • NpoComputer.IsBuilder.SBRte.dll
  • Microsoft.SystemCenter.Orchestrator.Integration.dll

11. Регистрируем получившийся пакет на сервере SCO

 

 

 

 

 

 

 

 

 

 

 

 

 

12. Разворачиваем пакет на серверы SCO

 

Таким образом, масштабы использования пакетов интеграции для системы Directum ограничиваются интерфейсами пространства имен SBRte и фантазией разработчиков.

 

Подробную информацию о перечисленных компонентах SCO можно найти в библиотеке MSDN:

6
Авторизуйтесь, чтобы оценить материал.
1
Дмитрий Каргапольцев
Могли бы вы в одном-двух предложениях описать, чем помогло вам использование этого пакета

Например, у себя я сделал RunBook для автоматического создания замещений, который запускается из последовательности действий ServiceRequest в SCSM, с портала самообслуживания. Пользователи создают SR на замещение, а Оркестратор его создает. Администратор Директума в это время отдыхает.

почему не используете позднее связывание

Потому что прежде чем что-то начать делать с объектами СЭД, надо сначала к ней подключиться. Т.о. не вижу смысла использовать позднее связывание, если все равно работа начинается с использования прилинкованных объектов.

что делать после обновления версии IS-Builder

То же самое, что делаем после обновления любой системы: обновляем плагины к ней. :)

Дмитрий Каргапольцев

 Дополнительно о том

почему не используете позднее связывание

Комментарий Microsoft: https://msdn.microsoft.com/ru-ru/library/0tcf61s1.aspx

Авторизуйтесь, чтобы написать комментарий