Создание или изменение прямого пиринга с помощью PowerShell
В этой статье рассматривается, как создать прямой пиринг Microsoft, используя командлеты PowerShell и модель развертывания Azure Resource Manager. Также в статье будет показано, как проверить состояние ресурса, обновить его или удалить и отозвать.
По желанию все инструкции из этого руководства можно также выполнить с помощью портала Azure.
Подготовка к работе
- Изучите предварительные требования и пошаговое руководство по прямому пирингу.
- Если у вас уже есть подключения прямого пиринга Майкрософт, которые не преобразованы в ресурсы Azure, см. статью Преобразование устаревшего прямого пиринга в ресурс Azure с помощью PowerShell.
Работа в Azure PowerShell
Для запуска командлетов можно использовать бесплатную интерактивную оболочку Azure Cloud Shell. Она включает предварительно установленные общие инструменты Azure и настроена для использования с вашей учетной записью. Выберите Копировать, чтобы скопировать код, и вставьте его в Cloud Shell. Затем выберите ВВОД для выполнения кода. Cloud Shell можно запустить несколькими способами:
Способ запуска | Снимок экрана |
---|---|
Откройте Cloud Shell в браузере. | |
Нажмите кнопку меню Cloud Shell на панели инструментов в правом верхнем углу окна портала Azure. | |
Если вы не хотите использовать Azure Cloud Shell, можно установить PowerShell локально. Чтобы установить и использовать PowerShell локально, обязательно установите последнюю версию командлетов PowerShell для Azure Resource Manager. Командлеты PowerShell часто обновляются. Как правило, необходимо обновить командлеты PowerShell, чтобы получить новые функциональные возможности. В противном случае могут возникнуть проблемы.
Чтобы узнать, какая версия PowerShell выполняется локально, используйте командлет 'Get-Module -ListAvailable Az'. Если необходимо выполнить обновление, см. статью об установке модуля Azure PowerShell. Дополнительные сведения см. в разделе Установка и настройка Azure PowerShell.
Если используется PowerShell для macOS, выполните действия, описанные в разделе Установка PowerShell для macOS.
Создание прямого пиринга и его подготовка к работе
Войдите в учетную запись Azure и выберите подписку.
Перед настройкой установите и импортируйте необходимые модули. Для установки модулей в PowerShell требуются права администратора.
Установите и импортируйте модуль Az.
Install-Module Az -AllowClobber Import-Module Az
Установите и импортируйте модуль Az.Peering.
Install-Module -Name Az.Peering -AllowClobber Import-Module Az.Peering
Проверьте правильность импорта модулей с помощью следующей команды:
Get-Module
Войдите в учетную запись Azure с помощью следующей команды:
Connect-AzAccount
Проверьте подписки для учетной записи и выберите подписку, в которой вы хотите создать пиринг.
Get-AzSubscription Select-AzSubscription -SubscriptionId "subscription-id"
Если у вас еще нет группы ресурсов, необходимо создать ее перед созданием пиринга. с помощью следующей команды:
New-AzResourceGroup -Name "PeeringResourceGroup" -Location "Central US"
Внимание
Если вы еще не установили связь с ASN и подпиской, выполните действия, описанные в разделе Связывание однорангового ASN. Это действие требуется для запроса пиринга.
Примечание.
Расположение группы ресурсов не зависит от расположения, в котором вы решили настроить пиринг.
Список поддерживаемых расположений для прямого пиринга
Командлет Get-AzPeeringLocation в PowerShell возвращает список расположений пиринга с обязательным параметром Kind
, который вы будете использовать в следующих шагах.
Get-AzPeeringLocation -Kind Direct
Расположения для прямого пиринга содержат следующие поля:
- PeeringLocation
- Страна/регион
- PeeringDBFacilityId
- PeeringDBFacilityLink
- BandwidthOffers
Убедитесь, что вы зарегистрированы в нужном средстве пиринга, перейдя на сайт PeeringDB.
В этом примере показано, как использовать Сиэтл в качестве расположения пиринга для создании прямого пиринга.
$peeringLocations = Get-AzPeeringLocation -Kind Direct
$peeringLocation = $peeringLocations | where {$_.PeeringLocation -contains "Seattle"}
$peeringLocation
PeeringLocation : Seattle
Address : 2001 Sixth Avenue
Country : US
PeeringDBFacilityId : 71
PeeringDBFacilityLink : https://www.peeringdb.com/fac/71
BandwidthOffers : {10Gbps, 100Gbps}
Создание прямого пиринга
В следующем примере показано, как создать прямой пиринг по каналу 10 Гбит/с в Сиэтле (США).
С помощью командлета PowerShell New-AzPeeringDirectConnectionObject создайте объекты DirectConnection, которые будут использоваться в новом запросе пиринга.
В этом примере показано, как создать объект DirectConnection.
$connection1 = New-AzPeeringDirectConnectionObject `
-PeeringDBFacilityId $peeringLocation[0].PeeringDBFacilityId `
-SessionPrefixV4 10.21.31.0/31 `
-SessionPrefixV6 fe01::3e:0/127 `
-MaxPrefixesAdvertisedIPv4 1000 `
-MaxPrefixesAdvertisedIPv6 100 `
-BandwidthInMbps 10000
Примечание.
Значение для $peeringLocation[] в предыдущем примере должно соответствовать выбранному вами расположению пиринга.
Создайте другое подключение на случай, если требуется обеспечить избыточность в данном пиринговом расположении.
$connection2 = New-AzPeeringDirectConnectionObject `
-PeeringDBFacilityId $peeringLocation[0].PeeringDBFacilityId `
-SessionPrefixV4 10.21.33.0/31 `
-SessionPrefixV6 fe01::3f:0/127 `
-MaxPrefixesAdvertisedIPv4 1000 `
-MaxPrefixesAdvertisedIPv6 100 `
-BandwidthInMbps 10000
С помощью командлета PowerShell New-AzPeering создайте прямой пиринг. Для выполнения этой команды требуется идентификатор ресурса ASN, который можно получить приведенным здесь образом.
$asn = Get-AzPeerAsn
New-AzPeering `
-Name "SeattleDirectPeering" `
-ResourceGroupName "PeeringResourceGroup" `
-PeeringLocation $peeringLocation[0].PeeringLocation `
-PeerAsnResourceId $asn.Id `
-DirectConnection $connection1 [, $connection2]
В этом примере показан ответ при успешной обработке запроса.
Name : SeattleDirectPeering
Sku.Name : Basic_Direct_Free
Kind : Direct
Connections : 71
PeerAsn.Id : /subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns/SeattleDirectPeering
UseForPeeringService : False
PeeringLocation : Seattle
ProvisioningState : Succeeded
Location : centralus
Id : /subscriptions/{subscriptionId}/resourceGroups/PeeringResourceGroup/providers/Microsoft.Peering/peerings/SeattleDirectPeering
Type : Microsoft.Peering/peerings
Tags : {}
Обратите внимание, что вместо {subscriptionId} в выходных данных будет отображен фактический идентификатор подписки.
Проверка прямого пиринга
Чтобы получить список пиринговых ресурсов, выполните команду Get-AzPeering.
$directPeering = Get-AzPeering -ResourceGroupName "PeeringResourceGroup" -Name "SeattleDirectPeering"
В следующем примере показан ответ, отображаемый при успешном завершении комплексной подготовки.
Name : SeattleDirectPeering
Sku.Name : Basic_Direct_Free
Kind : Direct
Connections : {71}
PeerAsn.Id : /subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns/SeattleDirectPeering
UseForPeeringService : False
PeeringLocation : Seattle
ProvisioningState : Succeeded
Location : centralus
Id : /subscriptions/{subscriptionId}/resourceGroups/PeeringResourceGroup/providers/Microsoft.Peering/peerings/SeattleDirectPeering
Type : Microsoft.Peering/peerings
Tags : {}
Изменение прямого пиринга
В этом разделе описывается выполнение следующих операций изменения для прямого пиринга:
- добавление подключений с прямым пирингом;
- удаление подключений с прямым пирингом;
- обновление активных соединений или понижение их пропускной способности;
- добавление сеансов IPv4 или IPv6 в активных подключениях;
- удаление сеансов IPv4 или IPv6 в активных подключениях.
Добавление подключений с прямым пирингом
В этом примере описывается добавление подключений к существующему прямому пирингу.
$directPeering = Get-AzPeering -Name "SeattleDirectPeering" -ResourceGroupName "PeeringResourceGroup"
$connection = New-AzPeeringDirectConnection `
-PeeringDBFacilityId $peeringLocation.PeeringDBFacilityId `
-SessionPrefixV4 "10.22.31.0/31" `
-SessionPrefixV6 "fe02::3e:0/127" `
-MaxPrefixesAdvertisedIPv4 1000 `
-MaxPrefixesAdvertisedIPv6 100 `
-BandwidthInMbps 10000
$directPeering.Connections.Add($connection)
$directPeering | Update-AzPeering
Удаление подключений с прямым пирингом
В настоящее время удаление подключения с помощью PowerShell не поддерживается. Обратитесь в Службу пиринга Microsoft Azure за дополнительной информацией.
Обновление активных соединений или понижение их пропускной способности
В этом примере описывается добавление канала на 10 Гбит/с для существующего прямого подключения.
$directPeering = Get-AzPeering -Name "SeattleDirectPeering" -ResourceGroupName "PeeringResourceGroup"
$directPeering.Connections[0].BandwidthInMbps = 20000
$directPeering | Update-AzPeering
Добавление сеансов IPv4 или IPv6 в активных подключениях
В этом примере описывается добавление сеанса IPv6 в существующее прямое подключение только с сеансом IPv4.
$directPeering = Get-AzPeering -Name "SeattleDirectPeering" -ResourceGroupName "PeeringResourceGroup"
$directPeering.Connections[0].BGPSession.SessionPrefixv6 = "fe01::3e:0/127"
$directPeering | Update-AzPeering
Удаление сеансов IPv4 или IPv6 в активных подключениях
Удаление сеансов IPv4 или IPv6 из существующего подключения с помощью PowerShell в настоящее время не поддерживается. Обратитесь в Службу пиринга Microsoft Azure за дополнительной информацией.
Отзыв прямого пиринга
В настоящее время отмена подготовки не поддерживается с помощью портал Azure или PowerShell. Чтобы отменить подготовку, обратитесь в службу пиринга Майкрософт.
Дополнительные ресурсы
Подробное описание всех параметров можно получить, выполнив следующую команду.
Get-Help Get-AzPeering -detailed