У меня такой сценарий:
srv01 srv02 srv03
на srv03 запущен том gluster "vol1", и все серверы могут использовать его для ввода-вывода. vol1 содержит много смешанных сторонних изображений, размером от нескольких кбайт до 3-4 МБ, общий объем составляет около 1,5 ТБ.
Версия Gluster - 3.6.2
Это не серебряная пуля, нуждается в настройке, но работает довольно хорошо.
Теперь мне нужно скопировать кирпич srv03 на другие серверы.
Проблема в том, что процессор srv03 разгоняется до 100% и не может обслуживать обычные запросы. Нетто-трафик низкий.
Варианты:
cluster.data-self-heal-algorithm: полный
cluster.self-heal-daemon: выключено
performance.cache-size: 1 ГБ
Я должен поддерживать работу службы во время репликации, Ваши предложения приветствуются
Я как-то работаю над подобной ситуацией. Если ваше узкое место - процессор, я думаю, что уменьшение cluster.background-self-heal-count
должен помочь (по умолчанию 16). Другими словами, «когда ваш клиент пытается открыть 17 файлов, он зависнет 17-го числа, ожидая самовосстановления» (https://botbot.me/freenode/gluster/msg/45681458/).