Развертывание виртуальных машин Amazon Web Services с помощью модуля runbook

В этой статье вы узнаете, как с помощью службы автоматизации Azure подготовить виртуальную машину в подписке Amazon Web Service (AWS) и присвоить виртуальной машине конкретное имя, которое в AWS называется "тегом" виртуальной машины.

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

Для выполнения инструкций из этой статьи вам понадобится учетная запись службы автоматизации Azure и подписка Amazon Web Services (AWS). Дополнительные сведения о создании учетной записи Cлужба автоматизации Azure и ее настройке с использованием учетных данных AWS см. в статье Настройка аутентификации с помощью Amazon Web Services. Перед выполнением дальнейших действий необходимо создать эту учетную запись с учетными данными подписки AWS или указать в ней эти учетные данные, так как вы будете ссылаться на нее при выполнении действий в разделах ниже.

Развертывание модуля PowerShell для Amazon Web Services

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

  1. Откройте веб-браузер, перейдите на страницу коллекция PowerShell и нажмите кнопку Deploy to Cлужба автоматизации Azure.

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

  2. Вы перейдете на страницу входа в Azure. После проверки подлинности откроется следующая страница портала Azure.

    Страница импорта модуля

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

    Примечание.

    Когда служба автоматизации Azure импортирует модуль PowerShell, она извлекает командлеты. Операции не отображаются, пока Автоматизация полностью не завершит импорт модуля и извлечение командлетов. Этот процесс может занять несколько минут.

  4. На портале Azure откройте свою учетную запись службы автоматизации.

  5. Щелкните плитку Ресурсы и на странице "Ресурсы" выберите Модули.

  6. На странице "Модули" вы увидите в списке модуль AWSPowerShell.

Создайте ранбук для развертывания виртуальной машины в AWS

После развертывания модуля AWS PowerShell можно создать модуль Runbook для автоматизации подготовки виртуальной машины в AWS с помощью сценария PowerShell. Приведенные ниже шаги показывают, как использовать собственный сценарий PowerShell в службе автоматизации Azure.

Примечание.

Дополнительные параметры и сведения, касающиеся этого сценария, можно найти в коллекции PowerShell.

  1. Загрузите сценарий PowerShell New-AwsVM из коллекции PowerShell, открыв сеанс PowerShell и введя следующую команду:

    Save-Script -Name New-AwsVM -Path <path>
    

  2. На портале Azure откройте учетную запись автоматизации и выберите Модули runbook в разделе Автоматизация процессов.

  3. На странице Runbooks выберите Добавить runbook.

  4. На странице "Добавить runbook" выберите Быстрое создание для создания нового модуля runbook.

  5. На панели «Свойства сценария» введите имя для своего сценария.

  6. В раскрывающемся списке Тип runbook выберите PowerShell, а затем щелкните Создать.

    Панель создания модуля Runbook

  7. При открытии страницы "Изменение сценария PowerShell для модуля Runbook" скопируйте и вставьте сценарий PowerShell в область создания модуля Runbook.

    Сценарий PowerShell для модуля Runbook

    При работе с примером сценария PowerShell имейте в виду следующее:

    • Модуль Runbook содержит несколько параметров по умолчанию. Проверьте все значения по умолчанию и при необходимости обновите их.
    • Если вы сохранили учетные данные AWS как ресурс учетных данных с именем, отличным от AWScred, потребуется соответствующим образом обновить сценарий в строке 57.
    • При работе с командами AWS в PowerShell, особенно в этом примере модуля Runbook, необходимо указывать регион AWS. В противном случае командлеты завершатся с ошибкой. Дополнительные сведения см. в теме AWS Specify AWS Region в документе AWS Tools for PowerShell.
  8. Чтобы получить список имен образов из подписки AWS, запустите PowerShell ISE и импортируйте модуль AWS PowerShell. Аутентификация в AWS путем замены Get-AutomationPSCredential в среде ISE на AWScred = Get-Credential. Этот оператор выдаст запрос на ввод учетных данных. Идентификатор ключа доступа можно указать в качестве имени пользователя, а секретный ключ доступа в качестве пароля.

      #Sample to get the AWS VM available images
      #Please provide the path where you have downloaded the AWS PowerShell module
      Import-Module AWSPowerShell
      $AwsRegion = "us-west-2"
      $AwsCred = Get-Credential
      $AwsAccessKeyId = $AwsCred.UserName
      $AwsSecretKey = $AwsCred.GetNetworkCredential().Password
    
      # Set up the environment to access AWS
      Set-AwsCredentials -AccessKey $AwsAccessKeyId -SecretKey $AwsSecretKey -StoreAs AWSProfile
      Set-DefaultAWSRegion -Region $AwsRegion
    
      Get-EC2ImageByName -ProfileName AWSProfile
    

    Возвращается следующий результат:

    Получить образы AWS

  9. Скопируйте и вставьте имя одного из образов в переменную службы автоматизации, которая в модуле runbook указана как $InstanceType. Так как в этом примере используется подписка AWS уровня "Бесплатный", в примере модуля runbook нужно использовать t2.micro.

  10. Сохраните runbook, затем нажмите Опубликовать, чтобы опубликовать runbook, а когда появится запрос, нажмите Да.

Тестирование модуля runbook виртуальной машины AWS

  1. Убедитесь, что runbook создает актив с именем AWScred для аутентификации в AWS, или обновите сценарий так, чтобы он ссылался на имя вашего актива учетных данных.
  2. Проверьте новый модуль runbook и убедитесь, что все необходимые значения параметров были обновлены. Убедитесь, что модуль PowerShell для AWS импортирован в службу автоматизации Azure.
  3. В службе автоматизации Azure для параметров Подробные записи в журнале и Записи ведения журнала в операции Ведение журналов и трассировка модуля runbook задайте значение Включено.

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

    Запуск модуля Runbook: New-AwsVM
  6. Откроется панель задания для созданного вами задания runbook. Закройте эту панель.
  7. Вы можете отслеживать ход выполнения задания и просматривать выходные потоки, выбрав пункт Все журналы на панели задания runbook.

    Вывод потока
  8. Чтобы убедиться, что виртуальная машина подготавливается, войдите в консоль управления AWS, если вы еще не вошли в систему.

    Развернутая ВМ в консоли AWS

Следующие шаги