Общее описание
Persistent Volumes (PV) подходят для постоянного хранения данных подами, такие данные переживут перезапуск пода.
Persitent Volume Claim (PVC) — это запрос на выделение Persistent Volume. В результате должен быть выделен как существующий Persistent Volume, так и создан новый.
В Linx Cloud можно использовать PV как блочные, так и файловые хранилища, которые доступны в облаке.
Как постоянное хранилище на платформе Linx Cloud используется:
- Распределенное блочное хранилище на базе SDS (software defined storage) CEPH, подобные диски могут быть как на базе HDD, так и на базе SSD. Данные, находящиеся на таком типе хранилища, по умолчанию реплицируются по трем серверам.
- Виртуальное файловое хранилище, которое подключается по протоколам NFS/CIFS.
- Высокоскоростное блочное хранилище на базе SSD/NVME-дисков, подключенное по iSCSI к каждому вычислительному серверу (HIGH IOPS SSD). В нем болшее количество гарантированных IOPS чем SSD CEPH и меньшим latency. Репликация этого хранилища основана на аппаратном RAID-10.
Через механизма Cinder, абстрагирующий работу с конкретным бэкендом хранения, платформа Linx Cloud предоставляет все виды блочных хранилищ .
В Kubernetes любой блочный постоянный диск, успользуемый вами, будет представлять собой Cinder Volume, другими словами это будет обычный диск согласно терминологии нашего Облака. Его можно создать вручную, на это есть право у администратора кластера, или динамически через PVC. Типы дисков в Kubernetes соответсвуюют типам хранилища Linx Cloud таким образом:
ceph-hdd
в терминологии Cinder: SDS CEPH HDD.ceph-ssd
в терминологии Cinder: SDS CEPH SSD.high-iops
в терминологии Cinder: HIGH IOPS SSD.
Работа с блочными устройствами облака в кластерах Kubernetes в Linx Cloud осущетсвляется при помощью CSI (Container Storage Interface), также данный механизм помогает гибко подключать и управлять дисками, если указать Storage Class в декларации PVC.
PersistentVolumeClaim (PVC) — это запрос на создание PV, при его создании, в кластере по умолчанию создается PV (в разделе Диски панели управления появится соответствующий диск).
Подробную информацию о Persistent Volumes можно найти на официальном сайте Kubernetes.
Предустановленные классы хранения
У ксластеров Kubernetes Linx Cloud есть преднастроенные классы хранения, использующие Cinder CSI для блочных хранилищ. Для PVC следует задать класс хранения (storage class), как работать с классами можно узнать в статье. Классы предоставляют разные типы хранилища в нескольких регионах и зонах доступности:
- Регион: Москва
Наименование класса хранения |
Тип хранилища Cinder CSI |
Зона доступности |
Reclaim Policy |
---|---|---|---|
csi-ceph-hdd-gz1
|
ceph-hdd |
GZ1
|
Delete
|
csi-ceph-hdd-gz1-retain
|
ceph-hdd |
GZ1
|
Retain
|
csi-ceph-hdd-ms1
|
ceph-hdd |
MS1
|
Delete
|
csi-ceph-hdd-ms1-retain
|
ceph-hdd |
MS1
|
Retain
|
csi-ceph-ssd-gz1
|
ceph-ssd |
GZ1
|
Delete
|
csi-ceph-ssd-gz1-retain
|
ceph-ssd |
GZ1
|
Retain
|
csi-ceph-ssd-ms1
|
ceph-ssd |
MS1
|
Delete
|
csi-ceph-ssd-ms1-retain
|
ceph-ssd |
MS1
|
Retain
|
csi-high-iops-gz1
|
high-iops |
GZ1
|
Delete
|
csi-high-iops-gz1-retain
|
high-iops |
GZ1
|
Retain
|
csi-high-iops-ms1
|
high-iops |
MS1
|
Delete
|
csi-high-iops-ms1-retain
|
high-iops |
MS1
|
Retain
|
Любой из данных классов хранения:
- Позволяет увеличить том (
allowVolumeExpansion: true
). - Делает немедленную привязку и выделение тома (
volumeBindingMode: Immediate
).
Больше информации о параметрах и Reclaim Policy можно узнать в статье.