Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze quickstart ziet u hoe u een Arm-sjabloon (Azure Resource Manager) gebruikt om Azure Route Server te implementeren in een nieuw of bestaand virtueel netwerk. Azure Route Server maakt dynamische routering mogelijk tussen uw virtuele netwerk en virtuele netwerkapparaten via BGP-peering, waardoor routeuitwisselingen in uw netwerkinfrastructuur automatisch worden beheerd.
Door deze quickstart te voltooien, hebt u een werkende routeserver geïmplementeerd met de benodigde netwerkinfrastructuur en gereed voor BGP-peeringconfiguratie.
Een Azure Resource Manager-sjabloon is een JSON-bestand (JavaScript Object Notation) dat de infrastructuur en configuratie voor uw project definieert. Voor de sjabloon is declaratieve syntaxis vereist. U beschrijft de beoogde implementatie zonder de reeks programmeeropdrachten te schrijven om de implementatie te maken.
Als uw omgeving voldoet aan de vereisten en u bekend bent met het gebruik van ARM-sjablonen, selecteert u de knop Implementeren in Azure om de sjabloon te openen in Azure Portal.
Vereisten
Voordat u begint, moet u ervoor zorgen dat u over de volgende vereisten beschikt:
- Een Azure-account met een actief abonnement. Gratis een account maken
- Bekendheid met servicelimieten voor Azure Route Server.
De sjabloon controleren
De sjabloon die in deze quickstart wordt gebruikt, komt uit Azure-snelstartsjablonen. Met deze ARM-sjabloon wordt een volledige Route Server-omgeving geïmplementeerd, inclusief de infrastructuur van het virtuele netwerk en de configuratie van BGP-peering.
Met de sjabloon worden de volgende resources gemaakt:
- Azure Route Server in een nieuw of bestaand virtueel netwerk
- Toegewezen subnet met de naam RouteServerSubnet om de routeserver te hosten
- Configuratie van BGP-peering met opgegeven peer-ASN en peer-IP
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.5.6.12127",
"templateHash": "3572840517141664306"
}
},
"parameters": {
"vnetName": {
"type": "string",
"defaultValue": "routeservervnet",
"metadata": {
"description": "Name of new or existing vnet to which Azure Route Server should be deployed."
}
},
"vnetIpPrefix": {
"type": "string",
"defaultValue": "10.1.0.0/16",
"metadata": {
"description": "IP prefix for available addresses in vnet address space."
}
},
"vnetNew_or_Existing": {
"type": "string",
"defaultValue": "New",
"allowedValues": [
"New",
"Existing"
],
"metadata": {
"description": "Specify whether to provision new vnet or deploy to existing vnet."
}
},
"routeServerSubnetIpPrefix": {
"type": "string",
"defaultValue": "10.1.1.0/26",
"metadata": {
"description": "Route Server subnet IP prefix MUST be within vnet IP prefix address space."
}
},
"publicIpNew_or_Existing": {
"type": "string",
"defaultValue": "New",
"allowedValues": [
"New",
"Existing"
],
"metadata": {
"description": "Specify whether to provision new standard public IP or deploy using existing standard public IP."
}
},
"publicIpName": {
"type": "string",
"defaultValue": "routeserverpip",
"metadata": {
"description": "Name of the standard Public IP used for the Route Server"
}
},
"firstRouteServerName": {
"type": "string",
"defaultValue": "routeserver",
"metadata": {
"description": "Name of Route Server."
}
},
"routeServerBgpConnectionName": {
"type": "string",
"defaultValue": "conn1",
"metadata": {
"description": "Name of BGP connection."
}
},
"peerAsn": {
"type": "int",
"defaultValue": 65002,
"metadata": {
"description": "Peer ASN connecting to."
}
},
"peerIp": {
"type": "string",
"defaultValue": "10.0.1.4",
"metadata": {
"description": "Peer IP connecting to."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Azure region for Route Server and virtual network."
}
}
},
"variables": {
"ipconfigName": "ipconfig1",
"routeServerSubnetName": "RouteServerSubnet"
},
"resources": [
{
"condition": "[equals(parameters('vnetNew_or_Existing'), 'New')]",
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2020-05-01",
"name": "[parameters('vnetName')]",
"location": "[parameters('location')]",
"properties": {
"addressSpace": {
"addressPrefixes": [
"[parameters('vnetIpPrefix')]"
]
}
}
},
{
"type": "Microsoft.Network/virtualNetworks/subnets",
"apiVersion": "2020-05-01",
"name": "[format('{0}/{1}', parameters('vnetName'), variables('routeServerSubnetName'))]",
"properties": {
"addressPrefix": "[parameters('routeServerSubnetIpPrefix')]"
},
"dependsOn": [
"[resourceId('Microsoft.Network/virtualNetworks', parameters('vnetName'))]"
]
},
{
"condition": "[equals(parameters('publicIpNew_or_Existing'), 'New')]",
"type": "Microsoft.Network/publicIPAddresses",
"apiVersion": "2020-05-01",
"name": "[parameters('publicIpName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard"
},
"properties": {
"publicIPAllocationMethod": "Static",
"publicIPAddressVersion": "IPv4",
"idleTimeoutInMinutes": 4
}
},
{
"type": "Microsoft.Network/virtualHubs",
"apiVersion": "2020-06-01",
"name": "[parameters('firstRouteServerName')]",
"location": "[parameters('location')]",
"properties": {
"sku": "Standard"
}
},
{
"type": "Microsoft.Network/virtualHubs/ipConfigurations",
"apiVersion": "2020-06-01",
"name": "[format('{0}/{1}', parameters('firstRouteServerName'), variables('ipconfigName'))]",
"properties": {
"subnet": {
"id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), variables('routeServerSubnetName'))]"
},
"publicIPAddress": {
"id": "[resourceId('Microsoft.Network/publicIPAddresses', parameters('publicIpName'))]"
}
},
"dependsOn": [
"[resourceId('Microsoft.Network/virtualHubs', parameters('firstRouteServerName'))]",
"[resourceId('Microsoft.Network/publicIPAddresses', parameters('publicIpName'))]",
"[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), variables('routeServerSubnetName'))]"
]
},
{
"type": "Microsoft.Network/virtualHubs/bgpConnections",
"apiVersion": "2020-06-01",
"name": "[format('{0}/{1}', parameters('firstRouteServerName'), parameters('routeServerBgpConnectionName'))]",
"properties": {
"peerAsn": "[parameters('peerAsn')]",
"peerIp": "[parameters('peerIp')]"
},
"dependsOn": [
"[resourceId('Microsoft.Network/virtualHubs', parameters('firstRouteServerName'))]",
"[resourceId('Microsoft.Network/virtualHubs/ipConfigurations', parameters('firstRouteServerName'), variables('ipconfigName'))]"
]
}
]
}
Sjabloonbronnen
De volgende Azure-resources worden gedefinieerd in de sjabloon:
- Microsoft.Network/virtualNetworks - Virtueel netwerk om de routeserver te hosten
- Microsoft.Network/virtualNetworks/subnetten - Twee subnetten , waaronder het vereiste RouteServerSubnet
- Microsoft.Network/virtualHubs - Route Server implementatieresource
- Microsoft.Network/virtualHubs/ipConfigurations - IP-configuratie voor routeserver
- Microsoft.Network/virtualHubs/bgpConnections - BGP-peeringconfiguratie met Peer ASN en Peer IP
Zie Azure-quickstartsjablonen voor meer sjablonen met betrekking tot Azure-netwerken.
De sjabloon implementeren
U kunt de sjabloon implementeren met behulp van Azure PowerShell via Azure Cloud Shell of uw lokale PowerShell-omgeving.
Selecteer Cloud Shell openen in het volgende codeblok om Azure Cloud Shell te openen en volg de instructies om u aan te melden bij Azure:
$projectName = Read-Host -Prompt "Enter a project name that is used for generating resource names" $location = Read-Host -Prompt "Enter the location (i.e. centralus)" $templateUri = "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.network/route-server/azuredeploy.json" $resourceGroupName = "${projectName}rg" New-AzResourceGroup -Name $resourceGroupName -Location "$location" New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri $templateUri Read-Host -Prompt "Press [ENTER] to continue ..."Wacht totdat u de prompt van de console ziet.
Selecteer Kopiëren in het vorige codeblok om het PowerShell-script te kopiëren.
Klik met de rechtermuisknop op het shell-consoledeelvenster en selecteer Plakken.
Voer de waarden in wanneer u hierom wordt gevraagd:
- Projectnaam: wordt gebruikt voor het genereren van resourcenamen (de naam van de resourcegroep is de projectnaam waaraan rg is toegevoegd)
- Locatie: Azure-regio waar resources worden geïmplementeerd
De implementatie duurt ongeveer 20 minuten. Wanneer u klaar bent, moet de uitvoer vergelijkbaar zijn met:
Azure PowerShell wordt gebruikt om de sjabloon in dit voorbeeld te implementeren. U kunt ook Azure Portal, Azure CLI en REST API gebruiken voor sjabloonimplementatie. Zie Sjablonen implementeren voor meer informatie over andere implementatiemethoden.
De implementatie valideren
Nadat de sjabloonimplementatie is voltooid, controleert u of de routeserver is gemaakt.
Controleren van resources in de Azure Portal
Meld u aan bij het Azure-portaal.
Selecteer Resourcegroepen in het linkerdeelvenster.
Selecteer de resourcegroep die u in de vorige sectie hebt gemaakt. De naam van de standaard resourcegroep is de naam van het project, maar met rg eraan toegevoegd.
De resourcegroep moet het virtuele netwerk en de bijbehorende resources bevatten:
Implementatie van routeserver controleren
Navigeer in Azure Portal naar uw resourcegroep en selecteer de routeserverresource.
Controleer op de overzichtspagina van de routeserver het volgende:
- Status wordt weergegeven als Geslaagd
- BGP ASN geeft het geconfigureerde autonome systeemnummer weer
- Routeringsstatus wordt weergegeven als Ingericht
De resources opschonen
Wanneer u de routeserver en de bijbehorende resources niet meer nodig hebt, verwijdert u de resourcegroep om de routeserver en alle gerelateerde resources te verwijderen.
Als u de resourcegroep wilt verwijderen, gebruikt u de cmdlet Remove-AzResourceGroup :
Remove-AzResourceGroup -Name <your resource group name>
Volgende stap
Nu u een routeserver hebt geïmplementeerd met behulp van een ARM-sjabloon, vindt u meer informatie over de mogelijkheden van Route Server: