Использование манифестов
В продуктивной среде управление подами выполняется с помощью специальных файлов с описанием того, как должен создаваться и настраиваться под — манифестов. Рассмотрим пример создания и применения такого манифеста.
Создадим файл формата yml:
vi manifest_pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: web-srv
labels:
app: web_server
owner: dmosk
description: web_server_for_site
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 80
- containerPort: 443
- name: php-fpm
image: php-fpm:latest
ports:
- containerPort: 9000
- name: mariadb
image: mariadb:latest
ports:
- containerPort: 3306
* в данном примере будет создан под с названием web-srv; в данном поде будет развернуто 3 контейнера — nginx, php-fpm и mariadb на основе одноименных образов.
Для объектов Kubernetes очень важное значение имеют метки или labels. Необходимо всегда их описывать. Далее, данные метки могут использоваться для настройки сервисов и развертываний.
Чтобы применить манифест выполняем команду:
kubectl apply -f manifest_pod.yaml
Мы должны увидеть ответ:
pod/web-srv created
Смотрим поды командой:
kubectl get pods
Мы должны увидеть:
NAME READY STATUS RESTARTS AGE
web-srv 3/3 Ready 0 3m11s
* для Ready мы можем увидеть 0/3 или 1/3 — это значит, что контейнеры внутри пода еще создаются и нужно подождать.
