Устарело. Развитие и поддержка прекращены.
Переключитесь на использование модуля sds-replicated-volume.
Работоспособность модуля гарантируется только в следующих случаях:
- при использовании стоковых ядер, поставляемых вместе с поддерживаемыми дистрибутивами;
- при использовании сети 10Gbps.
Работоспособность модуля в других условиях возможна, но не гарантируется.
DRBDStorageClass
Scope: Cluster
Version: v1alpha1
-
объект
Defines a Kubernetes Storage class configuration.
Note that this field is in read-only mode.
-
строка
Обязательный параметр
Reclaim policy дочернего StorageClass. Может быть:
- Delete (если PersistentVolumeClaim будет удален, вместе с ним удалится соответствующий PersistentVolume)
- Retain (если PersistentVolumeClaim будет удален, соответствующий PersistentVolume останется нетронутым в статусе Released)
Важно: это поле является неизменяемым и не может быть изменено после первоначального создания ресурса.
Допустимые значения:
Delete
,Retain
-
строка
Режим репликации StorageClass. Может быть:
- None — в этом режиме репликация отключена, и данные существуют только в одном экземпляре.
- Availability — режим репликации, при котором том остается доступным для чтения и записи, даже если одна из реплик тома становится недоступной. Данные хранятся в двух экземплярах на разных узлах. Этот режим предотвращает потерю данных при выходе из строя одного узла, содержащего реплику тома. Однако, если после этого будет безвозвратно потерян оставшийся (активный) узел, данные записанные на этот узел (с момента выхода из строя первого) будут потеряны.
- ConsistencyAndAvailability — режим репликации, при котором том остается доступным для чтения и записи, даже если одна из реплик тома становится недоступной. Данные хранятся в трех экземплярах на разных узлах. Этот режим обеспечивает защиту от потери данных при выходе из строя двух узлов, содержащих реплики тома. Однако при потере двух реплик том переходит в режим только для чтения (Read-Only).
Обратите внимание, что режимом репликации по умолчанию является ‘ConsistencyAndAvailability’. Важно: это поле является неизменяемым и не может быть изменено после первоначального создания ресурса.
По умолчанию:
ConsistencyAndAvailability
Допустимые значения:
None
,Availability
,ConsistencyAndAvailability
-
строка
Обязательный параметр
Настройки топологии для томов в создаваемом StorageClass. Может быть:
- TransZonal — реплики для томов будут создаваться в разных зонах (по одной реплике на зону). Для использования этой топологии доступные зоны должны быть указаны в параметре zones, а на узлах кластера должен присутствовать лейбл topology.kubernetes.io/zone=<название зоны>.
- Zonal — все реплики томов создаются в той же зоне, которую планировщик выбрал для размещения пода, использующего данный том. Рекомендуется использовать эту топологию в условиях высокого пинга и/или низкой пропускной способности сети между зонами.
- Ignored — для размещения реплик томов не будет использоваться информация о топологии. Реплики могут размещаться на любых доступных узлах, но с ограничением: не более одной реплики определенного тома на один узел.
Обратите внимание, что создать StorageClass с топологией ‘Ignored’ можно только если в кластере нет зон (нет узлов с лейблами topology.kubernetes.io/zone). Важно: это поле является неизменяемым и не может быть изменено после первоначального создания ресурса.
Допустимые значения:
TransZonal
,Zonal
,Ignored
-
строка
Режим доступа к данным. Может быть:
- Local — в этом режиме запрещено создание пода на узлах, на которых отсутствует локальная реплика тома, используемого этим подом.
- EventuallyLocal — в этом режиме том будет создан сразу после появления пода и назначения ему рабочего узла. При первоначальном создании пода учитываются настройки его топологии, и локальная реплика, по возможности, будет создана на том же узле, где размещен под. Однако может возникнуть ситуация, когда под создаётся на узле, на котором отсутствует локальная реплика тома. В таком случае под будет подключен по сети к существующим репликам тома, после чего, через 30 минут, на этом узле начнется создание локальной реплики тома, включающее копирование всех данных тома по сети с других реплик на этот узел.
- PreferablyLocal — то же, что и в EventuallyLocal, за исключением того, что под будет постоянно подключен по сети к репликам тома, если он был создан на узле, где отсутствует локальная реплика тома (локальная реплика на этом узле создаваться не будет).
- Any — в этом режиме том будет создан до появления пода и может быть размещен на любом доступном узле без учета настроек топологии у пода, который будет использовать его в будущем. В случае, если под создан на узле, где отсутствует локальная реплика тома, под будет постоянно подключен по сети к репликам тома.
Обратите внимание, что режимом доступа по умолчанию является ‘PreferablyLocal’.
Важно: при использовании настроек EventuallyLocal, PreferablyLocal и Any доступ к данным по сети разрешен только в пределах одной зоны. Запрещено создание пода в зоне, где отсутствует реплика тома.
Важно: это поле является неизменяемым и не может быть изменено после первоначального создания ресурса.
По умолчанию:
PreferablyLocal
Допустимые значения:
Local
,EventuallyLocal
,PreferablyLocal
,Any
-
массив строк
Список зон, в которых будут созданы реплики тома. Контроллер повесит лейбл с именем StorageClass на те узлы, на которых будет возможно создать реплики томов.
Обратите внимание, что для режимов репликации ‘Availability’ и ‘ConsistencyAndAvailability’ вам необходимо указать 3 зоны, если выбрана топология TransZonal. Обратите внимание, что данный параметр является обязательным, если выбрана топология TransZonal. Важно: это поле является неизменяемым и не может быть изменено после первоначального создания ресурса.
DRBDStoragePool
Scope: Cluster
Version: v1alpha1
-
-
массив объектов
Список LVMVolumeGroup-ресурсов, Volume Group’ы/Thin-pool’ы которых будут использованы для создания Storage-pool’ов в бэкенде LINSTOR.
Обратите внимание, что каждый LVMVolumeGroup-ресурс обязан иметь тот же тип (Thin/Thick), что указан в поле ‘Spec.Type’ текущего ресурса.
-