Bereitstellen von Containernetzwerken für einen eigenständigen Linux-Docker-Host
Das Azure CNI-Plug-In ermöglicht ein Netzwerk pro Container/Pod für eigenständige Docker-Hosts und Kubernetes-Cluster. In diesem Artikel erfahren Sie, wie Sie das CNI-Plug-In für einen eigenständigen Linux-Docker-Host installieren und konfigurieren.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
Erstellen eines virtuellen Netzwerks und eines Azure Bastion-Hosts
Mit den folgenden Schritten wird ein virtuelles Netzwerk mit einem Ressourcensubnetz, einem Azure Bastion-Subnetz und einem Bastion-Host erstellt:
Suchen Sie im Portal nach der Option Virtuelle Netzwerke und wählen Sie sie aus.
Wählen Sie auf der Seite Virtuelle Netzwerke die Option + Erstellen aus.
Geben Sie unter Virtuelles Netzwerk erstellen auf der Registerkarte Grundlagen die folgenden Informationen ein, oder wählen Sie sie aus:
Einstellung Wert Projektdetails Subscription Wählen Sie Ihr Abonnement aus. Resource group Wählen Sie Neu erstellen.
Geben Sie test-rg für den Namen ein.
Wählen Sie OK aus.Instanzendetails Name Geben Sie vnet-1 ein. Region Wählen Sie USA, Osten 2 aus. Wählen Sie Weiter aus, um zur Registerkarte Sicherheit zu gelangen.
Wählen Sie im Abschnitt Azure Bastion die Option Azure Bastion aktivieren aus.
Bastion verwendet Ihren Browser, um mithilfe ihrer privaten IP-Adressen eine Verbindung mit VMs in Ihrem virtuellen Netzwerk über Secure Shell (SSH) oder das Remotedesktopprotokoll (RDP) herzustellen. Die VMs benötigen keine öffentlichen IP-Adressen, keine Clientsoftware und keine spezielle Konfiguration. Weitere Informationen finden Sie unter Was ist Azure Bastion?.
Hinweis
Die Stundenpreise gelten ab dem Zeitpunkt der Bereitstellung von Bastion, unabhängig von der Nutzung ausgehender Daten. Weitere Informationen dazu finden Sie unter Preise und SKUs. Wenn Sie Bastion im Rahmen eines Tutorials oder Tests bereitstellen, empfiehlt es sich, diese Ressource zu löschen, sobald Sie sie nicht mehr benötigen.
Geben Sie unter Azure Bastion die folgenden Informationen ein, oder wählen Sie diese aus:
Einstellung Wert Azure Bastion-Hostname Geben Sie bastion ein. Öffentliche Azure Bastion-IP-Adresse Wählen Sie Öffentliche IP-Adresse erstellen aus.
Geben Sie public-ip-bastion als Namen ein.
Wählen Sie OK aus.Wählen Sie Weiter aus, um zur Registerkarte IP-Adressen zu gelangen.
Wählen Sie im Feld für den Adressraum unter Subnetze das Standardsubnetz aus.
Geben Sie unter Subnetz bearbeiten die folgenden Informationen ein, oder wählen Sie sie aus:
Einstellung Wert Subnetzzweck Übernehmen Sie den Standardwert Default. Name Geben Sie subnet-1 ein. IPv4 IPv4-Adressbereich Übernehmen Sie den Standardwert 10.0.0.0/16. Startadresse Übernehmen Sie den Standardwert 10.0.0.0. Size Übernehmen Sie den Standardwert: /24 (256 Adressen). Wählen Sie Speichern.
Wählen Sie unten im Fenster die Option Überprüfen + erstellen aus. Klicken Sie nach der Validierung auf Erstellen.
Es dauert einige Minuten, bis der Bastionhost bereitgestellt wird. Sie können mit den nächsten Schritten fortfahren, während der Bastionhost erstellt wird.
Erstellen eines virtuellen Testcomputers
Mit dem folgenden Verfahren wird im virtuellen Netzwerk eine Test-VM mit dem Namen vm-1 erstellt.
Suchen Sie im Portal nach Virtuelle Computer, und klicken Sie darauf.
Wählen Sie unter VM die Option + Erstellen und dann Azure-VM aus.
Geben Sie unter Virtuellen Computer erstellen auf der Registerkarte Grundlagen die folgenden Informationen ein, oder wählen Sie sie aus:
Einstellung Wert Projektdetails Subscription Wählen Sie Ihr Abonnement aus. Resource group Wählen Sie test-rg aus. Instanzendetails Name des virtuellen Computers Geben Sie vm-1 ein. Region Wählen Sie USA, Osten 2 aus. Verfügbarkeitsoptionen Wählen Sie die Option Keine Infrastrukturredundanz erforderlich aus. Sicherheitstyp Übernehmen Sie den Standardwert Standard. Image Wählen Sie Ubuntu Server 22.04 LTS – x64 Gen2 aus. VM-Architektur Übernehmen Sie den Standardwert x64. Size Wählen Sie eine Größe aus. Administratorkonto Authentifizierungsart Wählen Sie Kennwort aus. Username Geben Sie azureuser ein. Kennwort Geben Sie ein Kennwort ein. Kennwort bestätigen Geben Sie das Kennwort erneut ein. Regeln für eingehende Ports Öffentliche Eingangsports Wählen Sie Keine. Wählen Sie oben auf der Seite die Registerkarte Netzwerk aus.
Geben Sie auf der Registerkarte Netzwerk die folgenden Informationen ein, bzw. wählen Sie sie aus:
Einstellung Wert Netzwerkschnittstelle Virtuelles Netzwerk Wählen Sie vnet-1 aus. Subnet Wählen Sie Subnetz-1 (10.0.0.0/24) aus. Öffentliche IP-Adresse Wählen Sie Keine aus. NIC-Netzwerksicherheitsgruppe Wählen Sie Erweitertaus. Konfigurieren von Netzwerksicherheitsgruppen Wählen Sie Neu erstellen.
Geben Sie nsg-1 für Name ein.
Behalten Sie für den Rest die Standards bei, und wählen Sie OK aus.Behalten Sie für die restlichen Einstellungen die Standards bei, und wählen Sie dann Überprüfen + erstellen aus.
Überprüfen Sie die Einstellungen, und wählen Sie Erstellen aus.
Hinweis
VMs in einem virtuellen Netzwerk mit einem Bastionhost benötigen keine öffentlichen IP-Adressen. Bastion stellt die öffentliche IP-Adresse bereit und die VMs verwenden private IP-Adressen für die Kommunikation innerhalb des Netzwerks. Sie können die öffentlichen IP-Adressen von allen VMs in von Bastion gehosteten virtuellen Netzwerken entfernen. Weitere Informationen finden Sie unter Trennen einer öffentlichen IP-Adresse von einer Azure-VM.
Hinweis
Azure stellt eine ausgehende Standardzugriffs-IP für VMs bereit, denen keine öffentliche IP-Adresse zugewiesen ist oder die sich im Backendpool eines internen grundlegenden Azure-Lastenausgleichs befinden. Der Mechanismus für Standard-IP-Adressen für den ausgehenden Zugriff stellt eine ausgehende IP-Adresse bereit, die nicht konfigurierbar ist.
Die Standard-IP-Adresse für ausgehenden Zugriff ist deaktiviert, wenn eines der folgenden Ereignisse auftritt:
- Dem virtuellen Computer wird eine öffentliche IP-Adresse zugewiesen.
- Die VM wird im Backendpool eines Standardlastenausgleichs platziert (mit oder ohne Ausgangsregeln).
- Dem Subnetz der VM wird eine Azure NAT Gateway-Ressource zugewiesen.
VMs, die Sie mithilfe von VM-Skalierungsgruppen im Orchestrierungsmodus „Flexibel“ erstellen, haben keinen ausgehenden Standardzugriff.
Weitere Informationen zu ausgehenden Verbindungen in Azure finden Sie unter Standardzugriff in ausgehender Richtung in Azure und Verwenden von SNAT (Source Network Address Translation) für ausgehende Verbindungen.
Hinzufügen der IP-Konfiguration
Das Azure CNI-Plug-In ordnet IP-Adressen Containern basierend auf einem Pool von IP-Adressen zu, die Sie für die virtuelle Netzwerkschnittstelle der VM erstellen. Für jeden Container auf dem Host muss eine IP-Konfiguration für die virtuelle Netzwerkschnittstelle vorhanden sein. Wenn die Anzahl der Container auf dem Server die Anzahl der IP-Konfigurationen für die virtuelle Netzwerkschnittstelle übersteigt, startet der Container zwar, besitzt aber keine IP-Adresse.
In diesem Abschnitt fügen Sie der virtuellen Netzwerkschnittstelle der VM, die Sie zuvor erstellt haben, eine IP-Konfiguration hinzu.
Geben Sie im Suchfeld oben im Portal den Suchbegriff Virtueller Computer ein. Wählen Sie in den Suchergebnissen Virtuelle Computer aus.
Wählen Sie vm-1 aus.
Wählen Sie unter Einstellungen die Option Netzwerk.
Wählen Sie den Namen der Netzwerkschnittstelle neben Netzwerkschnittstelle aus. Die Netzwerkschnittstelle trägt den Namen vm-1 mit einer zufällig gewählten Zahl.
Wählen Sie unter Einstellungen für die Netzwerkschnittstelle die Option IP-Konfigurationen aus.
Wählen Sie unter IP-Konfigurationen für Name die Option ipconfig1 aus.
Ändern Sie in den ipconfig1-Einstellungen die Zuweisung der privaten IP-Adresse von Dynamisch in Statisch.
Wählen Sie Speichern aus.
Kehren Sie zu IP-Konfigurationen zurück.
Klicken Sie auf + Hinzufügen.
Geben Sie unter IP-Konfiguration hinzufügen die folgenden Informationen ein, oder wählen Sie sie aus:
Einstellung Wert Name Geben Sie ipconfig-2 ein. Einstellungen für private IP-Adressen Zuteilung Wählen Sie Statisch aus. IP-Adresse Geben Sie 10.0.0.5 ein. Klicken Sie auf OK.
Überprüfen Sie, ob ipconfig2 als sekundäre IP-Konfiguration hinzugefügt wurde.
Wiederholen Sie die vorherigen Schritte, um die gewünschte Anzahl von Konfigurationen als Container hinzuzufügen, die Sie auf dem Containerhost bereitstellen möchten.
Installieren von Docker
Die Docker-Container-Engine muss auf der zuvor erstellten VM installiert und konfiguriert werden.
Melden Sie sich bei der zuvor erstellten VM mit dem Azure Bastion-Host an, den Sie mit dem virtuellen Netzwerk bereitgestellt haben.
Geben Sie im Suchfeld oben im Portal den Suchbegriff Virtueller Computer ein. Wählen Sie in den Suchergebnissen Virtuelle Computer aus.
Wählen Sie vm-1 aus.
Wählen Sie auf der Seite Übersicht von vm-1 die Option Verbinden und dann Bastion aus.
Geben Sie die Werte für Benutzername und Kennwort ein, die Sie beim Bereitstellen der VM in den vorherigen Schritten erstellt haben.
Wählen Sie Verbinden.
Installationsanweisungen für Docker auf einem Ubuntu-Containerhost finden Sie unter Installieren der Docker-Engine unter Ubuntu.
Nachdem Docker auf der VM installiert wurde, befolgen Sie die Anweisungen für Aufgaben nach der Linux-Installation. Anweisungen zu Aufgaben nach der Linux-Installation finden Sie unter Schritte nach der Installation der Docker-Engine.
Nachdem Docker auf Ihrer VM installiert wurde, fahren Sie mit den Schritten in diesem Artikel fort.
Installieren des CNI-Plug-Ins und Erstellen eines Testcontainers
Das Azure CNI-Plug-In wird als GitHub-Projekt verwaltet und kann von der GitHub-Seite des Projekts heruntergeladen werden. In diesem Artikel verwenden Sie git
innerhalb der VM, um das Repository für das Plug-In zu klonen und das Plug-In anschließend zu installieren und zu konfigurieren.
Weitere Informationen zum Azure CNI-Plug-In finden Sie unter Microsoft Azure-Containernetzwerke.
Geben Sie im Suchfeld oben im Portal den Suchbegriff Virtueller Computer ein. Wählen Sie in den Suchergebnissen Virtuelle Computer aus.
Wählen Sie vm-1 aus.
Wählen Sie auf der Seite Übersicht von vm-1 die Option Verbinden und dann Bastion aus.
Geben Sie die Werte für Benutzername und Kennwort ein, die Sie beim Bereitstellen der VM in den vorherigen Schritten erstellt haben.
Wählen Sie Verbinden.
Die Anwendung jq wird für das Installationsskript für das CNI-Plug-In benötigt. Verwenden Sie das folgende Beispiel, um die Anwendung zu installieren:
sudo apt-get update sudo apt-get install jq
Als Nächstes klonen Sie das Repository für das CNI-Plug-In. Verwenden Sie das folgende Beispiel, um das Repository zu klonen:
git clone https://github.com/Azure/azure-container-networking.git
Konfigurieren Sie Berechtigungen, und installieren Sie das CNI-Plug-In. Der Befehl für das Installationsskript erfordert eine Versionsnummer für das CNI-Plug-In. Zum Zeitpunkt der Entstehung dieses Artikels lautet die neueste Version
v1.4.39
. Informationen zum Abrufen der neuesten Versionsnummer des Plug-Ins oder früherer Versionen finden Sie unter Releases.cd ./azure-container-networking/scripts chmod u+x install-cni-plugin.sh sudo ./install-cni-plugin.sh v1.4.39 chmod u+x docker-run.sh
Wenn Sie einen Container mit dem CNI-Plugin starten möchten, müssen Sie ein spezielles, im Lieferumfang des Plug-Ins enthaltenes Skript verwenden, um den Container zu erstellen und zu starten. Im folgenden Beispiel wird ein Alpine-Container mit dem CNI-Plug-In-Skript erstellt:
sudo ./docker-run.sh vnetdocker1 default alpine
Um zu überprüfen, ob der Container die zuvor konfigurierte IP-Adresse erhalten hat, stellen Sie eine Verbindung mit dem Container her, und zeigen Sie die IP-Adresse an:
sudo docker exec -it vnetdocker1 /bin/sh
Überprüfen Sie anhand des
ifconfig
-Befehls im folgenden Beispiel, ob dem Container die IP-Adresse zugewiesen wurde:ifconfig
Wenn Sie mit der Verwendung der von Ihnen erstellten Ressourcen fertig sind, können Sie die Ressourcengruppe und alle zugehörigen Ressourcen löschen.
Suchen Sie im Azure-Portal nach Ressourcengruppen, und wählen Sie die entsprechende Option aus.
Wählen Sie auf der Seite Ressourcengruppen die Ressourcengruppe test-rg aus.
Wählen Sie auf der Seite test-rg die Option Ressourcengruppe löschen aus.
Geben Sie test-rg unter Ressourcengruppennamen eingeben, um die Löschung zu bestätigen und wählen Sie dann Löschen aus.
Nächste Schritte
In diesem Artikel haben Sie erfahren, wie Sie das Azure CNI-Plug-In installieren und einen Testcontainer erstellen.
Weitere Informationen zum Azure-Containernetzwerk und zum Azure Kubernetes-Dienst finden Sie hier: