Files
K3S/addons/ceph-rock/README.md
Sergey Antropoff 38aaadbfb1 docs: sync addon docs with explicit external/internal service modes
Обновлена документация под новые аддоны (gitlab, redis, mongodb, kafka, kafka-ui, rabbitmq) и новую модель явного выбора зависимостей. Добавлены и унифицированы описания переключателей *_database_mode и *_redis_mode, обновлена таблица зависимостей аддонов, примеры конфигурации и список vault-секретов.
2026-04-29 23:21:04 +03:00

3.0 KiB
Raw Blame History

Ceph-Rock / Rook-Ceph

Distributed storage на базе Ceph, управляемый Rook-оператором. Предоставляет:

  • Block storage (RWO) — rook-ceph-block StorageClass
  • Filesystem storage (RWX) — rook-ceph-filesystem StorageClass

Требует минимум 3 ноды с незанятыми дисками для OSD.

Быстрый старт

# group_vars/all/addons.yml
addon_ceph_rock: true
make addon-ceph-rock

Параметры

Переменная Умолч. Описание
rook_ceph_mon_count 3 Количество MON
rook_ceph_block_replica_count 3 Реплики блочного хранилища
rook_ceph_devices [] Список raw-устройств для OSD
rook_ceph_use_all_devices false Авто-использовать все свободные диски
rook_ceph_block_storage_class rook-ceph-block Имя StorageClass (RWO)
rook_ceph_filesystem_storage_class rook-ceph-filesystem Имя StorageClass (RWX)

Single-node конфигурация

rook_ceph_mon_count: 1
rook_ceph_allow_multiple_mon_per_node: true
rook_ceph_block_replica_count: 1

Использование конкретных дисков

rook_ceph_devices:
  - "/dev/sdb"
  - "/dev/sdc"

Использование в PVC

Block storage (RWO)

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-db-data
spec:
  accessModes: [ReadWriteOnce]
  storageClassName: rook-ceph-block
  resources:
    requests:
      storage: 20Gi

Filesystem storage (RWX)

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: shared-data
spec:
  accessModes: [ReadWriteMany]
  storageClassName: rook-ceph-filesystem
  resources:
    requests:
      storage: 50Gi

Dashboard

Включён по умолчанию. Доступ:

kubectl -n rook-ceph port-forward svc/rook-ceph-mgr-dashboard 7000
# http://localhost:7000
# Логин: admin
kubectl -n rook-ceph get secret rook-ceph-dashboard-password \
  -o jsonpath='{.data.password}' | base64 -d

Или через Ingress:

rook_ceph_dashboard_ingress_enabled: true
rook_ceph_dashboard_ingress_host: "ceph.example.com"

Диагностика

kubectl -n rook-ceph get cephcluster
kubectl -n rook-ceph get pods
kubectl exec -n rook-ceph deployment/rook-ceph-tools -- ceph status
kubectl exec -n rook-ceph deployment/rook-ceph-tools -- ceph osd status

Официальные ресурсы