Как выполнить развертывание 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.
Войдите на портал пользователя Azure Stack Hub.
Выберите действие + Создать ресурс.
Выполните поиск по запросу
F5
в Marketplace.Выберите вариант F5 BIG-IP VE – ALL (BYOL, 2 Boot Locations).
В нижней части следующей страницы нажмите кнопку "Создать".
Создайте новую группу ресурсов с именем F5-GSLB.
Укажите следующие значения, чтобы завершить этот пример развертывания:
Убедитесь, что развертывание завершилось успешно.
Примечание.
Каждое развертывание BIG-IP занимает примерно 20 минут.
Настройка устройств BIG-IP
Повторите те же действия для Azure Stack Hub A и B.
Войдите на пользовательский портал Azure Stack Hub в экземпляре Azure Stack Hub A, чтобы проверить ресурсы, созданные при развертывании шаблона BIG-IP.
Выполните инструкции для элементов конфигурации BIG-IP в документации по F5.
Настройте широкий список IP-адресов для BIG-IP, чтобы прослушивать оба устройства, развернутых в экземплярах Azure Stack Hub A и B, согласно описанию конфигурации BIG-IP GTM.
Проверьте отработку отказа для устройств BIG-IP. В тестовой системе настройте следующие параметры для DNS-серверов:
- экземпляр Azure Stack Hub —
f5stack1-ext
общедоступный IP-адрес; - экземпляр Azure Stack Hub B —
f5stack1-ext
общедоступный IP-адрес.
- экземпляр Azure Stack Hub —
В браузере перейдите по адресу
www.contoso.com
и убедитесь, что отображается стандартная страница NGINX.
Создание группы синхронизации DNS
Войдя в учетную запись суперпользователя, настройте отношения доверия. См. инструкции по изменению паролей учетной записи обслуживания системы (11.x–15.x). Настроив отношения доверия (обмен сертификатами), отключите учетную запись суперпользователя.
Войдите в систему BIG-IP и создайте группу синхронизации DNS. См. инструкции по созданию группы синхронизации DNS для BIG-IP.
Примечание.
Локальный IP-адрес устройства BIG-IP можно найти в группе ресурсов F5-GSLB. Выберите сетевой интерфейс f5stack1-ext и подключитесь к общедоступному или частному IP-адресу (в зависимости от способа получения доступа).
Выберите новую группу ресурсов F5-GSLB и виртуальную машину f5stack1, а затем в разделе Параметры выберите Сети.
Настройка после установки
После установки необходимо настроить группы безопасности сети Azure Stack Hub и заблокировать исходные IP-адреса.
Отключите порт 22 после установки отношений доверия.
Если система подключена к сети, заблокируйте группы безопасности сети для источника. Группа безопасности сети управления должна быть заблокирована для источника управления, для синхронизации следует заблокировать NSG внешнего (4353/TCP). 443 также следует заблокировать до развертывания приложений с виртуальными серверами.
Настройте правило GTM_DNS, чтобы разрешить трафик по порту 53 (DNS), и сопоставитель BIG-IP начнет работать. Итак, прослушиватели созданы.
Теперь разверните базовую рабочую нагрузку веб-приложения в среде Azure Stack Hub, чтобы выполнять балансировку нагрузки за экземпляром BIG-IP. См. пример использования сервера NGINX в руководстве по развертыванию NGINX и NGINX Plus в Docker.
Примечание.
Разверните экземпляр NGINX в обоих экземплярах Azure Stack Hub (A и B).
Развернув NGINX в контейнере Docker на виртуальной машине Ubuntu в каждом из экземпляров Azure Stack Hub, попробуйте открыть стандартную веб-страницу на обоих серверах.
Войдите в интерфейс управления для устройства BIG-IP. В нашем примере используйте для этого общедоступный IP-адрес f5-stack1-ext.
Опубликуйте доступ к NGINX через BIG-IP.
- В нашем примере описано, как настроить для BIG-IP виртуальный сервер и пул, чтобы разрешить входящий доступ из Интернета к приложению WordPress. Для начала необходимо узнать частный IP-адрес экземпляра NGINX.
Войдите на портал пользователя Azure Stack Hub.
Выберите сетевой интерфейс NGINX.
В консоли BIG-IP перейдите в список пулов локальных пулов > трафика > и выберите+. Настройте пул, используя значения из этой таблицы. Для других полей сохраните значения по умолчанию.
Ключ Значение Имя. NGINX_Pool Монитор работоспособности HTTPS Имя узла NGINX Адрес <частный IP-адрес NGINX> Порт службы 443 Щелкните Готово. Если все настроено правильно, состояние пула будет отображаться зеленым цветом.
Теперь осталось настроить виртуальный сервер. Для этого прежде всего найдите частный IP-адрес для BIG-IP в F5.
В консоли BIG-IP перейдите к IP-адресам сети > и запишите IP-адрес.
Создайте новый виртуальный сервер. Для этого перейдите в раздел Локальный трафик>Виртуальные серверы>Список виртуальных серверов, а затем щелкните +. Настройте пул, используя значения из этой таблицы. Для других полей сохраните значения по умолчанию.
Ключ Значение Имя. NGINX Адрес назначения <Самостоятельный IP-адрес BIG-IP> Порт службы 443 Профиль SSL (клиент) clientssl Преобразование сетевых адресов Автоматическое сопоставление Итак, вы завершили настройку BIG-IP для приложения NGINX. Чтобы все проверить, откройте сайт в браузере и просмотрите статистику F5.
Перейдите в браузере по адресу
https://<F5-public-VIP-IP>
и убедитесь, что отображается стандартная страница NGINX.Теперь проверьте статистику виртуального сервера, чтобы проверить поток трафика, перейдя к статистике статистики модуля статистики > > локального трафика.
В поле Тип статистики выберите значение Виртуальные серверы.
Дополнительные сведения
Дополнительные справочные материалы по использованию F5:
- Data Center Availability Services Using BIG-IP DNS (Использование служб обеспечения доступности центра обработки данных с DNS BIG-IP)
- Deploying the BIG-IP System with HTTP Applications (Развертывание системы BIG-IP с приложениями HTTP)
- Creating a WIP for GSLB (Создание WIP для GSLB)