Partager via


Déployer la mise en réseau de conteneurs pour un hôte Docker Windows autonome

Le plug-in Azure CNI active la mise en réseau par conteneur/pod pour les hôtes Docker autonomes et les clusters Kubernetes. Dans cet article, vous allez apprendre à installer et à configurer le plug-in CNI pour un hôte Docker Windows autonome.

Prérequis

Créer un réseau virtuel et un hôte Azure Bastion

La procédure suivante crée un réseau virtuel avec un sous-réseau de ressources, un sous-réseau Azure Bastion et un hôte Bastion :

  1. Dans le portail, recherchez et sélectionnez Réseaux virtuels.

  2. Dans la page Réseaux virtuels, sélectionnez + Créer.

  3. Sous l’onglet Informations de base de la page Créer un réseau virtuel, entrez ou sélectionnez les informations suivantes :

    Paramètre Valeur
    Détails du projet
    Abonnement Sélectionnez votre abonnement.
    Resource group Sélectionnez Créer nouveau.
    Entrez test-rg comme nom.
    Sélectionnez OK.
    Détails de l’instance
    Nom Entrez vnet-1.
    Région Sélectionnez USA Est.

    Capture d’écran de l’onglet Informations de base pour la création d’un réseau virtuel dans le portail Azure.

  4. Sélectionnez Suivant pour passer à l’onglet Sécurité.

  5. Dans la section Azure Bastion, sélectionnez Activer Azure Bastion.

    Bastion utilise votre navigateur pour se connecter aux machines virtuelles de votre réseau virtuel via le protocole SSH (Secure Shell) ou le protocole RDP (Remote Desktop Protocol) à l’aide de leurs adresses IP privées. Les machines virtuelles ne requièrent pas d’adresse IP publique, de logiciel client ou de configuration spéciale. Pour plus d’informations, consultez Présentation d’Azure Bastion.

    Remarque

    Le tarif horaire commence à partir du moment où Bastion est déployé, quelle que soit l’utilisation des données sortantes. Pour plus d’informations, consultez Tarifications et Références SKU. Si vous déployez Bastion dans le cadre d’un tutoriel ou d’un test, nous vous recommandons de supprimer cette ressource après l’avoir utilisée.

  6. Dans Azure Bastion, entrez ou sélectionnez les informations suivantes :

    Paramètre Valeur
    Nom d’hôte Azure Bastion Entrez bastion.
    Adresse IP publique Azure Bastion Sélectionnez Créer une adresse IP publique.
    Saisissez public-ip-bastion dans le champ Nom.
    Sélectionnez OK.

    Capture d’écran des options permettant d’activer un hôte Azure Bastion dans le cadre de la création d’un réseau virtuel dans le portail Azure.

  7. Sélectionnez Suivant pour passer à l’onglet Adresses IP.

  8. Dans la zone Espace d’adressage de Sous-réseaux, sélectionnez le sous-réseau par défaut.

  9. Dans Modifier le sous-réseau, entrez ou sélectionnez les informations suivantes :

    Paramètre Valeur
    Objectif du sous-réseau Conservez la valeur par défaut de Valeur par défaut.
    Nom Entrez subnet-1.
    IPv4
    Plage d'adresses IPv4 Conservez la valeur par défaut 10.0.0.0/16.
    Adresse de début Laissez la valeur par défaut sur 10.0.0.0.
    Taille Conservez la valeur par défaut /24 (256 adresses).

    Capture d’écran des détails de configuration d’un sous-réseau.

  10. Sélectionnez Enregistrer.

  11. Sélectionnez Vérifier + créer en bas de la fenêtre. Quand la validation réussit, sélectionnez Créer.

Le déploiement de l’hôte Bastion et du réseau peut prendre quelques minutes. Passez aux étapes suivantes lorsque le déploiement est terminé ou que la création du réseau virtuel est terminée.

Créer une machine virtuelle de test

La procédure suivante crée une machines virtuelles de test (VM) nommée vm-1 dans le réseau virtuel.

  1. Dans le portail, recherchez et sélectionnez Machines virtuelles.

  2. Dans Machines virtuelles, sélectionnez + Créer, puis Machine virtuelle Azure.

  3. Sous l’onglet Général de la page Créer une machine virtuelle, entrez ou sélectionnez les informations suivantes :

    Paramètre Valeur
    Détails du projet
    Abonnement Sélectionnez votre abonnement.
    Resource group Sélectionnez test-rg.
    Détails de l’instance
    Nom de la machine virtuelle Entrez vm-1.
    Région Sélectionnez USA Est.
    Options de disponibilité Sélectionnez Aucune redondance d’infrastructure requise.
    Type de sécurité Conservez la valeur par défaut Standard.
    Image Sélectionnez Windows Server 2022 Datacenter - x64 Gen2.
    Architecture de machine virtuelle Laissez la valeur par défaut x64.
    Taille Sélectionnez une taille.
    Compte administrateur
    Type d'authentification Sélectionnez Mot de passe.
    Nom d’utilisateur entrez azureuser.
    Mot de passe Entrez un mot de passe.
    Confirmer le mot de passe Entrez de nouveau le mot de passe.
    Règles des ports d’entrée
    Aucun port d’entrée public Sélectionnez Aucun.
  4. Sélectionnez l’onglet Réseau en haut de la page.

  5. Entrez ou sélectionnez les informations suivantes sous l’onglet Réseau :

    Paramètre Valeur
    Interface réseau
    Réseau virtuel Sélectionnez vnet-1.
    Subnet Sélectionnez subnet-1 (10.0.0.0/24).
    Adresse IP publique Sélectionnez Aucun.
    Groupe de sécurité réseau de la carte réseau Sélectionnez Avancé.
    Configurer un groupe de sécurité réseau Sélectionnez Créer nouveau.
    Entrez nsg-1 pour le nom.
    Pour le reste, laissez les valeurs par défaut et sélectionnez OK.
  6. Pour les autres paramètres, laissez les valeurs par défaut, puis sélectionnez Vérifier + créer.

  7. Passez en revue les paramètres, puis sélectionnez Créer.

Notes

Les machines virtuelles d’un réseau virtuel avec un hôte bastion n’ont pas besoin d’adresses IP publiques. Bastion fournit l’adresse IP publique et les machines virtuelles utilisent des adresses IP privées pour communiquer au sein du réseau. Vous pouvez supprimer les adresses IP publiques des machines virtuelles des réseaux virtuels hébergés par bastion. Pour plus d’informations, consultez Dissocier une adresse IP publique d’une machine virtuelle Azure.

Remarque

Azure fournit une adresse IP d’accès sortant par défaut pour les machines virtuelles qui n’ont pas d’adresse IP publique ou qui se trouvent dans le pool de back-ends d’un équilibreur de charge Azure de base interne. Le mécanisme d’adresse IP d’accès sortant par défaut fournit une adresse IP sortante qui n’est pas configurable.

L’adresse IP de l’accès sortant par défaut est désactivée quand l’un des événements suivants se produit :

  • Une adresse IP publique est affectée à la machine virtuelle.
  • La machine virtuelle est placée dans le pool principal d’un équilibreur de charge standard, avec ou sans règles de trafic sortant.
  • Une ressource Azure NAT Gateway est attribuée au sous-réseau de la machine virtuelle.

Les machines virtuelles que vous avez créées, au moyen de groupes de machines virtuelles identiques en mode d’orchestration flexible, n’ont pas d’accès sortant par défaut.

Pour plus d’informations sur les connexions sortantes dans Azure, consultez Accès sortant par défaut dans Azure et Utiliser SNAT (Source Network Address Translation) pour les connexions sortantes.

Ajouter une configuration IP

Le plug-in Azure CNI alloue des adresses IP aux conteneurs en fonction d’un pool d’adresses IP que vous créez sur l’interface réseau virtuelle de la machine virtuelle. Pour chaque conteneur sur l’hôte, une configuration IP doit exister sur l’interface réseau virtuelle. Si le nombre de conteneurs sur le serveur dépasse le nombre de configurations IP sur l’interface réseau virtuelle, le conteneur démarre, mais ne dispose pas d’une adresse IP.

Dans cette section, vous allez ajouter une configuration IP à l’interface réseau virtuelle de la machine virtuelle que vous avez créée précédemment.

  1. Dans la zone de recherche située en haut du portail, entrez Machine virtuelle. Sélectionnez Machines virtuelles dans les résultats de la recherche.

  2. Sélectionnez vm-1.

  3. Sous Paramètres, sélectionnez Mise en réseau.

  4. Sélectionnez le nom de l’interface réseau à côté d’Interface réseau. L’interface réseau se nomme vm-1 avec un nombre aléatoire.

  5. Dans les Paramètres de l’interface réseau, sélectionnez Configurations IP.

  6. Dans Configurations IP, sélectionnez ipconfig1 dans Nom.

  7. Dans les paramètres ipconfig1, modifiez l’affectation de l’adresse IP privée de Dynamique à Statique.

  8. Sélectionnez Enregistrer.

  9. Revenez à Configurations IP.

  10. Sélectionnez Ajouter.

  11. Entrez ou sélectionnez les informations suivantes pour Ajouter une configuration IP :

    Paramètre Valeur
    Nom Entrez ipconfig-2.
    Paramètres d’adresse IP privée
    Allocation Sélectionnez Statique.
    Adresse IP Entrez 10.0.0.5.
  12. Cliquez sur OK.

  13. Vérifiez qu’ipconfig2 a été ajoutée en tant que configuration IP secondaire.

Répétez les étapes 1 à 13 pour ajouter autant de configurations que de conteneurs que vous souhaitez déployer sur l’hôte de conteneur.

Configurer des adresses IP dans Windows

Pour affecter plusieurs adresses IP à une machine virtuelle Windows, les adresses IP doivent être ajoutées à l’interface réseau dans Windows. Dans cette section, vous allez vous connecter à la machine virtuelle et configurer les configurations IP que vous avez créées dans la section précédente.

  1. Dans la zone de recherche située en haut du portail, entrez Machine virtuelle. Sélectionnez Machines virtuelles dans les résultats de la recherche.

  2. Sélectionnez vm-1.

  3. Dans la Vue d’ensemble de vm-1, sélectionnez Se connecter, puis Bastion.

  4. Entrez le nom d’utilisateur et le mot de passe que vous avez créés lors du déploiement de la machine virtuelle au cours des étapes précédentes.

  5. Sélectionnez Connecter.

  6. Ouvrez la configuration des connexions réseau sur la machine virtuelle. Sélectionnez Démarrer ->Exécuter et entrez ncpa.cpl.

  7. Sélectionnez OK.

  8. Sélectionnez l’interface réseau de la machine virtuelle, puis Propriétés :

    Capture d’écran de la sélection de l’interface réseau dans le système d’exploitation Windows.

  9. Dans Propriétés Ethernet, sélectionnez Protocole Internet version 4 (TCP/IPv4), puis Propriétés.

  10. Sous l’onglet Général, entrez ou sélectionnez les informations suivantes :

    Paramètre Valeur
    Sélectionnez Utiliser l’adresse IP suivante :
    Adresse IP : Entrez 10.0.0.4
    Masque de sous-réseau : Entrez 255.255.255.0
    Passerelle par défaut Entrez 10.0.0.1
    Sélectionnez Utiliser les adresses de serveur DNS suivantes :
    Serveur DNS préféré : Entrez 168.63.129.16 Cette IP est l’adresse IP affectée par DHCP pour le DNS Azure par défaut
  11. Sélectionnez Avancé....

  12. Dans Adresses IP, sélectionnez Ajouter....

  13. Entrez ou sélectionnez les informations suivantes :

    Paramètre Valeur
    Adresse TCP/IP
    Adresse IP : Entrez 10.0.0.5
    Masque de sous-réseau : Entrez 255.255.255.0
  14. Sélectionnez Ajouter.

  15. Pour ajouter d’autres adresses IP qui correspondent aux configurations IP supplémentaires créées précédemment, sélectionnez Ajouter.

  16. Sélectionnez OK.

  17. Sélectionnez OK.

  18. Cliquez sur OK.

La connexion Bastion s’arrête quelques secondes pendant que la configuration réseau est appliquée. Attendez quelques secondes, puis essayez de vous reconnecter. Continuez quand une reconnexion réussit.

Installation de Docker

Le moteur de conteneur Docker doit être installé et configuré sur la machine virtuelle que vous avez créée précédemment.

Connectez-vous à la machine virtuelle que vous avez créée précédemment avec l’hôte Azure Bastion que vous avez déployé avec le réseau virtuel.

  1. Dans la zone de recherche située en haut du portail, entrez Machine virtuelle. Sélectionnez Machines virtuelles dans les résultats de la recherche.

  2. Sélectionnez vm-1.

  3. Dans la Vue d’ensemble de vm-1, sélectionnez Se connecter, puis Bastion.

  4. Entrez le nom d’utilisateur et le mot de passe que vous avez créés lors du déploiement de la machine virtuelle au cours des étapes précédentes.

  5. Sélectionnez Se connecter.

  6. Ouvrez Windows PowerShell sur vm-1.

  7. L’exemple suivant installe Docker CE/Moby :

    Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" -o install-docker-ce.ps1
    
    .\install-docker-ce.ps1
    

La machine virtuelle redémarre pour installer la prise en charge de conteneur dans Windows. Reconnectez-vous à la machine virtuelle ; l’installation de Docker se poursuit.

Pour plus d’informations sur les conteneurs Windows, consultez Prise en main : Préparer Windows pour les conteneurs.

Une fois Docker installé sur votre machine virtuelle, suivez les étapes décrites dans cet article.

Installer le plug-in CNI et jq

Le plug-in Azure CNI est géré en tant que projet GitHub et peut être téléchargé à partir de la page GitHub du projet. Pour cet article, vous allez télécharger le référentiel du plug-in CNI dans la machine virtuelle, puis installer et configurer le plug-in.

Pour plus d’informations sur le plug-in Azure CNI, consultez Mise en réseau de conteneurs Microsoft Azure.

  1. Dans la zone de recherche située en haut du portail, entrez Machine virtuelle. Sélectionnez Machines virtuelles dans les résultats de la recherche.

  2. Sélectionnez vm-1.

  3. Dans la Vue d’ensemble de vm-1, sélectionnez Se connecter, puis Bastion.

  4. Entrez le nom d’utilisateur et le mot de passe que vous avez créés lors du déploiement de la machine virtuelle au cours des étapes précédentes.

  5. Sélectionnez Connecter.

  6. Utilisez l’exemple suivant pour télécharger et extraire le plug-in CNI dans un dossier temporaire de la machine virtuelle :

    Invoke-WebRequest -Uri https://github.com/Azure/azure-container-networking/archive/refs/heads/master.zip -OutFile azure-container-networking.zip
    
    Expand-Archive azure-container-networking.zip -DestinationPath azure-container-networking
    
  7. Pour installer le plug-in CNI, accédez au répertoire scripts du dossier du plug-in CNI que vous avez téléchargé à l’étape précédente. La commande install script nécessite un numéro de version pour le plug-in CNI. À l’heure de la rédaction de cet article, la version la plus récente est v1.4.39. Pour obtenir le numéro de version le plus récent du plug-in ou des versions antérieures, consultez Versions.

    cd .\azure-container-networking\azure-container-networking-master\scripts\
    
    .\Install-CniPlugin.ps1 v1.4.39
    
  8. Le plug-in CNI est fourni avec un fichier de configuration réseau intégré pour le plug-in. Utilisez l’exemple suivant pour copier le fichier dans le répertoire de la configuration réseau :

    Copy-Item -Path "c:\k\azurecni\bin\10-azure.conflist" -Destination "c:\k\azurecni\netconf"
    

Installer jq

Le script qui crée les conteneurs avec le plug-in Azure CNI nécessite l’application jq. Pour plus d’informations et pour connaître l’emplacement de téléchargement, consultez Télécharger jq.

  1. Ouvrez un navigateur web dans la machine virtuelle et téléchargez l’application jq.

  2. Le téléchargement est un exécutable autonome pour l’application. Copiez l’exécutable jq-win64.exe dans le répertoire C:\Windows.

Créer un conteneur test

  1. Pour démarrer un conteneur avec le plug-in CNI, vous devez utiliser un script spécial fourni avec le plug-in pour créer et démarrer le conteneur. L’exemple suivant crée un conteneur Windows Server avec le script de plug-in CNI :

    cd .\azure-container-networking\azure-container-networking-master\scripts\
    .\docker-exec.ps1 vnetdocker1 default mcr.microsoft.com/windows/servercore/iis add
    

    Le premier téléchargement de l’image du conteneur peut prendre quelques minutes. Lorsque le conteneur démarre et initialise le réseau, la connexion Bastion se déconnecte. Attendez quelques secondes que la connexion soit rétablie.

  2. Pour vérifier que le conteneur a reçu l’adresse IP que vous avez configurée précédemment, connectez-vous au conteneur et affichez l’adresse IP :

    docker exec -it vnetdocker1 powershell
    
  3. Utilisez la commande ipconfig dans l’exemple suivant pour vérifier que l’adresse IP a été affectée au conteneur :

    ipconfig
    

    Capture d’écran de la sortie ipconfig dans l’invite PowerShell du conteneur test.

  4. Quittez le conteneur et fermez la connexion Bastion à vm-1.

Lorsque vous avez terminé d’utiliser les ressources que vous avez créées, vous pouvez supprimer le groupe de ressources et toutes ses ressources.

  1. Depuis le portail Azure, recherchez et sélectionnez Groupes de ressources.

  2. Dans la page Groupes de ressources, sélectionnez le groupe de ressources test-rg.

  3. Dans la page test-rg, sélectionnez Supprimer le groupe de ressources.

  4. Entrez test-rg dans Entrez le nom du groupe de ressources pour confirmer la suppression, puis sélectionnez Supprimer.

Étapes suivantes

Dans cet article, vous avez appris à installer le plug-in Azure CNI et à créer un conteneur test.

Pour plus d’informations sur la mise en réseau de conteneurs Azure et le service Azure Kubernetes, consultez :