← Publications

Guide technique · Cloud et infrastructure

Azure Networking - TP - Part 1 - vNets & Subnets#

nice abstract image

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.

À propos · Accompagnement

Omnivya est l’entreprise que j’ai cofondée avec Taous, et dont je suis CTO. Les missions structurées y passent.

Pour une question ou un échange sans brief commercial : M’écrire · LinkedIn

← Toutes les publications