Compartir por


Inicio rápido: Creación y modificación de un circuito ExpressRoute mediante Azure PowerShell

En este inicio rápido se muestra cómo crear un circuito ExpressRoute en tres tipos de resistencia diferentes: máxima resistencia, alta resistencia y resistencia estándar mediante Azure PowerShell. Obtenga información sobre cómo comprobar el estado, la actualización, la eliminación o el desaprovisionamiento de un circuito mediante cmdlets de PowerShell.

Diagrama del entorno de implementación del circuito ExpressRoute con el uso de Azure PowerShell.

Prerrequisitos

Azure Cloud Shell

En Azure se hospeda Azure Cloud Shell, un entorno de shell interactivo que puede utilizar mediante el explorador. Puede usar Bash o PowerShell con Cloud Shell para trabajar con los servicios de Azure. Puede usar los comandos preinstalados de Cloud Shell para ejecutar el código de este artículo sin tener que instalar nada en su entorno local.

Para iniciar Azure Cloud Shell:

Opción Ejemplo o vínculo
Seleccione Pruébelo en la esquina superior derecha de un bloque de código o de comandos. Solo con seleccionar Pruébelo no se copia automáticamente el código o comando en Cloud Shell. Captura de pantalla que muestra un ejemplo de la opción Pruébelo para Azure Cloud Shell.
Vaya a https://shell.azure.com o seleccione el botón Iniciar Cloud Shell para abrir Cloud Shell en el explorador. Botón para iniciar Azure Cloud Shell.
Seleccione el botón Cloud Shell en la barra de menús de la esquina superior derecha de Azure Portal. Captura de pantalla que muestra el botón de Cloud Shell en Azure Portal

Para usar Azure Cloud Shell:

  1. Inicie Cloud Shell.

  2. Seleccione el botón Copiar en un bloque de código (o bloque de comandos) para copiar el código o comando.

  3. Pegue el código o comando en la sesión de Cloud Shell. Para ello, seleccione Ctrl+Mayús+V en Windows y Linux, o bien seleccione Cmd+Mayús+V en macOS.

  4. Seleccione Enter para ejecutar el código o comando.

Creación y aprovisionamiento de un circuito ExpressRoute

Iniciar sesión en la cuenta de Azure y seleccione la suscripción

Si está usando Azure Cloud Shell, iniciará sesión automáticamente en su cuenta de Azure después de hacer clic en "Probar". Para iniciar sesión de forma local, abra la consola de PowerShell con privilegios elevados y ejecute el cmdlet para conectarse.

Connect-AzAccount

Si tiene más de una suscripción, obtenga una lista de las suscripciones de Azure.

Get-AzSubscription

Especifique la suscripción que desea usar.

Select-AzSubscription -SubscriptionName "Name of subscription"

Obtención de la lista de proveedores, ubicaciones y anchos de banda admitidos

Para crear un circuito ExpressRoute, necesita la lista de proveedores de conectividad, ubicaciones y opciones de ancho de banda admitidas.

El cmdlet de PowerShell Get-AzExpressRouteServiceProvider devuelve esta información, que se usará en pasos posteriores:

Get-AzExpressRouteServiceProvider

Compruebe si aparece su proveedor de conectividad. Tome nota de la información siguiente, ya que la va a necesitar para crear un circuito:

  • Nombre
  • PeeringLocations
  • BandwidthsOffered

Ahora está listo para crear un circuito ExpressRoute.

Obtener la lista de ubicaciones resistentes

Si va a crear un circuito ExpressRoute con un tipo de resistencia de máximo de resistencia, debe conocer la lista de ubicaciones resistentes. Estos son los pasos para recuperar esta información:

Clonación del 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/

Ejecutar script de ubicaciones resistentes

Ejecute el script Get-AzExpressRouteResilientLocations.ps1 para obtener la lista de ubicaciones resistentes. En el ejemplo siguiente se muestra cómo obtener las ubicaciones resistentes de una suscripción específica ordenadas por distancia desde Silicon Valley:

$SubscriptionId = Get-AzureSubscription -SubscriptionName "<SubscriptionName>"
highAvailabilitySetup/Get-AzExpressRouteResilientLocations.ps1 -SubscriptionId $SubscriptionId -RelativeLocation "silicon valley"

Si no especifica la ubicación, obtendrá una lista de todas las ubicaciones resistentes.

Creación de un circuito ExpressRoute

Si todavía no tiene un grupo de recursos, debe crear uno antes de crear ExpressRoute. Para ello, ejecute el cmdlet New-AzResourceGroup:

$resourceGroupName = (New-AzResourceGroup -Name "ExpressRouteResourceGroup" -Location "West US").ResourceGroupName

Si ya tiene un grupo de recursos, puede usar Get-AzResourceGroup para obtener el nombre del grupo de recursos en una variable:

$resourceGroupName = (Get-AzResourceGroup -Name "<ResourceGroupName>").ResourceGroupName

Máxima resistencia (recomendado) proporciona el mayor nivel de resistencia para la conexión de ExpressRoute. Proporciona dos circuitos de ExpressRoute con redundancia local en dos ubicaciones de perímetro de ExpressRoute diferentes.

En el ejemplo siguiente se muestra cómo crear dos circuitos ExpressRoute a través de Equinix con redundancia local en Silicon Valley y Washington DC. Si usa otro proveedor y otra configuración, reemplace esa información al realizar la solicitud.

Nota:

En este ejemplo se usa el script New-AzHighAvailabilityExpressRouteCircuits.ps1. Debe clonar el script de GitHub para crear los circuitos. Para obtener más información, consulte Clonar el 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

Diagrama de resistencia máxima para una conexión de ExpressRoute.

Nota:

La máxima resistencia proporciona la máxima protección frente a interrupciones en toda la ubicación y errores de conectividad en una ubicación de ExpressRoute. Esta opción se recomienda para todas las cargas de trabajo críticas y de producción.

Asegúrese de que especifica el nivel y la familia correctos de SKU.

  • El nivel de SKU determina si un circuito ExpressRoute es Local, Estándar o Premium. Puede especificar Local, *Estándar o Premium.
  • La familia de SKU determina el tipo de facturación. Puede seleccionar MeteredData para el plan de datos limitado y UnlimitedData para el plan de datos ilimitado. Puede cambiar el tipo de facturación de MeteredData a UnlimitedData, pero no puede cambiar el tipo de UnlimitedData a MeteredData. Un circuito Local siempre es UnlimitedData.

Importante

El circuito ExpressRoute se factura a partir del momento en que se emite una clave de servicio. Asegúrese de realizar esta operación cuando el proveedor de conectividad esté listo para aprovisionar el circuito.

La respuesta contiene la clave del servicio. Puede obtener una descripción detallada de todos los parámetros ejecutando el siguiente comando:

get-help New-AzExpressRouteCircuit -detailed

Lista de todos los circuitos ExpressRoute

Para obtener una lista de todos los circuitos ExpressRoute que haya creado, ejecute el comando Get-AzExpressRouteCircuit:

Get-AzExpressRouteCircuit

La respuesta será similar al siguiente ejemplo:

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                          : []

Esta información se puede recuperar en cualquier momento con el cmdlet Get-AzExpressRouteCircuit . Si se realiza la llamada sin parámetros, se obtendrá una lista de todos los circuitos. La clave de servicio se muestra en el campo ServiceKey:

Get-AzExpressRouteCircuit

La respuesta será similar al siguiente ejemplo:

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                         : []

Envío de la clave de servicio al proveedor de conectividad para el aprovisionamiento

ServiceProviderProvisioningState proporciona información sobre el estado actual del aprovisionamiento en el lado del proveedor de servicios. CircuitProvisioningState indica el estado en el entorno de Microsoft. Para obtener más información sobre los estados de aprovisionamiento del circuito, consulte el artículo Flujos de trabajo.

Cuando se crea un nuevo circuito ExpressRoute, dicho circuito tiene el siguiente estado:

ServiceProviderProvisioningState : NotProvisioned
CircuitProvisioningState         : Enabled

El circuito pasa al estado siguiente cuando el proveedor de conectividad lo habilita para el usuario:

ServiceProviderProvisioningState : Provisioning
CircuitProvisioningState         : Enabled

Para usar el circuito ExpressRoute, debe tener el siguiente estado:

ServiceProviderProvisioningState : Provisioned
CircuitProvisioningState         : Enabled

Comprobación periódica del estado y la condición de la clave del circuito

La comprobación del estado y la condición de la clave de servicio le permiten saber cuándo el proveedor aprovisionó el circuito. Después de configurar el circuito, ServiceProviderProvisioningState aparecerá como Aprovisionado, tal como se muestra en el ejemplo siguiente:

Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"

La respuesta será similar al siguiente ejemplo:

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                         : []

Creación de la configuración de enrutamiento

Consulte Creación y modificación del enrutamiento de un circuito ExpressRoute mediante PowerShell para ver las instrucciones paso a paso.

Importante

Estas instrucciones se aplican solo a los circuitos creados con proveedores de servicios que ofrecen servicios de conectividad de nivel 2. Si usa un proveedor de servicios que ofrece servicios administrados de nivel 3 (normalmente VPN IP, como MPLS), el mismo proveedor de conectividad configura y administra el enrutamiento.

A continuación, vincule una red virtual a su circuito ExpressRoute. Consulte el artículo Vinculación de redes virtuales a circuitos ExpressRoute al trabajar con el modelo de implementación de Resource Manager.

Obtención del estado de un circuito ExpressRoute

Esta información se puede recuperar en cualquier momento con el cmdlet Get-AzExpressRouteCircuit. Si se realiza la llamada sin parámetros, se obtendrá una lista de todos los circuitos.

Get-AzExpressRouteCircuit

La respuesta es similar al siguiente ejemplo:

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                         : []

Se puede obtener información sobre un circuito ExpressRoute específico si se pasa el nombre del grupo de recursos y el nombre del circuito como parámetro a la llamada:

Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"

La respuesta será similar al siguiente ejemplo:

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                         : []

Puede obtener una descripción detallada de todos los parámetros ejecutando el siguiente comando:

get-help Get-AzExpressRouteCircuit -detailed

Modificación de un circuito ExpressRoute

Puede modificar determinadas propiedades de un circuito ExpressRoute sin afectar a la conectividad.

Puede hacer las siguientes tareas sin experimentar tiempo de inactividad:

  • Habilitar o deshabilitar el complemento ExpressRoute Premium en su circuito ExpressRoute.
  • Aumente el ancho de banda del circuito ExpressRoute si el puerto tiene capacidad disponible. No se admite la degradación del ancho de banda de un circuito.
  • Cambio del plan de medición de datos limitados a datos ilimitados. No se admite cambiar el plan de medición de datos ilimitados a datos limitados.
  • Puede habilitar y deshabilitar Allow Classic Operations(Permitir operaciones clásicas).

Para más información sobre los límites y las limitaciones, consulte las preguntas más frecuentes de ExpressRoute.

Para habilitar el complemento ExpressRoute Premium

Puede habilitar el complemento ExpressRoute Premium para el circuito existente mediante el siguiente fragmento de PowerShell:

$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"

$ckt.Sku.Tier = "Premium"
$ckt.sku.Name = "Premium_MeteredData"

Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt

El circuito ahora tiene habilitadas las características del complemento ExpressRoute Premium. La facturación de la capacidad del complemento Premium comienza en cuanto el comando se ejecuta correctamente.

Para deshabilitar el complemento ExpressRoute Premium

Importante

Esta operación puede producir un error si usa recursos que son más grandes de lo que está permitido para el circuito estándar.

Tenga en cuenta la información siguiente:

  • Debe asegurarse de que el número de redes virtuales vinculadas al circuito es inferior a 10 antes de realizar la degradación de Premium a Estándar. Si no lo hace, se producirá un error en la solicitud de actualización y se le facturará con las tarifas de nivel premium.
  • Tiene que desvincular primero todas las redes virtuales en otras regiones geopolíticas. Si no elimina el vínculo, se producirá un error en la solicitud de actualización y se le continuará facturando con las tarifas de nivel Premium.
  • La tabla de enrutamiento tiene que tener menos de 4.000 rutas para el emparejamiento entre pares privados. Si la tabla de rutas tiene más de 4000 rutas, se quita la sesión de BGP. La sesión de BGP no se restablecerá hasta que el número de prefijos anunciados sea inferior a 4000.

Puede deshabilitar el complemento ExpressRoute Premium en el circuito existente mediante el siguiente cmdlet de PowerShell:

$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"

$ckt.Sku.Tier = "Standard"
$ckt.sku.Name = "Standard_MeteredData"

Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt

Para actualizar el ancho de banda del circuito ExpressRoute

Consulte la página P+F de ExpressRoutepara conocer las opciones de ancho de banda compatibles con su proveedor. Puede elegir cualquier tamaño mayor que el tamaño de su circuito existente.

Importante

Si el puerto existente no tiene la capacidad adecuada, tendrá que volver a crear el circuito ExpressRoute. El circuito no se puede actualizar si no hay más capacidad disponible en la ubicación.

No podrá reducir el ancho de banda de un circuito ExpressRoute sin interrupciones. Para degradar un ancho de banda, es necesario desaprovisionar el circuito ExpressRoute y luego volver a aprovisionar un nuevo circuito ExpressRoute.

Cuando haya decidido el tamaño que necesita, use el comando siguiente para cambiar el tamaño del circuito:

$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"

$ckt.ServiceProviderProperties.BandwidthInMbps = 1000

Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt

El circuito se actualiza en el lado de Microsoft. Así pues, debe ponerse en contacto con su proveedor de conectividad para actualizar las configuraciones de su parte para que coincidan con este cambio. Después de realizar esta notificación, se le empezará a facturar por la opción de ancho de banda actualizada.

Para pasar la SKU de limitada a ilimitada

Puede cambiar la SKU de un circuito ExpressRoute mediante el siguiente fragmento de código de PowerShell:

$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"

$ckt.Sku.Family = "UnlimitedData"
$ckt.sku.Name = "Premium_UnlimitedData"

Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt

Para controlar el acceso a los entornos de implementación clásica y del Resource Manager

Revise las instrucciones que se ofrecen en Transición de los circuitos ExpressRoute desde el modelo de implementación clásica al modelo de implementación de Resource Manager.

Desaprovisionamiento de un circuito ExpressRoute

Tenga en cuenta la información siguiente:

  • Todas las redes virtuales deben desvincularse del circuito ExpressRoute. Si se produce un error en esta operación, compruebe si hay alguna red virtual vinculada al circuito.
  • Si el estado de aprovisionamiento del proveedor de servicios del circuito ExpressRoute es Aprovisionando o Aprovisionado, debe colaborar con su proveedor de servicios para que desaprovisionen el circuito. Se le siguen reservando recursos y facturándole por ello hasta que el proveedor de servicios complete el desaprovisionamiento del circuito y nos lo notifique.
  • Si el proveedor de servicios desaprovisionó el circuito, es decir, el estado de aprovisionamiento del proveedor de servicios está establecido en No aprovisionado, se puede eliminar el circuito. Se detiene la facturación del circuito.

Limpieza de recursos

Puede eliminar el circuito ExpressRout con la ejecución del siguiente comando:

Remove-AzExpressRouteCircuit -ResourceGroupName "ExpressRouteResourceGroup" -Name "ExpressRouteARMCircuit"

Pasos siguientes

Después de crear el circuito y aprovisionarlo con el proveedor, continúe en el paso siguiente para configurar el emparejamiento: