Назад | Перейти на главную страницу

Невозможно изменить размер Ceph RBD PVC в Kubernetes

Итак, у меня есть кластер Kubernetes с 4 узлами (виртуальными машинами), созданный с помощью Kubespray. У меня есть кластер Ceph, настроенный из Proxmox, и пул доступен для k8s. Я прекрасно могу выполнять развертывание с использованием Ceph.

Но когда я хочу изменить размер контейнера, я сталкиваюсь с длинным списком проблем.

Когда я пытался изменить размер, вместо того, чтобы использовать kube-system/rbd-provisioner pod, он пытается использовать kube-system/kube-controller-manager изменить его размер. Первоначально это не удалось, потому что контейнер не имеет rbd команда установлена. Я исправил это, переключив image в /etc/kubernetes/manifests/kube-controller-manager.yaml из gcr.io/google-containers/kube-controller-manager:v1.15.1 к image: gcr.io/google_containers/hyperkube:v1.14.6, так как это изображение включает rbd двоичный.

 

Теперь он может пытаться изменить размер тома. Но он все равно терпит неудачу, когда пытается. Отображаемая ошибка:

Ошибка «VolumeResizeFailed» при расширении тома «default / test-pvc» плагина «kubernetes.io/rbd»: сбой информации rbd, ошибка: статус выхода 110

StorageClass выглядит следующим образом:

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: kubedata-rbd
provisioner: ceph.com/rbd
allowVolumeExpansion: true
parameters:
  monitors: 10.10.10.2:6789
  adminId: admin
  adminSecretName: ceph-secret
  adminSecretNamespace: kube-system
  pool: Kubedata
  userId: kube
  userSecretName: ceph-secret-kube
  userSecretNamespace: kube-system
  imageFormat: "2"
  imageFeatures: layering

Как я могу изменить размер PVC, созданных Ceph? Я даже пытался вручную изменить их размер на узле ceph, а затем редактировать размер заявки, но это не обновляется, чтобы отразить новый размер.