Avvio rapido: Creare e modificare un circuito ExpressRoute usando Azure PowerShell
Questo argomento di avvio rapido illustra come creare un circuito ExpressRoute con tre diversi tipi di resilienza: resilienza massima, resilienza elevata e resilienza standard tramite Azure PowerShell. Si apprenderà come controllare lo stato, aggiornare, eliminare o effettuare il deprovisioning di un circuito usando i cmdlet di PowerShell.
Prerequisiti
- Prima di iniziare la configurazione, verificare i prerequisiti e i flussi di lavoro.
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Installazione di Azure PowerShell in locale o Azure Cloud Shell.
Azure Cloud Shell
Azure Cloud Shell è un ambiente di shell interattivo ospitato in Azure e usato tramite il browser. È possibile usare Bash o PowerShell con Cloud Shell per usare i servizi di Azure. È possibile usare i comandi preinstallati di Cloud Shell per eseguire il codice contenuto in questo articolo senza dover installare strumenti nell'ambiente locale.
Per avviare Azure Cloud Shell:
Opzione | Esempio/Collegamento |
---|---|
Selezionare Prova nell'angolo superiore destro di un blocco di codice o di comando. Quando si seleziona Prova, il codice o il comando non viene copiato automaticamente in Cloud Shell. | |
Passare a https://shell.azure.com o selezionare il pulsante Avvia Cloud Shell per aprire Cloud Shell nel browser. | |
Selezionare il pulsante Cloud Shell nella barra dei menu nell'angolo in alto a destra del portale di Azure. |
Per usare Azure Cloud Shell:
Avviare Cloud Shell.
Selezionare il pulsante Copia in un blocco di codice (o in un blocco di comando) per copiare il codice o il comando.
Incollare il codice o il comando nella sessione di Cloud Shell selezionando CTRL+MAIUSC+V in Windows e Linux o selezionando CMD+MAIUSC+V in macOS.
Selezionare INVIO per eseguire il codice o il comando.
Creare un circuito ExpressRoute ed eseguirne il provisioning
Accedere al proprio account Azure e selezionare la sottoscrizione
Se si usa Azure Cloud Shell, l'accesso all'account di Azure viene eseguito automaticamente quando si fa clic su 'Prova'. Per accedere in locale, aprire la console di PowerShell con privilegi elevati ed eseguire il cmdlet per connettersi.
Connect-AzAccount
Se si dispone di più sottoscrizioni, ottenere un elenco delle sottoscrizioni di Azure.
Get-AzSubscription
Specificare la sottoscrizione da usare.
Select-AzSubscription -SubscriptionName "Name of subscription"
Ottenere l'elenco dei provider, delle località e delle larghezze di banda supportate
Prima di creare un circuito ExpressRoute, è necessario avere l'elenco delle località, delle opzioni di larghezza di banda e dei provider di connettività supportati.
Il cmdlet di PowerShell Get-AzExpressRouteServiceProvider restituisce queste informazioni, che si usano nei passaggi successivi:
Get-AzExpressRouteServiceProvider
Verificare se sia presente anche il proprio provider di connettività. Prendere nota delle informazioni seguenti, perché saranno necessarie al momento della creazione di un circuito:
- Nome
- PeeringLocations
- BandwidthsOffered
È ora possibile creare un circuito ExpressRoute.
Recuperare l'elenco delle posizioni resilienti
Se si sta creando un circuito ExpressRoute con tipo di resilienza Resilienza massima, è necessario conoscere l'elenco delle posizioni resilienti. Ecco i passaggi per recuperare queste informazioni:
Clonare lo script
# Clone the setup script from GitHub.
git clone https://github.com/Azure-Samples/azure-docs-powershell-samples/
# Change to the directory where the script is located.
CD azure-docs-powershell-samples/expressroute/
Eseguire lo script dei percorsi resilienti
Eseguire lo script Get-AzExpressRouteResilientLocations.ps1 per recuperare l'elenco delle posizioni resilienti. L'esempio seguente illustra come ottenere le posizioni resilienti per una sottoscrizione specifica ordinata in base alla distanza da Silicon Valley:
$SubscriptionId = Get-AzureSubscription -SubscriptionName "<SubscriptionName>"
highAvailabilitySetup/Get-AzExpressRouteResilientLocations.ps1 -SubscriptionId $SubscriptionId -RelativeLocation "silicon valley"
Se non si specifica il percorso, si ottiene un elenco di tutte le posizioni resilienti.
Creare un circuito ExpressRoute
Se non si ha già un gruppo di risorse, è necessario crearne uno prima di creare il circuito ExpressRoute. A tale scopo, eseguire il cmdlet New-AzResourceGroup:
$resourceGroupName = (New-AzResourceGroup -Name "ExpressRouteResourceGroup" -Location "West US").ResourceGroupName
Se si dispone già di un gruppo di risorse, è possibile usare Get-AzResourceGroup per ottenere il nome del gruppo di risorse in una variabile:
$resourceGroupName = (Get-AzResourceGroup -Name "<ResourceGroupName>").ResourceGroupName
Resilienza massima (scelta consigliata) fornisce il massimo livello di resilienza per la connessione ExpressRoute. Fornisce due circuiti ExpressRoute con ridondanza locale in due diverse posizioni perimetrali di ExpressRoute.
L'esempio seguente illustra come creare due circuiti ExpressRoute tramite Equinix con ridondanza locale a Silicon Valley e Washington DC. Se si usano provider e impostazioni differenti, sostituire tali informazioni al momento della richiesta.
Nota
Questo esempio usa lo script New-AzHighAvailabilityExpressRouteCircuits.ps1. È necessario clonare lo script da GitHub per creare i circuiti. Per altre informazioni, vedere Clonare lo script.
$SubscriptionId = Get-AzureSubscription -SubscriptionName "<SubscriptionName>"
highAvailabilitySetup/New-AzHighAvailabilityExpressRouteCircuits.ps1 -SubscriptionId $SubscriptionId -ResourceGroupName $resourceGroupName -Location "westus" -Name1 $circuit1Name -Name2 $circuit2Name -SkuFamily1 "MeteredData" -SkuFamily2 "MeteredData" -SkuTier1 "Standard" -SkuTier2 "Standard" -ServiceProviderName1 "Equinix" -ServiceProviderName2 "Equinix" -PeeringLocation1 "Silicon Valley" -PeeringLocation2 "Washington DC" -BandwidthInMbps 1000
Nota
La resilienza massima offre la massima protezione contro le interruzioni e gli errori di connettività in una posizione ExpressRoute. Questa opzione è fortemente consigliata per tutti i carichi di lavoro critici e di produzione.
Verificare di aver specificato il livello e la famiglia SKU corretti:
- Il livello SKU determina se un circuito ExpressRoute è Local, Standard o Premium. È possibile specificare Local, *Standard o Premium.
- La famiglia SKU determina il tipo di fatturazione. Specificare MeteredData per un piano dati a consumo e UnlimitedData per un piano dati senza limiti. È possibile cambiare il tipo di fatturazione da MeteredData a UnlimitedData, ma non da UnlimitedData a MeteredData. Un circuito Local è sempre di tipo UnlimitedData.
Importante
Il circuito ExpressRoute viene addebitato dal momento in cui viene emessa una chiave di servizio. Verificare che l'operazione venga eseguita quando il provider di connettività è pronto a effettuare il provisioning del circuito.
La risposta contiene la chiave di servizio. È possibile ottenere descrizioni dettagliate di tutti i parametri eseguendo il comando seguente:
get-help New-AzExpressRouteCircuit -detailed
Elencare tutti i circuiti ExpressRoute
Per ottenere un elenco di tutti i circuiti ExpressRoute creati, eseguire il comando Get-AzExpressRouteCircuit:
Get-AzExpressRouteCircuit
La risposta sarà simile all'esempio di seguito:
Name : ExpressRouteARMCircuit
ResourceGroupName : ExpressRouteResourceGroup
Location : westus
Id : /subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit
Etag : W/"################################"
ProvisioningState : Succeeded
Sku : {
"Name": "Standard_MeteredData",
"Tier": "Standard",
"Family": "MeteredData"
}
CircuitProvisioningState : Enabled
ServiceProviderProvisioningState : NotProvisioned
ServiceProviderNotes :
ServiceProviderProperties : {
"ServiceProviderName": "Equinix",
"PeeringLocation": "Silicon Valley",
"BandwidthInMbps": 200
}
ServiceKey : **************************************
Peerings : []
È possibile recuperare queste informazioni in qualsiasi momento usando il cmdlet Get-AzExpressRouteCircuit
. Se si effettua la chiamata senza parametri, verranno elencati tutti i circuiti. La chiave di servizio è elencata nel campo ServiceKey :
Get-AzExpressRouteCircuit
La risposta sarà simile all'esempio di seguito:
Name : ExpressRouteARMCircuit
ResourceGroupName : ExpressRouteResourceGroup
Location : westus
Id : /subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit
Etag : W/"################################"
ProvisioningState : Succeeded
Sku : {
"Name": "Standard_MeteredData",
"Tier": "Standard",
"Family": "MeteredData"
}
CircuitProvisioningState : Enabled
ServiceProviderProvisioningState : NotProvisioned
ServiceProviderNotes :
ServiceProviderProperties : {
"ServiceProviderName": "Equinix",
"PeeringLocation": "Silicon Valley",
"BandwidthInMbps": 200
}
ServiceKey : **************************************
Peerings : []
Inviare la chiave di servizio al provider di connettività per il provisioning
ServiceProviderProvisioningState fornisce informazioni sullo stato corrente del provisioning sul lato provider del servizio. CircuitProvisioningState fornisce lo stato sul lato Microsoft. Per altre informazioni sullo stato di provisioning dei circuiti, vedere l'articolo Flussi di lavoro .
Quando si crea un nuovo circuito ExpressRoute, il circuito ha lo stato seguente:
ServiceProviderProvisioningState : NotProvisioned
CircuitProvisioningState : Enabled
Il circuito passa allo stato seguente quando è in corso l'abilitazione da parte del provider di connettività:
ServiceProviderProvisioningState : Provisioning
CircuitProvisioningState : Enabled
Per poterlo usare, il circuito ExpressRoute deve avere lo stato seguente:
ServiceProviderProvisioningState : Provisioned
CircuitProvisioningState : Enabled
Controllare periodicamente lo stato e la condizione della chiave del circuito
Il controllo dello stato e della condizione della chiave del servizio consente di sapere quando il provider ha effettuato il provisioning del circuito. Dopo aver configurato il circuito, ServiceProviderProvisioningState viene visualizzato come Provisioned, come illustrato nell'esempio seguente:
Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
La risposta sarà simile all'esempio di seguito:
Name : ExpressRouteARMCircuit
ResourceGroupName : ExpressRouteResourceGroup
Location : westus
Id : /subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit
Etag : W/"################################"
ProvisioningState : Succeeded
Sku : {
"Name": "Standard_MeteredData",
"Tier": "Standard",
"Family": "MeteredData"
}
CircuitProvisioningState : Enabled
ServiceProviderProvisioningState : Provisioned
ServiceProviderNotes :
ServiceProviderProperties : {
"ServiceProviderName": "Equinix",
"PeeringLocation": "Silicon Valley",
"BandwidthInMbps": 200
}
ServiceKey : **************************************
Peerings : []
Creare la configurazione di routing
Per istruzioni dettagliate, vedere l'articolo relativo alla configurazione del routing per un circuito ExpressRoute per creare e modificare i peering del circuito.
Importante
Queste istruzioni si applicano solo ai circuiti creati con provider di servizi che offrono servizi di connettività di livello 2. Se si usa un provider di servizi che offre servizi gestiti di livello 3 (di solito una VPN IP, come MPLS), il provider di connettività configura e gestisce il routing per conto dell'utente.
Collegare una rete virtuale a un circuito ExpressRoute
Collegare quindi una rete virtuale al circuito ExpressRoute. Fare riferimento all'articolo Collegare una rete virtuale a un circuito ExpressRoute quando si usa il modello di distribuzione di Resource Manager.
Ottenere lo stato di un circuito ExpressRoute
È possibile recuperare queste informazioni in qualsiasi momento usando il cmdlet Get-AzExpressRouteCircuit. Se si effettua la chiamata senza parametri, verranno elencati tutti i circuiti.
Get-AzExpressRouteCircuit
La risposta restituita è simile all'esempio seguente:
Name : ExpressRouteARMCircuit
ResourceGroupName : ExpressRouteResourceGroup
Location : westus
Id : /subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit
Etag : W/"################################"
ProvisioningState : Succeeded
Sku : {
"Name": "Standard_MeteredData",
"Tier": "Standard",
"Family": "MeteredData"
}
CircuitProvisioningState : Enabled
ServiceProviderProvisioningState : Provisioned
ServiceProviderNotes :
ServiceProviderProperties : {
"ServiceProviderName": "Equinix",
"PeeringLocation": "Silicon Valley",
"BandwidthInMbps": 200
}
ServiceKey : **************************************
Peerings : []
È possibile ottenere informazioni su un circuito ExpressRoute specifico passando il nome del gruppo di risorse e il nome del circuito come parametri alla chiamata:
Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
La risposta sarà simile all'esempio di seguito:
Name : ExpressRouteARMCircuit
ResourceGroupName : ExpressRouteResourceGroup
Location : westus
Id : /subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit
Etag : W/"################################"
ProvisioningState : Succeeded
Sku : {
"Name": "Standard_MeteredData",
"Tier": "Standard",
"Family": "MeteredData"
}
CircuitProvisioningState : Enabled
ServiceProviderProvisioningState : Provisioned
ServiceProviderNotes :
ServiceProviderProperties : {
"ServiceProviderName": "Equinix",
"PeeringLocation": "Silicon Valley",
"BandwidthInMbps": 200
}
ServiceKey : **************************************
Peerings : []
È possibile ottenere descrizioni dettagliate di tutti i parametri eseguendo il comando seguente:
get-help Get-AzExpressRouteCircuit -detailed
Modifica di un circuito ExpressRoute
È possibile modificare determinate proprietà di un circuito ExpressRoute senza conseguenze per la connettività.
È possibile eseguire le attività seguenti senza tempi di inattività:
- Abilitare o disabilitare un componente aggiuntivo ExpressRoute Premium per il circuito ExpressRoute.
- Aumentare la larghezza di banda del circuito ExpressRoute, a condizione che nella porta sia disponibile capacità. Il downgrade della larghezza di banda di un circuito non è supportato.
- Modificare il piano di misurazione da Dati a consumo a Dati senza limiti. Non è possibile cambiare il piano di misurazione da Dati senza limiti a Dati a consumo.
- È possibile abilitare e disabilitare l'opzione Consenti operazioni classiche.
Per altre informazioni su limiti e limitazioni, vedere Domande frequenti su ExpressRoute.
Per abilitare il componente aggiuntivo ExpressRoute Premium
È possibile abilitare il componente aggiuntivo ExpressRoute Premium per il circuito esistente usando il frammento di PowerShell seguente:
$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
$ckt.Sku.Tier = "Premium"
$ckt.sku.Name = "Premium_MeteredData"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
Le funzionalità del componente aggiuntivo ExpressRoute Premium sono così abilitate nel circuito. Iniziamo la fatturazione per la capacità del componente aggiuntivo Premium non appena il comando sarà stato eseguito correttamente.
Per disabilitare il componente aggiuntivo ExpressRoute Premium
Importante
Questa operazione può avere esito negativo se si usano più risorse di quelle consentite per il circuito standard.
Tenere presente quanto segue:
- Prima di effettuare il downgrade da Premium a Standard, è necessario assicurarsi che il numero di reti virtuali collegate al circuito sia minore di 10. In caso contrario, la richiesta di aggiornamento avrà esito negativo e verranno fatturate le tariffe Premium.
- È necessario prima scollegare tutte le reti virtuali in altre aree geopolitiche. Se non si rimuove il collegamento, la richiesta di aggiornamento ha esito negativo e continuiamo a fatturare le tariffe premium.
- La tabella di route deve includere meno di 4.000 route per il peering privato. Se le dimensioni della tabella di route sono maggiori di 4.000 route, la sessione BGP viene interrotta. La sessione BGP non viene ristabilita finché il numero di prefissi annunciati non è inferiore a 4.000.
È possibile disabilitare il componente aggiuntivo ExpressRoute Premium per il circuito esistente usando il cmdlet di PowerShell seguente:
$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
$ckt.Sku.Tier = "Standard"
$ckt.sku.Name = "Standard_MeteredData"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
Per aggiornare la larghezza di banda del circuito ExpressRoute
Per le opzioni relative alla larghezza di banda supportate per il provider, vedere Domande frequenti su ExpressRoute. È possibile scegliere qualsiasi dimensione maggiore della dimensione del circuito esistente.
Importante
Se la capacità sulla porta esistente non è sufficiente, potrebbe essere necessario ricreare il circuito ExpressRoute. Il circuito non può essere aggiornato se in tale posizione non è disponibile capacità aggiuntiva.
Non è possibile ridurre la larghezza di banda di un circuito ExpressRoute senza interruzioni. Il downgrade della larghezza di banda richiede il deprovisioning del circuito ExpressRoute e quindi il provisioning di un nuovo circuito ExpressRoute.
Una volta stabilite le dimensioni necessarie, usare il comando seguente per ridimensionare il circuito:
$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
$ckt.ServiceProviderProperties.BandwidthInMbps = 1000
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
Il circuito viene aggiornato sul lato Microsoft. Sarà quindi necessario contattare il provider di connettività perché aggiorni le configurazioni corrispondenti in base a questa modifica. In seguito alla notifica, verrà avviata la fatturazione in base all'opzione relativa alla larghezza di banda aggiornata.
Per passare lo SKU dal piano a consumo al piano senza limiti
È possibile modificare lo SKU di un circuito ExpressRoute usando il frammento di PowerShell seguente:
$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
$ckt.Sku.Family = "UnlimitedData"
$ckt.sku.Name = "Premium_UnlimitedData"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
Per controllare l'accesso all'ambiente classico e all'ambiente Resource Manager
Vedere le istruzioni contenute in Spostare i circuiti ExpressRoute dal modello di distribuzione classica a quello Resource Manager.
Deprovisioning di un circuito ExpressRoute
Tenere presente quanto segue:
- È necessario scollegare tutte le reti virtuali dal circuito ExpressRoute. Se l'operazione non riesce, controllare se sono presenti reti virtuali collegate al circuito.
- Se lo stato di provisioning del provider del servizio del circuito ExpressRoute è Provisioning in corso o Provisioning eseguito, è necessario collaborare con il provider di servizi per eseguire il deprovisioning del circuito sul lato del provider. Le risorse continuano a essere riservate e la fatturazione continuerà a essere applicata finché il provider di servizi non avrà completato il deprovisioning del circuito e inviato una notifica a Microsoft.
- Se il provider di servizi ha eseguito il deprovisioning del circuito, cioè lo stato di provisioning del provider di servizi viene impostato su Non sottoposto a provisioning, è possibile eliminare il circuito. Si interrompe la fatturazione per il circuito.
Pulire le risorse
È possibile eliminare un circuito ExpressRoute eseguendo questo comando:
Remove-AzExpressRouteCircuit -ResourceGroupName "ExpressRouteResourceGroup" -Name "ExpressRouteARMCircuit"
Passaggi successivi
Dopo aver creato il circuito e averne effettuato il provisioning con il provider, continuare con il passaggio successivo per configurare il peering: