Připojení virtuálních sítí pomocí partnerského vztahu virtuálních sítí pomocí Azure CLI

Virtuální sítě můžete mezi sebou propojit s využitím partnerského vztahu virtuálních sítí. Po vytvoření partnerského vztahu virtuálních sítí budou moct prostředky v obou virtuálních sítích komunikovat mezi sebou se stejnou latencí a šířkou pásma, jako kdyby byly ve stejné virtuální síti. V tomto článku získáte informace o těchto tématech:

  • Vytvoření dvou virtuálních sítí
  • Propojení dvou virtuálních sítí s využitím partnerského vztahu virtuálních sítí
  • Nasazení virtuálního počítače do obou virtuálních sítí
  • Komunikace mezi virtuálními počítači

Pokud nemáte předplatné Azure, vytvořte si bezplatný účet Azure , než začnete.

Požadavky

  • Tento článek vyžaduje azure CLI verze 2.0.28 nebo novější. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze.

Vytvoření virtuálních sítí

Před vytvořením virtuální sítě musíte vytvořit skupinu prostředků pro virtuální síť a všechny ostatní prostředky vytvořené v tomto článku. Vytvořte skupinu prostředků pomocí příkazu az group create. Následující příklad vytvoří skupinu prostředků myResourceGroup v umístění eastus.

az group create --name myResourceGroup --location eastus

Vytvořte virtuální síť pomocí příkazu az network vnet create. Následující příklad vytvoří virtuální síť myVirtualNetwork1 s předponou adresy 10.0.0.0/16.

az network vnet create \
  --name myVirtualNetwork1 \
  --resource-group myResourceGroup \
  --address-prefixes 10.0.0.0/16 \
  --subnet-name Subnet1 \
  --subnet-prefix 10.0.0.0/24

Vytvořte virtuální síť myVirtualNetwork2 s předponou adresy 10.1.0.0/16:

az network vnet create \
  --name myVirtualNetwork2 \
  --resource-group myResourceGroup \
  --address-prefixes 10.1.0.0/16 \
  --subnet-name Subnet1 \
  --subnet-prefix 10.1.0.0/24

Vytvoření partnerského vztahu virtuálních sítí

Partnerské vztahy se navazují mezi ID virtuální sítě, takže nejprve musíte získat ID každé virtuální sítě pomocí příkazu az network vnet show a uložit ID do proměnné.

# Get the id for myVirtualNetwork1.
vNet1Id=$(az network vnet show \
  --resource-group myResourceGroup \
  --name myVirtualNetwork1 \
  --query id --out tsv)

# Get the id for myVirtualNetwork2.
vNet2Id=$(az network vnet show \
  --resource-group myResourceGroup \
  --name myVirtualNetwork2 \
  --query id \
  --out tsv)

Vytvořte partnerský vztah z myVirtualNetwork1 na myVirtualNetwork2 pomocí příkazu az network vnet peering create. --allow-vnet-access Pokud parametr není zadaný, vytvoří se partnerský vztah, ale nemůže přes něj protékat žádná komunikace.

az network vnet peering create \
  --name myVirtualNetwork1-myVirtualNetwork2 \
  --resource-group myResourceGroup \
  --vnet-name myVirtualNetwork1 \
  --remote-vnet $vNet2Id \
  --allow-vnet-access

Ve výstupu vráceném po spuštění předchozího příkazu uvidíte, že peeringState je inicializován. Partnerský vztah zůstane ve stavu Inicializován , dokud nevytvoříte partnerský vztah z myVirtualNetwork2 do myVirtualNetwork1. Vytvořte partnerský vztah z myVirtualNetwork2 na myVirtualNetwork1.

az network vnet peering create \
  --name myVirtualNetwork2-myVirtualNetwork1 \
  --resource-group myResourceGroup \
  --vnet-name myVirtualNetwork2 \
  --remote-vnet $vNet1Id \
  --allow-vnet-access

Ve výstupu vráceném po provedení předchozího příkazu uvidíte, že peeringState je Připojeno. Azure také změnilo stav partnerského vztahu myVirtualNetwork1-myVirtualNetwork2 na Připojený. Ověřte, že se stav partnerského vztahu myVirtualNetwork1-myVirtualNetwork2 změnil na Connected withaz network vnet peering show.

az network vnet peering show \
  --name myVirtualNetwork1-myVirtualNetwork2 \
  --resource-group myResourceGroup \
  --vnet-name myVirtualNetwork1 \
  --query peeringState

Prostředky v jedné virtuální síti nemůžou komunikovat s prostředky v druhé virtuální síti, dokud stav peeringu pro partnerské vztahy v obou virtuálních sítích není Připojeno.

Vytvoření virtuálních počítačů

Vytvořte v obou virtuálních sítích virtuální počítač, abyste mezi nimi mohli v pozdějším kroku navázat komunikaci.

Vytvoření prvního virtuálního počítače

Vytvořte virtuální počítač pomocí příkazu az vm create. Následující příklad vytvoří virtuální počítač myVm1 ve virtuální síti myVirtualNetwork1 . Pokud ve výchozím umístění klíčů ještě neexistují klíče SSH, příkaz je vytvoří. Chcete-li použít konkrétní sadu klíčů, použijte možnost --ssh-key-value. Tato --no-wait možnost vytvoří virtuální počítač na pozadí, takže můžete pokračovat k dalšímu kroku.

az vm create \
  --resource-group myResourceGroup \
  --name myVm1 \
  --image UbuntuLTS \
  --vnet-name myVirtualNetwork1 \
  --subnet Subnet1 \
  --generate-ssh-keys \
  --no-wait

Vytvoření druhého virtuálního počítače

Vytvořte virtuální počítač ve virtuální síti myVirtualNetwork2 .

az vm create \
  --resource-group myResourceGroup \
  --name myVm2 \
  --image UbuntuLTS \
  --vnet-name myVirtualNetwork2 \
  --subnet Subnet1 \
  --generate-ssh-keys

Vytvoření virtuálního počítače trvá několik minut. Po vytvoření virtuálního počítače se v Azure CLI zobrazí podobné informace jako v následujícím příkladu:

{
  "fqdns": "",
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVm2",
  "location": "eastus",
  "macAddress": "00-0D-3A-23-9A-49",
  "powerState": "VM running",
  "privateIpAddress": "10.1.0.4",
  "publicIpAddress": "13.90.242.231",
  "resourceGroup": "myResourceGroup"
}

Poznamenejte si hodnotu publicIpAddress. Tato adresa se použije pro přístup k virtuálnímu počítači z internetu v pozdějším kroku.

Poznámka

Azure poskytuje výchozí ip adresu odchozího přístupu pro virtuální počítače, které nemají přiřazenou veřejnou IP adresu nebo jsou v back-endovém fondu interního nástroje pro vyrovnávání zatížení Azure basic. Výchozí mechanismus ip adres odchozího přístupu poskytuje odchozí IP adresu, kterou nelze konfigurovat.

Výchozí ip adresa odchozího přístupu je zakázaná, když je virtuálnímu počítači přiřazená veřejná IP adresa, virtuální počítač se umístí do back-endového fondu nástroje pro vyrovnávání zatížení úrovně Standard, s odchozími pravidly nebo bez něj nebo pokud je k podsíti virtuálního počítače přiřazen prostředek služby Azure Virtual Network NAT Gateway.

Virtuální počítače vytvořené škálovacími sadami virtuálních počítačů v režimu flexibilní orchestrace nemají výchozí odchozí přístup.

Další informace o odchozích připojeních v Azure najdete v tématech Výchozí odchozí přístup v Azure a Použití překladu zdrojových síťových adres (SNAT) pro odchozí připojení.

Komunikace mezi virtuálními počítači

Pomocí následujícího příkazu vytvořte relaci SSH s virtuálním počítačem myVm2 . Nahraďte <publicIpAddress> veřejnou IP adresou virtuálního počítače. V předchozím příkladu je veřejná IP adresa 13.90.242.231.

ssh <publicIpAddress>

Ping virtuální počítač v myVirtualNetwork1.

ping 10.0.0.4 -c 4

Dostanete čtyři odpovědi.

Zavřete relaci SSH k virtuálnímu počítači myVm2 .

Vyčištění prostředků

Pokud už je nepotřebujete, pomocí příkazu az group delete odeberte skupinu prostředků a všechny prostředky, které obsahuje.

az group delete --name myResourceGroup --yes

Další kroky

V tomto článku jste se dozvěděli, jak propojit dvě sítě ve stejné oblasti Azure pomocí partnerského vztahu virtuálních sítí. Můžete vytvářet také partnerské vztahy virtuálních sítí v různých podporovaných oblastech a různých předplatných Azure, stejně jako vytvářet návrhy hvězdicovitých sítí s partnerskými vztahy. Další informace o partnerských vztazích virtuálních sítí najdete v tématech Přehled partnerských vztahů virtuálních sítí a Správa partnerských vztahů virtuálních sítí.

Vlastní počítač můžete připojit k virtuální síti prostřednictvím sítě VPN a pracovat s prostředky ve virtuální síti nebo v partnerských virtuálních sítích. Informace o opakovaně použitelných skriptech k dokončení mnoha úloh popsaných v článcích o virtuální síti najdete v ukázkách skriptů.