vault backup: 2026-04-29 13:24:30
This commit is contained in:
@@ -30,4 +30,45 @@ Deployment в своей работе использует концепцию н
|
|||||||
За работу с Replicaset отвечает *Replicaset*-controller.
|
За работу с Replicaset отвечает *Replicaset*-controller.
|
||||||
|
|
||||||
Приложения в k8s представлены в виде объединений контейнеров (**pod**).
|
Приложения в k8s представлены в виде объединений контейнеров (**pod**).
|
||||||
Набором репликаций объединений контейнеров (**pods**) управляет replicaset.
|
Набором репликаций объединений контейнеров (**pods**) управляет replicaset.
|
||||||
|
|
||||||
|
С набором репликаций (replicaset) работает deployment.
|
||||||
|
|
||||||
|
## Deployment controller
|
||||||
|
*Deployment-controller* способен самостоятельно создать Deployment на основе образа (Docker image), а может использовать готовое описание Deployment (Manifest) в формате `yaml` или `json`.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
kubectl create deployment mariadb --image=mariadb:4.0
|
||||||
|
```
|
||||||
|
|
||||||
|
```sh
|
||||||
|
kubectl apply -f nginx-deployment-manifest.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
Deployment-controller через сущность Deployment работает только с объединением контейнеров (Pods) и наборами их репликаций (Replicasets).
|
||||||
|
|
||||||
|
Для связи *Pod* с другими *Pods* и внешним миром используется сущность **Service**.
|
||||||
|
|
||||||
|
*Pod* связывается с *Service* через *Endpoint* (обеспечением работы Endpoints занимается Endpoint-controller).
|
||||||
|
|
||||||
|
## Service
|
||||||
|
|
||||||
|
Создать Service можно выполнив *Expose* существующего *Deployment* или использовав готовое описание *Service* (Manifest) в формате `yaml` или `json`.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
kubectl expose deployment mariadb --port=8080
|
||||||
|
```
|
||||||
|
```sh
|
||||||
|
kubectl apply -f nginx-service-manifest.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Deployment - replicaset
|
||||||
|
|
||||||
|
За счет связки *Deployment* - *replicaset*, в кластере Kubernetes гарантируется выполнение следующих операций.
|
||||||
|
|
||||||
|
- Обновление без downtime (**Rolling update**).
|
||||||
|
- Откат текущего обновления (**Rollback**).
|
||||||
|
- Просмотр истории обновлений (**Revision**).
|
||||||
|
- Откат приложения до конкретной ревизии (**Rollback to revision**).
|
||||||
|
- Скалирование и дескалирование приложения (**Scaling**).
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user