IT Academy

Kubernetes: Pod, Deployment жана Service эмнеси менен айырмаланат

Kubernetes'тин үч базалык объектиси жөнөкөй сөздөр менен, манифесттер жана текшерүү үчүн kubectl командалары менен.

Данияр Абдыкадыров25-август 2026-ж. 6 мүн окуу 2898 көрүү

Pod

Минимальная единица запуска — один или несколько контейнеров с общей сетью и хранилищем. Pod смертен: при падении узла он не воскреснет сам.

bash
kubectl run test --image=nginx --restart=Never
kubectl get pods -o wide
kubectl describe pod test

Deployment

Описывает желаемое состояние: сколько реплик, какой образ, как обновлять. Контроллер следит, чтобы реальность соответствовала описанию.

yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: web
spec:
  replicas: 3
  selector:
    matchLabels: { app: web }
  template:
    metadata:
      labels: { app: web }
    spec:
      containers:
        - name: web
          image: nginx:1.27
bash
kubectl apply -f web.yaml
kubectl rollout status deployment/web
kubectl set image deployment/web web=nginx:1.28
kubectl rollout undo deployment/web

Service

Стабильный адрес и балансировка между Pod'ами с нужными метками.

ТипНазначение
ClusterIPдоступ внутри кластера
NodePortпорт на каждом узле
LoadBalancerвнешний балансировщик облака
bash
kubectl expose deployment web --port=80 --type=ClusterIP
kubectl get svc

Правило запоминания: Pod — процесс, Deployment — менеджер процессов, Service — телефонный номер, по которому их можно найти.

kuberneteskubectl