Sobes.tech
Junior

Kas būtu jāatrodas Kubernetes Pod iekšpusē?

sobes.tech AI

Atbilde no AI

Kubernetes Pod iekšienē jāatrodas:

  • Vienam vai vairākiem saistītiem konteineriem, kas darbojas kā viena vienība un koplieto resursus.
  • Kopīgas datu glabāšanas vietas (Volumes) Pod konteineriem.
  • Kopīga tīkla virkne visiem konteineriem (saskaņā ar IP specifikāciju).
  • Pod specifikācija (PodSpec objekts), kas apraksta, kā konteineriem jāstrādā, ieskaitot:
    • Konteineru attēlus.
    • Nepieciešamos resursus (CPU, atmiņu).
    • Atvērtus portus.
    • Vides mainīgos.
    • Veselības pārbaudes (liveness un readiness probes).
    • Restartēšanas politikas.

Tipiska lietošana:

  • Viens galvenais lietojumprogrammas konteineris.
  • Viens vai vairāki "sidecar" konteineri, kas veic palīguzdevumus (reģistrēšana, uzraudzība, adapteri).

Piemērs daļējai Pod specifikācijai:

# Daļējas Pod specifikācijas piemērs
apiVersion: v1
kind: Pod
metadata:
  name: my-app-pod
spec:
  containers:
  - name: main-app
    image: my-docker-repo/my-app:latest
    ports:
    - containerPort: 80
    resources:
      limits:
        cpu: "500m"
        memory: "512Mi"
  - name: log-collector
    image: my-docker-repo/log-collector:latest
    volumeMounts:
    - name: app-logs
      mountPath: /var/log/app
  volumes:
  - name: app-logs
    emptyDir: {}

Svarīgi principi:

  • Pod ir mazākā izvietojamā vienība Kubernetes.
  • Viena Pod iekšienē esošie konteineri dalās ar kodola vārdu telpu (PID, UTS, IPC).
  • Skalēšana notiek uz Pod līmeņa.
  • Pod paredzēts izvietot cieši saistītus procesus.