Dela via


Skapa en virtuell dator (klassisk) med flera nätverkskort med hjälp av klassiska Azure CLI

Du kan skapa virtuella datorer (VM) i Azure och koppla flera nätverksgränssnitt (NIC) till var och en av dina virtuella datorer. Flera nätverkskort möjliggör separation av trafiktyper mellan nätverkskort. Ett nätverkskort kan till exempel kommunicera med Internet, medan ett annat endast kommunicerar med interna resurser som inte är anslutna till Internet. Möjligheten att separera nätverkstrafik mellan flera nätverkskort krävs för många virtuella nätverksinstallationer, till exempel programleverans och WAN-optimeringslösningar.

Viktigt

Azure har två olika distributionsmodeller för att skapa och arbeta med resurser: Resource Manager och klassisk. Den här artikeln beskriver den klassiska distributionsmodellen. Microsoft rekommenderar att de flesta nya distributioner använder Resource Manager-modellen. Lär dig hur du utför de här stegen med hjälp av distributionsmodellen Resource Manager.

Scenario

Det här dokumentet går igenom en distribution som använder flera nätverkskort i virtuella datorer i ett specifikt scenario. I det här scenariot har du en IaaS-arbetsbelastning med två nivåer i Azure. Varje nivå distribueras i ett eget undernät i ett virtuellt nätverk (VNet). Klientdelsnivån består av flera webbservrar, grupperade i en lastbalanserare för hög tillgänglighet. Serverdelsnivån består av flera databasservrar. Databasservrarna distribueras med två nätverkskort vardera, en för databasåtkomst, den andra för hantering. Scenariot innehåller även nätverkssäkerhetsgrupper (NSG:er) för att styra vilken trafik som tillåts till varje undernät och nätverkskort i distributionen. Följande bild visar den grundläggande arkitekturen i det här scenariot:

MultiNIC-scenario

I följande steg används en resursgrupp med namnet IaaSStory för WEBB-servrarna och en resursgrupp med namnet IaaSStory-BackEnd för DB-servrarna .

Förutsättningar

Innan du kan skapa DB-servrarna måste du skapa IaaSStory-resursgruppen med alla nödvändiga resurser för det här scenariot. Skapa de här resurserna genom att följa stegen nedan. Skapa ett virtuellt nätverk genom att följa stegen i artikeln Skapa ett virtuellt nätverk .

Krav: Installera Azure CLI

Om du vill utföra stegen i den här artikeln installerar du Azure CLI och loggar in på Azure.

Anteckning

Om du inte har något Azure-konto behöver du ett. Registrera dig för en kostnadsfri utvärderingsversion här. Om du vill följa med måste du dessutom ha antingen jq eller något annat JSON-parsningsverktyg eller bibliotek installerat.

Distribuera de virtuella serverdelsdatorerna

De virtuella serverdelsdatorerna är beroende av att följande resurser skapas:

  • Lagringskonto för datadiskar. För bättre prestanda använder datadiskarna på databasservrarna SSD-teknik (Solid State Drive), vilket kräver ett premiumlagringskonto. Kontrollera att den Azure-plats som du distribuerar har stöd för Premium Storage.
  • Nätverkskort. Varje virtuell dator har två nätverkskort, en för databasåtkomst och en för hantering.
  • Tillgänglighetsuppsättning. Alla databasservrar läggs till i en enda tillgänglighetsuppsättning för att säkerställa att minst en av de virtuella datorerna är igång under underhåll.

Steg 1 – Starta skriptet

Du kan ladda ned det fullständiga bash-skriptet som används här. Utför följande steg för att ändra skriptet så att det fungerar i din miljö:

  1. Ändra värdena för variablerna nedan baserat på din befintliga resursgrupp som distribueras ovan i Krav.

     location="useast2"
     vnetName="WTestVNet"
     backendSubnetName="BackEnd"
    
  2. Ändra värdena för variablerna nedan baserat på de värden som du vill använda för serverdelsdistributionen.

     backendCSName="IaaSStory-Backend"
     prmStorageAccountName="iaasstoryprmstorage"
     image="0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1"
     avSetName="ASDB"
     vmSize="Standard_DS3"
     diskSize=127
     vmNamePrefix="DB"
     osDiskName="osdiskdb"
     dataDiskPrefix="db"
     dataDiskName="datadisk"
     ipAddressPrefix="192.168.2."
     username='adminuser'
     password='adminP@ssw0rd'
     numberOfVMs=2
    

Steg 2 – Skapa nödvändiga resurser för dina virtuella datorer

  1. Skapa en ny molntjänst för alla virtuella serverdelsdatorer. Observera användningen av variabeln $backendCSName för resursgruppens namn och $location för Azure-regionen.

     azure service create --serviceName $backendCSName \
     	--location $location
    
  2. Skapa ett Premium Storage-konto för operativsystemet och datadiskarna som ska användas av dina virtuella datorer.

     azure storage account create $prmStorageAccountName \
     	--location $location \
     	--type PLRS
    

Steg 3 – Skapa virtuella datorer med flera nätverkskort

  1. Starta en loop för att skapa flera virtuella datorer baserat på variablerna numberOfVMs .

     for ((suffixNumber=1;suffixNumber<=numberOfVMs;suffixNumber++));
     do
    
  2. För varje virtuell dator anger du namn och IP-adress för var och en av de två nätverkskorten.

     nic1Name=$vmNamePrefix$suffixNumber-DA
     x=$((suffixNumber+3))
     ipAddress1=$ipAddressPrefix$x
    
     nic2Name=$vmNamePrefix$suffixNumber-RA
     x=$((suffixNumber+53))
     ipAddress2=$ipAddressPrefix$x
    
  3. Skapa den virtuella datorn. Observera användningen av parametern --nic-config som innehåller en lista över alla nätverkskort med namn, undernät och IP-adress.

     azure vm create $backendCSName $image $username $password \
     	--connect $backendCSName \
     	--vm-name $vmNamePrefix$suffixNumber \
     	--vm-size $vmSize \
     	--availability-set $avSetName \
     	--blob-url $prmStorageAccountName.blob.core.windows.net/vhds/$osDiskName$suffixNumber.vhd \
     	--virtual-network-name $vnetName \
     	--subnet-names $backendSubnetName \
     	--nic-config $nic1Name:$backendSubnetName:$ipAddress1::,$nic2Name:$backendSubnetName:$ipAddress2::
    
  4. Skapa två datadiskar för varje virtuell dator.

     azure vm disk attach-new $vmNamePrefix$suffixNumber \
     	$diskSize \
     	vhds/$dataDiskPrefix$suffixNumber$dataDiskName-1.vhd
    
     azure vm disk attach-new $vmNamePrefix$suffixNumber \
     	$diskSize \
     	vhds/$dataDiskPrefix$suffixNumber$dataDiskName-2.vhd
     done
    

Steg 4 – Kör skriptet

Nu när du har laddat ned och ändrat skriptet baserat på dina behov kör du skriptet för att skapa de virtuella datorerna för serverdelsdatabasen med flera nätverkskort.

  1. Spara skriptet och kör det från Bash-terminalen . Du ser de första utdata som visas nedan.

     info:    Executing command service create
     info:    Creating cloud service
     data:    Cloud service name IaaSStory-Backend
     info:    service create command OK
     info:    Executing command storage account create
     info:    Creating storage account
     info:    storage account create command OK
     info:    Executing command vm create
     info:    Looking up image 0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1
     info:    Looking up virtual network
     info:    Looking up cloud service
     info:    Getting cloud service properties
     info:    Looking up deployment
     info:    Creating VM
    
  2. Efter några minuter avslutas körningen och resten av utdata visas enligt nedan.

     info:    OK
     info:    vm create command OK
     info:    Executing command vm disk attach-new
     info:    Getting virtual machines
     info:    Adding Data-Disk
     info:    vm disk attach-new command OK
     info:    Executing command vm disk attach-new
     info:    Getting virtual machines
     info:    Adding Data-Disk
     info:    vm disk attach-new command OK
     info:    Executing command vm create
     info:    Looking up image 0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1
     info:    Looking up virtual network
     info:    Looking up cloud service
     info:    Getting cloud service properties
     info:    Looking up deployment
     info:    Creating VM
     info:    OK
     info:    vm create command OK
     info:    Executing command vm disk attach-new
     info:    Getting virtual machines
     info:    Adding Data-Disk
     info:    vm disk attach-new command OK
     info:    Executing command vm disk attach-new
     info:    Getting virtual machines
     info:    Adding Data-Disk
     info:    vm disk attach-new command OK
    

Steg 5 – Konfigurera routning i den virtuella datorns operativsystem

Azure DHCP tilldelar en standardgateway till det första (primära) nätverksgränssnittet som är kopplat till den virtuella datorn. Azure tilldelar inte en standardgateway till ytterligare (sekundära) nätverksgränssnitt som är kopplade till en virtuell dator. Du kan därför som standard inte kommunicera med resurser utanför det undernät som är ett sekundärt nätverksgränssnitt befinner sig i. Sekundära nätverksgränssnitt kan dock kommunicera med resurser utanför deras undernät. Information om hur du konfigurerar routning för sekundära nätverksgränssnitt finns i Routning i ett virtuellt datoroperativsystem med flera nätverksgränssnitt.