Como instalar Cassandra Cluster en múltiples nodos
⚡ Resumen inteligente
Cassandra Cluster Agrupa varios nodos para distribuir los datos y evitar que una sola máquina almacene toda la información. Esta página explica los componentes del clúster, el particionador y el anillo de tokens, los requisitos previos, la configuración para unir los nodos y cómo verificar el resultado.

¿Qué es Cassandra Cluster?
A Cassandra El cluster es una de las capas del conjunto Cassandra base de datos. los Cassandra El clúster contiene numerosas capas diferentes de unidades de almacenamiento, y cada capa contiene a las demás.
Gran organización como AmazonFacebook, etc., tienen enormes cantidades de datos que gestionar. Por lo tanto, estas organizaciones no pueden almacenar esa enorme cantidad de datos en una sola máquina. Es entonces cuando utilizan bases de datos como Cassandra con arquitectura distribuida.
Estas organizaciones almacenan esa enorme cantidad de datos en múltiples nodos. Estos nodos se comunican entre sí. Para este propósito, Cassandra se establece el cluster.
- Cluster Básicamente, se trata de un grupo de nodos, de modo que estos puedan comunicarse fácilmente entre sí.
- El nodo coordinador es el nodo que recibe una solicitud del cliente y se comunica con las réplicas en nombre de dicho cliente. Cualquier nodo puede actuar como coordinador para cualquier solicitud.
Particionador
Un particionador determina cómo se deben distribuir los datos en el clúster. El particionador utiliza una función hash para distribuir los datos en el clúster. Se necesita una clave de partición para calcular el hash. Ese hash se denomina token. Los datos se distribuyen sobre la base de este token.
El particionador predeterminado es Murmur3Partitioner, que produce tokens distribuidos uniformemente en un rango fijo. Cada nodo posee uno o más rangos de ese rango, y la colección de rangos forma el anillo de señalDado que la asignación se realiza mediante hash en lugar de por valor, al agregar un nodo solo se mueven los rangos que abarca, en lugar de reorganizar todo el conjunto de datos.
Requisitos previos para Cassandra Cluster
Existen los siguientes requisitos para la configuración del clúster.
- Deberías tener varias máquinas, físicas o virtuales, que actúen como nodos.
- Los nodos deben poder comunicarse entre sí en la red. Los puertos 7000 para el tráfico entre nodos, 7001 si TLS está habilitado y 9042 para las conexiones de clientes deben estar abiertos entre ellos.
- Linux debe estar instalado en cada nodo. Es la plataforma. Cassandra Se prueba y se admite en.
- Apache Cassandra Debe instalarse en cada nodo, con la misma versión. Las versiones mixtas no pueden completar un acuerdo de esquema.
- Un soporte JDK Debe instalarse en cada máquina, con JAVA_HOME configurado.
- Los relojes deben estar sincronizados con NTP. Cassandra Resuelve los conflictos de escritura mediante la marca de tiempo, por lo que la desviación del reloj produce resultados erróneos de forma silenciosa.
El último requisito es el que con mayor frecuencia se pasa por alto, y es el que causa problemas de datos en lugar de fallos al iniciar el sistema.
.
Cómo instalar Cassandra Cluster en Linux
Cassandra Debe instalarse en cada máquina antes de que cualquiera de ellas pueda unirse a un clúster. Las capturas de pantalla que aparecen a continuación provienen del instalador gráfico de DataStax Enterprise, que era el método habitual cuando se redactó este tutorial. Dicho instalador ya no se distribuye para uso comunitario, por lo que primero se describe el método actual y, a continuación, se muestra el asistente como referencia.
Método actual: instalar el Apache Cassandra Comprima el paquete o el archivo binario tarball en cada nodo de forma idéntica y, a continuación, verifique que cada uno se inicie por sí solo antes de intentar unirlos.
tar -xzf apache-cassandra-x.y.z-bin.tar.gz -C /opt/ export CASSANDRA_HOME=/opt/apache-cassandra-x.y.z $CASSANDRA_HOME/bin/cassandra -f
Una vez que un nodo se inicie correctamente, deténgalo, borre su directorio de datos y continúe con la sección de configuración del clúster que se encuentra a continuación.
Paso 1) Ejecute el Cassandra Configuración de la edición empresarial. En Linux Terminal, ejecute la configuración. Se mostrará la siguiente página.
Esta página no proporciona ninguna información necesaria. Simplemente proporciona información sobre el Cassandra versión. Así que pase esta página y presione el botón siguiente.
Paso 2) Acepte el acuerdo de licencia. Tras pulsar el botón Siguiente, se mostrará la siguiente página.
Esta página proporciona información sobre los paquetes y subpaquetes en el Cassandra Se instalará el programa. A continuación, se le preguntará sobre la licencia. Marque la casilla "Acepto el acuerdo" y pulse el botón Siguiente.
Paso 3) Instala Builder y haz clic en Siguiente. Después de pulsar el botón Siguiente, verás la siguiente página.
Esta página le pregunta sobre las opciones de instalación.
- En primer lugar, nos pedirá el directorio de instalación. De forma predeterminada, se instala en el directorio de inicio.
- A continuación, le preguntará sobre el tipo de instalación, seleccione Instalación simple.
- A continuación, pregunta sobre el sistema de actualización, marque "no".
- A continuación, solicita la interfaz predeterminada. Hay dos opciones: instalar en el equipo local o seleccionar una dirección IP. Seleccione la dirección IP para la instalación.
- Presione el botón siguiente.
Paso 4) Configure el nodo y haga clic en Siguiente. Después de presionar el botón Siguiente, se mostrará la siguiente página.
Esta página pregunta sobre la configuración del nodo.
- Primero, seleccione el tipo de nodo 'Cassandra Nodo'.
- A continuación, en Nombre del anillo, proporcione el nombre de su clúster. Cluster El nombre debe ser el mismo para todos los nodos del mismo clúster.
- A continuación, seleccione la semilla. La semilla es el nodo con el que se conectan los demás nodos que no son la semilla cuando se inician.
- Después de proporcionar esta información presione el botón siguiente.
Paso 5) Instale el agente de monitorización. Tras pulsar el botón Siguiente, se mostrará la siguiente página. En ella se le solicitará la dirección IP donde se instalará el agente.
- El agente es necesario para la consola de monitorización, donde se pueden observar todos los nodos en un mismo lugar.
- Después de proporcionar esta información, presione el botón siguiente.
Paso 6) Pulse Siguiente para la instalación. Tras pulsar el botón Siguiente, se mostrará la siguiente página.
Ahora la configuración está lista para instalarse. Presione el botón siguiente.
Paso 7) Espere a que finalice el proceso de instalación. Tras pulsar el botón siguiente, se mostrará la siguiente página.
El programa de instalación comenzará.
Paso 8) Haz clic en el botón Finalizar. Tras la instalación, se mostrará la siguiente página. En ella, verás la marca de verificación de la opción que aparece por defecto.
Configurando cassandra.yaml para unir nodos
La instalación por sí sola no crea un clúster. Los nodos solo se encuentran entre sí una vez que coinciden cuatro configuraciones en cassandra.yaml, y es en este archivo donde suelen surgir problemas en la configuración de clústeres.
cluster_name: 'Guru99 Cluster' seed_provider: - class_name: org.apache.cassandra.locator.SimpleSeedProvider parameters: - seeds: "192.168.1.10,192.168.1.11" listen_address: 192.168.1.10 rpc_address: 0.0.0.0 broadcast_rpc_address: 192.168.1.10 endpoint_snitch: GossipingPropertyFileSnitch
- nombre_del_cluster Debe coincidir en cada nodo. Una discrepancia es la causa más común de que un nodo se niegue a unirse.
- semillas enumera los puntos de contacto con los que se comunica un nodo inicial. Dos o tres semillas por centro de datos son suficientes; hacer que cada nodo sea una semilla impide el arranque automático.ping.
- dirección_de_escuchar es la dirección que otros nodos usan para llegar a este. Debe ser una dirección enrutable real, nunca localhost.
- delator de punto final decirles Cassandra El diseño del rack y del centro de datos. GossipingPropertyFileSnitch es la opción habitual, con valores configurados en cassandra-rackdc.properties.
Cambiar el nombre del snitch o del clúster después de que existan los datos requiere pasos adicionales, por lo que ambos deben decidirse antes de que se inicie el primer nodo.
Comenzando Cassandra Nodo
Después de instalar Cassandra En cada nodo, inicie los servidores y siga los pasos que se indican a continuación. El orden es importante: inicie primero los nodos semilla, uno a la vez, esperando a que cada uno indique que está activo antes de iniciar el siguiente. Iniciar varios nodos simultáneamente puede generar conflictos de rango de tokens.
Paso 1) Vaya a la Cassandra Directorio de instalación e inicie el servidor.
bin/cassandra -f
Al ejecutar este comando, el Cassandra El servidor se iniciará. Aquí está la captura de pantalla donde se encuentra el Cassandra El servidor se está iniciando.
Después de aproximadamente un minuto, el servidor estará en funcionamiento. Inicie cada servidor de nodo uno por uno. Después de iniciar todos los servidores de nodo, su Cassandra El clúster está listo para usar.
Paso 2) Verifique que todos los nodos se hayan unido comprobando el anillo desde cualquiera de ellos.
nodetool status nodetool describecluster
Cada nodo debería aparecer con estado UN, lo que significa Arriba y Normal, y la columna Posee debería mostrar porcentajes aproximadamente iguales. Una única versión del esquema en la salida de describecluster confirma que todos los nodos están de acuerdo con el esquema.
Tres síntomas cubren la mayoría de las fallas. Un nodo que nunca aparece generalmente tiene un cluster_name incorrecto o un puerto 7000 bloqueado. Un nodo atascado en UJLa conexión aún está transmitiendo datos y simplemente necesita tiempo en un clúster grande. La propiedad extremadamente desigual apunta a una mala configuración, donde los nodos se colocaron en el rack o centro de datos incorrecto.
Con el anillo en buen estado, la configuración de replicación para cada espacio de claves decide cómo se distribuyen los datos en él, como se describe en el Cassandra espacio de teclas tutorial y el Cassandra Descompostura.










