Gossip
ScyllaDB, like Apache Cassandra, uses a type of internode communication protocol called Gossip, for nodes to exchange information with each other. Gossip is decentralized, and there is no single point of failure. It’s used for peer node discovery and to spread each node’s state, such as whether it’s up and how much data it holds. Changes that every node must agree on, such as schema and topology changes, go through Raft , a consensus protocol, in newer versions of ScyllaDB. Gossip communication occurs periodically. Each node communicates with three other nodes. Eventually (within a few seconds), the information is propagated throughout the cluster . To see whether a node is communicating using Gossip, we use the statusgossip command:
docker exec -it scylla-node1 nodetool statusgossipWe can see that scylla-node1 is communicating with other nodes. This communication is on by default unless it has been turned off, for example, for maintenance. To see what a node is communicating to the other nodes in the cluster, we use the gossipinfo command:
docker exec -it scylla-node1 nodetool gossipinfo