Каждый узел в кластере Riak хочет передать 54 раздела?
Сейчас у Riak-кластера с 6 узлами очень большая задержка и время ожидания. Когда я иду, чтобы проверить riak-admin transfers
Я получаю следующее:
ubuntu@ip-172-31-38-8:~$ riak-admin transfers
'riak@prod-riak-19' waiting to handoff 54 partitions
'riak@prod-riak-18' waiting to handoff 54 partitions
'riak@prod-riak-17' waiting to handoff 53 partitions
'riak@prod-riak-16' waiting to handoff 53 partitions
'riak@prod-riak-15' waiting to handoff 53 partitions
'riak@prod-riak-14' waiting to handoff 53 partitions
С тех пор я отключил активную антиэнтропию и все еще испытываю высокую задержку, но, похоже, больше ничего не доставляет нам проблем. Когда я проверяю журналы ошибок, никаких ошибок за последние 5 часов нет.
Загрузка процессора выглядит следующим образом:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4016 riak 20 0 3775m 564m 6224 S 9 3.8 3:34.90 beam.smp
таким образом, машина явно не исчерпана. Это признак повреждения данных? Что здесь может происходить? Спасибо
1 ответ
Когда запускается узел Riak, он порождает vnode для каждого раздела в кольце, даже для тех, которые ему не принадлежат. Каждый vnode, которому он не принадлежит, попытается выполнить передачу обслуживания узлу, которому он принадлежит, и после успешной передачи обслуживания завершит работу. Эти передачи обслуживания подлежат лимиту передачи.
Если у вас размер кольца 64, то каждому узлу будет принадлежать 10 или 11 vnode. Вывод передачи, который вы показали, будет ожидаемым, если не будет завершена рука хэндовера с момента последнего перезапуска всего кластера.