Pod Service Deep Dive

Kubernetes dla każdego – sztuka konteneryzacji

POD & Service – Deep Dive

Pod z dwoma kontenerami

  1. kubectl apply -f pod.yaml
  2. minikube ssh
    • docker ps --format "table \t \t \t" --filter "name=inter"
    • istnieją 3 kontenery (w jednym podzie). Jednen z nich jest zatrzymany tzw. Pauze Container - jest to dodatkowy kontener tworzony przez Kubernetesa który jest właścicielem namespacu sieciowego, który współdzieli z innymi kontenerami w ramnach (jest on niezbędny do komunikacji)
    • przed uruchominiem Pauzy Kontenera tworzone są 2 wirtualne interfejsy sieciowe dla kontenera, jeden pozostaje w przestrzeni nazw/namespace hosta/noda (vethXXX), a drugi przenoszony jest do przestrzeni nazw sieci kontenera (eth0). Interfejsy te są jak 2 urzędzenia fizyczne połączone kablem.
    • interfejs w namespace hosta połączony jest z mostkiem sieciowym (Bridge), adres interfejsu w namespace kontenera (eth0) ma przypisany adres IP z puli adresów mostka/Bridge * adresy IP poda muszą być unikalne w całym klastrze

Service

External Service

  1. kubectl apply -f service.yaml
  2. kubectl exec -it inter-pod /bin/bash
    • curl ext-service-test

Session Affinity -

session.yaml

Mając service i kilka podów, któe są przez ten serwis obsługiwane za pomocą selektora:

Pliki