Используйте план Terraform, чтобы развернуть экземпляр Google Cloud Platform Windows и подключить его к службе Azure Arc
В этой статье приводятся рекомендации по использованию предоставленного плана Terraform для развертывания экземпляра Windows Server Google Cloud Platform (GCP) и его подключения в качестве ресурса сервера с поддержкой Azure Arc.
Необходимые компоненты
Клонируйте репозиторий Azure Arc Jumpstart.
git clone https://github.com/microsoft/azure_arc.git
Установите или обновите Azure CLI до версии 2.7 или более поздней. Чтобы проверить текущую установленную версию, используйте приведенную ниже команду.
az --version
Учетная запись Google Cloud Platform с включенным сервисом выставления счетов:Создайте бесплатную пробную учетную запись. Чтобы создать виртуальные машины Windows Server, необходимо обновить учетную запись, чтобы включить выставление счетов. В меню выберите пункт Выставление счетов и щелкните Обновить в правом нижнем углу.
Заявление об отказе от ответственности: во избежание непредвиденных расходов следуйте указаниям в разделе «Удаление развертывания» в конце этой статьи.
Создайте субъект-службу Azure.
Для подключения виртуальной машины GCP к службе Azure Arc требуется назначенный субъект-служба Azure с ролью участника. Чтобы создать его, войдите в учетную запись Azure и выполните приведенную ниже команду. Эту команду также можно выполнить в Azure Cloud Shell.
az login az account set -s <Your Subscription ID> az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor --scopes "/subscriptions/<Your Subscription ID>"
Например:
az ad sp create-for-rbac -n "http://AzureArcGCP" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
Выходные данные должны выглядеть так:
{ "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "displayName": "http://AzureArcGCP", "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX", "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX" }
Примечание.
Мы настоятельно рекомендуем ограничить субъект-службу определенной подпиской Azure и группой ресурсов.
Создание нового проекта GCP
Перейдите к консоли API-интерфейсов Google и войдите с учетной записью Google. После входа создайте новый проект с именем
Azure Arc demo
. После его создания необходимо скопировать идентификатор проекта, так как он обычно отличается от имени проекта.После создания и выбора нового проекта в раскрывающемся списке в верхней части страницы необходимо включить доступ к API подсистемы вычислений для проекта. Щелкните + включить интерфейсы API и службы и выполните поиск подсистемы вычислений. Затем выберите Включить, чтобы включить доступ к API.
Затем настройте ключ учетной записи службы, который будет использовать Terraform для создания ресурсов и управления ими в проекте GCP. Перейдите на страницу создания ключа для учетной записи службы. Выберите в раскрывающемся списке пункт Создать учетную запись службы, присвойте ей имя, выберите проект и роль "Владелец", укажите тип ключа "JSON" и щелкните Создать. При этом загрузится файл JSON со всеми учетными данными, необходимыми для управления ресурсами в Terraform. Скопируйте загруженный файл JSON в каталог
azure_arc_servers_jumpstart/gcp/windows/terraform
.
Развертывание
Перед выполнением плана Terraform необходимо задать и затем экспортировать переменные среды, которые будут использоваться планом. Эти переменные определяются на основе только что созданного субъекта-службы Azure, вашей подписки Azure и арендатора, а также имени проекта GCP.
Получите идентификатор подписки и идентификатор арендатора Azure с помощью команды
az account list
.План Terraform создает ресурсы как в Microsoft Azure, так и в Google Cloud Platform. Затем он выполняет сценарий на виртуальной машине GCP, чтобы установить агент Azure Arc и все необходимые артефакты. Для этого скрипта требуются определенные сведения о средах GCP и Azure. Измените
scripts/vars.sh
и обновите каждую из переменных с помощью соответствующих значений.TF_VAR_subscription_id
— идентификатор подписки Azure;TF_VAR_client_id
— идентификатор приложения субъекта-службы Azure;TF_VAR_client_secret
— ваш пароль субъекта-службы AzureTF_VAR_tenant_id
— идентификатор клиента Azure;TF_VAR_gcp_project_id
— идентификатор проекта GCP;TF_VAR_gcp_credentials_filename
— имя файла JSON для учетных данных GCP
В интерфейсе командной строки перейдите в каталог
azure_arc_servers_jumpstart/gcp/windows/terraform
клонированного репозитория.Экспортируйте измененные переменные среды, запустив
scripts/vars.sh
с помощью команды настройки источника, как показано ниже. Terraform требует задания этих переменных для правильного выполнения плана.source ./scripts/vars.sh
Выполните команду
terraform init
, которая обеспечивает скачивание поставщика AzureRM для Terraform.Затем выполните команду
terraform apply --auto-approve
и дождитесь завершения плана. После завершения сценария Terraform разверните виртуальную машину Windows Server 2019 GCP и запустите сценарий для загрузки агента Azure Arc на виртуальную машину и подключения виртуальной машины в качестве нового сервера с поддержкой Azure Arc в новой группе ресурсов Azure. Операция подготовки агента займет несколько минут, поэтому стоит взять чашку кофе.Через несколько минут вы сможете открыть портал Azure и перейти к группе ресурсов
arc-gcp-demo
. Виртуальная машина Windows Server, созданная в GCP, будет отображаться как ресурс.
Полуавтоматическое развертывание (необязательно)
План Terraform автоматически устанавливает агент Azure Arc и подключает виртуальную машину к Azure в качестве управляемого ресурса, выполняя сценарий PowerShell при первой загрузке виртуальной машины.
Если вы хотите продемонстрировать или управлять фактическим процессом регистрации, выполните следующие действия:
Перед выполнением команды
terraform apply
откройтеmain.tf
, закомментируйте строкуwindows-startup-script-ps1 = local-file.install_arc_agent-ps1.content
и сохраните файл.Выполните
terraform apply --auto-approve
, как описано выше.Откройте консоль GCP и перейдите на страницу Вычислительный экземпляр, а затем выберите созданную виртуальную машину.
Создайте пользователя и пароль для виртуальной машины, выбрав Задать пароль и указав имя пользователя.
Подключитесь к виртуальной машине по протоколу RDP, нажав кнопку RDP на странице виртуальной машины в консоли GCP и выполнив вход с использованием только что созданного имени пользователя и пароля.
После входа откройте интегрированную среду сценариев PowerShell от имени администратора. Убедитесь, что вы используете 64-разрядную версию интегрированной среды сценариев PowerShell, а не версию x86. После открытия выберите Файл > Создать, чтобы создать пустой файл
.ps1
. Затем вставьте все содержимое./scripts/install_arc_agent.ps1
. Нажмите кнопку «Выполнить», чтобы выполнить скрипт. По завершении вы увидите итоговые данные об успешном подключении компьютера.
Удаление развертывания
Чтобы удалить все ресурсы, созданные в этом примере, используйте команду terraform destroy --auto-approve
, как показано ниже.
Кроме того, виртуальную машину GCP можно удалить непосредственно из консоли GCP.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по