Zarządzanie kosztami dla platformy Kubernetes

Azure Cost Management
Azure Kubernetes Service (AKS)
Azure Managed Disks
Azure Storage
Azure Virtual Machines

W tym przewodniku wyjaśniono, jak działają ceny i zarządzanie kosztami w usłudze Azure Kubernetes Service (AKS) w porównaniu z usługą Amazon Elastic Kubernetes Service (Amazon EKS). W tym artykule opisano sposób optymalizowania kosztów i implementowania rozwiązań do zapewniania ładu kosztów dla klastra usługi AKS.

Uwaga

Ten artykuł jest częścią serii artykułów, które ułatwiają specjalistom, którzy znają usługę Amazon EKS, aby zrozumieć usługę Azure Kubernetes Service (AKS).

Podstawy kosztów usługi Amazon EKS

W usłudze Amazon EKS płacisz stałą cenę za godzinę dla każdego klastra Amazon EKS. Płacisz również za sieć, narzędzia operacyjne i magazyn używany przez klaster.

Węzły robocze amazon EKS są standardowymi wystąpieniami usługi Amazon EC2, więc generują regularne ceny usługi Amazon EC2. Płacisz również za inne zasoby usług Amazon Web Services (AWS), które aprowizujesz, aby uruchamiać węzły robocze platformy Kubernetes.

Nie ma dodatkowych kosztów korzystania z grup węzłów zarządzanych amazon EKS. Płacisz tylko za aprowizację zasobów platformy AWS, w tym wystąpień usługi Amazon EC2, woluminów Amazon EBS, godzin klastra Amazon EKS i dowolnej innej infrastruktury platformy AWS.

Podczas tworzenia zarządzanej grupy węzłów można użyć typu pojemności Wystąpienia na żądanie lub spot do zarządzania kosztami węzłów agenta. Usługa Amazon EKS wdraża zarządzaną grupę węzłów z grupą automatycznego skalowania usługi Amazon EC2 zawierającą wszystkie wystąpienia na żądanie lub wszystkie wystąpienia typu spot.

W przypadku wystąpień na żądanie płacisz za pojemność obliczeniową o sekundę bez długoterminowych zobowiązań. Wystąpienia usługi Amazon EC2 Spot są wolne od pojemności usługi Amazon EC2, która oferuje rabaty w porównaniu z cenami na żądanie.

  • Wystąpienia usługi Amazon EC2 Spot mogą zostać przerwane z dwuminutowym powiadomieniem o przerwie, gdy usługa EC2 potrzebuje pojemności z powrotem.

  • Firma Amazon udostępnia rozwiązanie Spot Fleet, metodę automatyzowania grup wystąpień na żądanie i spot oraz doradcę wystąpienia typu spot, aby pomóc przewidzieć, który region lub strefa dostępności może zapewnić minimalne zakłócenia.

  • Ceny wystąpień typu spot platformy AWS różnią się. Platforma AWS określa cenę w zależności od długoterminowych trendów podaży i popytu dla pojemności wystąpienia typu spot, a cena obowiązuje przez okres, w którym wystąpienie jest w górę.

Analiza kosztów usługi Azure Kubernetes Service

Klaster usługi Azure Kubernetes Service (AKS) opiera się na różnych zasobach platformy Azure, takich jak maszyny wirtualne, dyski wirtualne, moduły równoważenia obciążenia i publiczne adresy IP. Te zasoby mogą być używane przez wiele aplikacji, które mogą być zarządzane przez różne zespoły w organizacji. Wzorce zużycia tych zasobów mogą się różnić, co powoduje różnice w stosunku do całkowitego kosztu zasobu klastra. Ponadto niektóre aplikacje mogą mieć ślady w wielu klastrach, co sprawia, że przypisywanie kosztów i zarządzanie nim staje się wyzwaniem.

W scenariuszach, w których klaster zawiera pojedyncze obciążenie, usługa Microsoft Cost Management może służyć do mierzenia zużycia zasobów klastra w ramach grupy zasobów klastra. Jednak niektóre scenariusze nie są natywnie objęte tym rozwiązaniem, na przykład:

  • Szczegółowy podział użycia zasobów, taki jak obliczenia, sieć i magazyn.
  • Rozróżnianie kosztów poszczególnych aplikacji i kosztów współużytkowanych.
  • Analizowanie kosztów w wielu klastrach w tym samym zakresie subskrypcji.

Aby zwiększyć wgląd w koszty, usługa AKS zintegrowała się z usługą Microsoft Cost Management w celu zapewnienia szczegółowych szczegółów kosztów w konstrukcjach platformy Kubernetes, takich jak klaster i przestrzeń nazw. Ta integracja umożliwia analizę kosztów w kategoriach zasobów obliczeniowych, sieciowych i magazynu platformy Azure.

Dodatek analizy kosztów usługi AKS jest oparty na systemie OpenCost, projekcie typu open source na potrzeby zbierania danych użycia. Zapewnia widoczność kosztów przez uzgadnianie danych za pomocą faktury za platformę Azure. Dane przetwarzane po przetworzeniu są widoczne bezpośrednio w portalu analizy kosztów usługi Cost Management. Aby uzyskać więcej informacji, zobacz Azure Kubernetes Service cost analysis (Analiza kosztów usługi Azure Kubernetes Service).

Definicje kosztów

W widokach przestrzeni nazw i zasobów platformy Kubernetes zobaczysz opłaty, takie jak:

  • Opłaty za bezczynność: reprezentuje koszt dostępnej pojemności zasobów, która nie była używana przez żadne obciążenia.
  • Opłaty za usługi: reprezentuje opłaty związane z usługami, takimi jak umowa dotycząca poziomu usług (SLA) i Usługa Microsoft Defender dla kontenerów.
  • Opłaty systemowe: reprezentuje koszt pojemności zarezerwowanej przez usługę AKS w każdym węźle do uruchamiania procesów systemowych wymaganych przez klaster.
  • Opłaty nieprzydzielone: reprezentuje koszt zasobów, których nie można przydzielić do przestrzeni nazw.

Podstawy kosztów usługi AKS

Architektura platformy Kubernetes jest oparta na dwóch warstwach: płaszczyźnie sterowania i co najmniej jednym węźle lub pulach węzłów. Model cen usługi AKS jest oparty na dwóch warstwach architektury Kubernetes.

  • Płaszczyzna sterowania udostępnia podstawowe usługi Kubernetes, takie jak serwer interfejsu API i etcdaranżacja obciążeń aplikacji. Platforma Azure zarządza płaszczyzną sterowania usługi AKS, a dla warstwy Bezpłatna usługi AKS płaszczyzna sterowania nie ma żadnych kosztów.

  • Węzły, nazywane również węzłami agenta lub węzłami procesu roboczego, hostować obciążenia i aplikacje Kubernetes. W usłudze AKS klienci w pełni zarządzają wszystkimi kosztami węzłów agentów i płacą za nie.

Na poniższym diagramie przedstawiono relację między płaszczyzną sterowania a węzłami w architekturze kubernetes usługi AKS.

Diagram przedstawiający płaszczyznę sterowania i węzły w architekturze usługi AKS.

Płaszczyzna sterowania

Platforma Azure automatycznie aprowizuje i konfiguruje warstwę płaszczyzny sterowania podczas tworzenia klastra usługi AKS. W przypadku warstwy Bezpłatna usługi AKS płaszczyzna sterowania jest bezpłatna.

W przypadku umowy dotyczącej poziomu usług na wyższym poziomie sterowania (SLA) można utworzyć klaster usługi AKS w warstwie Standardowa. Umowa SLA dotycząca czasu działania jest domyślnie uwzględniana w warstwie Standardowa i jest włączona na klaster. Cena wynosi 0,10 USD za klaster na godzinę. Aby uzyskać więcej informacji, zobacz szczegóły cennika usługi AKS.

Klastry w warstwie Standardowa mają więcej zasobów płaszczyzny sterowania, takich jak liczba wystąpień serwera interfejsu API, limity zasobów etcd, skalowalność do 5000 węzłów i istniejąca pomoc techniczna dotycząca czasu działania w czasie działania. Usługa AKS używa replik węzłów głównych w domenach aktualizacji i błędów, aby spełnić wymagania dotyczące dostępności.

Najlepiej użyć warstwy Standardowa w obciążeniach produkcyjnych, aby zapewnić wyższą dostępność składnika płaszczyzny sterowania. Klastry w warstwie Bezpłatna mają mniej replik i ograniczone zasoby płaszczyzny sterowania i nie są zalecane w przypadku obciążeń produkcyjnych.

Węzły

W usłudze AKS tworzysz węzły agenta lub procesu roboczego w co najmniej jednej puli węzłów, która może używać wielu podstawowych funkcji platformy Azure w środowisku Kubernetes. Opłaty za usługę AKS są naliczane tylko dla węzłów dołączonych do klastra usługi AKS.

Węzły usługi AKS używają kilku zasobów infrastruktury platformy Azure, w tym zestawów skalowania maszyn wirtualnych, sieci wirtualnych i dysków zarządzanych. Na przykład większość typów maszyn wirtualnych platformy Azure można używać bezpośrednio w usłudze AKS. Aby uzyskać znaczące rabaty na te zasoby, możesz użyć planu oszczędności platformy Azure i planu oszczędności platformy Azure.

Cennik klastra usługi AKS jest oparty na klasie, liczbie i rozmiarze maszyn wirtualnych w pulach węzłów. Koszt maszyny wirtualnej zależy od rozmiaru, typu procesora CPU, liczby procesorów wirtualnych, pamięci, rodziny i dostępnego typu magazynu, takiego jak dysk półprzewodnikowy o wysokiej wydajności (SSD) lub hdd w warstwie Standardowa. Aby uzyskać więcej informacji, zobacz Seria maszyn wirtualnych. Planowanie rozmiaru węzła zgodnie z wymaganiami aplikacji, liczbą węzłów i potrzebami skalowalności klastra.

Aby uzyskać więcej informacji na temat węzłów agentów i pul węzłów, zobacz artykuł Pule węzłów w tej serii oraz Tworzenie wielu pul węzłów dla klastra w usłudze Azure Kubernetes Service (AKS) i zarządzanie nimi.

Wdrażanie klastra usługi AKS

Każde wdrożenie usługi AKS obejmuje dwie grupy zasobów platformy Azure.

  • Należy utworzyć pierwszą grupę zasobów, która zawiera tylko zasób usługi Kubernetes i nie ma skojarzonych z nią kosztów.

  • Dostawca zasobów usługi AKS automatycznie tworzy drugą lub węzłową grupę zasobów podczas wdrażania. Domyślną nazwą tej grupy zasobów jest MC_<resourcegroupname>_<clustername>_<location>, ale można określić inną nazwę. Aby uzyskać więcej informacji, zobacz Podaj własną nazwę dla grupy zasobów węzła usługi AKS.

    Grupa zasobów węzła zawiera wszystkie zasoby infrastruktury klastra i jest tym, który pokazuje opłaty za subskrypcję. Zasoby obejmują maszyny wirtualne węzła Kubernetes, sieć wirtualną, magazyn i inne usługi. Usługa AKS automatycznie usuwa grupę zasobów węzła po usunięciu klastra, dlatego należy jej używać tylko dla zasobów, które współużytkujące cykl życia klastra.

Koszty obliczeń

Płacisz za maszyny wirtualne platformy Azure zgodnie z ich rozmiarem i użyciem. Aby uzyskać informacje na temat porównywania obliczeń platformy Azure z platformą AWS, zobacz Compute services on Azure and AWS (Usługi obliczeniowe na platformie Azure i awS).

Ogólnie rzecz biorąc, im większy rozmiar maszyny wirtualnej wybierany dla puli węzłów, tym wyższy jest koszt godzinowy dla węzłów agenta. Bardziej wyspecjalizowana seria maszyn wirtualnych używana dla puli węzłów, na przykład z obsługą procesora graficznego (GPU) lub zoptymalizowana pod kątem pamięci, tym droższa pula.

Podczas badania cen maszyn wirtualnych platformy Azure należy pamiętać o następujących kwestiach:

  • Ceny różnią się w zależności od regionu, a nie wszystkie usługi i rozmiary maszyn wirtualnych są dostępne w każdym regionie.

  • Istnieje wiele rodzin maszyn wirtualnych zoptymalizowanych pod kątem różnych typów obciążeń.

  • Dyski zarządzane używane jako dyski systemu operacyjnego są naliczane oddzielnie i należy dodać ich koszt do oszacowań. Rozmiar dysku zarządzanego zależy od klasy, takiej jak dyski HDD w warstwie Standardowa, dyski SSD w warstwie Standardowa, dyski SSD w warstwie Premium lub magazyn w warstwie Ultra Disk. Operacje wejścia/wyjścia na sekundę (IOPS) i przepływność w MB/s zależą od rozmiaru i klasy. Efemeryczne dyski systemu operacyjnego są bezpłatne i są uwzględniane w cenie maszyny wirtualnej.

  • Dyski danych, w tym te utworzone przy użyciu oświadczeń trwałych woluminów, są opcjonalne i są naliczane indywidualnie na podstawie ich klasy, takich jak dyski HDD w warstwie Standardowa, dyski SSD w warstwie Standardowa, dyski SSD w warstwie Premium i magazyn w warstwie Ultra Disk. Należy jawnie dodać dyski danych do szacowania kosztów. Liczba dozwolonych dysków danych, dysków SSD magazynu tymczasowego, liczby operacji we/wy na sekundę i przepływności w MB/s zależy od rozmiaru i klasy maszyny wirtualnej.

  • Im więcej czasu, przez jaki węzły agenta są uruchomione, tym wyższy jest całkowity koszt klastra. Środowiska deweloperskie zwykle nie muszą działać w sposób ciągły.

  • Interfejsy sieciowe (NIC) są bezpłatne.

Koszty magazynowania

Interfejs magazynu kontenerów (CSI) jest standardem dla uwidaczniania systemów magazynowania bloków i plików w konteneryzowanych obciążeniach na platformie Kubernetes. Dzięki wdrożeniu i użyciu interfejsu CSI usługa AKS może zapisywać, wdrażać i iterować wtyczki, które uwidaczniają systemy magazynowania Kubernetes bez dotykania podstawowego kodu Kubernetes lub oczekiwania na cykle wydania.

Jeśli uruchamiasz obciążenia korzystające z woluminów trwałych CSI w klastrze usługi AKS, rozważ skojarzony koszt aprowizacji i użycia aplikacji. Sterowniki magazynu CSI w usłudze AKS zapewniają natywną obsługę następujących opcji magazynu:

  • Usługa Azure Disks tworzy zasoby dysku danych kubernetes. Dyski mogą używać usługi Azure Premium Storage, wspieranej przez dyski SSD o wysokiej wydajności lub Azure Standard Storage, wspierane przez zwykłe dyski HDD lub dyski SSD w warstwie Standardowa. Większość obciążeń produkcyjnych i programistycznych korzysta z usługi Premium Storage. Dyski platformy Azure są instalowane jako ReadWriteOnce, co udostępnia je tylko jednemu węzłowi usługi AKS. W przypadku woluminów magazynu, do których jednocześnie może uzyskiwać dostęp wiele zasobników, użyj usługi Azure Files. Aby uzyskać informacje o kosztach, zobacz cennik Dyski zarządzane.

  • Usługa Azure Files instaluje blok obsługi komunikatów serwera (SMB) 3.0/3.1 wspierany przez konto usługi Azure Storage do zasobników usługi AKS. Dane można udostępniać między wieloma węzłami i zasobnikami. Usługa Azure Files może używać magazynu w warstwie Standardowa wspieranego przez zwykłe dyski HDD lub Magazyn Premium wspierany przez dyski SSD o wysokiej wydajności. Usługa Azure Files używa konta usługi Azure Storage i nalicza opłaty na podstawie następujących czynników:

    • Usługa: dyski obiektów blob, plików, kolejek, tabeli lub niezarządzanych
    • Typ konta magazynu: GPv1, GPv2, Blob lub Premium Blob
    • Odporność: magazyn lokalnie nadmiarowy (LRS), magazyn strefowo nadmiarowy (ZRS), magazyn geograficznie nadmiarowy (GRS) lub magazyn geograficznie nadmiarowy dostępny do odczytu (RA-GRS)
    • Warstwa dostępu: Gorąca, Chłodna lub Archiwum
    • Operacje i transfery danych
    • Używana pojemność w GB
  • Usługa Azure NetApp Files jest dostępna w kilku warstwach jednostki SKU i wymaga minimalnej aprowizowanej pojemności 4 TiB z 1 przyrostami TiB. Opłaty za usługę Azure NetApp Files są oparte na następujących czynnikach:

    • SKU
    • Odporność: LRS, ZRS lub GRS
    • Rozmiar lub pojemność aprowizowana, a nie używana pojemność
    • Operacje i transfer danych
    • Kopie zapasowe i przywracanie

Koszty sieciowe

Kilka usług sieciowych platformy Azure może zapewnić dostęp do aplikacji uruchamianych w usłudze AKS:

  • Azure Load Balancer. Domyślnie usługa Load Balancer używa jednostki SKU w warstwie Standardowa. Opłaty za usługę Load Balancer są oparte na:

    • Reguły: liczba skonfigurowanych reguł równoważenia obciążenia i ruchu wychodzącego. Reguły translatora adresów sieciowych dla ruchu przychodzącego nie są liczone w łącznej liczbie reguł.
    • Przetworzone dane: ilość przetworzonych danych przychodzących i wychodzących niezależnie od reguł. Nie ma opłaty godzinowej za moduł równoważenia obciążenia w warstwie Standardowa bez skonfigurowanych reguł.
  • aplikacja systemu Azure Gateway. Usługa AKS często używa usługi Application Gateway za pośrednictwem kontrolera ruchu przychodzącego usługi Application Gateway lub przez fronting innego kontrolera ruchu przychodzącego z ręcznie zarządzaną usługą Application Gateway. Usługa Application Gateway obsługuje routing bramy, kończenie żądań protokołu Transport Layer Security (TLS) i funkcje zapory aplikacji internetowej. Opłaty za usługę Application Gateway są naliczane na podstawie:

    • Stała cena ustawiona według godziny lub częściowej godziny.
    • Cena jednostkowa pojemności — dodatkowy koszt oparty na użyciu. Każda jednostka pojemności ma co najwyżej jedną jednostkę obliczeniową, 2500 połączeń trwałych i przepływność 2,22 MB/s.
  • Publiczne adresy IP mają skojarzony koszt, który zależy od:

    • Skojarzenie zarezerwowane a dynamiczne.
    • Warstwa Podstawowa a bezpieczna i strefowo nadmiarowa w warstwie Standardowa.

Koszty skalowania w poziomie

Istnieje wiele opcji skalowania klastra usługi AKS w celu dodania dodatkowej pojemności do pul węzłów:

  • Na żądanie można ręcznie zaktualizować liczbę maszyn wirtualnych będących częścią puli węzłów lub dodać więcej pul węzłów.

  • Narzędzie do automatycznego skalowania klastra usługi AKS obserwuje zasobniki, których nie można zaplanować w węzłach z powodu ograniczeń zasobów i automatycznie zwiększa liczbę węzłów.

  • Usługa AKS obsługuje uruchamianie kontenerów w usłudze Azure Container Instances przy użyciu implementacji wirtualnego narzędzia kubelet . Węzeł wirtualny usługi AKS aprowizuje zasobniki usługi Container Instances, które są uruchamiane w sekundach, dzięki czemu usługa AKS będzie działać z wystarczającą pojemnością dla średniego obciążenia. Ponieważ w klastrze usługi AKS zabraknie pojemności, można skalować w poziomie więcej zasobników usługi Container Instances bez zarządzania żadnymi dodatkowymi serwerami. To podejście można połączyć z funkcją skalowania automatycznego klastra i skalowaniem ręcznym.

Jeśli używasz skalowania na żądanie lub skalowania automatycznego klastra, uwzględnij dodane maszyny wirtualne. Opłaty za wystąpienia kontenera są naliczane na podstawie następujących czynników:

  • Rozliczenia metryk opartych na użyciu dla grupy kontenerów
  • Zbieranie procesorów wirtualnych i pamięci
  • Użycie pojedynczego kontenera lub współużytkowanie wielu kontenerów
  • Korzystanie ze współplanowanych kontenerów współużytkujących cykl życia sieci i węzła
  • Czas trwania użycia obliczany na podstawie uruchamiania lub ponownego uruchamiania obrazu do momentu zatrzymania
  • Dodano opłatę za grupy kontenerów systemu Windows

Koszty uaktualniania

Część cyklu życia klastra usługi AKS obejmuje okresowe uaktualnienia do najnowszej wersji rozwiązania Kubernetes. Ważne jest, aby zastosować najnowsze wersje zabezpieczeń i uzyskać najnowsze funkcje. Klastry usługi AKS i pule pojedynczych węzłów można uaktualnić ręcznie lub automatycznie. Aby uzyskać więcej informacji, zobacz Uaktualnianie klastra usługi Azure Kubernetes Service (AKS).

Domyślnie usługa AKS konfiguruje uaktualnienia w celu zwiększenia przy użyciu jednego dodatkowego węzła. Wartość 1 domyślna ustawienia max-surge minimalizuje zakłócenia obciążenia przez utworzenie dodatkowego węzła w celu zastąpienia starszych wersji węzłów przed kordonem lub opróżnianie istniejących aplikacji. Możesz dostosować max-surge wartość dla puli węzłów, aby umożliwić kompromis między szybkością uaktualniania a zakłóceniami uaktualniania. max-surge Zwiększenie wartości powoduje szybsze ukończenie procesu uaktualniania, ale duża wartość max-surge może spowodować zakłócenia w procesie uaktualniania i ponieść dodatkowe koszty dodatkowych maszyn wirtualnych.

Inne koszty

W zależności od użycia i wymagań klastry usługi AKS mogą ponieść następujące dodatkowe koszty:

Optymalizacja kosztów

Poniższe zalecenia ułatwiają optymalizowanie kosztów klastra usługi AKS:

  • Zapoznaj się z sekcją Optymalizacja kosztów w witrynie Azure Well-Architected Framework for AKS.

  • W przypadku rozwiązań wielodostępnych izolacja fizyczna jest bardziej kosztowna i zwiększa obciążenie związane z zarządzaniem. Izolacja logiczna wymaga większego środowiska platformy Kubernetes i zwiększa obszar powierzchni pod kątem zmian i zagrożeń bezpieczeństwa, ale dzieli się kosztami.

  • Rezerwacje platformy Azure mogą pomóc zaoszczędzić pieniądze, zobowiązując się do jednego lub trzyletniego planu dla kilku produktów, takich jak maszyny wirtualne w klastrze usługi AKS. Rabaty można uzyskać, rezerwując pojemność. Użyj rezerwacji platformy Azure dla usługi Storage i usługi Compute , aby zmniejszyć koszt węzłów agenta.

    Rezerwacje mogą zmniejszyć koszty zasobów o maksymalnie 72% z cen płatności zgodnie z rzeczywistym użyciem i nie mają wpływu na stan środowiska uruchomieniowego zasobów. Rabat na rezerwację zostanie automatycznie zastosowany do pasujących zasobów po zakupie rezerwacji. Rezerwacje można kupić w witrynie Azure Portal lub przy użyciu interfejsów API REST platformy Azure, programu PowerShell lub interfejsu wiersza polecenia platformy Azure. Jeśli używasz narzędzi operacyjnych korzystających z obszarów roboczych usługi Log Analytics, rozważ również użycie rezerwacji dla tego magazynu.

  • Dodaj co najmniej jedną pulę węzłów typu spot do klastra usługi AKS. Pula węzłów typu spot to pula węzłów wspierana przez zestawy skalowania maszyn wirtualnych typu spot platformy Azure. Korzystanie z maszyn wirtualnych typu spot dla węzłów klastra usługi AKS korzysta z nieużywanej pojemności platformy Azure przy znaczących oszczędnościach kosztów. Ilość dostępnej nieużywanej pojemności zależy od kilku czynników, w tym rozmiaru węzła, regionu i godziny dnia. Platforma Azure przydziela węzły typu spot, jeśli jest dostępna pojemność, ale nie ma umowy SLA dla węzłów typu spot. Zestaw skalowania typu spot, który wspiera pulę węzłów typu spot, jest wdrażany w jednej domenie błędów i nie oferuje gwarancji wysokiej dostępności. Gdy platforma Azure potrzebuje pojemności z powrotem, infrastruktura platformy Azure eksmituje węzły typu spot.

    Podczas tworzenia puli węzłów typu spot można zdefiniować maksymalną cenę do zapłaty za godzinę i włączyć narzędzie do automatycznego skalowania klastra, co jest zalecane w przypadku pul węzłów typu spot. Narzędzie do automatycznego skalowania klastra skaluje w poziomie i skaluje liczbę węzłów w puli węzłów na podstawie uruchomionych obciążeń. W przypadku pul węzłów typu spot narzędzie do automatycznego skalowania klastra skaluje w poziomie liczbę węzłów po eksmisji, jeśli węzły są nadal potrzebne. Aby uzyskać więcej informacji, zobacz Dodawanie puli węzłów typu spot do klastra usługi Azure Kubernetes Service (AKS).

  • Wybierz odpowiedni rozmiar maszyny wirtualnej dla pul węzłów klastra usługi AKS na podstawie potrzeb procesora CPU i pamięci obciążeń. Platforma Azure oferuje wiele różnych typów wystąpień maszyn wirtualnych, które pasują do szerokiej gamy przypadków użycia, z różnymi kombinacjami procesora CPU, pamięci, magazynu i pojemności sieciowej. Każdy typ ma co najmniej jeden rozmiar, dzięki czemu można łatwo skalować zasoby.

    Teraz można wdrażać aplikacje konteneryzowane i zarządzać nimi za pomocą usługi AKS działającej na procesorach opartych na usłudze Ampere Altra ARM. Aby uzyskać więcej informacji, zobacz Azure Virtual Machines with Ampere Altra ARM-based processors (Maszyny wirtualne platformy Azure z procesorami opartymi na usłudze Ampere Altra ARM).

  • Utwórz wiele pul węzłów o różnych rozmiarach maszyn wirtualnych do celów specjalnych i obciążeń. Użyj etykiet i tolerancji platformy Kubernetes oraz etykiet węzłów, aby umieścić aplikacje intensywnie korzystające z zasobów w określonych pulach węzłów, aby uniknąć problemów z hałaśliwymi sąsiadami. Zachowaj te zasoby węzłów dostępne dla obciążeń, które ich wymagają, i nie należy planować innych obciążeń w tych węzłach. Użycie różnych rozmiarów maszyn wirtualnych dla różnych pul węzłów może również zoptymalizować koszty. Aby uzyskać więcej informacji, zobacz Używanie wielu pul węzłów w usłudze Azure Kubernetes Service (AKS).

  • Pule węzłów trybu systemowego muszą zawierać co najmniej jeden węzeł, a pule węzłów trybu użytkownika mogą zawierać zero lub więcej węzłów. Jeśli to możliwe, możesz skonfigurować pulę węzłów trybu użytkownika do automatycznego skalowania z 0 węzłów.N Obciążenia można skonfigurować do skalowania w poziomie i skalowania w poziomie przy użyciu narzędzia Horizontal Pod Autoscaler. Skalowanie automatyczne na podstawie procesora CPU i pamięci lub używanie automatycznego skalowania opartego na zdarzeniach (KEDA) platformy Kubernetes w celu bazowania automatycznego skalowania na metrykach systemu zewnętrznego, takiego jak Apache Kafka, RabbitMQ lub Azure Service Bus.

  • Pamiętaj, aby prawidłowo ustawić żądania i limity dla zasobników, aby zwiększyć gęstość aplikacji i uniknąć przypisywania zbyt wielu zasobów procesora CPU i pamięci do obciążeń. Obserwuj średnie i maksymalne użycie procesora CPU i pamięci przy użyciu rozwiązania Prometheus lub Container Insights. Prawidłowo skonfiguruj limity i przydziały dla zasobników w manifestach YAML, wykresach helm i manifestach Kustomize dla wdrożeń.

  • Użyj obiektów ResourceQuota , aby ustawić limity przydziału całkowitej ilości pamięci i procesora CPU dla wszystkich zasobników uruchomionych w danej przestrzeni nazw. Systematyczne wykorzystanie przydziałów zasobów pozwala uniknąć hałaśliwych problemów z sąsiadami, poprawia gęstość aplikacji i zmniejsza liczbę węzłów agenta i łączne koszty. Użyj również obiektów LimitRange, aby skonfigurować domyślne żądania procesora CPU i pamięci dla zasobników w przestrzeni nazw.

  • Używanie usługi Container Instances do skalowania.

  • Obciążenia usługi AKS mogą nie wymagać ciągłego uruchamiania, takich jak określone obciążenia w pulach węzłów klastra deweloperów. Aby zoptymalizować koszty, możesz całkowicie wyłączyć klaster usługi AKS lub zatrzymać co najmniej jedną pulę węzłów w klastrze usługi AKS. Aby uzyskać więcej informacji, zobacz Zatrzymywanie i uruchamianie klastra usługi Azure Kubernetes Service (AKS) oraz Uruchamianie i zatrzymywanie puli węzłów w usłudze Azure Kubernetes Service (AKS).

  • Usługa Azure Policy integruje się z usługą AKS za pomocą wbudowanych zasad w celu zastosowania scentralizowanych, spójnych wymuszania i zabezpieczeń na dużą skalę. Włącz dodatek usługi Azure Policy w klastrze i zastosuj domyślne żądania procesora CPU oraz limity zasobów pamięci, które zapewniają, że limity zasobów procesora i pamięci są zdefiniowane w kontenerach klastra.

  • Użyj usługi Azure Advisor , aby monitorować i zwalniać nieużywane zasoby.

  • Użyj budżetów i przeglądów usługi Microsoft Cost Management , aby śledzić wydatki.

Zarządzanie kosztami

Chmura może znacznie poprawić wydajność techniczną obciążeń biznesowych. Technologie w chmurze mogą również zmniejszyć koszty i koszty związane z zarządzaniem zasobami organizacyjnymi. Jednak ta szansa biznesowa stwarza również ryzyko, ponieważ wdrożenia w chmurze mogą zwiększyć potencjał marnotrawstwa i nieefektywności.

Zarządzanie kosztami to proces ciągłego implementowania zasad lub mechanizmów kontroli w celu ograniczenia wydatków i kosztów. Natywne narzędzia Kubernetes i narzędzia platformy Azure obsługują zarządzanie kosztami dzięki proaktywnym monitorowaniu i podstawowej optymalizacji kosztów infrastruktury.

  • Microsoft Cost Management to pakiet narzędzi firmy Microsoft, który ułatwia analizowanie i optymalizowanie kosztów obciążeń platformy Azure oraz zarządzanie nimi. Użyj pakietu, aby upewnić się, że Twoja organizacja korzysta z korzyści zapewnianych przez chmurę.

  • Zapoznaj się z najlepszymi rozwiązaniami dotyczącymi ładu w przewodniku Cloud Adoption Framework dotyczącymi dziedziny Zarządzanie kosztami, aby lepiej zrozumieć, jak zarządzać kosztami chmury i zarządzać nimi.

  • Zapoznaj się z narzędziami typu open source, takimi jak KubeCost , aby monitorować koszty klastra usługi AKS i zarządzać nimi. Można ograniczyć alokację kosztów do wdrożenia, usługi, etykiety, zasobnika i przestrzeni nazw, co zapewnia elastyczność wyświetlania i ładowania użytkowników klastra.

Materiały referencyjne

Oto kilka materiałów referencyjnych, które mogą pomóc w dalszym zrozumieniu i analizie kosztów usługi AKS:

Współautorzy

Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.

Autorzy zabezpieczeń:

Inni współautorzy:

  • Chad Kittel | Główny inżynier oprogramowania
  • Cena Ed | Starszy menedżer programu zawartości
  • Theano Petersen | Składnik zapisywania technicznego

Aby wyświetlić niepubalne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.

Następne kroki