Поделиться через


Управление модулями Runbook для service Management Automation

Важно!

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

Администратору service Management Automation (SMA) необходимо настроить и запустить модули Runbook. Действия, включая настройку рабочих ролей runbook, а также планирование и отслеживание модулей Runbook. Есть два системных модуля Runbook, которые входят в состав SMA в дополнение к модулям Runbook, которые вы создаете:

  • DiscoverAllLocalModules: запускается сразу после установки рабочей роли Runbook. Этот модуль Runbook обнаруживает все собственные модули в системе Windows Server, в которой установлена рабочая роль runbook. Он извлекает действия и метаданные действий для этих модулей, чтобы их можно было использовать при создании модулей Runbook в Microsoft Azure Pack.
  • SetAutomationModuleActivityMetadata— выполняется сразу после импорта модуля в SMA. Этот модуль Runbook извлекает действия и метаданные действий из недавно импортированного модуля, чтобы их можно было использовать при создании модулей Runbook в Microsoft Azure Pack.

Настройка рабочих ролей Runbook

По умолчанию при запуске задания runbook в SMA оно выбирается случайной рабочей ролью runbook. Однако может потребоваться использовать определенную рабочую роль Runbook. Для этого используйте свойство RunbookWorker . Дополнительные сведения о выполнении модуля Runbook.

Назначьте рабочую роль runbook с помощью надстройки интегрированной среды сценариев PowerShell.

  1. В конфигурации надстройки > SMA ISE войдите с помощью учетной записи SMA. После входа вы увидите свои модули Runbook на вкладке Модули Runbook.
  2. На вкладке Модули Runbook выберите один или несколько модулей Runbook для запуска в определенной рабочей роли Runbook.
  3. Выберите настроить, а затем в разделе Настройка свойств Runbook выберите рабочую роль Runbook в раскрывающемся меню.
  4. Выберите Внести изменения.

Назначение рабочей роли Runbook с помощью модуля SMA PowerShell

Вы также можете задать свойство рабочей роли runbook с помощью следующей команды командной строки:

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Sample-TestRunbook"
$workerName = "Worker1"

Set-SmaRunbookConfiguration -WebServiceEndpoint $webServer -Port $port -Name $runbookName -RunbookWorker $workerName

Список всех развернутых рабочих ролей runbook можно просмотреть следующим образом:

$webServer = 'https://MyServer'
$port = 9090

Get-SmaRunbookWorkerDeployment -WebServiceEndpoint $webServer -Port $port

Примечание

В настоящее время вы не можете использовать портал Microsoft Azure Pack для назначения рабочей роли runbook. Используйте надстройку SMA ISE или командлеты PowerShell.

Планирование модулей Runbook

Чтобы запланировать запуск модуля Runbook в указанное время, необходимо связать его с одним или несколькими расписаниями. Расписание можно настроить для выполнения один раз или задать для повторения. Один модуль Runbook может быть связан с несколькими расписаниями, и одно расписание может иметь несколько привязанных модулей Runbook.

Создание расписания

Расписание можно создать с помощью портала управления или с помощью Windows PowerShell.

Создание расписания на портале управления

  1. На портале управления выберите пункт Автоматизация.
  2. На вкладке Активы выберите Добавить параметрДобавить расписание>.
  3. Введите имя и описание для нового расписания и укажите, будет ли оно выполняться один раз или ежедневно.
  4. Укажите время начала и другие необходимые параметры. Часовой пояс для времени начала будет соответствовать часовому поясу на локальном компьютере.

Создание расписания с помощью Windows PowerShell

Для создания расписания или изменения существующего расписания можно использовать командлет Set-SmaSchedule . Необходимо указать время начала расписания, а также указать, следует ли выполнять его один раз или несколько раз.

В следующем примере создается новое расписание с именем My Daily Schedule. Она начинается в текущий день и продолжается в течение одного года каждый день в полдень.

$webServer = 'https://MyServer'
$port = 9090
$scheduleName = 'My Daily Schedule'
$startTime = (Get-Date).Date.AddHours(12)
$expiryTime = $startTime.AddYears(1)

Set-SmaSchedule -WebServiceEndpoint $webServer -Port $port -Name $scheduleName -ScheduleType OneTimeSchedule -StartTime $startTime -ExpiryTime $expiryTime -DayInterval 1

Один модуль Runbook может быть связан с несколькими расписаниями, и одно расписание может иметь несколько привязанных модулей Runbook. Если модуль Runbook имеет параметры, можно указать их значения, которые будут использоваться при запуске модуля Runbook. Необходимо указать значения для всех обязательных параметров.

  1. На портале управления выберите МодулиRunbookслужбы автоматизации>.
  2. Выберите имя модуля Runbook для планирования и перейдите на вкладку Расписание .
  3. Если модуль Runbook в настоящее время связан с расписанием, выберите Ссылку. Затем щелкните Связать с новым расписанием и создайте новое расписание или щелкните Связать с существующим расписанием и выберите расписание.
  4. Если модуль Runbook имеет параметры, их необходимо будет заполнить.

Чтобы связать расписание с модулем Runbook, можно использовать команду Start-SmaRunbook с параметром ScheduleName . Значения можно указать с помощью параметра Parameters . Дополнительные сведения о значениях параметров.

В примерах команд ниже показано, как связать расписание с модулем Runbook.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scheduleName = "Sample-DailySchedule"

Start-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -ScheduleName $scheduleName -Parameters $params

Отслеживание модулей Runbook

При запуске runbook в SMA создается задание. Задание — это одиночный выполняемый экземпляр модуля Runbook. Один модуль Runbook может иметь несколько заданий, каждое из которых имеет собственный набор значений для параметров runbook.

  • Если свойство RunbookWorker модуля Runbook заполнено, то этот рабочий сервер будет обслуживать задание.
  • Если рабочий сервер недоступен, задание завершится ошибкой.
  • Если свойство RunbookWorker не заполнено, SMA случайным образом выберет доступный рабочий сервер для обслуживания запроса.

На следующей схеме показан жизненный цикл задания runbook для модулей Runbook рабочего процесса PowerShell.

Схема рабочего процесса PowerShell.

На следующей схеме показан жизненный цикл задания runbook для модулей Runbook скриптов PowerShell.

Схема, показывающая скрипт PowerShell.

Состояние задания

Следующая таблица содержит описание различных состояний задания.

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

Модуль Runbook приостанавливается системой только в случае исключения, которое может возобновиться. По умолчанию параметру ErrorActionPreference присвоено значение Continue, что означает, что задание продолжает выполняться при возникновении исключения. Если для этой переменной задано значение Stop, задание приостанавливается при возникновении исключения.
Приостановка Система пытается приостановить задание по запросу пользователя. Модуль Runbook должен достичь следующей контрольной точки, прежде чем задание может быть приостановлено. Если она уже прошла свою последнюю контрольную точку, она завершается, прежде чем ее можно будет приостановить.

Просмотр состояния задания на портале управления

На панели мониторинга автоматизации отображается сводка по всем модулям Runbook в среде SMA.

  • Сводный график отображает общее количество заданий для всех модулей Runbook, которые прошли все состояния в течение определенного количества дней или часов.
  • Временной диапазон можно выбрать в правом верхнем углу графика.
  • Ось времени диаграммы изменяется в соответствии с типом выбранного диапазона времени.
  • Вы можете выбрать, следует ли отображать строку для определенного состояния, щелкнув ее в верхней части экрана.

Отобразите панель мониторинга следующим образом:

  1. На портале управления выберите пункт Автоматизация.
  2. Выберите вкладку Панель мониторинга.

Отображение панели мониторинга

На панели мониторинга модуля Runbook отображается сводка для отдельного модуля. Сводный график отображает общее количество заданий для модуля Runbook, которые прошли все состояния в течение определенного количества дней или часов. Вы можете выбрать диапазон времени в правом верхнем углу диаграммы. Ось времени диаграммы изменяется в соответствии с типом выбранного диапазона времени. Вы можете выбрать, следует ли отображать строку для определенного состояния, щелкнув ее в верхней части экрана.

Отобразите панель мониторинга следующим образом:

  1. На портале управления выберите пункт Автоматизация.
  2. Выберите имя модуля Runbook.
  3. Выберите вкладку Панель мониторинга.

Просмотр сведений о задании

Вы можете просмотреть список всех заданий, созданных для конкретного модуля Runbook, и их последнее состояние.

  • Список можно отфильтровать по состоянию задания и диапазону дат последнего изменения задания.
  • Выберите имя задания, чтобы просмотреть подробные сведения и выходные данные.
  • Подробное представление задания содержит значения параметров Runbook, которые были указаны для этого задания.
  • В журнале задания содержатся выходные данные, предупреждения и сообщения об ошибках с метками времени создания записей.
  • Дополнительные сведения о выходных данных и сообщениях runbook.
  • Источник для задания представляет собой исходный код рабочего процесса на момент запуска задания. Он может не совпадать с текущей версией модуля Runbook, если модуль был обновлен после запуска задания.

Чтобы просмотреть задания для модуля Runbook, выполните следующие шаги.

  1. На портале управления выберите пункт Автоматизация.
  2. Выберите имя модуля Runbook и перейдите на вкладку Задания .
  3. Выберите столбец Job Created (Созданное задание ) для задания, чтобы просмотреть сведения о нем и выходные данные.
  4. Чтобы отобразить журнал задания, откройте вкладку Журнал . Выберите запись журнала и щелкните Просмотреть сведения в нижней части экрана, чтобы получить подробное представление записи.
  5. На вкладке Журнал выберите Просмотреть источник.

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

Для получения заданий, созданных для модуля Runbook, и сведений о конкретном задании можно воспользоваться командой Get SmaJob .

  • Если вы запускаете модуль Runbook с Windows PowerShell с помощью Start-SmaRunbook, он возвращает полученное задание.
  • Чтобы получить выходные данные задания, используйте командлет Get-SmaJobOutput .

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

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"

$job = (Get-SmaJob -WebServiceEndpoint $webServer -Port $port -RunbookName $runbookName | sort LastModifiedDate -desc)[0]
$job.Status
$job.JobParameters
Get-SmaJobOutput -WebServiceEndpoint $webServer -Port $port -Id $job.Id -Stream Output

Настройка параметров runbook

Каждый модуль Runbook имеет несколько параметров. Эти параметры можно использовать для поиска модулей Runbook и управления ими. Вы также можете изменить ведение журнала runbook, настроив эти параметры. Каждый из этих параметров описан ниже, после чего следуют процедуры по их изменению.

Имя и описание

Вы не можете изменить имя модуля Runbook после его создания. Описание является необязательным, его длина может достигать 512 символов.

Теги

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

Ведение журнала

По умолчанию записи Verbose и Progress не записываются в журнал заданий. Вы можете изменить параметры для определенного модуля Runbook, чтобы записывать эти записи. Дополнительные сведения об этих записях см. в статье Выходные данные и сообщения Runbook в службе автоматизации Azure.

Назначенная рабочая роль runbook

По умолчанию задание runbook назначается для выполнения случайной рабочей роли Runbook. Вы можете изменить параметры для конкретного модуля Runbook, чтобы он выполнялся в определенной рабочей роли Runbook.

Изменение параметров модуля Runbook на портале управления

Вы можете изменить параметры модуля Runbook на портале управления на странице Настройка модуля Runbook.

  1. На портале управления выберите пункт Автоматизация.

  2. Выберите вкладку Модули Runbook.

  3. Выберите имя модуля Runbook.

  4. Выберите вкладку Настройка.

Изменение параметров runbook с помощью PowerShell

С помощью командлета Set-SmaRunbookConfiguration можно изменить все параметры модуля Runbook, кроме тегов. Изменить и добавить теги для существующих модулей Runbook можно только с помощью портала управления. Вы можете задать теги для модулей Runbook с помощью PowerShell только при импорте модуля Runbook с помощью Import-SmaRunbook.

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

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Sample-TestRunbook"

Set-SmaRunbookConfiguration -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Description "Sample runbook" -LogVerbose $true

Шифрование подключения к рабочей роли Runbook и SQL Server

Защитите подключение между рабочими процессами Runbook и SQL Server с помощью SSL.

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