Демистификация файлов манифеста в Kubernetes: руководство для начинающих

Если вы новичок в Kubernetes, возможно, вы встречали термин «Файл манифеста» и задавались вопросом, что он означает. Проще говоря, файл манифеста в Kubernetes — это файл YAML, который описывает желаемое состояние ресурсов вашего приложения. Он действует как образец для Kubernetes для создания и управления компонентами вашего приложения, такими как развертывания, модули и сервисы. В этой статье мы погрузимся в мир файлов манифеста, исследуем их важность и предоставим вам несколько методов для эффективного их создания и управления.

Понимание файлов манифеста.
Файлы манифеста написаны в формате YAML (еще один язык разметки), который удобен для чтения и прост для понимания. Они определяют желаемое состояние ресурсов вашего приложения, включая количество реплик, ограничения ресурсов, переменные среды и любые другие конфигурации, специфичные для вашего приложения.

Создание простого файла манифеста.
Давайте начнем с простого примера файла манифеста для развертывания:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: myapp
  template:
    metadata:
      labels:
        app: myapp
    spec:
      containers:
        - name: myapp-container
          image: myapp:v1.0.0
          ports:
            - containerPort: 8080

В этом примере мы определяем развертывание с именем «myapp-deployment» с тремя репликами. При развертывании выбираются модули с меткой «app: myapp» и создаются их с использованием указанного образа контейнера и порта.

Применение файла манифеста:
Чтобы применить файл манифеста, используйте команду kubectl apply:

kubectl apply -f myapp-manifest.yaml

Эта команда указывает Kubernetes прочитать файл YAML и создать определенные ресурсы.

Обновление файла манифеста.
Файлы манифеста можно обновлять, чтобы отразить изменения в вашем приложении. Предположим, вы хотите обновить количество реплик до пяти в предыдущем примере. Измените поле replicasв файле манифеста и примените его повторно:

...
spec:
  replicas: 5
  ...
kubectl apply -f myapp-manifest.yaml

Kubernetes обновит существующее развертывание, увеличив его до пяти реплик.

Удаление ресурсов.
Чтобы удалить ресурсы, определенные в файле манифеста, используйте команду kubectl delete:

kubectl delete -f myapp-manifest.yaml

Эта команда сообщает Kubernetes удалить ресурсы, определенные в файле YAML.

Файлы манифеста необходимы в Kubernetes для определения ресурсов вашего приложения и управления ими. Они предоставляют декларативный способ указать желаемое состояние вашего приложения, упрощая создание, обновление и удаление ресурсов. Поняв, как писать и применять файлы манифеста, вы получите прочную основу для эффективного управления развертываниями Kubernetes.