Создать под с динамически подготовленным томом
В этой инструкции рассмотрен пример создания пода с постоянным томом, который динамически подготавливается с помощью объекта Persistent Volume Claim (PVC).
Перед началом работы
Создайте кластер Managed Kubernetes и хотя бы одну группу узлов.
Установите CSI-драйвер для работы с постоянными томами.
Создайте SNAT-шлюз для доступа к образу, который будете развертывать на поде.
Подключитесь к созданному кластеру.
Шаг 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 pvсБудет отображен список объектов 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. Удалите постоянный том