Краткое руководство. Создание Azure Front Door с помощью Azure PowerShell
Из этого краткого руководства вы узнаете, как создать профиль Azure Front Door с помощью Azure PowerShell. Вы используете две веб-приложения в качестве источника и проверяете подключение через имя узла конечной точки Azure Front Door.
Примечание.
Для веб-рабочих нагрузок настоятельно рекомендуется использовать защиту от атак DDoS Azure и брандмауэр веб-приложения для защиты от новых атак DDoS. Другой вариант — использовать Azure Front Door вместе с брандмауэром веб-приложения. Azure Front Door обеспечивает защиту на уровне платформы от атак DDoS на уровне сети. Дополнительные сведения см . в разделе "Базовые показатели безопасности" для служб Azure.
Необходимые компоненты
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Локальная установка Azure PowerShell или Azure Cloud Shell.
Примечание.
Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Чтобы начать работу, см. статью Установка Azure PowerShell. Дополнительные сведения см. в статье Перенос Azure PowerShell с AzureRM на Az.
Azure Cloud Shell
В Azure есть Azure Cloud Shell, интерактивная оболочка среды, с которой можно работать в браузере. Для работы со службами Azure можно использовать Bash или PowerShell с Cloud Shell. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.
Начало работы с Azure Cloud Shell
Вариант | Пример и ссылка |
---|---|
Нажмите кнопку Попробовать в правом верхнем углу блока кода или команд. При нажатии кнопки Попробовать код или команда не копируется в Cloud Shell автоматически. | |
Чтобы открыть Cloud Shell в браузере, перейдите по адресу https://shell.azure.com или нажмите кнопку Запуск Cloud Shell. | |
Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу окна портала Azure. |
Чтобы использовать Azure Cloud Shell, выполните следующие действия:
Запустите Cloud Shell.
Нажмите кнопку Копировать в блоке кода (или блоке команд), чтобы скопировать код или команду.
Вставьте код или команду в окно сеанса Cloud Shell, нажав клавиши CTRL+SHIFT+V в Windows и Linux или CMD+SHIFT+V в macOS.
Нажмите клавишу ВВОД, чтобы запустить код или команду.
Создание или изменение группы ресурсов
Создайте группу ресурсов с помощью командлета New-AzResourceGroup:
New-AzResourceGroup -Name myRGFD -Location centralus
Создание двух экземпляров веб-приложения
Создайте два экземпляра веб-приложения в разных регионах Azure с помощью New-AzWebApp:
# Create first web app in Central US region.
$webapp1 = New-AzWebApp `
-Name "WebAppContoso-01" `
-Location centralus `
-ResourceGroupName myRGFD `
-AppServicePlan myAppServicePlanCentralUS
# Create second web app in East US region.
$webapp2 = New-AzWebApp `
-Name "WebAppContoso-02" `
-Location EastUS `
-ResourceGroupName myRGFD `
-AppServicePlan myAppServicePlanEastUS
Создавать Azure Front Door.
Создание профиля Azure Front Door
Запустите New-AzFrontDoorCdnProfile , чтобы создать профиль Azure Front Door:
$fdprofile = New-AzFrontDoorCdnProfile `
-ResourceGroupName myRGFD `
-Name contosoAFD `
-SkuName Premium_AzureFrontDoor `
-Location Global
Добавление конечной точки
Запустите New-AzFrontDoorCdnEndpoint , чтобы создать конечную точку в профиле:
$FDendpoint = New-AzFrontDoorCdnEndpoint `
-EndpointName contosofrontend `
-ProfileName contosoAFD `
-ResourceGroupName myRGFD `
-Location Global
Создание группы источников
Создайте параметры пробы работоспособности и балансировки нагрузки, а затем создайте группу источников с помощью New-AzFrontDoorCdnOriginGroup:
# Create health probe settings
$HealthProbeSetting = New-AzFrontDoorCdnOriginGroupHealthProbeSettingObject `
-ProbeIntervalInSecond 60 `
-ProbePath "/" `
-ProbeRequestType GET `
-ProbeProtocol Http
# Create load balancing settings
$LoadBalancingSetting = New-AzFrontDoorCdnOriginGroupLoadBalancingSettingObject `
-AdditionalLatencyInMillisecond 50 `
-SampleSize 4 `
-SuccessfulSamplesRequired 3
# Create origin group
$originpool = New-AzFrontDoorCdnOriginGroup `
-OriginGroupName og `
-ProfileName contosoAFD `
-ResourceGroupName myRGFD `
-HealthProbeSetting $HealthProbeSetting `
-LoadBalancingSetting $LoadBalancingSetting
Добавление источников в группу
Добавьте источники веб-приложения в группу источников с помощью New-AzFrontDoorCdnOrigin:
# Add first web app origin to origin group.
$origin1 = New-AzFrontDoorCdnOrigin `
-OriginGroupName og `
-OriginName contoso1 `
-ProfileName contosoAFD `
-ResourceGroupName myRGFD `
-HostName webappcontoso-01.azurewebsites.net `
-OriginHostHeader webappcontoso-01.azurewebsites.net `
-HttpPort 80 `
-HttpsPort 443 `
-Priority 1 `
-Weight 1000
# Add second web app origin to origin group.
$origin2 = New-AzFrontDoorCdnOrigin `
-OriginGroupName og `
-OriginName contoso2 `
-ProfileName contosoAFD `
-ResourceGroupName myRGFD `
-HostName webappcontoso-02.azurewebsites.net `
-OriginHostHeader webappcontoso-02.azurewebsites.net `
-HttpPort 80 `
-HttpsPort 443 `
-Priority 1 `
-Weight 1000
Добавление маршрута
Сопоставите конечную точку с группой источников с помощью New-AzFrontDoorCdnRoute:
$Route = New-AzFrontDoorCdnRoute `
-EndpointName contosofrontend `
-Name defaultroute `
-ProfileName contosoAFD `
-ResourceGroupName myRGFD `
-ForwardingProtocol MatchRequest `
-HttpsRedirect Enabled `
-LinkToDefaultDomain Enabled `
-OriginGroupId $originpool.Id `
-SupportedProtocol Http,Https
Тестирование Azure Front Door
После создания профиля Azure Front Door потребуется несколько минут для развертывания конфигурации глобально. После завершения перейдите к созданному узлу внешнего интерфейса.
Запустите Get-AzFrontDoorCdnEndpoint , чтобы получить имя узла конечной точки Azure Front Door:
$fd = Get-AzFrontDoorCdnEndpoint `
-EndpointName contosofrontend `
-ProfileName contosoafd `
-ResourceGroupName myRGFD
$fd.hostname
Выполните переход в браузере, используя имя узла конечной точки: contosofrontend-<hash>.z01.azurefd.net
. Запрос направляется в веб-приложение с наименьшей задержкой в группе источников.
Чтобы проверить моментальную глобальную отработку отказа:
Откройте браузер и перейдите к имени узла конечной точки:
contosofrontend-<hash>.z01.azurefd.net
Остановите одну из веб-приложения, выполнив команду Stop-AzWebApp:
Stop-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-01"
Обновите свой браузер. Вы увидите ту же самую информационную страницу.
Остановите другое веб-приложение:
Stop-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-02"
Обновите свой браузер. На этот раз вы увидите сообщение об ошибке.
Перезапустите одно из веб-приложений, запустив Start-AzWebApp. Обновите браузер и страницу вернуться к нормальному режиму:
Start-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-01"
Очистка ресурсов
Если ресурсы, созданные с помощью Azure Front Door, больше не нужны, удалите группу ресурсов. Это действие удаляет Azure Front Door и все связанные с ней ресурсы. Запустите Remove-AzResourceGroup:
Remove-AzResourceGroup -Name myRGFD
Следующие шаги
Чтобы узнать, как добавить личный домен в Azure Front Door, перейдите к руководствам по Azure Front Door.