OpenEBS
Тут я буду собирать какие-то заметки по поводу работы с OpenEBS.
Расширение томов LocalPV
https://kubernetes.io/blog/2018/07/12/resizing-persistent-volumes-using-kubernetes/
Допустим, для какого-то приложения у меня создан StorageClass LocalPV, который привязан к выделенной ноде и на ней приложение хранит данные:
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: nexus-storage annotations: openebs.io/cas-type: local cas.openebs.io/config: | - name: StorageType value: hostpath - name: BasePath value: /storage/nexus - name: NodeAffinityLabel value: "openebs.io/nexus" provisioner: openebs.io/local reclaimPolicy: Delete volumeBindingMode: WaitForFirstConsumer
Том был создан при разворачивании приложения helm-чартом, в котором указано использование данного StorageClass.
Приложение работало и сожрало все место. Как расширить том?
Делаем так:
- увеличиваем место под данным томом (в директории /storage/nexus) на уровне хоста (lvresize, resize2fs…)
- Прямо на ходу разрешаем StorageClass'у делать расширяемые тома (allowVolumeExpansion: true)
- редактируем том и увеличиваем его - spec.capacity.storage
- Редактируем и увеличиваем spec.resources.requests.storage
Discussion