Azure Kubernetes (AKS), narzędzie wspomagające zarządzanie kontenerami

16 marca 2021

Azure  Kubernetes (AKS), narzędzie wspomagające zarządzanie kontenerami

Coraz więcej projektów wykorzystuje konteneryzację, dlatego najwięksi dostawcy chmurowi oferują swoje własne narzędzia, wspomagające zarządzanie takim środowiskiem – tak, aby proces wdrażania aplikacji był jak najmniej skomplikowany i jak najbardziej wydajny. Takim narzędziem jest właśnie Azure Kubernetes (AKS).

Czym różni się maszyna wirtualna od kontenera?

Gdy mówimy o wirtualizacji, często na myśl przychodzi nam jedynie pojęcie maszyny wirtualnej – obrazu komputerowego, operującego na tym samym środowisku obsługi, co komputer, na którym ją instalujemy. Pozwalają nam one na izolację aplikacji poprzez wydzielanie dla nich dedykowanego zwirtualizowanego sprzętu. Na jednej głównej maszynie możemy powołać parę maszyn wirtualnych, tak, aby aplikacje, a bardziej wszystkiego rodzaju biblioteki, które będą potrzebne do ich działania, mogły działać w harmonii, sobie nie przeszkadzając. Ta funkcjonalność i użyteczność maszyn sprawiła, że stały się one popularne, zwłaszcza dla deweloperów. To z kolei doprowadziło do innej sytuacji – z każdą nową aplikacją wiązała się nowa maszyna wirtualna, a co za tym idzie, kolejny wykorzystywany system operacyjny – powiększało to jej rozmiar, często tracąc cenne miejsce na głównych maszynach. Potrzebowano na rynku pomysłu, który pozwalałby na zgrupowanie większej ilości aplikacji na takiej samej maszynie fizycznej, gdzie zwirtualizowany jest system operacyjny – i tu pojawia się pojęcie kontenera, który, w porównaniu do maszyny wirtualnej, jest dużo lżejszy, a co za tym idzie, bardziej ekonomiczny. Kontenery dają nam możliwość użycia ich w większej ilości na jednej maszynie fizycznej, czy nawet wirtualnej i pozwalają wykorzystać lepiej oddaną przestrzeń, aby zainstalowane aplikacje mogły lepiej się skalować.

 

Orkiestrowanie kontenerami

Jednym z najpopularniejszych orkiestratorów kontenerów jest Kubernetes - platforma do zarządzania, automatyzacji i skalowania aplikacji kontenerowych. To narzędzie pozwala nam wykonywać różne operacje: np. rozmieszczenie kontenerów po różnych węzłach, które będą te kontenery hostować, manewrowanie pozycją kontenerów, monitorowanie stanu kontenerów, aplikacji, możliwość naprawy aplikacji, czy skalowanie infrastruktury. Ogólnie rzecz biorąc, pozwala nam kierować kontenerami i tym, co się w nich znajduje. Przyśpiesza to proces tworzenia aplikacji oraz dostosowywania się do szybko zmieniających się wersji i standardów.
Kubernetes zapewnia nam wiele ruchomych mechanizmów, których opanowanie jest dość trudnym orzechem do zgryzienia. Potencjalnemu deweloperowi, który chce skupić się na zarządzaniu aplikacjami, potrzebny jest gotowiec, narzędzie, który pokryje całą część związaną z węzłem zarządczym. Taki serwis może mu zagwarantować wysoce dostępna, bezpieczna i w pełni zarządzana usługa Azure Kubernetes Service (AKS), która pozwoli nam w najlepszy sposób dostosować nasze produkty do odpowiednich zadań i planów.

Azure Kubernetes Service (AKS)

Usługa Azure Kubernetes Service (AKS) wspiera wdrażanie zarządzanego klastra Kubernetes na platformie Azure, odciążając deweloperów z wykonywania wielu działań operacyjnych na platformie Azure. Jako hostowana usługa Kubernetes na platformie Azure obsługuje krytyczne zadania, takie jak monitorowanie stanu i konserwacja. Tworzenie klastrów AKS przy użyciu Azure Portal, interfejsu wiersza polecenia platformy Azure, Azure PowerShell lub przy użyciu opcji wdrażania opartych na szablonach, takich jak szablony usługi Resource Manager i Terraform. Podczas wdrażania klastra AKS główny Kubernetes i wszystkie węzły są wdrażane i konfigurowane. Dodatkowe funkcje, takie jak zaawansowana sieć, integracja z Azure Active Directory i monitorowanie, można również skonfigurować podczas procesu wdrażania. Kontenery systemu Windows Server są obsługiwane w AKS.

Do Microsoft Azure trafiają klienci, którzy albo już mają uruchamianą aplikację na kontenerach oraz jedynie przenoszą ją na platformę, albo re faktorują swoją aplikację i przenoszą ją do kontenerów. Usługa może orkiestrować gotowe lub dopiero tworzone aplikacje oparte na mikroserwisach, ale również rozwiązania związane ze sztuczną inteligencją (oparte na hostowaniu modeli), oraz urządzeniami IoT. Zarządzany Kubernetes, w porównaniu do takiego, którym zarządza sam użytkownik, uwalnia dewelopera od wielu obowiązków. Oprócz części zarządczych Azure zajmuje się również kwestią utrzymania całego sprzętu. Do tego, wybierając AKS, klient płaci jedynie za zasoby obliczeniowe, sam panel do zarządzania jest nieodpłatny.

Wsparcie zarządzania

Microsoft udostępnia zestaw narzędzi, które wspierają zarządzanie w procesie wdrażania aplikacji są nimi:

  • Azure Resource Manager to usługa wdrażania i zarządzania dla platformy Azure. Zapewnia warstwę zarządzania, która umożliwia tworzenie, aktualizowanie i usuwanie zasobów na koncie platformy Azure. Oferuje takie usługi, jak kontrola dostępu, blokady i tagi, do zabezpieczania i organizowania zasobów po wdrożeniu. Dostarcza narzędzia do zarządzania z linii poleceń. Zarządzanie infrastrukturą za pomocą deklaratywnych szablonów zamiast skryptów. Umożliwia wdrażanie, zarządzanie i monitorowanie wszystkich zasobów jako grupa, zamiast obsługiwać te zasoby indywidualnie.

Kontrola dostępu oparta na rolach platformy Azure (Azure RBAC) jest natywnie zintegrowana z platformą zarządzania.

  • Platforma Kubernetes z obsługą Azure Arc umożliwia dołączać i konfigurować klastry Kubernetes znajdujące się na platformie Azure lub poza nią. Kubernetes z obsługą Azure Arc współpracuje z dowolnymi klastrami Kubernetes z certyfikatem Cloud Native Computing Foundation (CNCF). Takie rozwiązanie umożliwia zarządzanie kontenerami niezależnie od platformy gdzie są one postawione.

 

PYTANIA? SKONTAKTUJ SIĘ Z NAMI

 

Zobacz również: