Docker i Kubernetes

Wprowadzenie do Kubernetes

Frank Heilmann

Platform Architect and Freelance Instructor

Narzędzia do Orkiestracji Kontenerów

narzędzia do orkiestracji kontenerów

  • Nowoczesne stosy oprogramowania mogą składać się z tysięcy kontenerów
  • Zarządzanie nimi to Orkiestracja Kontenerów – istnieje kilka narzędzi do orkiestracji kontenerów
  • Kubernetes posiada szacowany udział w rynku znacznie powyżej 95%
Wprowadzenie do Kubernetes

Kubernetes do Orkiestracji

  • Kubernetes rozwiązuje typowe wyzwania orkiestracji kontenerów, np.:
    • planowanie i sieć (gdzie wdrożyć kontener i jak go połączyć z innymi)
    • podłączanie pamięci masowej do kontenera
  • W tym celu Kubernetes współpracuje z Silnikami Kontenerów.

Kubernetes i Docker

Wprowadzenie do Kubernetes

Relacja między Dockerem a Kubernetes

  • Docker jest zazwyczaj wybranym silnikiem kontenerów
  • Kubernetes współpracuje z Dockerem, aby planować i utrzymywać kontenery
  • Docker jest zwykle używany do dwóch zadań:
    • tworzenia i aktualizowania obrazów Docker
    • uruchamiania kontenerów na podstawie tych obrazów
  • Kubernetes nigdy nie tworzy obrazów Docker – służy do tego Docker
Wprowadzenie do Kubernetes

Manifesty Kubernetes

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 5
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.25.4
        ports:
        - containerPort: 80
  • Obiekty Kubernetes (np. kontenery) są opisywane w tzw. Manifestach Kubernetes
  • Manifesty to pliki YAML opisujące, jakie obiekty są potrzebne, jak należy je skonfigurować, gdzie wdrożyć i wiele więcej
  • Manifesty są deklaratywne, tzn. opisują co chcemy osiągnąć lub jaki stan ma zostać uzyskany
  • Nie są imperatywnenie opisują, jak to osiągnąć
Wprowadzenie do Kubernetes

kubectl

kubectl i Kubernetes

  • kubectl to narzędzie wiersza poleceń do interakcji z Kubernetes
  • kubectl oferuje wiele poleceń i opcji
  • kubectl odczytuje Manifesty i przesyła je do Kubernetes przez API, a Kubernetes oblicza, co zrobić, aby osiągnąć pożądany stan
  • Wymawiane cube cuddle ;-)
Wprowadzenie do Kubernetes

Czas na ćwiczenia!

Wprowadzenie do Kubernetes

Preparing Video For Download...