Exempel på genomgång av Azure-infrastruktur för virtuella Linux-datorer

Den här artikeln beskriver hur du skapar en exempelinfrastruktur för program. Vi går in på hur du utformar en infrastruktur för ett enkelt onlinearkiv som samlar alla riktlinjer och beslut kring namngivningskonventioner, tillgänglighetsuppsättningar, virtuella nätverk och lastbalanserare och faktiskt distribuerar dina virtuella datorer.

Exempelarbetsbelastning

Adventure Works Cycles vill skapa ett onlinebutiksprogram i Azure som består av:

  • Två nginx-servrar som kör klientklientdelen på en webbnivå
  • Två nginx-servrar som bearbetar data och beställningar på en programnivå
  • Två MongoDB-servrar som ingår i ett fragmenterat kluster för lagring av produktdata och beställningar på en databasnivå
  • Två Active Directory-domänkontrollanter för kundkonton och leverantörer på en autentiseringsnivå
  • Alla servrar finns i två undernät:
    • ett klientdelsundernät för webbservrarna
    • ett serverdelsundernät för programservrar, MongoDB-kluster och domänkontrollanter

Diagram över olika nivåer för programinfrastruktur

Inkommande säker webbtrafik måste belastningsbalanseras mellan webbservrarna när kunderna bläddrar i onlinearkivet. Orderbearbetning av trafik i form av HTTP-begäranden från webbservrarna måste belastningsutjämning mellan programservrarna. Dessutom måste infrastrukturen utformas för hög tillgänglighet.

Den resulterande designen måste innehålla:

  • En Azure-prenumeration och ett konto
  • En enskild resursgrupp
  • Azure Managed Disks
  • Ett virtuellt nätverk med två undernät
  • Tillgänglighetsuppsättningar för de virtuella datorerna med en liknande roll
  • Virtuella datorer

Alla ovanstående följer dessa namngivningskonventioner:

  • Adventure Works Cycles använder [IT-arbetsbelastning]-[plats]-[Azure-resurs] som prefix
    • I det här exemplet är "azos" (Azure On-line Store) IT-arbetsbelastningens namn och "use" (USA, östra 2) är platsen
  • Virtuella nätverk använder AZOS-USE-VN[number]
  • Tillgänglighetsuppsättningar använder azos-use-as-[role]
  • Namn på virtuella datorer använder azos-use-vm-[vmname]

Azure-prenumerationer och -konton

Adventure Works Cycles använder sin Enterprise-prenumeration med namnet Adventure Works Enterprise Subscription för att tillhandahålla fakturering för den här IT-arbetsbelastningen.

Storage

Adventure Works Cycles fastställde att de skulle använda Azure Managed Disks. När du skapar virtuella datorer används båda lagringstillgängliga lagringsnivåer:

  • Standardlagring för webbservrar, programservrar och domänkontrollanter och deras datadiskar.
  • Premium-lagring för mongoDB-shardade klusterservrar och deras datadiskar.

Virtuellt nätverk och undernät

Eftersom det virtuella nätverket inte behöver kontinuerlig anslutning till det lokala Adventure Work Cycles-nätverket bestämde de sig för ett virtuellt nätverk som endast är molnbaserat.

De skapade ett virtuellt molnbaserat nätverk med följande inställningar med hjälp av Azure Portal:

  • Namn: AZOS-USE-VN01
  • Plats: USA, östra 2
  • Adressutrymme för virtuellt nätverk: 10.0.0.0/8
  • Första undernätet:
    • Namn: FrontEnd
    • Adressutrymme: 10.0.1.0/24
  • Andra undernätet:
    • Namn: BackEnd
    • Adressutrymme: 10.0.2.0/24

Tillgänglighetsuppsättningar

För att upprätthålla hög tillgänglighet för alla fyra nivåerna i sin onlinebutik beslutade Adventure Works Cycles om fyra tillgänglighetsuppsättningar:

  • azos-use-as-web för webbservrarna
  • azos-use-as-app för programservrarna
  • azos-use-as-db för servrarna i det fragmenterade MongoDB-klustret
  • azos-use-as-dc för domänkontrollanterna

Virtuella datorer

Adventure Works Cycles bestämde sig för följande namn för sina virtuella Azure-datorer:

  • azos-use-vm-web01 för den första webbservern
  • azos-use-vm-web02 för den andra webbservern
  • azos-use-vm-app01 för den första programservern
  • azos-use-vm-app02 för den andra programservern
  • azos-use-vm-db01 för den första MongoDB-servern i klustret
  • azos-use-vm-db02 för den andra MongoDB-servern i klustret
  • azos-use-vm-dc01 för den första domänkontrollanten
  • azos-use-vm-dc02 för den andra domänkontrollanten

Här är den resulterande konfigurationen.

Slutlig programinfrastruktur distribuerad i Azure

Den här konfigurationen omfattar:

  • Ett virtuellt nätverk endast i molnet med två undernät (FrontEnd och BackEnd)
  • Azure Managed Disks med både Standard- och Premium-diskar
  • Fyra tillgänglighetsuppsättningar, en för varje nivå i onlinearkivet
  • De virtuella datorerna för de fyra nivåerna
  • En extern belastningsutjämningsuppsättning för HTTPS-baserad webbtrafik från Internet till webbservrarna
  • En intern belastningsutjämningsuppsättning för okrypterad webbtrafik från webbservrarna till programservrarna
  • En enskild resursgrupp