Sobes.tech
Middle

Ce este un set de replici și un deployment?

sobes.tech AI

Răspuns de la AI

Un ReplicaSet asigură un număr specific de poduri identice care funcționează în cluster. Monitorizează starea podurilor și le înlocuiește automat pe cele care au eșuat sau au încetat să funcționeze.

Deployment-ul este furnizat peste ReplicaSet. Gestionează actualizările și rollback-urile aplicațiilor, menținând o istorie a versiunilor deployment-ului. Permite efectuarea actualizărilor conform strategiei de rolling update sau recreate.

# Exemplu de manifest pentru Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3 # Definește numărul dorit de poduri (prin ReplicaSet)
  selector:
    matchLabels:
      app: nginx
  strategy:
    type: RollingUpdate # Strategie de actualizare
    rollingUpdate:
      maxUnavailable: 1
      maxSurge: 1
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2 # Versiunea imaginii care va fi actualizată
        ports:
        - containerPort: 80

În acest exemplu, Deployment va crea un ReplicaSet care va menține 3 poduri cu imaginea nginx:1.14.2. Când modificați versiunea imaginii în manifestul Deployment, acesta va crea un nou ReplicaSet pentru noua versiune și va direcționa treptat traficul către acesta, eliminând podurile vechi conform strategiei de rolling update.

Tabel comparativ:

Posibilitate ReplicaSet Deployment
Garanția numărului de poduri
Actualizarea aplicațiilor
Rollback-ul versiunilor
Gestionarea istoricului