Поделиться через


Создание изолированной среды виртуальной сети для сценариев 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 или более поздней версии.
  • На хост-машинах с Windows Server 2012 R2 с установленным Hyper-V подключены по крайней мере два физических сетевых адаптера.
  • Один сетевой адаптер (возможно, внешний) с корпоративной сетью или доступом к Интернету.
  • Один сетевой адаптер, настроенный в режиме транка с VLAN ID (например, 991) и маршрутизируемыми IP-подсетями (например, 10.10.30.1/24). Это можно настроить администратором сети.
  • Все узлы Hyper-V в группе узлов имеют одинаковый идентификатор виртуальной локальной сети. Эта группа узлов будет использоваться для ваших изолированных сетей.

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

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

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

    Запуск Get-NetVirtualizationProviderAddress

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

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

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

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

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

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

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

  2. Перейдите в Fabric -Сеть ->Логические сети ->Создать новую логическую сеть.

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

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

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

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

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

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

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

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

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

    Укажите диапазон маршрутизируемых IP-адресов

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

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

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

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

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

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

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

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

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

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

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

  1. Перейдите к Fabric ->Networking ->профили портов и создайте профиль порта Hyper-V.

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

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

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

  3. Выберите сайт виртуализации сети, созданный ранее, и установите флажок "Включить Hyper-V Виртуализация сети ", а затем сохраните профиль.

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

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

    Создание другого профиля порта 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 (Team Foundation Server).

  • Агент развертывания группы 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, на котором требуется подготовить вашу виртуальную сеть, а затем выберите «Новые виртуальные машины по шаблонам/сохраненным виртуальным машинам и VHD» для создания виртуальных машин.

    Выбор подключения службы для сервера 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. Убедитесь, что граничный шаблон виртуальной машины содержит файлы конфигурации агента, скачав их и сохранив в VHD перед созданием шаблона. Используйте этот путь в качестве пути установки агента выше.

Включите ваш сценарий сборки, развертывания и тестирования

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

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

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

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

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

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

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

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

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

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

См. также

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

Помощь и поддержка