Я использую Ceph, закачиваю много файлов через radosgw. После этого я хочу удалить файлы. Я пытаюсь сделать это на Python, например:
bucket = conn.get_bucket(BUCKET)
for key in bucket.list():
bucket.delete_key(key)
Впоследствии я использую bucket.list()
чтобы перечислить файлы в корзине, и это говорит о том, что корзина теперь пуста, как я и предполагал.
Однако когда я бегу ceph df
в понедельник он показывает, что экранные меню все еще имеют высокую загрузку (например, %RAW USED 90.91
). Если я продолжу писать (думая, что данные состояния просто еще не совпадают с состоянием), Ceph по существу блокируется (100% использование).
В чем дело?
Примечание: у меня есть эти ceph status
:
health HEALTH_WARN
3 near full osd(s)
too many PGs per OSD (2168 > max 300)
pool default.rgw.buckets.data has many more objects per pg than average (too few pgs?)
Из того, что я собираю в Интернете, это не вызовет у меня особых проблем. Но я новичок в Ceph и могу ошибаться.
У меня один пн и 3 экранных меню. Это просто для тестирования.
ОБНОВЛЕНИЕ: кажется, что пространство восстанавливается очень медленно. Примерно через час он снизился до 63%.
Вы можете использовать Инструмент ceph pg calc. Это поможет вам рассчитать правильное количество страниц для вашего кластера. Я считаю, что именно это вызывает вашу проблему. Как видите, у вас должно быть всего 256 страниц. Просто воссоздайте бассейн (! БУДЬТЕ ОСТОРОЖНЫ: ЭТО УДАЛЯЕТ ВСЕ ВАШИ ДАННЫЕ, ХРАНЯЩИЕСЯ В ЭТОМ БАССЕЙНЕ!):
ceph osd pool delete {your-pool-name} {your-pool-name} --yes-i-really-really-mean-it
ceph osd pool create {your-pool-name} 256 256
Это должно тебе помочь.