Пакет SDK для Azure Go для остановки экземпляра и его перезапуска

Описание

Я хотел выполнить следующую задачу с помощью GO SDK, для которой не нашел ни одного хорошего примера:

  • Установление соединения с Azure
  • Остановка экземпляра виртуальной машины
  • Перезапуск экземпляра виртуальной машины
  1. Первая часть - это установление соединения, для которого я использовал:
package main

import (
        "fmt"
        "github.com/Azure/go-autorest/autorest/azure/auth"
)

func main() {
  authorizer, err := auth.NewAuthorizerFromEnvironment()

не уверен, что это правильный. Все остальное, что нам нужно здесь настроить.

  1. Для остановки виртуальной машины не удалось получить точную функцию, но в коде Go SDK я нашел одну:

https://github.com/Azure-Samples/azure-sdk-for-go-samples/blob/ffcdafe9818d55dbc2134db1548e1ed10b4a6092/compute/vm.go#L168

  1. То же самое для запуска виртуальной машины:

https://github.com/Azure-Samples/azure-sdk-for-go-samples/blob/ffcdafe9818d55dbc2134db1548e1ed10b4a6092/compute/vm.go#L184

Как использовать его в GO SDK с помощью клиента?


person UDIT GAURAV    schedule 26.01.2021    source источник
comment
Есть еще новости по этому вопросу? Решает проблему или что еще нужно? Если это сработает для вас, пожалуйста, примите это.   -  person Charles Xu    schedule 01.02.2021
comment
Это в основном решает мою проблему. Спасибо за это @CharlesXu. Таким образом, используя аутентификацию файловых баз, мы передаем значения в azure.auth, который также содержит идентификатор подписки, поэтому мы можем получить и использовать этот идентификатор подписки из файла azure.auth для создания клиента. Если да, то как?   -  person UDIT GAURAV    schedule 20.02.2021


Ответы (1)


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

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

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

vmClient := compute.NewVirtualMachinesClient("subcriptionID")

Этот клиент виртуальной машины поможет вам запускать и останавливать виртуальную машину по вашему желанию.

person Charles Xu    schedule 27.01.2021