Guide technique · Cloud et infrastructure
Azure Networking - TP - Part 1 - vNets & Subnets#

Mickael Lopes et moi avons animé une session au Global Azure Bootcamp intitulée : “Le réseau dans Azure : Cas d’usage et Retour d’expériences”.
Les slides de notre session sont dispo sur slideshare ici : Slideshare de Mickael Comme prévu, voici des TP pour aller avec notre présentation, a faire vous même :)
Les vNets et Subnets#
Avant d’attaquer des éléments plus complexe, nous allons apprendre a créer un VNet avec un subnet avec les trois moyens disponibles sur Azure. ## Powershell Avant de se lancer, commencez par installer votre station de travail convenablement avec la doc Microsoft qui va bien : Powershell for Azure Dans Azure, on commence toujours par créer un Resource Group donc :
New-AzureRmResourceGroup \`
-Name RG-Vnet-Exo-PS \`
-Location northeurope
Ensuite nous allons créer un vNet :
$vnetexo = New-AzureRmVirtualNetwork -ResourceGroupName RG-Vnet-Exo-PS `
-Name vnet-test-ps `
-AddressPrefix 10.0.0.0/24 `
-Location northeurope
puis afin d’ajouter un subnet :
Add-AzureRmVirtualNetworkSubnetConfig -Name psfrontend `
-VirtualNetwork $vnetexo `
-AddressPrefix 10.0.0.0/26
Set-AzureRmVirtualNetwork -VirtualNetwork $vnetexo
Azure CLI 2.0#
Comme pour la partie Powershell, suivez la doc d’installation de Azure CLI 2.0 ici : Azure CLI 2.0 Comme dans l’exemple précédent nous allons créer un Resource Group :
az group create \
--name RG-Vnet-Exo-AZ \
--location northeurope
Ensuite nous allons créer un vNet et le subnet :
az network vnet create \
--name vnet-test-az \
--resource-group RG-Vnet-Exo-AZ \
--location northeurope \
--address-prefixes 10.0.1.0/24 \
--subnet-name azfrontend \
--subnet-prefixes 10.0.1.0/26
ARM Template#
Pour commencer, utilisez un éditeur de texte un peu évoluer, le JSON sans outil, ca pique un peu… Je vous recommend Visual Studio Code, avec ce petit article : sur mon blog Un Template Json simple contient plusieurs parties : “variables”, “parameters”, “resources” et “outputs”. Sans réexpliquer l’ensemble, voici à quoi notre Template va ressembler :
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vnetname": {
"type": "string",
"metadata": {
"description": "Nom du Vnet"
},
"defaultValue": "vnet-test-json"
},
"vnetname": {
"type": "string",
"metadata": {
"description": "Nom du Vnet"
},
"defaultValue": "vnet-test-json"
},
"addressSpacePrefix": {
"type": "string",
"metadata": {
"description": "IP v4 (RFC1918)"
},
"defaultValue": "10.0.2.0/24"
},
"subnetName": {
"type": "string",
"metadata": {
"description": "Nom du Subnet"
},
"defaultValue": "jsonfrontend"
},
"subnetPrefix": {
"type": "string",
"metadata": {
"description": "IP v4 du Subnet"
},
"defaultValue": "10.0.2.0/26"
}
},
"variables": {},
"resources": [
{
"apiVersion": "2015-06-15",
"type": "Microsoft.Network/virtualNetworks",
"name": "[parameters('VnetName')]",
"location": "[resourceGroup().location]",
"tags": {
"displayName": "JSON-VNET"
},
"properties": {
"addressSpace": {
"addressPrefixes": ["[parameters('addressSpacePrefix')]"]
},
"subnets": [
{
"name": "[parameters('subnetName')]",
"properties": {
"addressPrefix": "[parameters('subnetPrefix')]"
}
}
]
}
}
],
"outputs": {}
}
Ensuite pour déployer ce fichier soit via le portail avec la doc ici : Azure Template & Portal ou alors via Powershell et Azure CLI 2.0 :
Deploy with Powershell
New-AzureRmResourceGroup -Name RG-Vnet-Exo-JSON \`
-Location " North Europe"
New-AzureRmResourceGroupDeployment -Name RG-Vnet-Exo-JSON \`
-ResourceGroupName ExampleResourceGroup \`
-TemplateFile c:\\MyTemplates\\vnet-simple.json
Deploy with Azure CLI 2.0
az group create --name RG-XXX --location "North Europe“
az group deployment create \
--name ExampleDeployment \
--resource-group ExampleGroup \
--template-file vnet-simple.json
Étienne Deneuve
CTO expert
Je dirige des équipes, je reste dans le code et les plateformes, et je vérifie ce qui change vraiment le delivery. J’anime aussi ateliers, interventions et formations.