Создание изолированной среды виртуальной сети для сценариев build-deploy-test

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Виртуализация сети обеспечивает возможность создания нескольких виртуальных сетей в общей физической сети. Изолированные виртуальные сети можно создавать с помощью концепций виртуализации сети SCVMM. VMM использует концепцию логических сетей и соответствующих сетей виртуальных машин для создания изолированных сетей виртуальных машин.

Логические сети и соответствующие сети виртуальных машин

  • Вы можете создать изолированную сеть виртуальных машин, охватывающих различные узлы в кластере узлов или частном облаке.
  • Вы можете иметь виртуальные машины из разных сетей, размещенных на одном и том же хост-компьютере, и по-прежнему изолированы друг от друга.
  • Вы можете определить IP-адрес из любого пула IP-адресов, выбранного для сети виртуальных машин.

См. также: Обзор виртуализации сети Hyper-V.

Чтобы создать изолированную среду виртуальной сети, выполните приведенные действия.

  • Убедитесь, что выполнены необходимые условия, описанные в этом разделе.

  • Настройте виртуализацию сети с помощью SCVMM. Это однократная задача настройки, которую не нужно повторять. Выполните следующие действия.

  • Определите топологию сети, которую вы хотите использовать. Это будет указано при создании виртуальной сети. Параметры и шаги описаны в этом разделе.

  • Включите сценарий тестирования сборки, как показано в следующих шагах.

Необходимые компоненты

  • SCVMM Server 2012 R2 или более поздней версии.
  • В окне 2012 R2 размещаются компьютеры с Hyper-V, настроенные по крайней мере с двумя физическими сетевыми адаптерами.
  • Один сетевой адаптер (возможно, внешний) с корпоративной сетью или доступом к Интернету.
  • Один сетевой адаптер, настроенный в режиме магистрали с идентификатором виртуальной локальной сети (например, 991) и маршрутизируемыми IP-подсетями (например, 10.10.30.1/24). Это можно настроить администратором сети.
  • Все узлы Hyper-V в группе узлов имеют одинаковый идентификатор виртуальной локальной сети. Эта группа узлов будет использоваться для изолированных сетей.

Убедитесь, что программа установки работает правильно, выполнив следующие действия.

  1. Откройте сеанс RDP для каждого хост-компьютера и откройте сеанс PowerShell администратора.

  2. Выполните команду Get-NetVirtualizationProviderAddress. Получает адрес поставщика физического сетевого адаптера, настроенного в режиме магистрали с идентификатором виртуальной ЛС.

    Запуск Get-NetVirtualizationProviderAddress

  3. Перейдите к другому узлу и откройте сеанс PowerShell администратора. Связь с другими компьютерами с помощью команды ping -p <Provider address>. Это подтверждает, что все хост-компьютеры подключены к физическому сетевому адаптеру в режиме магистрали с ip-адресами, которые можно маршрутивировать на хост-компьютерах. Если этот тест завершается ошибкой, обратитесь к администратору сети.

    Связь с другими компьютерами

Вернитесь к списку задач

Создание уровня виртуализации сети в SCVMM

Настройка уровня визуализации сети в SCVMM включает создание логических сетей, профилей портов, логических коммутаторов и добавление коммутаторов к узлам Hyper-V.

Создание логических сетей

  1. Войдите в консоль администрирования SCVMM.

  2. Перейдите в Fabric -Network ->>Logical Networks -Create new Logical Network (>Создать новую логическую сеть).

    Создание логической сети

  3. Во всплывающем запустите соответствующее имя и выберите один Подключение ed Network .>Разрешить новым сетям, созданным в этой логической сети, использовать виртуализацию сети, а затем нажмите кнопку "Далее".

    Назовите сеть и выберите одну подключенную сеть

  4. Добавьте новый сетевой сайт и выберите группу узлов, в которую будет область сетевой сайт. Введите идентификатор виртуальной локальной сети, используемый для настройки физического сетевого адаптера в группе узлов Hyper-V и соответствующей routable IP-подсети. Чтобы помочь в отслеживании, измените имя сетевого сайта на запоминающееся.

    Добавление нового сетевого сайта

  5. Нажмите кнопку "Далее" и "Сохранить".

  6. Создайте пул IP-адресов для новых логических сетей, введите имя и нажмите кнопку "Далее".

    Создание пула IP-адресов

  7. Выберите "Использовать" и существующий сетевой сайт и нажмите кнопку "Далее". Введите диапазон ip-адресов, доступный для routable IP-адресов, настроенный для виртуальной локальной сети, и нажмите кнопку "Далее". Если у вас несколько маршрутизируемых IP-подсетей, связанных с виртуальной локальной сетью, создайте пул IP-адресов для каждого из них.

    Укажите диапазон routable IP-адресов

  8. Укажите адрес шлюза. По умолчанию в подсети можно использовать первый IP-адрес.

    Укажите адрес шлюза

  9. Нажмите кнопку "Далее " и оставьте существующие параметры DNS и WINS. Завершите создание сетевого сайта.

  10. Теперь создайте другую логическую сеть для внешнего доступа к Интернету, но на этот раз выберите одну Подключение сеть виртуальной машины с> тем же именем, чтобы разрешить виртуальным машинам доступ к этой логической сети напрямую, а затем нажмите кнопку "Далее".

    Создание логической сети для внешнего доступа к Интернету

  11. Добавьте сетевой сайт и выберите ту же группу узлов, но на этот раз добавьте виртуальную локальную сеть как 0. Это означает, что связь использует сетевой адаптер режима доступа по умолчанию (Интернет).

    Добавление сетевого сайта и выбор той же группы узлов

  12. Нажмите кнопку "Далее" и "Сохранить".

  13. Результат должен выглядеть следующим образом в консоли администрирования после создания логических сетей.

    Просмотр результата

Создание профилей портов

  1. Перейдите к профилям "Сеть> —Сеть> порт" и создайте профиль порта Hyper-V.

    Создание профиля порта Hyper-V

  2. Выберите профиль порта uplink и выберите порт Hyper-V в качестве алгоритма балансировки нагрузки, а затем нажмите кнопку "Далее".

    Настройка алгоритма балансировки нагрузки

  3. Выберите сайт виртуализации сети, созданный ранее, и выберите параметр Enable Hyper-V Network Virtualization проверка box, а затем сохраните профиль.

    Включение виртуализации сети Hyper-V

  4. Теперь создайте другой профиль порта Hyper-V для внешней логической сети. Выберите режим uplink и Узел по умолчанию в качестве алгоритма балансировки нагрузки, а затем нажмите кнопку "Далее".

    Создание другого профиля порта Hyper-V для внешней логической сети

  5. Выберите другой сетевой сайт, который будет использоваться для внешнего взаимодействия, но на этот раз не включите виртуализацию сети. Затем сохраните профиль.

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

Создание логических коммутаторов

  1. Перейдите в Fabric ->Networking ->Логические коммутаторы и создайте логический коммутатор.

    Создание логического коммутатора

  2. В мастере начала нажмите кнопку "Далее " и введите имя переключателя, а затем нажмите кнопку "Далее".

    Ввод имени для переключателя

  3. Нажмите кнопку "Рядом", чтобы открыть вкладку Uplink. Выберите "Добавить профиль порта исходящей связи" и добавьте только что созданный профиль порта виртуализации сети.

    Добавление профиля порта uplink

  4. Нажмите кнопку "Далее " и сохраните логический коммутатор.

  5. Теперь создайте другой логический коммутатор для внешней сети для обмена данными через Интернет. На этот раз добавьте другой профиль порта uplink, созданный для внешней сети.

    Создание другого логического коммутатора для внешней сети

Добавление логических коммутаторов к узлам Hyper-V

  1. Перейдите к виртуальной машине и службам> — [ваша группа узлов] —> [каждая из ведущих компьютеров в свою очередь].

  2. Щелкните правой кнопкой мыши и откройте вкладку "Свойства ">Виртуальные коммутаторы ".

    Открытие вкладки

  3. Выберите новый виртуальный коммутатор ->Новый логический коммутатор для виртуализации сети. Назначьте физический адаптер, настроенный в режиме магистрали, и выберите профиль порта виртуализации сети.

    Назначение физического адаптера

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

    Создание другого логического коммутатора для внешнего подключения

  5. Выполните одно и то же самое для всех узлов Hyper-V в группе узлов.

Это одноразовая конфигурация для определенной группы узлов компьютеров. После завершения этой настройки вы можете динамически подготовить изолированную сеть виртуальных машин с помощью расширения SCVMM в сборках и выпусках Azure Pipelines.

Вернитесь к списку задач

Создание требуемой топологии виртуальной сети

Изолированные виртуальные сети можно классифицировать в три топологии.

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

  • Виртуальная машина границы с подключением к Интернету и TFS.

  • Агент группы развертывания Azure Pipelines/TFS, установленный на виртуальной машине границы.

  • Виртуальная машина AD-DNS, если вы хотите использовать локальный домен Active Directory.

  • Изолированные виртуальные машины приложений, в которых развертываются и тестируются приложения.

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

Топология 2. Изолированные виртуальные машины без AD

  • Виртуальная машина границы с подключением к Интернету и TFS.

  • Агент группы развертывания Azure Pipelines/TFS, установленный на виртуальной машине границы.

  • Изолированные виртуальные машины приложений, в которых развертываются и тестируются приложения.

    Топология 2 изолированных виртуальных машин, отличных от AD

Топология 3. Неизолированные виртуальные машины, не изолированные от AD

  • Виртуальная машина границы с подключением к Интернету и TFS.

  • Агент группы развертывания Azure Pipelines/TFS, установленный на виртуальной машине границы.

  • Виртуальная машина AD-DNS, если вы хотите использовать локальный домен Active Directory.

  • Виртуальные машины приложений, которые также подключены к внешней сети, где развертываются и тестируются приложения.

    Топология 3 неизолированных виртуальных машин с поддержкой AD

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

  1. Откройте экземпляр Azure Pipelines и установите расширение SCVMM, если оно еще не установлено.

    Задача SCVMM обеспечивает более эффективный способ выполнения операций управления лабораториями с помощью конвейеров сборки и выпуска. Вы можете управлять средами SCVMM, подготавливать изолированные виртуальные сети и реализовывать сценарии тестирования сборки и развертывания.

  2. В конвейере сборки или выпуска добавьте новую задачу SCVMM .

  3. В задаче SCVMM выберите подключение службы для сервера SCVMM, в котором требуется подготовить виртуальную сеть, а затем выберите "Новые виртуальные машины" с помощью шаблонов или сохраненных виртуальных машин и виртуальных жестких жестких жестких машин для подготовки виртуальных машин.

    Выбор подключения службы для сервера SCVMM

  4. Вы можете создавать виртуальные машины из шаблонов, сохраненных виртуальных машин и VHD/VHDx. Выберите соответствующий параметр и введите имена виртуальных машин и соответствующие исходные сведения.

    Выбор варианта создания виртуальных машин из шаблонов, сохраненных виртуальных машин и VHD или VHDx

  5. В случае топологий 1 и 2 оставьте имя сети виртуальной машины пустым, что приведет к очистке всех старых сетей виртуальных машин, присутствующих в созданных виртуальных машинах (при наличии). Для топологии 3 необходимо указать сведения о внешней сети виртуальных машин здесь.

    Указание параметров топологии

  6. Введите облачное имя узла, в котором требуется подготовить изолированную сеть. В случае частного облака убедитесь, что узлы, добавленные в облако, подключены к тем же логическим и внешним коммутаторам , как описано выше.

    Ввод имени облака

  7. Выберите параметр "Виртуализация сети", чтобы создать уровень виртуализации.

    Создание слоя виртуализации

  8. В зависимости от топологии, необходимо ли создать виртуальную машину Active Directory, определите, требуется ли сеть. Например, для создания топологии 2 (изолированная сеть с поддержкой AD) требуется виртуальная машина Active Directory. Выберите поле "Добавить виртуальную машину Active Directory проверка", введите имя виртуальной машины AD и источник хранимой виртуальной машины. Также введите статический IP-адрес, настроенный в источнике виртуальной машины AD и суффиксе DNS.

    Определение того, требуется ли для сети виртуальная машина Active Directory

  9. Введите параметры для сети виртуальной машины и подсети, которую вы хотите создать, и резервную логическую сеть, созданную в предыдущем разделе (логические сети). Убедитесь, что сетевое имя виртуальной машины уникально. По возможности добавьте имя выпуска для более удобного отслеживания позже.

    Ввод параметров для сети виртуальной машины и подсети

  10. В разделе параметров виртуальной машины границы задайте для связи с Azure Pipelines/TFS виртуальную машину границы. Это будет точка входа для внешнего взаимодействия.

  11. Введите имя виртуальной машины границы и исходный шаблон (источник виртуальной машины границы всегда должен быть шаблоном виртуальной машины) и введите имя существующей внешней сети виртуальных машин, созданной для внешнего взаимодействия.

    Ввод имени виртуальной машины границы и исходного шаблона

  12. Укажите сведения о настройке агента виртуальной машины границы для взаимодействия с Azure Pipelines/TFS. Агент развертывания или агент автоматизации можно настроить. Этот агент будет использоваться для развертываний приложений.

    Настройка агента виртуальной машины границы для взаимодействия с TFS или Azure Pipelines

  13. Убедитесь, что предоставленное вами имя агента является уникальным. Это будет использоваться в качестве спроса в успешных свойствах задания, чтобы выбрать правильный агент. Если выбран параметр агента группы развертывания, этот параметр заменяется значением тега, который также должен быть уникальным.

  14. Убедитесь, что шаблон виртуальной машины границы содержит файлы конфигурации агента, скачанные и сохраненные на виртуальном жестком диске перед созданием шаблона. Используйте этот путь в качестве пути установки агента выше.

Включение сценария build-deploy-test

  1. Создайте новое задание в конвейере после задания виртуализации сети.

  2. На основе агента виртуальной машины границы (агента группы развертывания или агента автоматизации), созданного в рамках подготовки виртуальной машины границы, выберите задание группы развертывания или задание агента.

  3. В свойствах задания выберите соответствующую группу развертывания или пул агентов автоматизации.

  4. В случае пула автоматизации добавьте новый запрос на Agent.Name значение. Введите уникальное имя, используемое в задании виртуализации сети. В случае задания группы развертывания необходимо задать тег в свойствах компьютеров группы.

    Ввод имени запроса или тега агента

  5. В задании добавьте задачи, необходимые для развертывания и тестирования.

    Добавление задач, необходимых для развертывания и тестирования

  6. После завершения тестирования можно уничтожить виртуальные машины с помощью параметра "Удалить виртуальную машину ".

Теперь вы можете создать выпуск из этого конвейера выпуска. Каждый выпуск будет динамически подготавливать изолированную виртуальную сеть и запускать задачи развертывания и тестирования в среде. Результаты теста можно найти в сводке по выпуску. После завершения тестов вы можете автоматически вывести из эксплуатации среды. Вы можете создать столько сред, сколько вам нужно, только выбрав из Azure Pipelines.

Вернитесь к списку задач

См. также

Вопросы и ответы

Справка и поддержка