Containernetwerken implementeren voor een zelfstandige Linux Docker-host
De Azure CNI-invoegtoepassing schakelt per container/pod-netwerk in voor zelfstandige Docker-hosts en Kubernetes-clusters. In dit artikel leert u hoe u de CNI-invoegtoepassing installeert en configureert voor een zelfstandige Linux Docker-host.
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
Een virtueel netwerk en een Azure Bastion-host maken
Met de volgende procedure maakt u een virtueel netwerk met een resourcesubnet, een Azure Bastion-subnet en een Bastion-host:
Zoek en selecteer virtuele netwerken in de portal.
Selecteer + Maken op de pagina Virtuele netwerken.
Voer op het tabblad Basisbeginselen van Virtueel netwerk maken de volgende gegevens in of selecteer deze:
Instelling Weergegeven als Projectdetails Abonnement Selecteer uw abonnement. Resourcegroep Selecteer Nieuw maken.
Voer test-rg in voor de naam.
Selecteer OK.Exemplaardetails Naam Voer vnet-1 in. Regio Selecteer VS - oost 2. Selecteer Volgende om door te gaan naar het tabblad Beveiliging.
Selecteer Azure Bastion in de sectie Azure Bastion inschakelen.
Bastion gebruikt uw browser om verbinding te maken met VM's in uw virtuele netwerk via Secure Shell (SSH) of RdP (Remote Desktop Protocol) met behulp van hun privé-IP-adressen. De VM's hebben geen openbare IP-adressen, clientsoftware of speciale configuratie nodig. Zie Wat is Azure Bastion? voor meer informatie.
Notitie
De prijzen per uur beginnen vanaf het moment dat Bastion wordt geïmplementeerd, ongeacht het uitgaande gegevensgebruik. Zie Prijzen en SKU's voor meer informatie. Als u Bastion implementeert als onderdeel van een zelfstudie of test, raden we u aan deze resource te verwijderen nadat u deze hebt gebruikt.
Voer in Azure Bastion de volgende gegevens in of selecteer deze:
Instelling Weergegeven als Azure Bastion-hostnaam Voer bastion in. Openbaar IP-adres van Azure Bastion Selecteer Een openbaar IP-adres maken.
Voer public-ip-bastion in naam in.
Selecteer OK.Selecteer Volgende om door te gaan naar het tabblad IP-adressen.
Selecteer in het adresruimtevak in Subnetten het standaardsubnet .
Voer in het subnet Bewerken de volgende gegevens in of selecteer deze:
Instelling Weergegeven als Subnetdoel Laat de standaardwaarde standaard staan. Naam Voer subnet-1 in. IPv4 IPv4-adresbereik Laat de standaardwaarde 10.0.0.0/16 staan. Beginadres Laat de standaardwaarde 10.0.0.0 staan. Tekengrootte Laat de standaardwaarde /24 (256 adressen) staan. Selecteer Opslaan.
Selecteer Beoordelen en maken onderaan het venster. Wanneer de validatie is geslaagd, selecteert u Maken.
Het kan enkele minuten duren voordat de Bastion-host is geïmplementeerd. U kunt doorgaan met de stappen terwijl de Bastion-host wordt geïmplementeerd.
Virtuele testmachine maken
Met de volgende procedure maakt u een virtuele testmachine (VM) met de naam vm-1 in het virtuele netwerk.
Zoek en selecteer virtuele machines in de portal.
Selecteer + Maken in virtuele machines en vervolgens de virtuele Azure-machine.
Voer op het tabblad Basisbeginselen van Een virtuele machine maken de volgende gegevens in of selecteer deze:
Instelling Weergegeven als Projectdetails Abonnement Selecteer uw abonnement. Resourcegroep Selecteer test-rg. Exemplaardetails Virtual machine name Voer vm-1 in. Regio Selecteer VS - oost 2. Beschikbaarheidsopties Selecteer Geen infrastructuurredundantie vereist. Beveiligingstype Laat de standaardwaarde van Standard staan. Afbeelding Selecteer Ubuntu Server 22.04 LTS - x64 Gen2. VM-architectuur Laat de standaardwaarde x64 staan. Tekengrootte Selecteer een grootte. Beheerdersaccount Authentication type Selecteer Wachtwoord. Username Voer azureuser in. Wachtwoord Voer een wachtwoord in. Wachtwoord bevestigen Voer het wachtwoord opnieuw in. Regels voor binnenkomende poort Openbare poorten voor inkomend verkeer Selecteer Geen. Selecteer het tabblad Netwerken boven aan de pagina.
Voer de volgende gegevens in of selecteer deze op het tabblad Netwerken :
Instelling Weergegeven als Netwerkinterface Virtueel netwerk Selecteer vnet-1. Subnet Selecteer subnet-1 (10.0.0.0/24). Openbare IP Selecteer Geen. NIC-netwerkbeveiligingsgroep Selecteer Geavanceerd. Netwerkbeveiligingsgroep configureren Selecteer Nieuw maken.
Voer nsg-1 in als naam.
Laat de rest op de standaardwaarden staan en selecteer OK.Laat de rest van de instellingen op de standaardwaarden staan en selecteer Beoordelen en maken.
Controleer de instellingen en selecteer Maken.
Notitie
Virtuele machines in een virtueel netwerk met een bastionhost hebben geen openbare IP-adressen nodig. Bastion biedt het openbare IP-adres en de VM's gebruiken privé-IP's om binnen het netwerk te communiceren. U kunt de openbare IP-adressen verwijderen van virtuele machines in gehoste virtuele bastionnetwerken. Zie Een openbaar IP-adres loskoppelen van een Virtuele Azure-machine voor meer informatie.
Notitie
Azure biedt een standaard ip-adres voor uitgaande toegang voor VM's waaraan geen openbaar IP-adres is toegewezen of zich in de back-endpool van een interne Azure-load balancer bevinden. Het standaard ip-mechanisme voor uitgaande toegang biedt een uitgaand IP-adres dat niet kan worden geconfigureerd.
Het standaard IP-adres voor uitgaande toegang is uitgeschakeld wanneer een van de volgende gebeurtenissen plaatsvindt:
- Er wordt een openbaar IP-adres toegewezen aan de VIRTUELE machine.
- De VIRTUELE machine wordt in de back-endpool van een standaard load balancer geplaatst, met of zonder uitgaande regels.
- Er wordt een Azure NAT Gateway-resource toegewezen aan het subnet van de VIRTUELE machine.
Virtuele machines die u maakt met behulp van virtuele-machineschaalsets in de flexibele indelingsmodus, hebben geen standaardtoegang voor uitgaand verkeer.
Zie Voor meer informatie over uitgaande verbindingen in Azure standaard uitgaande toegang in Azure en SNAT (Source Network Address Translation) gebruiken voor uitgaande verbindingen.
IP-configuratie toevoegen
De Azure CNI-invoegtoepassing wijst IP-adressen toe aan containers op basis van een groep IP-adressen die u maakt op de interface van het virtuele netwerk van de virtuele machine. Voor elke container op de host moet er een IP-configuratie bestaan op de interface van het virtuele netwerk. Als het aantal containers op de server de IP-configuraties op de interface van het virtuele netwerk heeft, wordt de container gestart, maar heeft deze geen IP-adres.
In deze sectie voegt u een IP-configuratie toe aan de interface van het virtuele netwerk van de virtuele machine die u eerder hebt gemaakt.
Voer in het zoekvak boven aan de portal virtuele machine in. Selecteer Virtuele machines in de zoekresultaten.
Selecteer vm-1.
Selecteer Netwerken onder Instellingen.
Selecteer de naam van de netwerkinterface naast Netwerkinterface:. De netwerkinterface heet vm-1 met een willekeurig getal.
Selecteer IP-configuraties in Instellingen van de netwerkinterface.
in IP-configuraties selecteert u ipconfig1 in Naam.
Wijzig in de ipconfig1-instellingen de toewijzing van het privé-IP-adres van Dynamisch naar Statisch.
Selecteer Opslaan.
Ga terug naar IP-configuraties.
Selecteer + Toevoegen.
Voer de volgende informatie in of selecteer deze voor IP-configuratie toevoegen:
Instelling Weergegeven als Naam Voer ipconfig-2 in. Instellingen voor persoonlijk IP-adres Toewijzing Selecteer Statisch. IP-adres Voer 10.0.0.5 in. Selecteer OK.
Controleer of ipconfig-2 is toegevoegd als een secundaire IP-configuratie.
Herhaal de vorige stappen om zoveel configuraties toe te voegen als containers die u wilt implementeren op de containerhost.
Docker installeren
De Docker-containerengine moet worden geïnstalleerd en geconfigureerd op de virtuele machine die u eerder hebt gemaakt.
Meld u aan bij de virtuele machine die u eerder hebt gemaakt met de Azure Bastion-host die u hebt geïmplementeerd met het virtuele netwerk.
Voer in het zoekvak boven aan de portal virtuele machine in. Selecteer Virtuele machines in de zoekresultaten.
Selecteer vm-1.
Selecteer verbinding maken in het overzicht van vm-1 en vervolgens Bastion.
Voer de gebruikersnaam en het wachtwoord in die u hebt gemaakt toen u de virtuele machine in de vorige stappen hebt geïmplementeerd.
Selecteer Verbinding maken.
Zie Docker Engine installeren op Ubuntu voor installatie-instructies voor Docker op een Ubuntu-containerhost.
Nadat Docker op de virtuele machine is geïnstalleerd, volgt u de instructies voor de installatie na de installatie van Linux. Zie de stappen na de installatie van Docker Engine voor instructies over de installatie van Linux.
Nadat Docker op uw virtuele machine is geïnstalleerd, gaat u verder met de stappen in dit artikel.
CNI-invoegtoepassing installeren en een testcontainer maken
De Azure CNI-invoegtoepassing wordt onderhouden als een GitHub-project en kan worden gedownload vanaf de GitHub-pagina van het project. Voor dit artikel gebruikt git
u in de virtuele machine om de opslagplaats voor de invoegtoepassing te klonen en vervolgens de invoegtoepassing te installeren en te configureren.
Zie Microsoft Azure Container Networking voor meer informatie over de Azure CNI-invoegtoepassing.
Voer in het zoekvak boven aan de portal virtuele machine in. Selecteer Virtuele machines in de zoekresultaten.
Selecteer vm-1.
Selecteer verbinding maken in het overzicht van vm-1 en vervolgens Bastion.
Voer de gebruikersnaam en het wachtwoord in die u hebt gemaakt toen u de virtuele machine in de vorige stappen hebt geïmplementeerd.
Selecteer Verbinding maken.
De toepassing jq is vereist voor het installatiescript voor de CNI-invoegtoepassing. Gebruik het volgende voorbeeld om de toepassing te installeren:
sudo apt-get update sudo apt-get install jq
Vervolgens kloont u de opslagplaats voor de CNI-invoegtoepassing. Gebruik het volgende voorbeeld om de opslagplaats te klonen:
git clone https://github.com/Azure/azure-container-networking.git
Configureer machtigingen en installeer de CNI-invoegtoepassing. Voor de installatiescriptopdracht is een versienummer vereist voor de CNI-invoegtoepassing. Op het moment van schrijven van dit artikel is
v1.4.39
de nieuwste versie . Zie Releases voor het verkrijgen van het meest recente versienummer van de invoegtoepassing of eerdere versies.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
Als u een container wilt starten met de CNI-invoegtoepassing, moet u een speciaal script gebruiken dat bij de invoegtoepassing wordt geleverd om de container te maken en te starten. In het volgende voorbeeld wordt een Alpine-container gemaakt met het CNI-invoegtoepassingsscript:
sudo ./docker-run.sh vnetdocker1 default alpine
Als u wilt controleren of de container het IP-adres heeft ontvangen dat u eerder hebt geconfigureerd, maakt u verbinding met de container en bekijkt u het IP-adres:
sudo docker exec -it vnetdocker1 /bin/sh
Gebruik de
ifconfig
opdracht in het volgende voorbeeld om te controleren of het IP-adres is toegewezen aan de container:ifconfig
Wanneer u klaar bent met het gebruik van de resources die u hebt gemaakt, kunt u de resourcegroep en alle bijbehorende resources verwijderen.
Zoek en selecteer Resourcegroepen in de Azure-portal.
Selecteer op de pagina Resourcegroepen de resourcegroep test-rg .
Selecteer op de pagina test-rg de optie Resourcegroep verwijderen.
Voer test-rg in Voer de naam van de resourcegroep in om het verwijderen te bevestigen en selecteer vervolgens Verwijderen.
Volgende stappen
In dit artikel hebt u geleerd hoe u de Azure CNI-invoegtoepassing installeert en een testcontainer maakt.
Zie voor meer informatie over Azure-containernetwerken en De Azure Kubernetes-service: