Руководство. Интеграция службы автоматизации Azure со службой "Сетка событий Azure" и Microsoft Teams

В этом руководстве описано следующее.

  • импорт примера runbook для Сетки событий;
  • создание перехватчика для Microsoft Teams (необязательно);
  • создание веб-перехватчика для runbook;
  • создание подписки в службе "Сетка событий";
  • создание виртуальной машины, которая запускает runbook.

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начинать работу.

Предварительные требования

Важно!

Для использования этой функции Azure в PowerShell требуется установленный модуль AzureRM. Это устаревший модуль, поддерживаемый только в Windows PowerShell 5.1.x, в который больше не добавляются новые функции. Модули Az и AzureRM являются несовместимыми при использовании с одинаковыми версиями PowerShell. Если вам необходимы обе версии, выполните следующее:

  1. Удалите модуль Az в сеансе PowerShell 5.1.
  2. Установите модуль AzureRM в сеансе PowerShell 5.1.
  3. Скачайте и установите PowerShell Core 6.x или последующей версии.
  4. Установите модуль Az в сеансе PowerShell Core.

Чтобы выполнить инструкции из этого руководства, вам понадобится учетная запись службы автоматизации Azure, в которой будет храниться runbook для запуска из подписки служба "Сетка событий".

Импорт примера runbook для службы "Сетка событий"

  1. Выберите учетную запись службы автоматизации и перейдите на страницу Runbooks.

    Выбор модулей runbook

  2. Нажмите кнопку Просмотреть коллекцию.

  3. Выполните поиск по запросу Сетка событий и выберите элемент Integrating Azure Automation with Event grid (Интеграция службы автоматизации Azure с Сеткой событий).

    Импорт runbook из коллекции

  4. Выберите действие Импорт и присвойте ему имя Watch-VMWrite.

  5. Когда импорт успешно завершится, выберите Изменить, чтобы просмотреть источник runbook.

  6. Обновите строку 74 в скрипте, чтобы использовать Tag вместо Tags.

    Update-AzureRmVM -ResourceGroupName $VMResourceGroup -VM $VM -Tag $Tag | Write-Verbose
    
  7. Нажмите кнопку Опубликовать.

Создание перехватчика для Microsoft Teams (необязательно)

  1. В Microsoft Teams выберите элемент Дополнительные параметры рядом с именем канала, а затем выберите Соединители.

    Подключения Microsoft Teams

  2. Прокрутите список соединителей до элемента Входящий веб-перехватчик и выберите для него действие Добавить.

  3. Введите имя AzureAutomationIntegration и нажмите кнопку Создать.

  4. Скопируйте URL-адрес веб-перехватчика в буфер обмена и сохраните его. URL-адрес веб-перехватчика используется для отправки данных в Microsoft Teams.

  5. Выберите Готово, чтобы сохранить веб-перехватчик.

Создание веб-перехватчика для runbook

  1. Откройте runbook с именем Watch-VMWrite.

  2. Выберите Веб-перехватчики и нажмите кнопку Добавить веб-перехватчик.

  3. Введите имя WatchVMEventGrid. Скопируйте URL-адрес в буфер обмена и сохраните его.

    Настройка имени веб-перехватчика

  4. Выберите действие Настройка параметров и настроек запуска и введите URL-адрес веб-перехватчика Microsoft Teams в поле CHANNELURL. Поле WEBHOOKDATA оставьте пустым.

    Настройка параметров веб-перехватчика

  5. Щелкните Создать, чтобы создать веб-перехватчик для модуля runbook службы автоматизации.

Создание подписки Сетки событий

  1. На странице Учетная запись службы автоматизации выберите элемент Сетка событий.

    Выбор службы

  2. Нажмите кнопку +Подписка на события.

  3. Настройте для подписки следующие сведения.

    1. В списке Тип раздела выберите Подписки Azure.

    2. Снимите флажок Подписка на все типы событий.

    3. Введите имя AzureAutomation.

    4. В раскрывающемся списке Определенные типы событий снимите все флажки, кроме Успешная запись ресурсов.

      Примечание

      Для Azure Resource Manager сейчас не учитывается разница между созданием и обновлением. Поэтому реализация этого руководства для всех событий Microsoft.Resources.ResourceWriteSuccess в вашей подписке Azure может привести к большому количеству вызовов.

    5. Для типа конечной точки выберите Веб-перехватчик.

    6. Щелкните Выбрать конечную точку. На открывшейся странице Выбор веб-перехватчика вставьте URL-адрес веб-перехватчика, созданный для модуля runbook с именем Watch-VMWrite.

    7. В разделе Фильтры укажите подписку и группу ресурсов, в которых нужно искать новые виртуальные машины. Результат будет выглядеть так: /subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachines.

  4. Выберите действие Создать, чтобы сохранить подписку Сетки событий.

Создание виртуальной машины, которая запускает runbook

  1. Создайте новую виртуальную машину в той группе ресурсов, которую вы указали в фильтре префиксов для подписки Сетки событий.

  2. Если все настроено правильно, runbook Watch-VMWrite сработает и добавит к этой виртуальной машине новый тег.

    Тег виртуальной машины

  3. Новое сообщение отправляется в канал Microsoft Teams.

    Уведомление для Microsoft Teams

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

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

  • импорт примера runbook для Сетки событий;
  • создание перехватчика для Microsoft Teams (необязательно);
  • создание веб-перехватчика для runbook;
  • создание подписки в службе "Сетка событий";
  • создание виртуальной машины, которая запускает runbook.