Примеры манифестов Kubernetes

Один запрос PVC и один под

Создание запроса PVC

Чтобы создать запрос на предоставление хранилища данных:

  1. Создайте файл манифеста, например test-pvc.yaml:

    где:

    • PersistentVolumeClaim запрашивает диск размером 5 ГБ;

    • accessModes: ReadWriteOnce — том может быть подключён для чтения и записи только к одному узлу;
    • storageClassName: t1-csi указывает на StorageClass, созданный при установке CSI-драйвера.

  2. Примените манифест:

Создание пода

Чтобы создать под:

  1. Создайте файл манифеста пода, например test-pod.yaml:

    где:

    • под t1-csi-test-pod использует созданный PVC t1-csi-test-pvc и монтирует диск в папку /data;

    • контейнер app на базе образа busybox:1.36 записывает в том файл hello.txt, выводит его содержимое и информацию о дисковом пространстве, после чего переходит в режим ожидания (команда sleep 3600).

  2. Примените манифест:

Два запроса PVC и один под с двумя томами

Создание запросов PVC

Чтобы создать запрос PVC:

  1. Создайте файл манифеста, например test-pvc-two.yaml, содержащий два запроса PVC:

    где:

    • создаются два отдельных запроса PVC: t1-csi-test-pvc-1 и t1-csi-test-pvc-2;

    • каждый запрос PVC запрашивает диск размером 1 ГБ;

    • оба запроса PVC используют StorageClass t1-csi и режим доступа ReadWriteOnce.

  2. Примените манифест:

Создание пода с двумя томами

Чтобы создать под:

  1. Создайте файл манифеста пода, например test-pod-two.yaml:

    где:

    • под t1-csi-test-pod-two использует два ранее созданных запроса PVC: t1-csi-test-pvc-1 и t1-csi-test-pvc-2;

    • первый том монтируется в папку /data1, второй — в папку /data2;

    • контейнер app записывает в каждый том отдельный файл hello.txt с разным содержимым, выводит его и информацию о дисковом пространстве, после чего переходит в режим ожидания.

  2. Примените манифест:

Проверка созданных ресурсов

Чтобы убедиться, что запросы PVC и поды успешно созданы, выполните команды:

В выводе команды kubectl get pvc вы должны увидеть статус Bound для каждого запроса.

В выводе команды kubectl get pods вы должны увидеть статус Running для пода.