Поскольку у меня нет прямого доступа к хранилищу, но я хочу запустить Kubernetes
в моей собственной среде: какое программное обеспечение (на виртуальной машине) я использую для предоставления PV/PVC
через file system
? Я слышал о Ceph
. Что я должен учитывать? Есть ли альтернативы?
Если это слишком общее: могу я обойти Ceph
(не то, чтобы я хотел), когда я могу использовать файловую систему только в виртуальной машине (да / нет)?
Вы можете предоставить дополнительную информацию о своей среде.
Многое зависит от ваших потребностей. Ты упомянул CephFS
, поскольку он поддерживается в Kubernetes. тем не мение поскольку вы хотите использовать виртуальную машину, это может быть очень сложно. В этот блог вы можете найти информацию:
Его не следует запускать на самих виртуальных машинах, поскольку он не оптимизирован для ядра виртуальной машины. Этот совет исходит непосредственно от Red Hat. К сожалению, это означает, что более мелкие варианты использования исключены, поскольку буквально требуется 10 физических машин, каждая со своей собственной ОС, чтобы стать отдельными узлами OSD.
Вы должны прочитать о Kubernetes Типы объемов. Еще одна важная вещь Режим доступа каждого PV
. Применять PersistentVolume
на виртуальной машине вы можете использовать:
emptyDir - Том emptyDir сначала создается, когда Pod назначается узлу, и существует, пока этот Pod работает на этом узле. Кроме того, если Container
сбой НЕ удаляет Pod из узла, поэтому данные в томе emptyDir безопасны при сбоях контейнера.
Пример и дополнительную информацию можно найти Вот.
HostPath - будет работать только в одноузловом кластере. Он не будет работать в многоузловом кластере.
Том hostPath монтирует файл или каталог из файловой системы хост-узла в ваш Pod. Это не то, что понадобится большинству модулей, но оно предлагает мощный аварийный выход для некоторых приложений.
Более подробную информацию с примером можно найти Вот.
GlusterFS - В будущем, если вы захотите рассмотреть более универсальное решение, вы можете проверить GlusterFS
. Это хорошо описано в Эта статья.
Местный - Введено в Kubernetes 1.14. Локальный том представляет собой смонтированное локальное запоминающее устройство, такое как диск, раздел или каталог. Подробности с примером можно найти на Документы Kubernetes.