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


Как выполнить развертывание F5 на двух экземплярах Azure Stack Hub

В этой статье описано, как настроить внешний балансировщик нагрузки в двух средах Azure Stack Hub. Эту конфигурацию можно использовать для управления разными рабочими нагрузками. В этой статье описано, как развернуть F5 в качестве глобального решения для балансировки нагрузки между двумя независимыми экземплярами Azure Stack Hub. Вы также развернете веб-приложение с балансировкой нагрузки на сервере NGINX, распределенном между двумя экземплярами. Перед ними будет размещена пара виртуальных устройств F5 с высоким уровнем доступности и отработкой отказа.

Примеры шаблонов Azure Resource Manager можно найти в репозитории f5-azurestack-gslb на GitHub.

Общие сведения о балансировке нагрузки с использованием F5

Оборудование для балансировки нагрузки F5 может располагаться за пределами Azure Stack Hub в центре обработки данных, где размещается Azure Stack Hub. Azure Stack Hub не имеет встроенных функций для распределения рабочих нагрузок между двумя отдельными развертываниями Azure Stack Hub. Виртуальный выпуск BIG-IP для F5 выполняется на обеих платформах. Такая конфигурация обеспечивает соответствие между архитектурами Azure и Azure Stack Hub за счет репликации вспомогательных служб приложений. Вы можете разрабатывать приложение в одной среде, а затем переместить его в другую. Также вы можете создать копию полного развертывания Azure Stack Hub в готовом к эксплуатации виде, включая одни и те же конфигурации BIG-IP, политики и службы приложений. Такой подход позволяет не тратить много времени на рефакторинг и тестирование приложения, а сосредоточиться на написании кода.

Обеспечение защиты приложений и связанных данных часто становится проблемой для разработчиков, которые переносят приложения в общедоступное облако. Но это не должно быть проблемой. Вы можете создавать приложение в среде Azure Stack Hub, а архитектор безопасности будет настраивать необходимые параметры в брандмауэре веб-приложения (WAF) для F5. Тогда вы сможете полностью реплицировать стек в Azure Stack Hub, полагаясь на защиту приложения тем же WAF, который является отраслевым эталоном. Идентичные политики и наборы правил предотвратят появление рисков безопасности или уязвимостей, что характерно при применении разных WAF.

Для Azure Stack Hub используется отдельный Marketplace (не относящийся к Azure). В него добавляются только избранные элементы. В нашем примере вам нужно создать новую группу ресурсов в каждом из экземпляров Azure Stack Hub и развернуть на них уже доступный виртуальный модуль F5. Вы увидите, что для организации сетевого подключения между экземплярами Azure Stack Hub требуется общедоступный IP-адрес. Эти экземпляры изолированы от окружающей сети, а общедоступный IP-адрес позволит им обмениваться данными.

Требования для виртуального выпуска BIG-IP

  • Скачайте F5 BIG-IP VE - ALL (BYOL, 2 Boot Locations) в каждый экземпляр Azure Stack Hub Marketplace. Если вы не видите их на своем портале, обратитесь к оператору облака.

  • Шаблон Azure Resource Manager можно найти в репозитории https://github.com/Mikej81/f5-azurestack-gslb на GitHub.

Развертывание виртуального выпуска F5 BIG-IP в каждом экземпляре

Выполните развертывание в экземплярах Azure Stack Hub A и B.

  1. Войдите на портал пользователя Azure Stack Hub.

  2. Выберите действие + Создать ресурс.

  3. Выполните поиск по запросу F5 в Marketplace.

  4. Выберите вариант F5 BIG-IP VE – ALL (BYOL, 2 Boot Locations).

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

  5. В нижней части следующей страницы выберите Создать.

    В диалоговом окне F5 BIG-IP VE – ALL (BYOL, 2 boot locations)

  6. Создайте новую группу ресурсов с именем F5-GSLB.

  7. Укажите следующие значения, чтобы завершить этот пример развертывания:

    На странице Входные данные диалогового окна Microsoft.Template отображаются 15 текстовых полей, таких как VIRTUALMACHINENAME и ADMINUSERNAME, которые содержат значения для примера развертывания.

  8. Убедитесь, что развертывание завершилось успешно.

    На странице Обзор диалогового окна Microsoft.Template отображается сообщение

    Примечание

    Каждое развертывание BIG-IP занимает примерно 20 минут.

Настройка устройств BIG-IP

Повторите те же действия для Azure Stack Hub A и B.

  1. Войдите на пользовательский портал Azure Stack Hub в экземпляре Azure Stack Hub A, чтобы проверить ресурсы, созданные при развертывании шаблона BIG-IP.

    На странице Обзор диалогового окна F5-GSLB перечислены развернутые ресурсы и связанные с ними сведения.

  2. Выполните инструкции для элементов конфигурации BIG-IP в документации по F5.

  3. Настройте широкий список IP-адресов для BIG-IP, чтобы прослушивать оба устройства, развернутых в экземплярах Azure Stack Hub A и B, согласно описанию конфигурации BIG-IP GTM.

  4. Проверьте отработку отказа для устройств BIG-IP. В тестовой системе настройте следующие параметры для DNS-серверов:

    • экземпляр Azure Stack Hub — f5stack1-ext общедоступный IP-адрес;
    • экземпляр Azure Stack Hub B — f5stack1-ext общедоступный IP-адрес.
  5. В браузере перейдите по адресу www.contoso.com и убедитесь, что отображается стандартная страница NGINX.

Создание группы синхронизации DNS

  1. Войдя в учетную запись суперпользователя, настройте отношения доверия. См. инструкции по изменению паролей учетной записи обслуживания системы (11.x–15.x). Настроив отношения доверия (обмен сертификатами), отключите учетную запись суперпользователя.

  2. Войдите в систему BIG-IP и создайте группу синхронизации DNS. См. инструкции по созданию группы синхронизации DNS для BIG-IP.

    Примечание

    Локальный IP-адрес устройства BIG-IP можно найти в группе ресурсов F5-GSLB. Выберите сетевой интерфейс f5stack1-ext и подключитесь к общедоступному или частному IP-адресу (в зависимости от способа получения доступа).

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

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

  3. Выберите новую группу ресурсов F5-GSLB и виртуальную машину f5stack1, а затем в разделе Параметры выберите Сети.

Настройка после установки

После установки необходимо настроить группы безопасности сети Azure Stack Hub и заблокировать исходные IP-адреса.

  1. Отключите порт 22 после установки отношений доверия.

  2. Если система подключена к сети, заблокируйте группы безопасности сети для источника. Группа безопасности сети управления должна быть заблокирована источником управления, внешняя (4353/TCP) группа безопасности сети должна быть заблокирована для другого экземпляра для синхронизации. 443 также должен быть заблокирован до тех пор, пока не будут развернуты приложения с виртуальными серверами.

  3. Настройте правило GTM_DNS, чтобы разрешить трафик по порту 53 (DNS), и сопоставитель BIG-IP начнет работать. Итак, прослушиватели созданы.

    На странице fStack1-ext диалогового окна Сетевой интерфейс отображаются сведения об интерфейсе fstack1-ext и его NSG fstack1-ext-nsg. Есть вкладки для выбора, чтобы просмотреть правила входящего или исходящего порта.

  4. Теперь разверните базовую рабочую нагрузку веб-приложения в среде Azure Stack Hub, чтобы выполнять балансировку нагрузки за экземпляром BIG-IP. См. пример использования сервера NGINX в руководстве по развертыванию NGINX и NGINX Plus в Docker.

    Примечание

    Разверните экземпляр NGINX в обоих экземплярах Azure Stack Hub (A и B).

  5. Развернув NGINX в контейнере Docker на виртуальной машине Ubuntu в каждом из экземпляров Azure Stack Hub, попробуйте открыть стандартную веб-страницу на обоих серверах.

    Страница

  6. Войдите в интерфейс управления для устройства BIG-IP. В этом примере используйте общедоступный IP-адрес f5-stack1-ext .

    Экран входа для программы настройки BIG-IP требует имени пользователя и пароля.

  7. Опубликуйте доступ к NGINX через BIG-IP.

    • В нашем примере описано, как настроить для BIG-IP виртуальный сервер и пул, чтобы разрешить входящий доступ из Интернета к приложению WordPress. Для начала необходимо узнать частный IP-адрес экземпляра NGINX.
  8. Войдите на портал пользователя Azure Stack Hub.

  9. Выберите сетевой интерфейс NGINX.

    На странице Обзор диалогового окна

  10. В консоли BIG-IP перейдите в раздел Список пулов > локального трафика > и выберите +. Настройте пул, используя значения из этой таблицы. Для других полей сохраните значения по умолчанию.

    В левой области можно перейти к созданию пула. Панель справа называется

    Ключ Значение
    Имя NGINX_Pool
    Монитор работоспособности HTTPS
    Имя узла NGINX
    Адрес <частный IP-адрес NGINX;>
    Порт службы 443
  11. Щелкните Готово. Если все настроено правильно, состояние пула будет отображаться зеленым цветом.

    Панель справа называется

    Теперь осталось настроить виртуальный сервер. Для этого прежде всего найдите частный IP-адрес для BIG-IP в F5.

  12. В консоли BIG-IP перейдите в раздел Сетевые > собственные IP-адреса и запишите IP-адрес.

    В левой области можно перейти к отображением собственных IP-адресов. Панель справа называется

  13. Создайте виртуальный сервер, выбрав Локальный трафик>Виртуальные серверы>Список виртуальных серверов и выберите +. Настройте пул, используя значения из этой таблицы. Для других полей сохраните значения по умолчанию.

    Ключ Значение
    Имя NGINX
    Адрес назначения <Самостоятельный IP-адрес BIG-IP>
    Порт службы 443
    Профиль SSL (клиент) clientssl
    Преобразование сетевых адресов Автоматическое сопоставление

    Левая панель используется для перехода справа к разделу

    Эта страница предоставляет возможность ввода дополнительных сведений. Есть кнопки Обновить и Удалить.

  14. Итак, вы завершили настройку BIG-IP для приложения NGINX. Чтобы все проверить, откройте сайт в браузере и просмотрите статистику F5.

  15. Перейдите в браузере по адресу https://<F5-public-VIP-IP> и убедитесь, что отображается стандартная страница NGINX.

    Страница

  16. Теперь проверка статистику виртуального сервера, чтобы проверить поток трафика, перейдя к параметру Статистика > модуля статистики > Локальный трафик.

  17. В поле Тип статистики выберите значение Виртуальные серверы.

    В левой области справа перейдите к разделу Статистика модуля статистики >> : виртуальные серверы локального трафика >> . В списке отображается виртуальный сервер NGINX и другие. NGINX выделен.

Дополнительные сведения

Дополнительные справочные материалы по использованию F5:

Дальнейшие действия

Сети Azure Stack Hub: различия и рекомендации