Админим с Буквой
5.52K subscribers
303 photos
8 videos
59 files
1.16K links
Канал о системном администрировании, DevOps и немного Инфобеза.

По всем вопросам обращаться к @bykva. Рекламу не размещаю.
Download Telegram
Изменяем размер образа в ceph и применяем в k8s

1. Выяснить название image:

kubectl -n NAMESPACE get pv PV_NAME -o jsonpath="{.spec.rbd.image}"

2. выполнять с хоста, с которого настроен доступ к rbd. IMAGE_NAME взять из предыдущего шага.

export IMAGE_NAME=<image_name>
export SIZE=<size, ex. 20G>

посмотреть информацию по image

rbd info $IMAGE_NAME

выполнить изменение размера:

rbd resize $IMAGE_NAME --size $SIZE

посмотреть результат

rbd info $IMAGE_NAME

3. выяснить на какой ноде запущен под (соответственно куда смонтировано блочное устройство)

kubectl -n NAMESPACE get po -o wide

4. выполнить на ноде, полученной на предыдущем шаге

получаем номер путь к блочному устройству

mount | grep IMAGE_NAME | awk '{print $1}'
# результат: /dev/rbd0

проверяем размер фс в поде:

docker ps | grep POD_NAME
docker exec -ti CONTAINER_ID df -h | grep rbd

выполняем изменение размера:

resize2fs /dev/rbd0

проверяем результат:

docker exec -ti CONTAINER_ID df -h | grep rbd

З.Ы. тут написано без какой либо конкретики - просто направление того как с этим работать, поскольку методы получения нужной информации для ключевых шагов (имя образа, пода, rbd, ноды...) может отличаться от системы к системе. А уж проверять финальные результаты можно еще как минимум двумя способами. Строго говоря k8s тут вообще не причем =)

#kubernetes #ceph #rbd