Um cluster Cassandra, que na maior parte está operacional, às vezes experimenta interrupções de serviço, especialmente quando um (ou mais) nó não consegue se comunicar com outros nós no cluster.
Sintomas
Um sintoma são os nós subindo e descendo aleatoriamente sem motivo aparente. Aqui está um exemplo extraído de um system.log
nó:
INFO [GossipTasks:1] 2016-04-29 02:47:32,559 Gossiper.java:1001 - InetAddress /10.1.2.3 is now DOWN
INFO [GossipTasks:1] 2016-04-29 02:50:47,123 Gossiper.java:1001 - InetAddress /10.1.2.4 is now DOWN
INFO [GossipTasks:1] 2016-04-29 02:54:59,640 Gossiper.java:1001 - InetAddress /10.1.2.5 is now DOWN
INFO [SharedPool-Worker-2] 2016-04-29 03:01:23,828 Gossiper.java:987 - InetAddress /10.1.2.4 is now UP
INFO [SharedPool-Worker-1] 2016-04-29 03:01:59,432 Gossiper.java:987 - InetAddress /10.1.2.5 is now UP
INFO [SharedPool-Worker-7] 2016-04-29 03:02:01,839 Gossiper.java:987 - InetAddress /10.1.2.3 is now UP
Da mesma forma, diferentes nós parecem estar inativos na nodetool status
saída, dependendo do nó em que o comando foi executado, por exemplo:
Datacenter: Cassandra
=====================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
DN 10.1.2.3 8.97 GB 256 ? a50dfef5-229d-4d15-89d9-971bec01094b rack1
UN 10.1.2.5 8.9 GB 256 ? a16b71a2-9b95-4669-a6bd-d7326bd279e2 rack1
DN 10.1.2.4 9.09 GB 256 ? ac01b6f9-3cb9-47ff-83c6-0404836386eb rack1
UN 10.1.2.6 10.65 GB 256 ? 9c0ef3a2-aad7-4d06-b015-f32ddccac750 rack1
O que poderia estar causando esse problema?
Causa
Houve relatos isolados desse problema em grupos muito pequenos. Os sintomas descritos acima foram identificados como relacionados a clusters configurados com
GossipingPropertyFileSnitch
(GPFS), mas com uma cópia decassandra-topology.properties
(paraPropertyFileSnitch
) noconf/
diretório junto comcassandra-rackdc.properties
ambos usados para definir o posicionamento do rack de nós.A combinação de GPFS com
cassandra-topology.properties
pode ser verificada no log de mensagens de inicialização:É importante observar que o problema é muito intermitente e nem todos os vetores que desencadeiam o problema ainda são conhecidos.
Gambiarra
Por design, o recurso
GossipingPropertyFileSnitch
é usado como um meio de permitir que os clusters sejam migrados para o GPFS.PropertyFileSnitch
cassandra-topology.properties
Se o cluster já estiver ativado
GossipingPropertyFileSnitch
, verifique secassandra-topology.properties
foi removido ou não existe, mesmo que não haja problemas com os nós para garantir que o cluster não encontre problemas no futuro.Para obter mais informações, consulte CASSANDRA-11508 . Saúde!