1.9 KiB
1.9 KiB
status, type, tags, created, updated, title
| status | type | tags | created | updated | title | |||
|---|---|---|---|---|---|---|---|---|
| stable | concept |
|
2025-12-17 | 2026-05-07 | Deployment и ReplicaSet |
Deployment и ReplicaSet
Два ключевых контроллера k8s, отвечающих за развёртывание приложений.
Deployment
Deployment-controller управляет декларативным описанием приложения для его развёртывания и обновления.
Способен создать Deployment из образа или из готового манифеста:
kubectl create deployment mariadb --image=mariadb:4.0
kubectl apply -f nginx-deployment-manifest.yaml
Deployment работает только с Pods и ReplicaSets.
ReplicaSet
ReplicaSet — сущность k8s, обеспечивающая поддержку стабильного набора реплик Pod в любой момент времени.
Приложение = Pod (объединение контейнеров). ReplicaSet управляет множеством таких Pod.
Service
Для связи Pod с другими Pod и внешним миром используется Service.
Pod связывается с Service через Endpoint (управляет Endpoint-controller).
Создание Service:
kubectl expose deployment mariadb --port=8080
kubectl apply -f nginx-service-manifest.yaml
Возможности связки Deployment + ReplicaSet
| Операция | Описание |
|---|---|
| Rolling update | Обновление без downtime |
| Rollback | Откат текущего обновления |
| Revision | Просмотр истории обновлений |
| Rollback to revision | Откат до конкретной ревизии |
| Scaling | Масштабирование приложения |