Работа с модулями интеграции

Важно!

Поддержка этой версии service Management Automation (SMA) завершена. Рекомендуется выполнить обновление до SMA 2022.

Модуль интеграции — это пакет, который содержит модуль Windows PowerShell. Сведения о написании модулей Windows PowerShell см. в разделе Написание модуля Windows PowerShell. Модуль интеграции может содержать любые допустимые типы модулей, указанные в разделе Модули Windows PowerShell. Сюда входят модули сценариев (PSM1), двоичные модули (DLL) и модули манифестов (PSD1). Пакет модуля интеграции — это сжатый файл с таким же именем, что и у модуля, и расширением ZIP. Он содержит одну папку, которая также имеет имя модуля. Модуль Windows PowerShell и любые вспомогательные файлы, включая файл манифеста (PSD1), если он есть в модуле, должны находиться в этой папке.

Если модуль должен содержать тип подключения , он также должен содержать файл с именем <ModuleName>-Automation.json который указывает свойства типа подключения. Это JSON-файл в следующем формате.

{
   "ConnectionFields": [
   {
      "IsEncrypted":  false,
      "IsOptional":  false,
      "Name":  "ComputerName",
      "TypeName":  "System.String"
   },
   {
      "IsEncrypted":  false,
      "IsOptional":  true,
      "Name":  "Username",
      "TypeName":  "System.String"
   },
   {
      "IsEncrypted":  true,
      "IsOptional":  false,
      "Name":  "Password",
   "TypeName":  "System.String"
   }],
   "ConnectionTypeName":  "DataProtectionManager",
   "IntegrationModuleName":  "DataProtectionManager"
}

Действия по созданию модулей Runbook службы автоматизации и работе с ними различаются в зависимости от того, используете ли вы портал управления или Windows PowerShell. Основные шаги для различных распространенных операций с использованием обоих методов приведены в следующих разделах.

Перечисление установленных модулей

Получение списка установленных модулей с помощью портала управления

  1. Выберите рабочую область Автоматизация.

  2. Если вы используете Azure, выберите учетную запись службы автоматизации.

  3. В верхней части окна выберите Активы.

  4. Проверьте ресурсы, выведенные в списке, которые относятся к типу Модуль.

Получение списка установленных модулей с помощью Windows PowerShell

Следующие примеры команд извлекают все модули, установленные в службе автоматизации.

$webServer = 'https://MyWebServer'
$port = 9090
Get-SmaModule -WebServiceEndpoint $webServer -Port $port

Импорт модуля

Модуль — это сжатый файл с расширением .zip, который содержит папку, которая включает один из следующих типов файлов:

  • модуль (PSM1-файл),
  • манифест модуля (PSD1-файл).

Импорт модуля с помощью портала управления

  1. Выберите рабочую область Автоматизация.

  2. В нижней части окна выберите Импорт модуля.

  3. Нажмите кнопку Обзор для параметра Файл.

  4. Выберите файл модуля и нажмите кнопку ОК.

  5. Нажмите кнопку с галочкой в диалоговом окне.

Импорт модуля с помощью Windows PowerShell

Приведенные ниже примеры команд демонстрируют импорт модуля.

$webServer = 'https://MyWebServer'
$port = 9090
$modulePath = 'C:\Modules\MyModule.psm1'
Import-SmaModule -WebServiceEndpoint $webServer -Port $port -Path $modulePath

Перечисление действий в amModule

Получение списка действий в модуле с помощью портала управления

  1. Выберите рабочую область Автоматизация.

  2. Если вы используете Azure, выберите учетную запись службы автоматизации.

  3. В верхней части окна выберите Активы.

  4. Найдите модуль и выберите его.

  5. Перейдите вниз экрана Сведения о модуле и проверьте действия.

  6. При необходимости щелкните значок лупы, чтобы отфильтровать определенные действия.

Получение списка действий в модуле с помощью Windows PowerShell

Приведенные ниже примеры команд демонстрируют получение действий в конкретном модуле.

$webServer = 'https://MyWebServer'
$port = 9090
$moduleName = 'MyModule'
$module = Get-SmaModule -WebServiceEndpoint $webServer -Port $port -Name $moduleName
$module.Activities

Получение списка действий во всех модулях с помощью Windows PowerShell

В следующих примерах команд показано, как получить действия во всех модулях, установленных в службе автоматизации.

$webServer = 'https://MyWebServer'
$port = 9090
$modules = Get-SmaModule -WebServiceEndpoint $webServer -Port $port
$modules | foreach {$_.Activities} | sort Name,ModuleName | ft Name,ModuleName,Description

Дальнейшие действия