Введение в управление шаблонами ARM с помощью Visual Studio Team Services

Опубликовано: 3 Марта, 2023
Введение в управление шаблонами ARM с помощью Visual Studio Team Services

Существует несколько методов развертывания ресурса (вычислительного, сетевого, хранилища и т. д.) в Microsoft Azure. Самый ортодоксальный метод — создать виртуальную машину вручную с помощью портала Azure. Но есть из чего выбрать: PowerShell, Azure CLI, шаблоны Azure Resource Manager и многие другие. Например, используя только шаблоны ARM, мы можем подготовить ресурсы из нескольких источников, таких как компонент развертывания на портале Azure, PowerShell и Visual Studio. В этой статье мы начнем использовать инструмент облачной разработки Visual Studio Team Services и Visual Studio для развертывания шаблонов ARM, используя преимущества CI/CD (непрерывная интеграция, непрерывное развертывание), чтобы позволить коду, созданному в Visual Studio, храниться в Visual Studio. Командные услуги.

Мы сосредоточимся на создании среды для поддержки использования Visual Studio и Visual Studio Team Services. (в нашей следующей статье мы рассмотрим часть развертывания шаблонов ARM.)

Начальные требования

Требования этой статьи: Visual Studio 2017 и Git, установленные на вашем компьютере, и подписка Azure. Если у вас не установлена Visual Studio 2017, перейдите сюда и установите ее, прежде чем продолжить работу с этой статьей.

Процесс установки прост. Для завершения этой статьи мы установили Visual Studio 2017 только с рабочей нагрузкой разработки Azure и несколькими дополнительными функциями (инструменты PowerShell и Azure Storage AZCopy, хотя они и не требуются для этого упражнения). В этой статье мы используем версию Visual Studio 2017 Enterprise.

Второе требование — установка Git на тот же компьютер, где установлена Visual Studio 2017. Загрузите Git и используйте значения по умолчанию для его установки.

Создание учетной записи группы Visual Studio

Первый шаг — войти в свою учетную запись на портале Visual Studio, используя учетную запись Microsoft Live/Corporate. На первой странице будет запрошено ваше имя, адрес электронной почты и страна. Заполните всю запрашиваемую информацию и нажмите «Продолжить».

На следующей странице справа нажмите «Создать новую учетную запись», и это запустит процесс создания Visual Studio Team Services для управления всем кодом нашего будущего проекта.

Пришло время выбрать название для команды. Мы будем использовать ucboxca и выберем Team Foundation Version Control для управления кодом. Нажмите «Продолжить».

После создания новой учетной записи Visual Studio создайте новый проект для размещения кода и дополнительных артефактов, которыми будет управлять Visual Studio. Мы создадим простой проект под названием VNETProject и будем использовать Git для контроля версий. Нажмите «Создать».

Появится новая страница, информирующая о том, что новый проект создан. Нажмите «Клонировать» в Visual Studio. Если вы используете Windows 10, появится диалоговое окно с запросом на переключение приложений. Нажмите «Да», и откроется Visual Studio 2017.

В первом окне Visual Studio потребуется информация для клонирования информации, которую мы только что создали в нашем проекте в Visual Studio Team Services и на локальном компьютере. В нашем примере локальным репозиторием (репозиторием) будет . Нажмите «Клонировать».

Откроется Visual Studio. Нажмите на вкладку Team Explorer, расположенную внизу справа. Строка в верхней части Team Explorer предложит вам создать новый проект. Нажмите здесь. Если он не открывается, просто нажмите «Файл/Создать», а затем «Проект». Выберите «Облако », а затем «Группа ресурсов Azure ». В этой статье мы назовем этот первый проект FirstVNET и оставим флажок Создать новый репозиторий Git. Нажмите ОК.

Появится новая страница, где мы можем выбрать шаблон, с которого мы начнем наш новый облачный проект. Мы начнем с нуля, поэтому выберем «Пустой шаблон» и нажмем «ОК».

Мы почти достигли нашей цели в этой статье, но прежде чем двигаться дальше, мы немного остановимся на изображении, изображенном ниже, чтобы объяснить некоторые ключевые понятия при использовании Visual Studio с шаблонами ARM.

  • Область Solutions Explorer/Team Explorer (элемент 1): в этом разделе у нас есть два основных компонента, которые мы будем использовать все время. Team Explorer, который предоставит интерфейс для связи с вашими командными службами Visual Studio, включая управление изменениями, сборки и т. д.; и обозреватель решений, который является вашими фактическими файлами для текущего проекта.
  • Файл, в который мы добавляем код (пункт 3) — это файл, который мы открываем из , в зависимости от типа файла. У нас могут быть некоторые схемы (элемент 2), как показано в файлах JSON.
  • В области вывода (элемент 4) мы можем получить подробное представление о том, что происходит в некоторых областях, таких как развертывание и контроль версий.

Давайте добавим простой ресурс в наш шаблон ARM с помощью Visual Studio. Убедитесь, что файл открыт, затем щелкните правой кнопкой мыши ресурсы (расположенные слева) и нажмите «Добавить новый ресурс…».

Отобразится список всех доступных ресурсов. Нажмите «Виртуальная сеть» и назначьте имя новой виртуальной сети, нажмите «Добавить». Весь код, который необходимо добавить в ARM со значениями, будет автоматически заполнен в файле JSON.

Завершение синхронизации с Visual Studio Team Services

Теперь, когда у нас есть некоторый код в файлах JSON нашего шаблона ARM, сначала нажмите «Сохранить», чтобы сохранить его локально. Нажмите Team Explorer и нажмите Changes, введите краткое описание текущей сборки. В нашем случае это может быть что-то вроде «Первая виртуальная сеть с использованием Visual Studio», и такая информация может быть полезна для отслеживания хода выполнения и отката настроек в процессе развертывания. Затем нажмите «Зафиксировать все», чтобы создать локальный снимок.

После этого отобразится небольшой информационный баннер (похожий на тот, что изображен на изображении ниже). Нажмите «Синхронизировать», чтобы начать репликацию локальных изменений с помощью Visual Studio Team Services.

Поскольку это наш первый раз, разверните Push to Visual Studio Team Services и нажмите Publish Git Repo. На новой странице введите информацию для подключения к Visual Studio Team Services (если ее еще нет) и выберите командный проект и имя репозитория, которые мы только что создали на предыдущих шагах.

Обычный процесс синхронизации между локальным репозиторием и Visual Studio Team Services сводится к следующим шагам:

  • После просмотра и готовности зафиксировать код, нажмите « Изменить», опишите изменения и нажмите «Зафиксировать все».
  • В строке баннера нажмите « Синхронизировать и синхронизировать с Visual Studio Team Services».
  • Нажмите «Синхронизировать» еще раз, чтобы убедиться, что обе стороны забора синхронизированы и синхронизированы. Это вызовет автоматическое развертывание, которое мы собираемся настроить для следующей статьи здесь, в TechGenix.
  • На данный момент, после первой синхронизации, мы можем перейти на нашу страницу Visual Studio Team Services и в разделе «Код» мы можем увидеть наш репозиторий и файлы, которые мы разместили как часть нашего нового проекта/решения в Visual Studio с нашего рабочего стола.

Заметки с полей

Использование Visual Studio для управления нашими шаблонами ARM дает множество преимуществ по сравнению с обычными файлами, создаваемыми в локальном редакторе. Вот некоторые из ключевых преимуществ для любого пользователя ITPRO:

  • Контроль версий: если вы допустили ошибку, вы всегда можете откатиться.
  • Централизованное хранилище из любого места: в случае повреждения рабочего стола вы всегда можете восстановить свой последний прогресс и продолжить работу с того места, на котором остановились.
  • Автоматическое развертывание: мы можем сохранить файлы и позволить Visual Studio Team Services автоматически позаботиться о развертывании (это будет темой нашей следующей статьи).
  • Весь ваш код в одном месте, даже если у вас нет группы людей, модифицирующих вашу среду Azure. Все классные сценарии, над которыми вы работали, можно разместить в Visual Studio Team Services для использования в будущем. Это ваш личный архив!