Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: ✔️ Linux-VMs ✔️ Flexible Skalierungsgruppen
In diesem Artikel erfahren Sie, wie Sie eine VM mit mehreren Netzwerkkarten mithilfe der Azure CLI erstellen.
Erstellen von unterstützenden Ressourcen
Installieren Sie die neueste Version der Azure CLI, und melden Sie sich mit az login bei einem Azure-Konto an.
Ersetzen Sie in den folgenden Beispielen die Beispielparameternamen durch Ihre eigenen Werte. Beispielparameternamen sind u.a. myResourceGroup, mystorageaccount und myVM.
Erstellen Sie zunächst mit az group create eine Ressourcengruppe. Das folgende Beispiel erstellt eine Ressourcengruppe mit dem Namen myResourceGroup am Standort eastus. In diesen Beispielen deklarieren wir Umgebungsvariablen, während sie verwendet werden, und fügen einem eindeutigen Ressourcennamen ein zufälliges Suffix hinzu.
export RANDOM_SUFFIX=$(openssl rand -hex 3)
export MY_RESOURCE_GROUP_NAME="myResourceGroup$RANDOM_SUFFIX"
export REGION="WestUS2"
az group create --name $MY_RESOURCE_GROUP_NAME --___location $REGION
{
"id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx",
"___location": "WestUS2",
"managedBy": null,
"name": "myResourceGroupxxx",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
Erstellen Sie das virtuelle Netzwerk mit az network vnet create. Im folgenden Beispiel werden das virtuelle Netzwerk myVnet und das Subnetz mySubnetFrontEnd erstellt:
export VNET_NAME="myVnet"
export FRONTEND_SUBNET="mySubnetFrontEnd"
az network vnet create \
--resource-group $MY_RESOURCE_GROUP_NAME \
--name $VNET_NAME \
--address-prefix 10.0.0.0/16 \
--subnet-name $FRONTEND_SUBNET \
--subnet-prefix 10.0.1.0/24
Erstellen Sie mit az network vnet subnet create ein Subnetz für den Back-End-Datenverkehr. Im folgenden Beispiel wird das Subnetz mySubnetBackEnd erstellt:
export BACKEND_SUBNET="mySubnetBackEnd"
az network vnet subnet create \
--resource-group $MY_RESOURCE_GROUP_NAME \
--vnet-name $VNET_NAME \
--name $BACKEND_SUBNET \
--address-prefix 10.0.2.0/24
Erstellen Sie mit az network nsg create eine Netzwerksicherheitsgruppe. Im folgenden Beispiel wird eine Netzwerksicherheitsgruppe namens myNetworkSecurityGroup erstellt:
export NSG_NAME="myNetworkSecurityGroup"
az network nsg create \
--resource-group $MY_RESOURCE_GROUP_NAME \
--name $NSG_NAME
Erstellen und Konfigurieren mehrerer Netzwerkkarten
Erstellen Sie mit az network nic create zwei Netzwerkkarten. Im folgenden Beispiel werden zwei NICs mit dem Namen "myNic1 " und "myNic2" erstellt, die mit der Netzwerksicherheitsgruppe verbunden sind, wobei eine NIC mit jedem Subnetz verbunden ist:
export NIC1="myNic1"
export NIC2="myNic2"
az network nic create \
--resource-group $MY_RESOURCE_GROUP_NAME \
--name $NIC1 \
--vnet-name $VNET_NAME \
--subnet $FRONTEND_SUBNET \
--network-security-group $NSG_NAME
az network nic create \
--resource-group $MY_RESOURCE_GROUP_NAME \
--name $NIC2 \
--vnet-name $VNET_NAME \
--subnet $BACKEND_SUBNET \
--network-security-group $NSG_NAME
Erstellen eines virtuellen Computers und Anfügen der Netzwerkkarten
Wenn Sie den virtuellen Computer erstellen, geben Sie die NICs an, die Sie mit --nics erstellt haben. Gehen Sie umsichtig vor, wenn Sie die Größe der virtuellen Computer auswählen. Sie können einem virtuellen Computer nur eine bestimmte Anzahl von Netzwerkkarten hinzufügen. Weitere Informationen finden Sie unter Linux-VM-Größen.
Erstellen Sie mit az vm create einen virtuellen Computer. Im folgenden Beispiel wird ein virtueller Computer namens myVM erstellt:
export VM_NAME="myVM"
az vm create \
--resource-group $MY_RESOURCE_GROUP_NAME \
--name $VM_NAME \
--image Ubuntu2204 \
--size Standard_DS3_v2 \
--admin-username azureuser \
--generate-ssh-keys \
--nics $NIC1 $NIC2
Fügen Sie dem Gastbetriebssystem Routingtabellen hinzu, indem Sie die Schritte unter Konfigurieren des Gastbetriebssystems für mehrere Netzwerkadapter ausführen.
Hinzufügen einer Netzwerkkarte zu einem virtuellen Computer
In den vorangegangenen Schritten wurde ein virtueller Computer mit mehreren Netzwerkkarten erstellt. Sie können mit der Azure CLI auch einer vorhandenen VM Netzwerkkarten hinzufügen. Verschiedene VM-Größen unterstützen eine unterschiedliche Anzahl von Netzwerkkarten, passen Sie die Größe Ihres virtuellen Computers daher entsprechend an. Bei Bedarf können Sie die Größe eines virtuellen Computers ändern.
Erstellen Sie mit az network nic create eine weitere Netzwerkkarte. Das folgende Beispiel erstellt die Netzwerkkarte myNic3, die mit dem Back-End-Subnetz und der Netzwerksicherheitsgruppe verbunden ist, die in den vorherigen Schritten erstellt wurden:
export NIC3="myNic3"
az network nic create \
--resource-group $MY_RESOURCE_GROUP_NAME \
--name $NIC3 \
--vnet-name $VNET_NAME \
--subnet $BACKEND_SUBNET \
--network-security-group $NSG_NAME
Um einem vorhandenen virtuellen Computer eine Netzwerkkarte hinzuzufügen, heben Sie zunächst die Zuordnung des virtuellen Computers mit az vm deallocate auf. Im folgenden Beispiel wird die Zuordnung für den virtuellen Computer myVM aufgehoben:
az vm deallocate --resource-group $MY_RESOURCE_GROUP_NAME --name $VM_NAME
Fügen Sie die Netzwerkkarte mit az vm nic add hinzu. Im folgenden Beispiel wird myVM die Netzwerkkarte myNic3 hinzugefügt:
az vm nic add \
--resource-group $MY_RESOURCE_GROUP_NAME \
--vm-name $VM_NAME \
--nics $NIC3
Starten Sie den virtuellen Computer mit az vm start:
az vm start --resource-group $MY_RESOURCE_GROUP_NAME --name $VM_NAME
Fügen Sie dem Gastbetriebssystem Routingtabellen hinzu, indem Sie die Schritte unter Konfigurieren des Gastbetriebssystems für mehrere Netzwerkadapter ausführen.
Entfernen einer Netzwerkkarte von einem virtuellen Computer
Um eine Netzwerkkarte von einem vorhandenen virtuellen Computer zu entfernen, heben Sie zunächst die Zuordnung des virtuellen Computers mit az vm deallocate auf. Im folgenden Beispiel wird die Zuordnung für den virtuellen Computer myVM aufgehoben:
az vm deallocate --resource-group $MY_RESOURCE_GROUP_NAME --name $VM_NAME
Entfernen Sie die Netzwerkkarte mit az vm nic remove. Im folgenden Beispiel wird myNic3 von myVM entfernt:
az vm nic remove \
--resource-group $MY_RESOURCE_GROUP_NAME \
--vm-name $VM_NAME \
--nics $NIC3
Starten Sie den virtuellen Computer mit az vm start:
az vm start --resource-group $MY_RESOURCE_GROUP_NAME --name $VM_NAME
Erstellen von mehreren Netzwerkkarten mithilfe von Resource Manager-Vorlagen
Azure Resource Manager-Vorlagen verwenden deklarative JSON-Dateien zum Definieren Ihrer Umgebung. Lesen Sie eine Übersicht über Azure Resource Manager. Resource Manager-Vorlagen bieten eine Möglichkeit, während der Bereitstellung mehrere Instanzen einer Ressource zu erstellen – z.B. mehrere Netzwerkkarten. Mit copy geben Sie die Anzahl der zu erstellenden Instanzen an:
"copy": {
"name": "multiplenics"
"count": "[parameters('count')]"
}
Informieren Sie sich über das Erstellen mehrerer Instanzen mithilfe von copy.
Sie können auch einen copyIndex() verwenden, um dann eine Zahl an einen Ressourcennamen anzufügen, wodurch Sie myNic1, myNic2 usw. erstellen können. Im Folgenden sehen Sie ein Beispiel für das Anfügen des Indexwerts:
"name": "[concat('myNic', copyIndex())]",
Ein vollständiges Beispiel finden Sie unter Erstellen von mehreren Netzwerkkarten mithilfe von Resource Manager-Vorlagen.
Fügen Sie dem Gastbetriebssystem Routingtabellen hinzu, indem Sie die Schritte unter Konfigurieren des Gastbetriebssystems für mehrere Netzwerkadapter ausführen.
Konfigurieren von Gastbetriebssystem für mehrere Netzwerkadapter
Im vorherigen Schritt wurden ein virtuelles Netzwerk und Subnetz erstellt, dann wurden Netzwerkadapter angefügt, und anschließend wurde ein virtueller Computer erstellt. Eine öffentliche IP-Adresse und Netzwerksicherheitsgruppen-Regeln, die SSH-Datenverkehr zulassen, wurden nicht erstellt. Um das Gastbetriebssystem für mehrere Netzwerkadapter zu konfigurieren, müssen Sie Remoteverbindungen zulassen und Befehle lokal auf dem virtuellen Computer ausführen.
Erstellen Sie mit az network nsg rule create wie folgt eine Netzwerksicherheitsgruppen-Regel, um SSH-Datenverkehr zuzulassen:
az network nsg rule create \
--resource-group $MY_RESOURCE_GROUP_NAME \
--nsg-name $NSG_NAME \
--name allow_ssh \
--priority 101 \
--destination-port-ranges 22
Erstellen Sie eine öffentliche IP-Adresse mit az network public-ip create, und weisen Sie sie dem ersten Netzwerkadapter mit az network nic ip-config update zu:
export PUBLIC_IP_NAME="myPublicIP"
az network public-ip create --resource-group $MY_RESOURCE_GROUP_NAME --name $PUBLIC_IP_NAME
az network nic ip-config update \
--resource-group $MY_RESOURCE_GROUP_NAME \
--nic-name $NIC1 \
--name ipconfig1 \
--public-ip $PUBLIC_IP_NAME
Verwenden Sie az vm show wie folgt, um die öffentliche IP-Adresse der VM anzuzeigen:
az vm show --resource-group $MY_RESOURCE_GROUP_NAME --name $VM_NAME -d --query publicIps -o tsv
x.x.x.x
Stellen Sie nun eine SSH-Verbindung mit der öffentlichen IP-Adresse Ihres virtuellen Computers her. Der in einem vorherigen Schritt angegebene Standardbenutzername war azureuser. Geben Sie Ihren eigenen Benutzernamen und die öffentliche IP-Adresse an:
export IP_ADDRESS=$(az vm show --resource-group $MY_RESOURCE_GROUP_NAME --name $VM_NAME -d --query publicIps -o tsv)
ssh -o StrictHostKeyChecking=no azureuser@$IP_ADDRESS
Zum Senden an oder von einer sekundären Netzwerkschnittstelle müssen Sie manuell für jede sekundäre Netzwerkschnittstelle beständige Routen zum Betriebssystem hinzufügen. In diesem Artikel ist eth1 die sekundäre Schnittstelle. Anweisungen zum Hinzufügen beständiger Routen zum Betriebssystem variieren je nach Distribution. Anweisungen finden Sie in der Dokumentation für Ihre Distribution.
Wenn Sie die Route zum Betriebssystem hinzufügen, ist die Gatewayadresse die erste Adresse des Subnetzes, in dem sich die Netzwerkschnittstelle befindet. Wenn z. B. dem Subnetz der Bereich 10.0.2.0/24 zugewiesen wurde, lautet das für die Route angegebene Gateway 10.0.2.1 oder wenn dem Subnetz der Bereich 10.0.2.128/25 zugewiesen wurde, lautet das gateway, das Sie für die Route angeben, 10.0.2.129. Sie können ein bestimmtes Netzwerk für das Ziel der Route definieren oder ein Ziel von 0.0.0.0.0 angeben, wenn der gesamte Datenverkehr für die Schnittstelle über das angegebene Gateway geleitet werden soll. Das Gateway für jedes Subnetz wird vom virtuellen Netzwerk verwaltet.
Nachdem Sie die Route für eine sekundäre Schnittstelle hinzugefügt haben, prüfen Sie, ob die Route in der Routingtabelle mit route -n
enthalten ist. Die folgende Beispielausgabe gilt für die Routingtabelle, die die beiden Netzwerkschnittstellen enthält, die in diesem Artikel dem virtuellen Computer hinzugefügt wurden:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.1.1 0.0.0.0 UG 0 0 0 eth0
0.0.0.0 10.0.2.1 0.0.0.0 UG 0 0 0 eth1
10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
168.63.129.16 10.0.1.1 255.255.255.255 UGH 0 0 0 eth0
169.254.169.254 10.0.1.1 255.255.255.255 UGH 0 0 0 eth0
Vergewissern Sie sich, dass die hinzugefügte Route nach einem Neustart beibehalten wird, indem Sie die Routingtabelle nach einem Neustart erneut prüfen. Um die Konnektivität zu testen, können Sie beispielsweise den folgenden Befehl eingeben, wobei eth1 der Name einer sekundären Netzwerkschnittstelle ist: ping bing.com -c 4 -I eth1
Nächste Schritte
Überprüfen Sie die Linux-VM-Größen, wenn Sie einen virtuellen Computer mit mehreren Netzwerkkarten erstellen. Achten Sie auf die maximale Anzahl von Netzwerkkarten, die von jeder VM-Größe unterstützt wird.
Schützen Sie Ihre virtuellen Computer zusätzlich mit Just-in-Time-VM-Zugriff. Dieses Feature öffnet bei Bedarf und für einen festgelegten Zeitraum Netzwerksicherheitsgruppen-Regeln für den SSH-Datenverkehr. Weitere Informationen finden Sie unter Verwalten des Zugriffs auf virtuelle Computer mithilfe des Just-In-Time-Features.