Сгенерировать YAML-манифесты Kubernetes для Deployments, Services, ConfigMaps, правил Ingress и HPA.
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
namespace: default
labels:
app: my-app
spec:
replicas: 2
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app
image: myapp:latest
ports:
- containerPort: 3000
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
env:
- name: NODE_ENV
value: "production"
livenessProbe:
httpGet:
path: /healthz
port: 3000
initialDelaySeconds: 15
periodSeconds: 20
readinessProbe:
httpGet:
path: /ready
port: 3000
initialDelaySeconds: 5
periodSeconds: 10Ресурсы Kubernetes определяются в виде манифестов YAML и применяются с помощью команды <code>`kubectl apply -f`</code>. Deployment управляет набором реплицированных Pod. Service предоставляет доступ к этим Pod по стабильному IP-адресу или DNS-имени. ConfigMap хранит конфигурационные данные, не относящиеся к секретам. Ingress маршрутизирует внешний HTTP-трафик к внутренним Service. HPA автоматически масштабирует реплики Deployment в зависимости от загрузки ЦП или объёма используемой памяти.
Выберите тип ресурса на одной из вкладок в верхней части страницы. Заполните поля для данного ресурса, а затем скопируйте сгенерированный файл YAML. Воспользуйтесь вкладкой «Все ресурсы», чтобы сгенерировать все пять манифестов одновременно в виде единого многодокументного файла YAML, разделенного разделителями <code>---</code>.
Запросы на ресурсы определяют минимальный объем процессорного времени и памяти, необходимый контейнеру для планирования. Ограничения устанавливают максимальный объем ресурсов, который может потреблять контейнер. Установка запросов без ограничений является наиболее распространённой практикой в производственной среде - это гарантирует запас для планирования и одновременно позволяет обеспечивать пиковые нагрузки. Для работы HPA требуется, чтобы в кластере был установлен сервер метрик. Для работы правил Ingress требуется контроллер Ingress, такой как nginx-ingress или Traefik.