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.