Eu tenho este cenário:
srv01 srv02 srv03
há um volume gluster "vol1" em execução no srv03 e todos os servidores podem ser usados para E/S. vol1 contém muitas imagens laterais mistas, variando de alguns kbs a 3-4Mb. A quantidade total é de cerca de 1,5 TB.
A versão do Gluster é 3.6.2
Não é uma solução mágica, precisa de alguns ajustes, mas funciona muito bem.
Agora tenho que replicar o tijolo do srv03 para os outros servidores.
O problema é que a CPU do srv03 dispara para 100% e não consegue atender às solicitações normais. O tráfego da rede é baixo.
As opções são:
algoritmo cluster.data-self-heal: completo
cluster.self-heal-daemon: desativado
desempenho.tamanho do cache: 1 GB
Preciso manter o serviço em execução enquanto a replicação está em execução. Suas sugestões são bem-vindas
Responder1
De alguma forma, estou trabalhando em uma situação semelhante. Se o seu gargalo for a CPU acho que diminuir cluster.background-self-heal-count
deve ajudar (o padrão é 16). Em outras palavras, "quando seu cliente tentar abrir 17 arquivos, ele ficará suspenso no dia 17 aguardando uma autocura" (https://botbot.me/freenode/gluster/msg/45681458/).