Od Dockera do Kubernetesa – czyli dlaczego potrzebujemy orkiestracji

Illustration of a Kubernetes cluster shown as a neighbourhood map

Od Dockera do Kubernetesa – czyli dlaczego potrzebujemy orkiestracji

Jakiś czas temu pisałem, czym jest Dockerfile i jak dzięki Dockerowi możemy zapakować aplikację w kontener.

Dockerfile nazwaliśmy przepisem, więc sam kontener w tym przypadku jest dla nas ciastem– zawsze takim samym, łatwym do przenoszenia i niezależnym od „kuchni”, w której powstał (o ile trzymamy się przepisu).

Wprowadzenie konteneryzacji rozwiązało duży problem w IT – aplikacje przestały być zależne od środowiska, w którym działają.

Ale… co w sytuacji, gdy mamy dziesiątki albo setki kontenerów, z których każdy odpowiada za inny kawałek systemu (mikroserwisy)?

Nagle pojawiają się pytania:

Tutaj właśnie pojawia się orkiestracja, a wraz z nią Kubernetes.

Orkiestracja w dwóch słowach

Docker dał nam kontenery, jednak dopiero Kubernetes sprawił, że całe środowisko, w którym działają setki kontenerów, jest stabilne, skalowalne, samonaprawiające się, a przede wszystkim lepiej zarządzalne.

Pozwala między innymi na:

Kubernetes jako osiedle mieszkaniowe

By lepiej to zobrazować, wyobraźmy sobie klaster Kubernetes jako całe osiedle bloków.

No ale kto tym zarządza? Tutaj wkracza Control Plane – zestaw komponentów odpowiedzialnych za sterowanie klastrem.

W analogii do osiedla Control Plane to spółdzielnia mieszkaniowa, która pilnuje wszystkiego. W jej skład wchodzą m.in.:

Pods and nodes compared to apartments and buildings on an estate
Pods are like apartments in a building; the cluster is the whole neighbourhood where services live together.

Poza tym mamy:

Podsumowanie

Kubernetes składa się z takich „bloczków”:

Wpływ Kubernetesa można streścić w kilku kluczowych punktach:

Dla zainteresowanych – głębiej o Kubernetes

Powyższa analogia z osiedlem dobrze oddaje podstawy, ale Kubernetes to ogromny ekosystem. Jeśli chcesz lepiej zrozumieć, jak to wszystko działa, warto poznać kilka dodatkowych pojęć i mechanizmów:

1. Architektura Control Plane

2. Komponenty na węzłach (Nodes)

3. Kluczowe obiekty w Kubernetes

4. Mechanizmy ułatwiające życie

← Back to all posts