Как медленно удалить несколько узлов цефалограммы - PullRequest
2 голосов
/ 27 мая 2020

В кластере из 20 узлов с 10 OSD на узел, как бы вы удалили узлы 1–5. Если я перенастрою OSD на node1, данные переместятся на node2-node20. Затем сделайте то же самое для node2 через node5.

Есть ли способ перевести OSD в node2-node5 в состояние только для чтения, чтобы данные не перемещались дважды?

1 Ответ

0 голосов
/ 31 мая 2020

Итак, вы хотите удалить все данные с узла 1 на 5. Это возможно, если оставшиеся узлы могут вместить все данные с сохранением всех копий для избыточности.

Если это так, вы можете повторно взвесить все Экранные меню на узлах 1–5 одновременно обнуляют вес. С каждым заданным общим перегрузом ceph будет пересчитывать необходимое движение. Таким образом, все перемещение данных выполняется за один шаг. Затем просто сядьте и дождитесь завершения перебалансировки.

Скорость перебалансировки такая же, как и перебалансировка только одного узла, потому что объекты повторно взвешиваются с тем же размером пакета в операция повторной балансировки независимо от того, сколько параметров повторного взвешивания было изменено. Каждое изменение приводит к созданию новой карты cru sh. Кластер будет сходиться к этой новой карте cru sh. Есть настройка ceph для управления объемом данных, перемещаемых параллельно.

В качестве альтернативы есть также сценарий , который истощает OSD с еще меньшей скоростью.

После повторной балансировки вы должны удалить OSD и все оставшиеся службы ceph с вытесненных узлов. Затем вы можете списать старые узлы. готово.

В качестве побочного узла: вы пишете, что путем повторного взвешивания всех OSD на узле 1 данные будут перемещены на узел 2. Это не совсем правильно. Правильно: данные переместятся на все оставшиеся узлы.

...