Сброс пиринга каналов ExpressRoute с помощью Azure PowerShell
В этой статье рассматривается включение и отключение пиринга для цепи ExpressRoute с помощью PowerShell. Пиринги включаются по умолчанию при их создании. При отключении пиринга сеанс BGP в основном и вторичном подключении канала ExpressRoute отключается. Вы теряете подключение к этому пирингу корпорации Майкрософт. При включении пиринга сеанс BGP в основном и вторичном подключении канала ExpressRoute устанавливается. Подключение к майкрософт повторно подключается к этому пирингу. В цепи ExpressRoute можно индивидуально отключать и включать пиринг Майкрософт и частный пиринг Azure.
Существует два сценария, в которых можно найти полезное для сброса пирингов ExpressRoute.
- Если нужно протестировать проектирование и реализацию аварийного восстановления. Например, существует две цепи ExpressRoute. Можно отключить пиринг в первой цепи и принудительно перевести весь сетевой трафик на вторую цепь.
- Включите обнаружение двунаправленной передачи (BFD) для частного пиринга Azure и пиринга Майкрософт в цепи ExpressRoute. BFD по умолчанию включается в частном пиринга Azure, если вы создали цепь ExpressRoute после 1 августа 2018 года, а для пиринга Майкрософт — после 10 января 2020. Если канал был создан до указанной даты, необходимо сбросить пиринг, чтобы включить BFD.
Работа с Azure PowerShell
В шагах и примерах в этой статье используются модули Az для Azure PowerShell. Чтобы установить модули Az локально, см. статью Установка Azure PowerShell. Чтобы узнать о модуле Az, см. статью Знакомство с новым модулем Az для Azure PowerShell. Командлеты PowerShell часто обновляются. Если вы не используете последнюю версию, применение значений, указанных в инструкциях, может привести к сбою. Чтобы найти установленные в системе версии PowerShell, используйте командлет Get-Module -ListAvailable Az
.
Azure Cloud Shell можно использовать для выполнения большинства командлетов PowerShell и команд CLI. Это позволяет избежать локальной установки Azure PowerShell или CLI. Azure Cloud Shell — это бесплатная интерактивная оболочка, в которой предустановлены и настроены для использования с вашей учетной записью стандартные средства Azure. Для выполнения кода из этой статьи в Azure Cloud Shell откройте сеанс Cloud Shell, скопируйте блок кода с помощью кнопки Копировать и вставьте его в сеанс Cloud Shell, нажав клавиши CTRL+SHIFT+V в Windows и Linux или CMD+SHIFT+V в macOS. Вставленный текст не выполняется автоматически, поэтому нажмите клавишу ВВОД для выполнения кода.
Cloud Shell можно запустить разными способами:
Параметр | Установить связь |
---|---|
Нажмите кнопку Попробовать в правом верхнем углу блока с кодом. | |
Откройте Cloud Shell в браузере. | |
Нажмите кнопку меню Cloud Shell в правом верхнем углу окна портала Azure. | |
Сброс пиринга
Если модуль PowerShell запущен локально, откройте консоль PowerShell с более высоким уровнем привилегий и подключитесь к своей учетной записи. Для подключения используйте следующий пример кода:
Connect-AzAccount
Если у вас есть несколько подписок Azure, проверьте подписки для этой учетной записи.
Get-AzSubscription
укажите подписку, которую нужно использовать;
Select-AzSubscription -SubscriptionName "Replace_with_your_subscription_name"
Для извлечения цепи ExpressRoute необходимо выполнить следующие команды.
$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
Определите пиринг, который требуется включить или отключить. Пиринг является массивом. В следующем примере Peerings[0] — это частный пиринг Azure, а Peerings[1] — это пиринг корпорации Майкрософт.
Name : ExpressRouteARMCircuit ResourceGroupName : ExpressRouteResourceGroup Location : westus Id : /subscriptions/########-####-####-####-############/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit Etag : W/"cd011bef-dc79-49eb-b4c6-81fb6ea5d178" ProvisioningState : Succeeded Sku : { "Name": "Standard_MeteredData", "Tier": "Standard", "Family": "MeteredData" } CircuitProvisioningState : Enabled ServiceProviderProvisioningState : Provisioned ServiceProviderNotes : ServiceProviderProperties : { "ServiceProviderName": "Coresite", "PeeringLocation": "Los Angeles", "BandwidthInMbps": 50 } ServiceKey : ########-####-####-####-############ Peerings : [ { "Name": "AzurePrivatePeering", "Etag": "W/\"cd011bef-dc79-49eb-b4c6-81fb6ea5d178\"", "Id": "/subscriptions/########-####-####-####-############/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit/peerings/AzurePrivatePeering", "PeeringType": "AzurePrivatePeering", "State": "Enabled", "AzureASN": 12076, "PeerASN": 123, "PrimaryPeerAddressPrefix": "10.0.0.0/30", "SecondaryPeerAddressPrefix": "10.0.0.4/30", "PrimaryAzurePort": "", "SecondaryAzurePort": "", "VlanId": 789, "MicrosoftPeeringConfig": { "AdvertisedPublicPrefixes": [], "AdvertisedCommunities": [], "AdvertisedPublicPrefixesState": "NotConfigured", "CustomerASN": 0, "LegacyMode": 0, "RoutingRegistryName": "NONE" }, "ProvisioningState": "Succeeded", "GatewayManagerEtag": "", "LastModifiedBy": "Customer", "Connections": [] }, { "Name": "MicrosoftPeering", "Etag": "W/\"cd011bef-dc79-49eb-b4c6-81fb6ea5d178\"", "Id": "/subscriptions/########-####-####-####-############/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit/peerings/MicrosoftPeering", "PeeringType": "MicrosoftPeering", "State": "Enabled", "AzureASN": 12076, "PeerASN": 123, "PrimaryPeerAddressPrefix": "3.0.0.0/30", "SecondaryPeerAddressPrefix": "3.0.0.4/30", "PrimaryAzurePort": "", "SecondaryAzurePort": "", "VlanId": 345, "MicrosoftPeeringConfig": { "AdvertisedPublicPrefixes": [ "3.0.0.3/32" ], "AdvertisedCommunities": [], "AdvertisedPublicPrefixesState": "ValidationNeeded", "CustomerASN": 0, "LegacyMode": 0, "RoutingRegistryName": "NONE" }, "ProvisioningState": "Succeeded", "GatewayManagerEtag": "", "LastModifiedBy": "Customer", "Connections": [] } ] Authorizations : [] AllowClassicOperations : False GatewayManagerEtag :
Выполните следующие команды, чтобы изменить состояние пиринга на отключенное.
$ckt.Peerings[0].State = "Disabled" Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
Пиринг должен находиться в отключенном состоянии.
Выполните следующие команды, чтобы изменить состояние пиринга обратно на включенный.
$ckt.Peerings[0].State = "Enabled" Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
Пиринг должен находиться в настроенном состоянии.
Следующие шаги
Дополнительные сведения об устранении проблем с ExpressRoute см. в следующих статьях.