Режимы доступа и режимы томов

В Kubernetes PersistentVolumeClaims (PVC) и StorageClasses работают вместе для управления тем, как хранилище предоставляется и используется рабочими нагрузками. Два ключевых понятия в этой области — это режимы доступа и режимы томов. В этой статье рассматриваются эти понятия и подчеркивается, как различные системы хранения поддерживают их.

Содержание

Режимы доступа в Kubernetes

Режимы доступа определяют, как том может быть смонтирован и использован подами. Основные режимы доступа:

  • ReadWriteOnce (RWO): том может быть смонтирован в режиме чтения-записи одним узлом.
  • ReadOnlyMany (ROX): том может быть смонтирован в режиме только для чтения несколькими узлами.
  • ReadWriteMany (RWX): том может быть смонтирован в режиме чтения-записи несколькими узлами.

Режимы доступа по StorageClass

Storage ClassПоддержка RWOПоддержка ROXПоддержка RWX
CephFS File StorageДаНетДа
CephRBD Block StorageДаНетНет
TopoLVMДаНетНет
NFS Shared StorageДаНетДа

Как показано выше, файловые системы хранения, такие как CephFS и NFS, поддерживают множественные одновременные операции записи или чтения, что делает их подходящими для сценариев совместного доступа. С другой стороны, блочные системы хранения, такие как CephRBD и TopoLVM, обеспечивают эксклюзивный доступ только одному узлу за раз.

Режимы томов в Kubernetes

Режимы томов определяют, как данные предоставляются поду:

  • Filesystem: том монтируется в под как файловая система.
  • Block: том представлен как необработанное блочное устройство.

Режимы томов по StorageClass

Storage ClassТипПоддерживаемые режимы томов
CephFS File StorageFile StorageFilesystem
CephRBD Block StorageBlock StorageFilesystem, Block
TopoLVMBlock StorageFilesystem, Block
NFS Shared StorageFile StorageFilesystem

Блочные системы хранения, такие как CephRBD и TopoLVM, предлагают как доступ через файловую систему, так и через необработанный блочный доступ, обеспечивая гибкость для различных потребностей приложений. Файловые системы хранения, такие как CephFS и NFS, напротив, поддерживают только режим файловой системы.

Особенности хранения: снимки и расширение

Kubernetes также поддерживает расширенные функции, такие как снимки томов и динамическое расширение PVC, в зависимости от используемого StorageClass.

Storage ClassСнимок томаРасширение
CephFS File StorageПоддерживаетсяПоддерживается
CephRBD Block StorageПоддерживаетсяПоддерживается
TopoLVMПоддерживаетсяПоддерживается
NFS Shared StorageНе поддерживаетсяНе поддерживается

Снимки томов поддерживаются только для PVC, динамически выделенных с использованием StorageClass. Эта функция полезна для резервного копирования и клонирования окружений.

Заключение

При настройке хранилища в Kubernetes понимание режимов доступа и режимов томов для PVC и соответствующих StorageClasses критично для выбора правильного решения для вашей рабочей нагрузки. Файловые решения хранения, такие как CephFS и NFS, идеально подходят для сценариев совместного доступа, тогда как блочные системы хранения, такие как CephRBD и TopoLVM, превосходят в высокопроизводительных развертываниях на одном узле. Кроме того, поддержка таких функций, как снимки и расширение, значительно повышает гибкость хранения и стратегии управления данными.