Architektura usługi Azure Pipelines dla IaaS
Ważne
Ciągła integracja/ciągłe wdrażanie dla aplikacji IaaS to wariant projektowania potoku ciągłej integracji/ciągłego wdrażania przy użyciu usługi Azure DevOps. Ten artykuł koncentruje się na specyfikach wdrażania aplikacji internetowych na platformie Azure Virtual Machines.
Usługa Azure Virtual Machines to opcja hostowania aplikacji niestandardowych, gdy chcesz elastycznie i szczegółowo zarządzać obliczeniami. Maszyny wirtualne powinny podlegać takiemu samemu poziomowi platformy jako usługi (PaaS) w całym cyklu projektowania. Na przykład implementowanie zautomatyzowanych potoków kompilacji i wydania w celu wypychania zmian do maszyn wirtualnych.
W tym artykule opisano ogólny przepływ pracy metodyki DevOps na potrzeby wdrażania zmian aplikacji na maszynach wirtualnych przy użyciu praktyk ciągłej integracji i ciągłego wdrażania (CD) przy użyciu usługi Azure Pipelines.
Architektura
Pobierz plik programu Visio z tą architekturą.
Przepływ danych
W tej sekcji założono, że znasz architekturę punktu odniesienia usługi Azure Pipelines i koncentrujesz się tylko na specyfikach wdrażania obciążenia w usłudze Azure Virtual Machines.
Potok - żądania ściągnięciaTak samo jak w punkcie odniesienia
Potok ciągłej integracji — taki sam jak punkt odniesienia, z wyjątkiem artefaktów kompilacji utworzonych na potrzeby wdrażania aplikacji internetowej w usłudze IaaS jest pakietem Web Deploy
Wyzwalacz - potoku ciągłego wdrażaniaTak samo jak w punkcie odniesienia
Wydanie ciągłego wdrażania do przemieszczania — tak samo jak w przypadku planu bazowego z 2 wyjątkami: 1) pobrany artefakt kompilacji to pakiet Web Deploy i 2) pakiet jest wdrażany na przejściowej maszynie wirtualnej platformy Azure.
Wydanie ciągłego wdrażania do środowiska produkcyjnego — takie same jak w przypadku punktu odniesienia z 2 wyjątkami:
a. Wydanie do środowiska produkcyjnego odbywa się przez zaktualizowanie usługi Azure Traffic Manager w celu zamiany środowiska przejściowego i produkcyjnego. Tę strategię można osiągnąć, mając profil usługi Traffic Manager z dwoma punktami końcowymi, w których środowisko produkcyjne jest włączone, a przemieszczanie jest wyłączone. Aby zamienić środowisko przejściowe i produkcyjne, wyłącz środowisko produkcyjne i włącz przemieszczanie.
b. Wycofanie można wykonać, aktualizując usługę Azure Traffic Manager w celu zamiany środowiska produkcyjnego i przejściowego.Monitorowania - taki sam jak punkt odniesienia
Składniki
W tej sekcji założono, że znasz sekcję składników architektury bazowej usługi Azure Pipelines i koncentrujesz się tylko na specyfikach wdrażania obciążenia w usłudze Azure Virtual Machines.
Usługa Azure Virtual Machines zapewnia infrastrukturę na żądanie, wysoką skalę, bezpieczną, zwirtualizowaną przy użyciu serwerów z systemem Windows lub Linux. Virtual Machines są używane w tej architekturze do hostowania obciążeń.
Virtual Machine Scale Sets umożliwia tworzenie grupy identycznych maszyn wirtualnych o zrównoważonym obciążeniu i zarządzanie nimi. Liczba wystąpień maszyn wirtualnych może automatycznie zwiększać się lub zmniejszać w reakcji na zapotrzebowanie lub według zdefiniowanego harmonogramu. Zestawy skalowania mogą być również używane do hostowania obciążeń.
Usługa Azure Traffic Manager to oparty na systemie DNS moduł równoważenia obciążenia ruchu, którego można użyć do dystrybucji ruchu do skonfigurowanych punktów końcowych. W tej architekturze usługa Traffic Manager jest pojedynczym punktem wejścia dla klientów i jest skonfigurowana z wieloma punktami końcowymi, reprezentującymi produkcyjną maszynę wirtualną i tymczasową maszynę wirtualną. Produkcyjny punkt końcowy maszyny wirtualnej jest włączony, a przemieszczanie jest wyłączone.
Alternatywy
Ten artykuł koncentruje się na użyciu usługi Azure Traffic Manager jako modułu równoważenia obciążenia. Platforma Azure oferuje różne opcje równoważenia obciążenia , które można wziąć pod uwagę.
Zagadnienia do rozważenia
W tej sekcji założono, że znasz sekcję zagadnienia w architekturze punktu odniesienia usługi Azure Pipelines i koncentrujesz się tylko na zagadnieniach specyficznych dla wdrażania obciążenia w usłudze Azure Virtual Machines.
Doskonałość operacyjna
Ponieważ usługa Traffic Manager jest oparta na systemie DNS, buforowanie klientów adresów IP powoduje opóźnienie. Mimo że można włączyć jeden punkt końcowy i wyłączyć inny w usłudze Traffic Manager, klienci będą nadal używać ich buforowanego adresu IP do momentu wygaśnięcia (TTL) dns. Rozważ opcje równoważenia obciążenia , które działają w warstwie 4 lub 7.
Rozważ wdrożenie środowisk poza etapami przejściowymi i produkcyjnymi, aby włączyć takie elementy jak wycofywanie, ręczne testowanie akceptacyjne i testowanie wydajnościowe. Czynność używania środowiska przejściowego jako środowiska wycofywania uniemożliwia korzystanie z tego środowiska do innych celów.
Następne kroki
- Integrowanie usługi DevTest Labs z usługą Azure Pipelines
- Tworzenie i wdrażanie aplikacji maszyn wirtualnych