Вопрос (TL; DR;)
Я ищу способ заставить kudu реплицировать данные вне каталога (/data/0
в контексте ниже), или списать каталог. Является ли это возможным?
Контекст
У меня есть настройка kudu с несколькими каталогами данных (все на разных дисках), например. /data/0
, /data/1
, /data/2
. В настоящее время WALs находятся на /data/0
, а также на планшетах kudu, в каталоге hdfs и в локальной директории пряжи. Короче говоря, этот диск перегружен, и я хочу перенести все, кроме WAL.
Этот вопрос относится к каталогу планшетов kudu. Я знаю, как принудительно удалить диск из do c, но:
Если указан параметр --force, все планшеты, настроенные для использования этого каталога, при запуске не будут работать и будет реплицировано в другом месте.
Это звучит нормально - я sh (таблетки в конечном итоге будут реплицированы), но у меня получилось несколько таблиц с коэффициентом репликации 1, так что эти будут полностью уничтожено.
Обходные пути
Я знаю несколько обходных путей, но ни один из них не идеален:
- Я мог бы воссоздать таблицы с RF 3
- я мог бы
kudu tablet change_config move_replica
таблетки для таблиц с RF 1 от например. с сервера 1 на сервер 2, затем удалите каталог для сервера 1, выполните балансировку, затем промойте и повторите с сервера 2 до 3, а затем с 3 на 1 (у меня только 3 сервера). - Я мог бы переместить
/data/0
внутри /data/1
(конфигурация на самом деле использует не весь диск, а подкаталог), но /data/1
получит в два раза больше IOs.