Przykładowy przewodnik po infrastrukturze platformy Azure dla maszyn wirtualnych z systemem Windows

W tym artykule opisano tworzenie przykładowej infrastruktury aplikacji. Szczegółowo opisujemy projektowanie infrastruktury dla prostego magazynu online, który łączy wszystkie wytyczne i decyzje dotyczące konwencji nazewnictwa, zestawów dostępności, sieci wirtualnych i modułów równoważenia obciążenia oraz wdrażania maszyn wirtualnych.

Przykładowe obciążenie

Adventure Works Cycles chce utworzyć aplikację sklepu online na platformie Azure, która składa się z następujących elementów:

  • Dwa serwery IIS z frontonem klienta w warstwie internetowej
  • Dwa serwery IIS przetwarzają dane i zamówienia w warstwie aplikacji
  • Dwa wystąpienia SQL Server firmy Microsoft z grupami dostępności AlwaysOn (dwa serwery SQL i monitor większości węzłów) do przechowywania danych produktów i zamówień w warstwie bazy danych
  • Dwa kontrolery domeny usługi Active Directory dla kont klientów i dostawców w warstwie uwierzytelniania
  • Wszystkie serwery znajdują się w dwóch podsieciach:
    • podsieć frontonu dla serwerów sieci Web
    • podsieć zaplecza dla serwerów aplikacji, klastra SQL i kontrolerów domeny

Diagram różnych warstw infrastruktury aplikacji

Przychodzący bezpieczny ruch internetowy musi być zrównoważony pod względem obciążenia między serwerami internetowymi, gdy klienci przeglądają sklep online. Kolejność przetwarzania ruchu w postaci żądań HTTP z serwerów sieci Web musi być równoważona między serwerami aplikacji. Ponadto infrastruktura musi być zaprojektowana pod kątem wysokiej dostępności.

Wynikowy projekt musi zawierać:

  • Subskrypcja i konto platformy Azure
  • Pojedyncza grupa zasobów
  • Dyski zarządzane platformy Azure
  • Sieć wirtualna z dwiema podsieciami
  • Zestawy dostępności dla maszyn wirtualnych z podobną rolą
  • Maszyny wirtualne

Wszystkie powyższe zasady nazewnictwa są zgodne z następującymi konwencjami nazewnictwa:

  • Cykle Adventure Works używają [obciążenia IT]-[lokalizacja]-[zasób platformy Azure] jako prefiks
    • W tym przykładzie "azos" (Azure Online Store) to nazwa obciążenia IT i "use" (Wschodnie stany USA 2) to lokalizacja
  • Sieci wirtualne używają usługi AZOS-USE-VN**[number]**
  • Zestawy dostępności używają azos-use-as-[role]
  • Nazwy maszyn wirtualnych używają azos-use-vm-[vmname]

Subskrypcje i konta platformy Azure

Adventure Works Cycles używa subskrypcji Enterprise o nazwie Adventure Works Enterprise Subscription w celu zapewnienia rozliczeń dla tego obciążenia IT.

Storage

Cykle Adventure Works ustaliły, że powinny korzystać z usługi Azure Dyski zarządzane. Podczas tworzenia maszyn wirtualnych używane są obie dostępne warstwy magazynowania:

  • Magazyn w warstwie Standardowa dla serwerów sieci Web, serwerów aplikacji i kontrolerów domeny oraz ich dysków danych.
  • Magazyn w warstwie Premium dla maszyn wirtualnych SQL Server i ich dysków danych.

Sieć wirtualna i podsieci

Ponieważ sieć wirtualna nie potrzebuje ciągłej łączności z siecią lokalną Adventure Work Cycles, zdecydowali się na sieć wirtualną tylko w chmurze.

Utworzyli sieć wirtualną tylko w chmurze z następującymi ustawieniami przy użyciu Azure Portal:

  • Nazwa: AZOS-USE-VN01
  • Lokalizacja: Wschodnie stany USA 2
  • Przestrzeń adresowa sieci wirtualnej: 10.0.0.0/8
  • Pierwsza podsieć:
    • Nazwa: FrontEnd
    • Przestrzeń adresowa: 10.0.1.0/24
  • Druga podsieć:
    • Nazwa: Zaplecze
    • Przestrzeń adresowa: 10.0.2.0/24

Zestawy dostępności

Aby zachować wysoką dostępność wszystkich czterech warstw sklepu online, adventure Works Cycles zdecydowała się na cztery zestawy dostępności:

  • azos-use-as-web dla serwerów sieci Web
  • azos-use-as-app dla serwerów aplikacji
  • azos-use-as-sql dla serwerów SQL
  • azos-use-as-dc dla kontrolerów domeny

Maszyny wirtualne

Adventure Works Cycles zdecydowała się na następujące nazwy dla maszyn wirtualnych platformy Azure:

  • azos-use-vm-web01 dla pierwszego serwera internetowego
  • azos-use-vm-web02 dla drugiego serwera internetowego
  • azos-use-vm-app01 dla pierwszego serwera aplikacji
  • azos-use-vm-app02 dla drugiego serwera aplikacji
  • azos-use-vm-sql01 dla pierwszego serwera SQL Server w klastrze
  • azos-use-vm-sql02 dla drugiego serwera SQL Server w klastrze
  • azos-use-vm-dc01 dla pierwszego kontrolera domeny
  • azos-use-vm-dc02 dla drugiego kontrolera domeny

Oto wynikowa konfiguracja.

Ostateczna infrastruktura aplikacji wdrożona na platformie Azure

Ta konfiguracja obejmuje:

  • Sieć wirtualna tylko w chmurze z dwiema podsieciami (FrontEnd i BackEnd)
  • Usługa Azure Dyski zarządzane z dyskami w warstwie Standardowa i Premium
  • Cztery zestawy dostępności— jeden dla każdej warstwy sklepu online
  • Maszyny wirtualne dla czterech warstw
  • Zewnętrzny zestaw równoważenia obciążenia dla ruchu internetowego opartego na protokole HTTPS z Internetu do serwerów internetowych
  • Wewnętrzny zestaw równoważenia obciążenia dla niezaszyfrowanego ruchu internetowego z serwerów internetowych do serwerów aplikacji
  • Pojedyncza grupa zasobów