Självstudie: Skapa en VM-skalningsuppsättning och distribuera en app med hög tillgänglighet i Linux

Gäller för: ✔️ Enhetliga skalningsuppsättningar för virtuella Linux-datorer ✔️

Virtual Machine Scale Sets med flexibel orkestrering kan du skapa och hantera en grupp belastningsutjämning av virtuella datorer. Antalet VM-instanser kan automatiskt öka eller minska som svar på efterfrågan eller ett definierat schema.

I den här självstudien distribuerar du en VM-skalningsuppsättning i Azure och lär dig hur du:

  • Skapa en resursgrupp.
  • Skapa en flexibel skalningsuppsättning med en lastbalanserare.
  • Lägg till nginx i skalningsuppsättningsinstanserna.
  • Öppna port 80 till HTTP-trafik.
  • Testa skalningsuppsättningen.

Översikt över skalningsuppsättning

Skalningsuppsättningar ger följande viktiga fördelar:

  • Enkelt att skapa och hantera flera virtuella datorer
  • Ger hög tillgänglighet och programåterhämtning genom att distribuera virtuella datorer mellan feldomäner
  • Tillåter att programmet skalanpassas automatiskt i takt med att resursefterfrågan förändras
  • Fungerar i stor skala

Med flexibel orkestrering ger Azure en enhetlig upplevelse i Azure VM-ekosystemet. Flexibel orkestrering erbjuder garantier om hög tillgänglighet (upp till 1 000 virtuella datorer) genom att virtuella datorer sprids över feldomäner i en region eller inom en tillgänglighetszon. Det gör att du kan skala ut ditt program samtidigt som du upprätthåller feldomänisolering, vilket är viktigt när du kör kvorumbaserade eller tillståndskänsliga arbetsbelastningar, inklusive:

  • Kvorumbaserade arbetsbelastningar
  • Databaser med öppen källkod
  • Tillståndskänsliga program
  • Tjänster som kräver hög tillgänglighet och stor skala
  • Tjänster som behöver blandade typer av virtuella datorer eller som använder virtuella datorer för oanvänd kapacitet och virtuella datorer på begäran tillsammans
  • Befintliga tillgänglighetsuppsättningsprogram

Läs mer om skillnaderna mellan enhetliga skalningsuppsättningar och flexibla skalningsuppsättningar i orkestreringslägen.

Skapa en skalningsuppsättning

Använd Azure Portal för att skapa en flexibel skalningsuppsättning.

  1. Öppna Azure-portalen.
  2. Sök efter och välj Vm-skalningsuppsättning.
  3. Välj Skapasidan Virtual Machine Scale Sets. Skalningsuppsättningen Skapa en virtuell dator öppnas.
  4. Välj den prenumeration som du vill använda för Prenumeration.
  5. För Resursgrupp väljer du Skapa ny och skriver myVMSSRG som namn och väljer sedan OK. Projektinformation.
  6. Ange myVMSS för Vm-skalningsuppsättningens namn.
  7. För Region väljer du en region som ligger nära dig som USA, östra. Namn och region.
  8. Lämna tillgänglighetszonen tom i det här exemplet.
  9. För Orkestreringsläge väljer du Flexibel.
  10. För Bild väljer du Ubuntu 18.04 LTS.
  11. För Storlek lämnar du standardvärdet eller väljer en storlek som Standard_E2s_V3.
  12. I Användarnamn skriver du azureuser.
  13. För offentlig SSH-nyckelkälla lämnar du standardvärdet Generera nytt nyckelpar och skriver sedan myKey som nyckelparnamn. Skärmbild av avsnittet Administratörskonto där du väljer en autentiseringstyp och anger administratörsautentiseringsuppgifterna.
  14. På fliken Nätverk går du till Belastningsutjämning och väljer Använd en lastbalanserare.
  15. För alternativ för belastningsutjämning lämnar du standardinställningen för Azure-lastbalanseraren.
  16. För Välj en lastbalanserare väljer du Skapa ny. Inställningar för lastbalanserare.
  17. På sidan Skapa en lastbalanserare skriver du in ett namn på lastbalanseraren och namnet på den offentliga IP-adressen.
  18. För Domännamnsetikett skriver du in ett namn som ska användas som prefix för ditt domännamn. Det här namnet måste vara unikt.
  19. När du är färdig väljer du Skapa. Skapa en lastbalanserare.
  20. På fliken Nätverk lämnar du standardnamnet för serverdelspoolen.
  21. På fliken Skalning lämnar du standardinstansantalet som 2 eller lägger till ditt eget värde. Det här är antalet virtuella datorer som skapas, så var medveten om kostnaderna och gränserna för din prenumeration om du ändrar det här värdet.
  22. Låt skalningsprincipen vara inställd på Manuell. Skalningsprincipinställningar.
  23. Välj fliken Avancerat.
  24. Under Anpassad data och moln-init kopierar du följande och klistrar in dem i textrutan Anpassade data :
    #cloud-config
    package_upgrade: true
    packages:
      - nginx
      - nodejs
      - npm
    write_files:
      - owner: www-data:www-data
      - path: /etc/nginx/sites-available/default
        content: |
          server {
            listen 80;
            location / {
              proxy_pass http://localhost:3000;
              proxy_http_version 1.1;
              proxy_set_header Upgrade $http_upgrade;
              proxy_set_header Connection keep-alive;
              proxy_set_header Host $host;
              proxy_cache_bypass $http_upgrade;
            }
          }
      - owner: azureuser:azureuser
      - path: /home/azureuser/myapp/index.js
        content: |
          var express = require('express')
          var app = express()
          var os = require('os');
          app.get('/', function (req, res) {
            res.send('Hello World from host ' + os.hostname() + '!')
          })
          app.listen(3000, function () {
            console.log('Hello world app listening on port 3000!')
          })
    runcmd:
      - service nginx restart
      - cd "/home/azureuser/myapp"
      - npm init
      - npm install express -y
      - nodejs index.js
    
  25. När du är klar väljer du Granska + skapa.
  26. När du ser att valideringen har slutförts kan du välja Skapa längst ned på sidan för att distribuera skalningsuppsättningen.
  27. När fönstret Generera nytt nyckelpar öppnas väljer du Ladda ned privat nyckel och skapar resurs. Din nyckelfil laddas ned som myKey.pem. Kontrollera att du vet var .pem filen laddades ned. Du behöver sökvägen till den i nästa steg.
  28. När distributionen är klar väljer du Gå till resurs för att se skalningsuppsättningen.

Visa de virtuella datorerna i din skalningsuppsättning

På sidan för skalningsuppsättningen väljer du Instanser på den vänstra menyn.

Du ser en lista över virtuella datorer som ingår i din skalningsuppsättning. Listan innehåller:

  • Namnet på den virtuella datorn
  • Datornamnet som används av den virtuella datorn.
  • Aktuell status för den virtuella datorn, till exempel Körs.
  • Etableringstillståndet för den virtuella datorn, till exempel Lyckades.

Tabell med information om skalningsuppsättningsinstanserna.

Öppna port 80

Öppna port 80 på din skalningsuppsättning genom att lägga till en inkommande regel i nätverkssäkerhetsgruppen (NSG).

  1. På sidan för skalningsuppsättningen väljer du Nätverk på den vänstra menyn. Sidan Nätverk öppnas.
  2. Välj Lägg till regel för inkommande port. Sidan Lägg till inkommande säkerhetsregel öppnas.
  3. Under Tjänst väljer du HTTP och sedan Lägg till längst ned på sidan.

Testa din skalningsuppsättning

Testa din skalningsuppsättning genom att ansluta till den från en webbläsare.

  1. På sidan Översikt för din skalningsuppsättning kopierar du den offentliga IP-adressen.
  2. Öppna en annan flik i webbläsaren och klistra in IP-adressen i adressfältet.
  3. När sidan läses in noterar du det beräkningsnamn som visas.
  4. Uppdatera sidan tills datorns namn ändras.

Ta bort din skalningsuppsättning

När du är klar bör du ta bort resursgruppen, som tar bort allt du har distribuerat för din skalningsuppsättning.

  1. På sidan för skalningsuppsättningen väljer du resursgruppen. Sidan för resursgruppen öppnas.
  2. Längst upp på sidan väljer du Ta bort resursgrupp.
  3. På sidan Är du säker på att du vill ta bort skriver du in namnet på resursgruppen och väljer sedan Ta bort.

Nästa steg

I den här självstudien skapade du en VM-skalningsuppsättning. Du har lärt dig att:

  • Skapa en resursgrupp.
  • Skapa en flexibel skalningsuppsättning med en lastbalanserare.
  • Lägg till nginx i skalningsuppsättningsinstanserna.
  • Öppna port 80 till HTTP-trafik.
  • Testa skalningsuppsättningen.

Gå vidare till nästa självstudie för att lära dig mer om belastningsutjämning för virtuella datorer.