Tutoriel : Créer et configurer une passerelle d’application pour héberger plusieurs sites web avec le Portail Azure

Vous pouvez utiliser le portail Azure pour configurer l’hébergement de plusieurs sites web quand vous créez une passerelle d’application. Dans ce tutoriel, vous allez définir des pools d’adresses principaux à l’aide de machines virtuelles. Vous configurez ensuite des écouteurs et des règles basés sur deux domaines pour vous assurer que le trafic web arrive sur les serveurs appropriés dans les pools. Ce didacticiel utilise des exemples de www.contoso.com et www.fabrikam.com.

Dans ce tutoriel, vous allez apprendre à :

  • Créer une passerelle Application Gateway
  • Créer des machines virtuelles pour les serveurs principaux
  • Créer des pools principaux avec les serveurs principaux
  • Créer des écouteurs
  • Créer des règles d’acheminement
  • Modifier le fichier hosts pour la résolution de noms

Diagram showing multi-site application gateway.

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

Notes

Nous vous recommandons d’utiliser le module Azure Az PowerShell pour interagir avec Azure. Pour commencer, consultez Installer Azure PowerShell. Pour savoir comment migrer vers le module Az PowerShell, consultez Migrer Azure PowerShell depuis AzureRM vers Az.

Prérequis

  • Un abonnement Azure

Connexion à Azure

Connectez-vous au portail Azure.

Créer une passerelle Application Gateway

  1. Dans le menu du portail Azure, sélectionnez + Créer une ressource>Mise en réseau>Application Gateway ou, dans la zone de recherche du portail, recherchez Application Gateway.

  2. Sélectionnez Create (Créer).

Onglet Informations de base

  1. Sous l’onglet Informations de base, entrez les valeurs suivantes :

    • Groupe de ressources : sélectionnez myResourceGroupAG comme nom de groupe de ressources. Si ce groupe n’existe pas encore, sélectionnez Créer pour le créer.

    • Nom de passerelle d’application : entrez myAppGateway comme nom de passerelle d’application.

      Screenshot showing Create application gateway page.

  2. Azure a besoin d’un réseau virtuel pour communiquer avec les différentes ressources que vous créez. Vous pouvez créer un réseau virtuel ou en utiliser un. Dans cet exemple, vous allez créer un réseau virtuel en même temps que la passerelle d’application. Les instances de passerelle applicative sont créées dans des sous-réseaux séparés. Vous créez deux sous-réseaux dans cet exemple : un pour la passerelle d’application et un autre pour les serveurs back-end.

    Sous Configurer le réseau virtuel, sélectionnez Créer pour créer un réseau virtuel. Dans la fenêtre Créer un réseau virtuel qui s’ouvre, entrez les valeurs suivantes pour créer le réseau virtuel et deux sous-réseaux :

    • Name : entrez myVNet comme nom de réseau virtuel.

    • Nom de sous-réseau (sous-réseau de passerelle applicative) : la grille Sous-réseaux affiche un sous-réseau nommé Par défaut. Remplacez le nom de ce sous-réseau par myAGSubnet.
      Le sous-réseau de passerelle d’application peut contenir uniquement des passerelles d’application. Aucune autre ressource n’est autorisée. La plage d’adresses IP par défaut fournie est 10.0.0.0/24.

    Sélectionnez OK pour fermer la fenêtre Créer un réseau virtuel et enregistrez les paramètres du réseau virtuel.

    Create VNet

  3. Sous l’onglet Informations de base, acceptez les valeurs par défaut des autres paramètres, puis sélectionnez Suivant : Serveurs frontaux.

Onglet Front-ends

  1. Sous l’onglet Front-ends, vérifiez que Type d’adresse IP de front-end est défini sur Publique.
    Vous pouvez l’adresse IP frontale pour qu’elle soit publique ou privée conformément à votre cas d’utilisation. Dans cet exemple, vous allez choisir une adresse IP front-end publique.

    Notes

    Pour la référence SKU de passerelle applicative v2, vous pouvez uniquement choisir la configuration d’une adresse IP front-end publique. L’utilisation d’une configuration d’adresse IP frontale privée est actuellement en préversion publique. Pour plus d’informations, consultez Déploiement d’Application Gateway Private Link.

  2. Sélectionnez Ajouter nouveau pour Adresse IP publique, entrez myAGPublicIPAddress comme nom d’adresse IP publique, puis sélectionnez OK.

    Create another VNet

  3. Sélectionnez Suivant : Back-ends.

Onglet Back-ends

Le pool de back-ends est utilisé pour router les demandes vers les serveurs back-end qui les traitent. Les pools de back-ends peuvent être des cartes d’interface réseau, des groupes de machines virtuelles identiques, des adresses IP publiques, des adresses IP internes, des noms de domaine complets et des back-ends multilocataires comme Azure App Service. Dans cet exemple, vous allez créer un pool de back-ends vide avec votre passerelle d’application, puis ajouter des cibles de back-end au pool.

  1. Sous l’onglet Backends, sélectionnez Ajouter un pool de back-ends.

  2. Dans la fenêtre Ajouter un pool de back-ends qui s’ouvre, entrez les valeurs suivantes pour créer un pool de back-ends vide :

    • Name : Entrez contosoPool pour le nom du pool de back-ends.
    • Ajouter un pool backend sans cible : Sélectionnez Oui pour créer un pool de back-ends sans cible. Vous ajouterez des cibles de back-end après avoir créé la passerelle d’application.
  3. Dans la fenêtre Ajouter un pool de back-ends, sélectionnez Ajouter pour enregistrer la configuration du pool de back-ends et revenir à l’onglet Back-ends.

  4. Ajoutez maintenant un autre pool back-end appelé fabrikamPool de la même façon que vous avez ajouté le pool précédent.

  5. Sélectionnez Ajouter.

    Create Backends

  6. Sous l’onglet Back-ends, sélectionnez Suivant : Configuration.

Onglet Configuration

Sous l’onglet Configuration, vous allez connecter les pools de front-ends et de back-ends que vous avez créés à l’aide d’une règle de routage.

  1. Sélectionnez Ajouter une règle de routage dans la colonne Règles de routage.

  2. Dans la fenêtre Ajouter une règle de routage qui s’ouvre, entrez contosoRule pour le Nom de la règle.

  3. Une règle de routage requiert un écouteur. Sous l’onglet Écouteur dans la fenêtre Ajouter une règle de routage, entrez les valeurs suivantes pour l’écouteur :

    • Nom de la règle : contosoRule.
    • Nom de l’écouteur : contosoListener.
    • Adresse IP du front-end : Sélectionnez Publique pour choisir l’adresse IP publique que vous avez créée pour le front-end.

    Sous Paramètres supplémentaires :

    • Type d’écouteur : Plusieurs sites
    • Nom d’hôte : www.contoso.com

    Acceptez les valeurs par défaut pour les autres paramètres sous l’onglet Écouteur, puis sélectionnez l’onglet Cibles de back-end pour configurer le reste de la règle de routage.

    Create routing rule

  4. Sous l’onglet Cibles de back-end, sélectionnez contosoPool pour la Cible de back-end.

  5. Pour les Paramètres de back-end, sélectionnez Ajouter nouveau pour ajouter un paramètre de back-end. Le paramètre back-end détermine le comportement de la règle d’acheminement. Dans la fenêtre Ajouter un paramètre de back-end qui s’ouvre, entrez contosoSetting pour Nom des paramètres de back-end et 80 pour le port back-end. Acceptez les valeurs par défaut pour les autres paramètres de la fenêtre Ajouter un paramètre de back-end, puis sélectionnez Ajouter pour revenir à la fenêtre Ajouter une règle d’acheminement.

  6. Dans la fenêtre Ajouter une règle de routage, sélectionnez Ajouter pour enregistrer la règle de routage et revenir à l’onglet Configuration.

  7. Sélectionnez Ajouter une règle d’acheminement et ajoutez une règle, un écouteur, une cible de back-end et un paramètre de back-end similaires pour Fabrikam.

    Fabrikam rule

  8. Sélectionnez Suivant : Balises, puis sur Suivant : Vérifier + créer.

Onglet Vérifier + créer

Examinez les paramètres sous l’onglet Vérifier + créer, puis sélectionnez Créer pour créer le réseau virtuel, l’adresse IP publique et la passerelle d’application. La création de la passerelle d’application par Azure peut prendre plusieurs minutes.

Patientez jusqu’à ce que le déploiement soit terminé avant de passer à la section suivante.

Ajouter des cibles de back-end

Dans cet exemple, vous allez utiliser des machines virtuelles comme back-end cible. Vous pouvez utiliser des machines virtuelles existantes ou en créer de nouvelles. Vous allez créer deux machines virtuelles qu’Azure va utiliser comme serveurs back-end pour la passerelle d’application.

Pour ajouter des cibles de back-end, vous allez :

  1. Ajoutez un sous-réseau de back-end.
  2. Créez deux machines virtuelles, contosoVM et fabrikamVM, à utiliser comme serveurs back-end.
  3. Installer IIS sur les machines virtuelles pour vérifier que la passerelle d’application a bien été créée.
  4. Ajoutez les serveurs back-end au pool de back-ends.

Ajoutez un sous-réseau de back-end

  1. Dans le portail Azure, recherchez les réseaux virtuels et sélectionnez *myVNet.
  2. Sous Paramètres, sélectionnez Sous-réseaux.
  3. Sélectionnez + Sous-réseau et dans le volet Ajouter un sous-réseau, entrez myBackendSubnet pour Nom et acceptez 10.0.1.0/24 comme Plage d’adresses de sous-réseau.
  4. Acceptez tous les autres paramètres par défaut et sélectionnez Enregistrer.

Création d'une machine virtuelle

  1. Dans le portail Azure, sélectionnez Créer une ressource. La fenêtre Nouvelle apparaît.

  2. Sélectionnez Windows Server 2016 Datacenter dans la liste Populaire. La page Créer une machine virtuelle s’affiche.
    Application Gateway peut acheminer le trafic vers n’importe quel type de machine virtuelle utilisée dans son pool principal. Dans cet exemple, vous utilisez un serveur Windows Server 2016 Datacenter.

  3. Sous l’onglet De base, entrez ces valeurs pour les paramètres de machine virtuelle suivants :

    • Abonnement : sélectionnez votre abonnement.
    • Groupe de ressources : sélectionnez myResourceGroupAG comme nom de groupe de ressources.
    • Nom de la machine virtuelle : Entrez contosoVM pour le nom de la machine virtuelle.
    • Région : Sélectionnez la région que vous avez utilisée précédemment.
    • Nom d’utilisateur : Entrez un nom d’utilisateur administrateur.
    • Mot de passe : Entrez un mot de passe pour l’administrateur.
  4. Acceptez les autres valeurs par défaut, puis sélectionnez Suivant : Disques.

  5. Acceptez les valeurs par défaut sous l’onglet Disques, puis sélectionnez Suivant : Mise en réseau.

  6. Sous l’onglet Mise en réseau, vérifiez que myVNet est sélectionné comme Réseau virtuel et que Sous-réseau est défini sur myBackendSubnet. Acceptez les autres valeurs par défaut, puis sélectionnez Suivant : Gestion.
    Application Gateway peut communiquer avec des instances en dehors du réseau virtuel dans lequel il réside, mais vous devez vérifier qu’il existe une connectivité IP.

  7. Sous l’onglet Gestion, définissez Diagnostics de démarrage sur Désactiver. Acceptez les autres valeurs par défaut, puis sélectionnez Vérifier + créer.

  8. Sous l’onglet Vérifier + créer, passez en revue les paramètres, corrigez les éventuelles erreurs de validation et sélectionnez Créer.

  9. Attendez la fin de la création de la machine virtuelle avant de continuer.

Installer IIS pour les tests

Dans cet exemple, vous allez installer IIS sur les machines virtuelles uniquement pour vérifier si Azure a bien créé la passerelle d’application.

  1. Ouvrez Azure PowerShell. Pour ce faire, sélectionnez Cloud Shell dans la barre de navigation supérieure du portail Azure, puis sélectionnez PowerShell dans la liste déroulante.

    Install custom extension

  2. Exécutez la commande suivante pour installer IIS sur la machine virtuelle, en remplaçant la région de votre groupe de ressources par <location> :

    Set-AzVMExtension `
      -ResourceGroupName myResourceGroupAG `
      -ExtensionName IIS `
      -VMName contosoVM `
      -Publisher Microsoft.Compute `
      -ExtensionType CustomScriptExtension `
      -TypeHandlerVersion 1.4 `
      -SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}' `
      -Location <location>
    
  3. Créez une deuxième machine virtuelle et installez IIS en suivant les mêmes étapes que vous avez effectuées précédemment. Utilisez fabrikamVM pour le nom de la machine virtuelle et pour le paramètre VMName de l’applet de commande Set-AzVMExtension.

Ajouter des serveurs back-end au pool de back-ends

  1. Sélectionnez Toutes les ressources, puis myAppGateway.

  2. Sélectionnez Pools principaux dans le menu de gauche.

  3. Sélectionnez contosoPool.

  4. Sous Type de cible, sélectionnez Machine virtuelle dans la liste déroulante.

  5. Sous Cible, sélectionnez l’interface réseau de la machine virtuelle contosoVM dans la liste déroulante.

    Add backend servers

  6. Sélectionnez Enregistrer.

  7. Répétez l’opération pour ajouter la machine virtuelle fabrikamVM et son interface à fabrikamPool.

Attendez que le déploiement se termine avant de passer à l’étape suivante.

Modifier votre fichier hosts pour la résolution de noms

Une fois la passerelle applicative créée avec son IP publique, vous pouvez obtenir l’adresse IP et l’utiliser pour modifier votre fichier hosts afin de résoudre www.contoso.com et www.fabrikam.com. Dans un environnement de production, vous pouvez créer un CNAME dans le système DNS pour la résolution de noms.

  1. Sélectionnez Toutes les ressources, puis myAGPublicIPAddress.

    Record application gateway DNS address

  2. Copiez l’adresse IP et utilisez-la comme valeur pour les nouvelles entrées de votre fichier hosts.

  3. Sur votre ordinateur local, ouvrez une invite de commandes d’administration et accédez à c:\Windows\System32\drivers\etc.

  4. Ouvrez le fichier hosts, puis ajoutez les entrées suivantes, où x.x.x.x est l’IP publique de la passerelle applicative :

    # Copyright (c) 1993-2009 Microsoft Corp.
    #
    # This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
    #
    # This file contains the mappings of IP addresses to host names. Each
    # entry should be kept on an individual line. The IP address should
    # be placed in the first column followed by the corresponding host name.
    # The IP address and the host name should be separated by at least one
    # space.
    #
    # Additionally, comments (such as these) may be inserted on individual
    # lines or following the machine name denoted by a '#' symbol.
    #
    # For example:
    #
    #      102.54.94.97     rhino.acme.com          # source server
    #       38.25.63.10     x.acme.com              # x client host
    
    # localhost name resolution is handled within DNS itself.
    #	127.0.0.1       localhost
    #	::1             localhost
    x.x.x.x www.contoso.com
    x.x.x.x www.fabrikam.com
    
    
  5. Enregistrez le fichier .

  6. Exécutez les commandes suivantes pour charger et afficher les modifications apportées à votre fichier hosts :

     ipconfig/registerdns
     ipconfig/displaydns
    

Tester la passerelle d’application

  1. Saisissez un nom de domaine dans la barre d’adresse de votre navigateur. Par exemple : http://www.contoso.com.

    Test contoso site in application gateway

  2. Remplacez l’adresse par celle d’un autre domaine. Voici un exemple de ce qui doit apparaître :

    Test fabrikam site in application gateway

Nettoyer les ressources

Quand vous n’avez plus besoin des ressources que vous avez créées avec la passerelle d’application, supprimez le groupe de ressources. Quand vous supprimez le groupe de ressources, vous supprimez aussi la passerelle d’application et toutes ses ressources associées.

Pour supprimer le groupe de ressources :

  1. Dans le menu de gauche du portail Azure, sélectionnez Groupes de ressources.
  2. Dans la page Groupes de ressources, recherchez myResourceGroupAG dans la liste, puis sélectionnez ce groupe de ressources.
  3. Dans la page myResourceGroupAG, sélectionnez Supprimer le groupe de ressources.
  4. Entrez myResourceGroupAG dans TYPE THE RESOURCE GROUP NAME, puis sélectionnez Supprimer.

Pour restaurer le fichier hosts :

  1. Supprimez les lignes www.contoso.com et www.fabrikam.com du fichier hosts.
  2. Exécutez ipconfig/registerdns et ipconfig/flushdns à partir de l’invite de commandes.

Étapes suivantes

Dans ce tutoriel, vous allez :

  • Avez créé une passerelle applicative avec des écouteurs et des règles basées sur deux domaines
  • Avez testé la passerelle applicative après avoir modifié les fichiers hosts des serveurs principaux

Pour en savoir plus sur l’hébergement de plusieurs sites, consultez Hébergement de plusieurs sites Application Gateway.

Pour savoir comment créer et configurer une passerelle applicative avec des règles de routage basées sur un chemin d’accès à l’aide du portail Azure, passez au tutoriel suivant.