Tworzenie klastra usługi Azure Kubernetes Service

Ukończone

Twoja firma planuje wdrożyć usługę renderowania wideo w chmurze przy użyciu usługi Azure Kubernetes Service (AKS) jako natywnej dla chmury platformy programistycznej. Przed wdrożeniem aplikacji należy utworzyć klaster usługi AKS.

Przejrzyjmy kilka pojęć, aby można było pomyślnie wdrożyć nowy klaster usługi AKS.

Klastry Kubernetes

Platforma Kubernetes jest oparta na klastrach. Zamiast korzystać z jednej maszyny wirtualnej, używa ona kilku maszyn, które działają jako jedna. Te maszyny wirtualne są nazywane węzłami. Platforma Kubernetes jest opartym na klastrze orkiestratorem. Zapewnia on kilka korzyści dla aplikacji, takie jak dostępność, monitorowanie, skalowanie i aktualizacje stopniowe.

Węzły klastra

Klaster jest oparty na węzłach. W klastrze Kubernetes są dwa typy węzłów, które udostępniają określone funkcje.

  • Węzły płaszczyzny sterowania: te węzły hostują aspekty płaszczyzny sterowania klastra i są zarezerwowane dla usług kontrolujących klaster. Są one odpowiedzialne za udostępnienie interfejsu API, którego Ty i wszystkie inne węzły używacie do komunikacji. Nie wdrożono ani nie zaplanowano żadnych obciążeń w tych węzłach.

  • Węzły: Te węzły są odpowiedzialne za wykonywanie niestandardowych obciążeń i aplikacji, takich jak składniki z usługi renderowania wideo opartej na chmurze.

Architektury klastra

Użyj architektury klastra, aby koncepcyjnie określić liczbę płaszczyzn sterowania i węzłów wdrożonych w klastrze Kubernetes.

Na przykład liczba węzłów w klastrze powinna zawsze być większa niż dwa. Gdy węzeł stanie się niedostępny, harmonogram kubernetes próbuje ponownie zaplanować wszystkie obciążenia uruchomione w tym węźle na pozostałych węzłach w klastrze.

Istnieją dwie popularne architektury klastra dla wdrożeń opartych na platformie Kubernetes.

Jedna płaszczyzna sterowania i wiele węzłów

A diagram that shows a single control plane and multiple nodes in a cluster configuration.

Pojedyncza płaszczyzna sterowania do wielu węzłów na architekturę klastra jest najbardziej typowym wzorcem architektury i jest najłatwiejsza do wdrożenia, ale nie zapewnia wysokiej dostępności podstawowych usług zarządzania klastra.

Jeśli węzeł płaszczyzny sterowania stanie się niedostępny z jakiegokolwiek powodu, nie może wystąpić żadna inna interakcja z klastrem. Ten problem występuje nawet wtedy, gdy jesteś operatorem lub w przypadku obciążeń, które używają interfejsów API platformy Kubernetes do komunikowania się co najmniej do czasu powrotu serwera interfejsu API do trybu online.

Mimo że jest mniej dostępna niż inne, ta architektura powinna być wystarczająca w większości sytuacji. Istnieje mniejsze prawdopodobieństwo, że podstawowe usługi zarządzania staną się niedostępne w porównaniu do węzła przechodzącego w tryb offline. Węzły płaszczyzny sterowania podlegają mniejszej liczbie modyfikacji niż węzły i są bardziej odporne.

W scenariuszu produkcyjnym ta architektura może nie być najlepszym rozwiązaniem.

Jedna płaszczyzna sterowania i jeden węzeł

A diagram that depicts a single control plane and single node in a cluster configuration.

Pojedyncza płaszczyzna sterowania do architektury pojedynczego węzła jest wariantem poprzedniej architektury i jest używana w środowiskach deweloperskich. Ta architektura zawiera tylko jeden węzeł, który hostuje zarówno płaszczyznę sterowania, jak i węzeł roboczy. Jest to przydatne podczas testowania i eksperymentowania z różnymi rozwiązaniami na platformie Kubernetes. Jedna płaszczyzna sterowania i jeden węzeł ograniczają skalowanie klastra i sprawiają, że ta architektura jest nieodpowiednia do użytku produkcyjnego i przemieszczania.

Konfigurowanie klastra usługi AKS

Podczas tworzenia nowego klastra usługi AKS można skonfigurować kilka różnych elementów. Każdy element ma wpływ na ostateczną konfigurację klastra na potrzeby alokacji zasobów obliczeniowych.

Te elementy obejmują:

  • Pule węzłów
  • Liczba węzłów
  • Rozmiar maszyny wirtualnej węzła

Pule węzłów

Możesz tworzyć pule węzłów, aby grupować węzły w klastrze usługi AKS. Podczas tworzenia puli węzłów należy określić rozmiar maszyny wirtualnej i typ systemu operacyjnego (Linux lub Windows) dla każdego węzła w puli węzłów na podstawie wymagania aplikacji. Aby hostować zasobniki aplikacji użytkownika, tryb puli węzłów powinien mieć wartość System w przeciwnym razie użytkownik.

Domyślnie klaster usługi AKS ma pulę węzłów systemu Linux (tryb systemowy) niezależnie od tego, czy jest tworzony za pośrednictwem witryny Azure Portal, czy interfejsu wiersza polecenia. Można jednak skonfigurować ją tak, aby można było dodawać pule węzłów systemu Windows wraz z domyślnymi pulami węzłów systemu Linux podczas tworzenia w portalu, parametrami w interfejsie wiersza polecenia lub za pomocą szablonów usługi ARM.

Pule węzłów używają zestawów skalowania maszyn wirtualnych jako podstawowej infrastruktury, aby umożliwić klastrowi skalowanie liczby węzłów w puli węzłów. Nowe węzły utworzone w puli węzłów są zawsze takim samym rozmiarem, jak określono podczas tworzenia puli węzłów.

A diagram that depicts a Kubernetes cluster with two node pools. The first node pool uses NC24s_v2 VMs, and the second node pool uses B2s standard VMs.

Liczba węzłów

Liczba węzłów to liczba węzłów, które ma klaster w puli węzłów. Węzły są maszynami wirtualnymi platformy Azure. Można zmienić ich rozmiar oraz liczbę, aby pasowały do wzorca użycia.

Liczbę węzłów można zmienić później w panelu konfiguracji klastra. Najlepszym rozwiązaniem jest pozostawienie tej liczby na jak najniższym poziomie, aby uniknąć niepotrzebnych kosztów i nieużywanej mocy obliczeniowej.

Rozmiar maszyny wirtualnej węzła

Wybierz z szerokiej gamy specyfikacji maszyn wirtualnych. W celach programistycznych możesz wybrać serię B, aby zaoszczędzić na kosztach. W ćwiczeniach używasz serii B2 o standardowym rozmiarze. Aby uzyskać więcej wskazówek dotyczących wybierania maszyny wirtualnej na podstawie Twoich potrzeb, odwiedź narzędzie selektora maszyn wirtualnych platformy Azure

Sprawdź swoją wiedzę

1.

Który z poniższych elementów opisuje architekturę klastra Kubernetes?

2.

Co to są pule węzłów?

3.

Do czego służy dodatek routingu aplikacji HTTP?