DBAtlas · Atlas de operações de banco de dados

Verificar a saúde do cluster e reparar inconsistências de slots (--cluster check/fix)

RedisCluster

Comando

redis-cli -h node1 -p 6379 CLUSTER INFO
redis-cli -h node1 -p 6379 CLUSTER NODES
redis-cli -h node1 -p 6379 CLUSTER SHARDS
# Slot coverage, open (migrating/importing) slots and node consistency:
redis-cli --cluster check node1:6379
# Repair if there are open or unowned slots:
redis-cli --cluster fix node1:6379
# Which slot and node a key lives on (-c: follow redirects):
redis-cli -h node1 -p 6379 CLUSTER KEYSLOT kullanici:1001
redis-cli -c -h node1 -p 6379 GET kullanici:1001

O que faz

Verifica se todos os nós veem o mesmo mapa de slots, se todos os 16384 slots estão atribuídos e se não há slots incompletos (migrating/importing); corrige os problemas encontrados e mostra em qual slot/nó uma chave está.

Quando usar

Quando aparece cluster_state:fail, os clientes recebem CLUSTERDOWN ou erros MOVED/ASK constantes, e após um reshard interrompido.

Atenção

--cluster fix pode atribuir slots sem dono a nós arbitrários e mover chaves em slots abertos; revise primeiro a saída do check. Se um master e todas as suas réplicas forem perdidos, os dados desses slots se foram; o fix apenas atribui o slot vazio a outro nó. Com cluster-require-full-coverage yes (padrão), um único slot sem dono interrompe as escritas no cluster inteiro.

Abrir no DBAtlas →

Relacionados