Looking for cassandra Answers? Try Ask4KnowledgeBase
Looking for cassandra Keywords? Try Ask4Keywords

cassandraReparaciones en casandra


Parámetros

Opción / Bandera Descripción
opción descripción de la opción
-h nombre de host El valor predeterminado es "localhost". Si no especifica una reparación de host se ejecuta en el mismo host desde el que se ejecuta el comando.
-pag Puerto JMX. El valor predeterminado es 7199.
-u nombre de usuario Solo es necesario si la seguridad JMX está habilitada.
-pw contraseña. Solo es necesario si la seguridad JMX está habilitada.
bandera descripción de la bandera
-local Solo compare y transmita datos desde nodos en el centro de datos "local".
-pr Reparación de la "gama de particiones". Sólo repara el rango de token primario para una réplica. Más rápido que reparar todos los rangos de sus réplicas, ya que evita la reparación de los mismos datos varias veces. Tenga en cuenta que si usa esta opción para reparar un nodo, también debe usarla para el resto de su grupo.
-par Ejecutar reparaciones en paralelo. Realiza las reparaciones más rápido, pero restringe significativamente la capacidad del clúster para manejar las solicitudes.
-Hospedadores Le permite especificar una lista de nodos delimitados por comas para transmitir sus datos desde. Útil si tiene nodos que se sabe que son "buenos". Si bien está documentado como una opción válida para Cassandra 2.1+, también funciona con Cassandra 2.0.

Observaciones

Reparación Casandra Anti-Entropía:

La reparación anti-entropía en Cassandra tiene dos fases distintas. Para ejecutar reparaciones exitosas y exitosas, es importante comprender ambas.

  • Cálculos del árbol Merkle : esto calcula las diferencias entre los nodos y sus réplicas.

  • Transmisión de datos : según el resultado de los cálculos del Árbol Merkle, los datos se programan para ser transmitidos de un nodo a otro. Este es un intento de sincronizar los datos entre réplicas.

Deteniendo una reparación :

Puede detener una reparación emitiendo un comando STOP VALIDATION desde nodetool:

$ nodetool stop validation

¿Cómo sé cuándo se completa la reparación?

Puede verificar la primera fase de reparación (cálculos de Merkle Tree) revisando nodetool compactionstats .

Puede verificar las corrientes de reparación utilizando nodetool netstats . Los flujos de reparación también serán visibles en sus registros. Puede grep para ellos en los registros de su sistema de esta manera:

$ grep Entropy system.log

INFO [AntiEntropyStage:1] 2016-07-25 07:32:47,077 RepairSession.java (line 164) [repair #70c35af0-526e-11e6-8646-8102d8573519] Received merkle tree for test_users from /192.168.14.3
INFO [AntiEntropyStage:1] 2016-07-25 07:32:47,081 RepairSession.java (line 164) [repair #70c35af0-526e-11e6-8646-8102d8573519] Received merkle tree for test_users from /192.168.16.5
INFO [AntiEntropyStage:1] 2016-07-25 07:32:47,091 RepairSession.java (line 221) [repair #70c35af0-526e-11e6-8646-8102d8573519] test_users is fully synced
INFO [AntiEntropySessions:4] 2016-07-25 07:32:47,091 RepairSession.java (line 282) [repair #70c35af0-526e-11e6-8646-8102d8573519] session completed successfully

Los flujos de reparación activos también se pueden monitorear con este comando (Bash):

$ while true; do date; diff <(nodetool -h 192.168.0.1 netstats) <(sleep 5 && nodetool -h 192.168.0.1 netstats); done

ref: ¿cómo sé si la reparación nodetool está terminada

¿Cómo comprobar las corrientes de reparación atascadas o huérfanas?

En cada nodo, puede monitorear esto con nodetool tpstats , y verificar si hay algo "bloqueado" en las líneas "AntiEntropy".

$ nodetool tpstats
Pool Name                    Active   Pending      Completed   Blocked  All time blocked
...
AntiEntropyStage                  0         0         854866         0                 0
...
AntiEntropySessions               0         0           2576         0                 0
...

Reparaciones en casandra Ejemplos relacionados