Создать под с динамически подготовленным томом
В этой инструкции рассмотрен пример создания пода с постоянным томом, который динамически подготавливается с помощью объекта Persistent Volume Claim (PVC).
Перед началом работы
-
Создайте SNAT-шлюз для доступа к образу, который будете развертывать на поде.
-
Создайте кластер Managed Kubernetes и хотя бы одну группу узлов.
-
Установите CSI-драйвер для работы с постоянными томами.
-
Подключитесь к созданному кластеру.
Шаг 1. Создайте PVC
Создайте запрос на предоставление постоянного тома размером 6 ГБ и режимом доступа ReadWriteOnce.
-
Сохраните следующий манифест в файл cloudru-pvc.yaml:
apiVersion: v1kind: PersistentVolumeClaimmetadata:name: cloudru-pvcspec:storageClassName: cloudru-nvmeaccessModes:- ReadWriteOnceresources:requests:storage: 6GiГде:
-
spec.storageClassName — название класса хранилища.
-
spec.accessModes — режим доступа к тому.
-
spec.resources.requests — минимальное количество ресурсов для выделяемого тома.
-
spec.resources.requests.storage — размер тома. Допустимое значение — до 16 ТБ, кратное 1 ГБ.
Подробное описание параметров PVC см. в документации Kubernetes.
-
-
Выполните команду:
kubectl create -f cloudru-pvc.yamlЕсли команда выполнена успешно, появится сообщение:
persistentvolumeclaim/cloudru-pvc created -
Убедитесь, что PVC создан:
kubectl describe pvc cloudru-pvcОтобразится подробная информация о созданном PVC.
Шаг 2. Создайте под с динамически подготовленным томом
-
Сохраните следующий манифест в файл cloudru-pod.yaml:
apiVersion: v1kind: Podmetadata:name: cloudru-podspec:containers:- name: web-serverimage: nginxvolumeMounts:- mountPath: /var/lib/www/htmlname: cloudru-storagevolumes:- name: cloudru-storagepersistentVolumeClaim:claimName: cloudru-pvcГде:
-
spec.containers — список контейнеров, которые хотите запустить на поде.
-
spec.containers.name — название контейнера.
-
spec.containers.image — образ для развертывания в контейнере.
-
spec.volumeMounts — параметры монтирования тома.
-
spec.volumeMounts.mountPath — путь к каталогу в файловой системе контейнера, куда должен быть смонтирован том.
-
spec.volumeMounts.name — название подключаемого тома.
-
spec.volumes — список параметров всех томов пода.
-
spec.volumes.name — название тома.
-
spec.volumes.persistentVolumeClaim — информация о PVC для соответствующего постоянного тома.
-
spec.volumes.persistentVolumeClaim.claimName — название PVC-объекта.
Подробнее о параметрах манифеста для создания пода смотрите в документации Kubernetes.
-
-
Выполните команду:
kubectl create -f cloudru-pod.yamlРезультат:
pod/cloudru-pod created -
Проверьте параметры постоянного тома:
kubectl get pvРезультат:
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGEpvc-32218813-09c7-4a5f-b768-5ca91c506272 6Gi RWO Delete Bound default/cloudru-pvc cloudru-nvme 16m -
Проверьте статус пода:
kubectl get pod cloudru-podРезультат:
NAME READY STATUS RESTARTS AGEcloudru-pod 1/1 Running 0 83m
Просмотреть информацию о созданных постоянных томах, отредактировать параметры или удалить том можно в сервисе «Диски».
Шаг 3. Удалите постоянный том
Если вы завершили работу с постоянным томом, его можно удалить. В примере достаточно удалить PVC, том удалится автоматически.
-
Уточните, какой PVC нужно удалить:
kubectl get pvcБудет отображен список объектов PVC:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGEcloudru-pvc Bound pvc-32218813-09c7-4a5f-b768-5ca91c506272 6Gi RWO cloudru-nvme 92mГде в столбце:
-
NAME — название PVC;
-
VOLUME — название постоянного тома, который соответствует PVC.
-
-
Выполните команду для удаления PVC:
kubectl delete pvc cloudru-pvcРезультат:
persistentvolumeclaim "cloudru-pvc" deletedВниманиеЕсли под активно использует объект PVC, удаление будет отложено, а PVC переведен в статус Terminating. PVC будет удален вместе с постоянным томом, когда под закончит работу с ним.
Подробнее об этом читайте в документации Kubernetes.
-
Если необходимо, удалите под:
kubectl delete pod cloudru-podРезультат:
pod "cloudru-pod" deleted
- Перед началом работы
- Шаг 1. Создайте PVC
- Шаг 2. Создайте под с динамически подготовленным томом
- Шаг 3. Удалите постоянный том