Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: ✔️ Front Door Standard ✔️ Front Door Premium
Azure Front Door в стандартной или премиальной версии — это быстрая и безопасная современная облачная сеть доставки контента. Azure Front Door использует глобальную сеть Microsoft edge и интегрируется с интеллектуальной защитой от угроз. Azure Front Door Standard фокусируется на доставке содержимого. Azure Front Door Premium добавляет широкие возможности безопасности и настройки. В этом руководстве основное внимание уделяется созданию профиля Azure Front Door, а затем добавлению правил доставки для более детального управления поведением веб-приложения.
В этом руководстве вы узнаете, как:
- Создайте профиль Azure Front Door.
- Создайте два экземпляра веб-приложения.
- Создайте новую политику безопасности.
- Проверьте подключение к веб-приложениям.
- Создайте набор правил.
- Создайте правило и добавьте его в набор правил.
- Добавьте действия или условия в правила.
Если у вас нет подписки на Azure, создайте бесплатную учетную запись Azure перед началом.
Предпосылки
Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см. в статье "Начало работы с Azure Cloud Shell".
Если вы предпочитаете запускать справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, подумайте о запуске Azure CLI в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.
Если вы используете локальную установку, войдите в Azure CLI с помощью команды az login . Чтобы завершить процесс аутентификации, следуйте шагам, отображаемым в вашем терминале. Сведения о других параметрах входа см. в статье "Проверка подлинности в Azure с помощью Azure CLI".
Когда вас попросят, установите расширение Azure CLI при первом использовании. Дополнительные сведения о расширениях см. в статье Использование расширений и управление ими с помощью Azure CLI.
Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.
Создайте Azure Front Door.
Создайте группу ресурсов
Для этого быстрого начала потребуется две группы ресурсов. Один в центральной части США и второй в восточной части США.
Запустите az group create , чтобы создать группы ресурсов.
az group create \
--name myRGFDCentral \
--location centralus
az group create \
--name myRGFDEast \
--location eastus
Создание профиля Azure Front Door
Запустите az afd profile create , чтобы создать профиль Azure Front Door.
az afd profile create \
--profile-name contosoafd \
--resource-group myRGFDCentral \
--sku Premium_AzureFrontDoor \
--subscription mysubscription
Создание двух экземпляров веб-приложения
Для работы с этим руководством вам потребуется два экземпляра веб-приложения, выполняющегося в разных регионах Azure. Оба экземпляра веб-приложения работают в активном/активном режиме, так что любой из них может обслуживать трафик.
Если у вас нет веб-приложения, создайте два его экземпляра, используя показанный ниже скрипт.
Создание планов службы приложений
Прежде чем создавать веб-приложения, необходимо иметь два плана службы приложений, один в центральной части США и второй в Восточной части США.
Запустите az appservice plan create , чтобы создать планы службы приложений.
az appservice plan create \
--name myAppServicePlanCentralUS \
--resource-group myRGFDCentral
az appservice plan create \
--name myAppServicePlanEastUS \
--resource-group myRGFDEast
Создание веб-приложений
Запустите az webapp create, чтобы создать веб-приложение в каждом из планов службы приложений на предыдущем шаге. Имена веб-приложений должны быть глобально уникальными.
Запустите az webapp list-runtimes , чтобы просмотреть список встроенных стеков для веб-приложений.
az webapp create \
--name WebAppContoso-001 \
--resource-group myRGFDCentral \
--plan myAppServicePlanCentralUS \
--runtime "DOTNETCORE|2.1"
az webapp create \
--name WebAppContoso-002 \
--resource-group myRGFDEast \
--plan myAppServicePlanEastUS \
--runtime "DOTNETCORE|2.1"
Запишите имя узла по умолчанию для каждого веб-приложения, чтобы можно было определить внутренние адреса при развертывании Front Door на следующем шаге.
Добавить конечную точку
Запустите az afd endpoint create , чтобы создать конечную точку в профиле. Вы можете создать несколько конечных точек в своем профиле после завершения процесса создания.
az afd endpoint create \
--resource-group myRGFDCentral \
--endpoint-name contoso-frontend \
--profile-name contosoafd \
--origin-response-timeout-seconds 60 \
--enabled-state Enabled
Создание группы источников
Запустите az afd origin-group create , чтобы создать группу источников, содержащую две веб-приложения.
az afd origin-group create \
--resource-group myRGFDCentral \
--origin-group-name og1 \
--profile-name contosoafd \
--probe-request-type GET \
--probe-protocol Http \
--probe-interval-in-seconds 120 \
--probe-path /test1/azure.txt \
--sample-size 4 \
--successful-samples-required 3 \
--additional-latency-in-milliseconds 50
Добавление источников в группу
Запустите az afd origin create , чтобы добавить источник в группу источников.
az afd origin create \
--resource-group myRGFDCentral \
--host-name webappcontoso-1.azurewebsites.net
--profile-name contosoafd \
--origin-group-name og1 \
--origin-name contoso1 \
--origin-host-header webappcontoso-1.azurewebsites.net \
--priority 1 \
--weight 1000 \
--enabled-state Enabled \
--http-port 80 \
--https-port 443
Повторите этот шаг и добавьте второй источник.
az afd origin create \
--resource-group myRGFDCentral \
--host-name webappcontoso-2.azurewebsites.net
--profile-name contosoafd \
--origin-group-name og1 \
--origin-name contoso2 \
--origin-host-header webappcontoso-2.azurewebsites.net \
--priority 1 \
--weight 1000 \
--enabled-state Enabled \
--http-port 80 \
--https-port 443
Добавление маршрута
Выполните команду az afd route create, чтобы привязать конечную точку фронтального интерфейса к группе источника. Этот маршрут перенаправит запросы из конечной точки в og1.
az afd route create \
--resource-group myRGFDCentral \
--endpoint-name contoso-frontend \
--profile-name contosoafd \
--route-name route1 \
--https-redirect Enabled \
--origin-group og1 \
--supported-protocols Https \
--link-to-default-domain Enabled \
--forwarding-protocol MatchRequest
Создание новой политики безопасности
Создание политики WAF
Запустите az network front-door waf-policy create , чтобы создать политику WAF для одной из групп ресурсов.
Создайте новую политику WAF для Front Door (входной двери). В этом примере создается политика, которая включена и находится в режиме предотвращения.
az network front-door waf-policy create
--name contosoWAF /
--resource-group myRGFDCentral /
--sku Premium_AzureFrontDoor
--disabled false /
--mode Prevention
Замечание
Если вы выберете Detection
режим, WAF не блокирует никакие запросы.
Создание политики безопасности
Запустите az afd security-policy create , чтобы применить политику WAF к домену конечной точки по умолчанию.
az afd security-policy create \
--resource-group myRGFDCentral \
--profile-name contosoafd \
--security-policy-name contososecurity \
--domains /subscriptions/mysubscription/resourcegroups/myRGFDCentral/providers/Microsoft.Cdn/profiles/contosoafd/afdEndpoints/contoso-frontend.z01.azurefd.net \
--waf-policy /subscriptions/mysubscription/resourcegroups/myRGFDCentral/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/contosoWAF
Проверить Azure Front Door
При создании профиля Azure Front Door стандартного или премиум уровня развертывание конфигурации в масштабах всего мира занимает несколько минут. После завершения вы можете получить доступ к созданному узлу фронтенда. Для этого откройте в браузере адрес contoso-frontend.z01.azurefd.net
. Запрос автоматически направляется на ближайший сервер с указанных серверов в группе источников.
Чтобы протестировать автоматическое глобальное переключение на резерв, выполните следующие действия.
Откройте браузер, как описано выше, и перейдите по адресу внешнего интерфейса:
contoso-frontend.azurefd.net
На портале Azure найдите и выберите Службы приложений. Прокрутите вниз, чтобы найти одно из веб-приложений WebAppContoso-1 в этом примере.
Выберите веб-приложение, а затем нажмите кнопку "Остановить" и "Да ", чтобы проверить.
Обновите браузер. Вы увидите ту же страницу сведений.
Подсказка
Существует некоторая задержка для этих действий. Возможно, потребуется снова обновить страницу.
Найдите другое веб-приложение и остановите его.
Обновите браузер. На этот раз вы увидите сообщение об ошибке.
Создание набора правил
Создайте набор правил для настройки обработки HTTP-запросов на границе. Правила доставки, добавленные в набор правил, обеспечивают более контроль над поведением веб-приложения. Запустите az afd rule-set create , чтобы создать набор правил в профиле Azure Front Door.
az afd rule-set create \
--profile-name contosoafd \
--resource-group myRGFDCentral \
--rule-set-name contosorules
Создайте правило доставки и добавьте его в набор правил.
Создайте новое правило доставки в наборе правил. Запустите az afd rule create , чтобы создать правило доставки в наборе правил. В этом примере мы создадим правило для перенаправления с HTTP на HTTPS.
az afd rule create \
--resource-group myRGFDCentral \
--rule-set-name contosorules \
--profile-name contosoafd \
--order 1 \
--match-variable RequestScheme \
--operator Equal \
--match-values HTTP \
--rule-name "redirect" \
--action-name "UrlRedirect" \
--redirect-protocol Https \
--redirect-type Moved
Добавление действия или условия в правило доставки
Возможно, вам потребуется дополнительно настроить новое правило доставки. После создания можно добавить действия или условия. Используйте az afd rule action add или az afd rule condition add, чтобы обновить ваше правило.
Добавление действия
az afd rule action add \
--resource-group myRGFDCentral \
--rule-set-name contosorules \
--profile-name contosoafd \
--rule-name redirect \
--action-name "CacheExpiration" \
--cache-behavior BypassCache
Добавить условие
az afd rule condition add \
--resource-group myRGFDCentral \
--rule-set-name contosorules \
--profile-name contosoafd \
--rule-name redirect \
--match-variable RemoteAddress \
--operator GeoMatch \
--match-values "TH"
Очистите ресурсы
Если вам не нужны ресурсы для Front Door, удалите обе группы ресурсов. Удаление групп ресурсов также удаляет Front Door и все связанные с ней ресурсы.
Выполните az group delete:
az group delete \
--name myRGFDCentral
az group delete \
--name myRGFDEast