Azure Kubernetes Service (AKS)
Azure Kubernetes Service, w skrócie AKS, to zarządzana usługa platformy chmurowej Microsoft Azure umożliwiająca uruchamianie, skalowanie i zarządzanie klastrami Kubernetes. Usługa została uruchomiona w 2018 roku i od tego czasu jest jednym z kluczowych elementów strategii Microsoftu w zakresie chmury obliczeniowej oraz konteneryzacji.
Historia
Microsoft wprowadził Azure Kubernetes Service w odpowiedzi na rosnące zapotrzebowanie na platformy do orkiestracji kontenerów. Pierwsza wersja usługi została udostępniona publicznie w 2018 roku, a od tego czasu AKS przeszedł szereg aktualizacji, wprowadzając m.in. wsparcie dla Windows Server Containers, integrację z Azure AD oraz automatyczne aktualizacje węzłów.
Architektura
Podstawowe elementy architektury AKS to:
- Klaster Kubernetes – logiczny zbiór węzłów, zarządzany przez usługę kontrolera mastera, który jest hostowany jako usługa zarządzana przez Azure.
- Węzły (node pools) – grupy maszyn wirtualnych (VM) o określonych parametrach, w których uruchamiane są pod‑y (pods).
- Kontenery – jednostki wykonawcze uruchamiane w pod‑ach, oparte na obrazach Docker lub OCI.
- Integracja z usługami Azure – m.in. Azure AD, Azure Monitor, Azure DevOps, ACR.
Funkcje i możliwości
Usługa oferuje szereg funkcji ułatwiających zarządzanie klastrami:
- Automatyczne skalowanie – zarówno poziome (HPA), jak i pionowe (VPA) oraz skalowanie węzłów (Cluster Autoscaler).
- Bezpieczeństwo – integracja z Azure AD i RBAC, obsługa Network Policies, szyfrowanie dysków oraz wsparcie dla Pod Security Policies.
- Aktualizacje i patche – możliwość planowanych aktualizacji węzłów oraz wersji Kubernetes bez przerywania działania aplikacji.
- Monitorowanie i diagnostyka – wbudowane metryki w Azure Monitor, logi w Log Analytics oraz integracja z Prometheus.
- CI/CD – natywna integracja z Azure DevOps oraz możliwością podłączenia do innych systemów GitHub Actions i Jenkins.
Zastosowania
Azure Kubernetes Service jest wykorzystywany w różnych scenariuszach:
- Budowa mikroserwisów i aplikacji chmurowych.
- Obsługa obciążeń big data przy użyciu narzędzi takich jak Apache Spark czy Kafka.
- Modernizacja starszych aplikacji w ramach migracji do chmury.
- Uruchamianie zadań wsadowych i przetwarzanie strumieniowe przy pomocy Jobs i CronJobs.
Porównanie z innymi usługami
W porównaniu do innych zarządzanych usług Kubernetes, takich jak Amazon Elastic Kubernetes Service (EKS) czy Google Kubernetes Engine (GKE), AKS wyróżnia się:
- Głęboką integracją z ekosystemem Azure (np. VNet, Blob Storage).
- Elastycznymi modelami cenowymi, w tym bezpłatnym planem kontrolera mastera.
- Wsparciem dla Azure Policy do wymuszania zasad bezpieczeństwa i zgodności.
Przykładowa konfiguracja
Poniżej przedstawiono podstawowy przykład utworzenia klastra AKS przy użyciu Azure CLI:
az group create --name MyResourceGroup --location eastus
az aks create \
--resource-group MyResourceGroup \
--name MyAKSCluster \
--node-count 3 \
--enable-addons monitoring \
--generate-ssh-keys
az aks get-credentials --resource-group MyResourceGroup --name MyAKSCluster
Polecenia te tworzą grupę zasobów, klaster z trzema węzłami oraz włączają monitorowanie. Po uzyskaniu poświadczeń użytkownik może zarządzać klastrem przy pomocy standardowych poleceń kubectl.
Bezpieczeństwo i zgodność
AKS spełnia wiele norm i standardów, m.in. ISO/IEC 27001, SOC 2 oraz RODO. Dzięki integracji z Azure Policy oraz Azure Security Center administratorzy mogą automatycznie wykrywać i naprawiać niezgodności.
Przyszłość usługi
Microsoft regularnie rozwija AKS, wprowadzając m.in. wsparcie dla klatkowych aktualizacji w trybie zero downtime, lepszą obsługę GPU oraz funkcje związane z Edge Computing. W perspektywie najbliższych lat planowane są także rozszerzenia w zakresie serverless oraz głębsza integracja z Azure Arc umożliwiająca zarządzanie klastrami hybrydowymi.
Źródła i dalsza lektura
W encyklopedii dostępne są powiązane artykuły, które mogą pomóc w lepszym zrozumieniu tematu: