Sobes.tech
Middle

Czym jest zestaw replik i wdrożenie?

sobes.tech AI

Odpowiedź od AI

ReplicaSet zapewnia określoną liczbę identycznych podów działających w klastrze. Monitoruje stan podów i automatycznie wymienia te, które uległy awarii lub przestały działać.

Deployment jest dostarczany na poziomie ReplicaSet. Zarządza aktualizacjami i cofnięciami aplikacji, utrzymując historię wersji deploymentu. Umożliwia wykonywanie aktualizacji według strategii rolling update lub recreate.

# Przykład manifestu Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3 # Określa pożądaną liczbę podów (przez ReplicaSet)
  selector:
    matchLabels:
      app: nginx
  strategy:
    type: RollingUpdate # Strategia aktualizacji
    rollingUpdate:
      maxUnavailable: 1
      maxSurge: 1
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2 # Wersja obrazu, która będzie aktualizowana
        ports:
        - containerPort: 80

W tym przykładzie Deployment utworzy ReplicaSet, który będzie obsługiwał 3 pody z obrazem nginx:1.14.2. Po zmianie wersji obrazu w manifeście Deployment, utworzy nowy ReplicaSet dla nowej wersji i stopniowo przekieruje na niego ruch, usuwając stare pody zgodnie z strategią RollingUpdate.

Tabela porównawcza:

Możliwość ReplicaSet Deployment
Gwarancja liczby podów
Aktualizacja aplikacji
Cofanie wersji
Zarządzanie historią