En este documento, se describe cómo agregar tres nodos de Cassandra nuevos a una instalación existente de Edge para la nube privada.
Si bien puedes agregar uno o dos nodos de Cassandra a una instalación de Edge existente, Apigee recomienda que agregues tres nodos a la vez.
Para obtener una lista de los requisitos del sistema para un nodo de Cassandra, consulta Requisitos de instalación.
Configuración existente de Edge
Todas las topologías de Edge compatibles para un sistema de producción especifican el uso de tres nodos de Cassandra. Los tres nodos se especifican en la propiedad CASS_HOSTS
del archivo de configuración, como se muestra a continuación:
IP1=10.10.0.1 IP2=10.10.0.2 IP3=10.10.0.3 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd
Ten en cuenta que la propiedad REGION
especifica el nombre de la región como "dc-1". Necesitas esa información cuando agregues los nuevos nodos de Cassandra.
Modifica el archivo de configuración para agregar los tres nodos de Cassandra nuevos
En este ejemplo, los tres nodos de Cassandra nuevos se encuentran en las siguientes direcciones IP:
- 10.10.0.14
- 10.10.0.15
- 10.10.0.16
Primero, debes actualizar el archivo de configuración de Edge para agregar los nodos nuevos:
IP1=10.10.0.1 IP2=10.10.0.2 IP3=10.10.0.3 # Add the new node IP addresses. IP14=10.10.0.14 IP15=10.10.0.15 IP16=10.10.0.16 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@google.com ... # Update CASS_HOSTS to add each new node after an existing nodes. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP14:1,1 $IP2:1,1 $IP15:1,1 $IP3:1,1 $IP16:1,1"
Esto garantiza que los nodos existentes conserven su configuración de token inicial y que el token inicial de cada nodo nuevo esté entre los valores de token de los nodos existentes.
Configura Edge
Después de editar el archivo de configuración, debes hacer lo siguiente:
- Cómo volver a configurar los nodos de Cassandra existentes
- Instala Cassandra en los nodos nuevos
- Vuelve a configurar el servidor de administración
Reconfigura los nodos de Cassandra existentes
En los nodos de Cassandra existentes, haz lo siguiente:
- Vuelve a ejecutar setup.sh con el perfil "-p c" y el nuevo archivo de configuración:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
Instala Cassandra en los nodos nuevos
Usa el siguiente procedimiento para instalar Cassandra en los nodos nuevos.
En cada nodo de Cassandra nuevo, haz lo siguiente:
- Instala Cassandra en los tres nodos:
- Instala
apigee-setup
en el primer nodo como se describe en Instala la utilidad apigee-setup de Edge. - Instala Cassandra en el primer nodo con el archivo de configuración actualizado:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
- Repite estos dos pasos para los nodos de Cassandra nuevos restantes.
- Instala
- Vuelve a compilar los tres nodos de Cassandra nuevos y especifica el nombre de la región como el centro de datos en el que agregas el nodo (
dc-1
,dc-2
, etcétera). En este ejemplo, esdc-1
:- En el primer nodo, ejecuta lo siguiente:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h nodeIP rebuild dc-1
En el que nodeIP es la dirección IP del nodo de Cassandra.
Solo debes pasar tu nombre de usuario y contraseña si habilitaste la autenticación de JMX para Cassandra.
- Repite este paso en los nodos de Cassandra nuevos restantes.
- En el primer nodo, ejecuta lo siguiente:
Vuelve a configurar el servidor de administración
En un nodo de servidor de administración
- Vuelve a ejecutar setup.sh para actualizar el servidor de administración de los nodos de Cassandra recién agregados:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile
Reinicia todos los routers y procesadores de mensajes
- En todos los routers:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- En todos los procesadores de mensajes:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Espacio en disco libre en los nodos de Cassandra existentes
Después de agregar un nodo nuevo, puedes usar el comando nodetool cleanup
en los nodos preexistentes para liberar espacio en el disco. Este comando borra los tokens de configuración que ya no son propiedad del nodo Cassandra preexistente.
Para liberar espacio en disco en los nodos de Cassandra preexistentes después de agregar uno nuevo, ejecuta el siguiente comando:
/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] -h cassandraIP cleanup
Solo debes pasar tu nombre de usuario y contraseña si habilitaste la autenticación de JMX para Cassandra.
Verifica la compilación
Usa los siguientes comandos para verificar que la recompilación se realizó correctamente:
nodetool [-u username -pw password] -h nodeIP netstats
Este comando indica MODE: Normal
cuando el nodo está activo y se compilan los índices.
nodetool [-u username -pw password] -h nodeIP statusthrift
Este comando muestra que el servidor Thrift se está ejecutando, lo que permite que Cassandra acepte solicitudes de clientes nuevas.
nodetool [-u username -pw password] -h nodeIP statusbinary
Este comando indica si se está ejecutando el transporte nativo (o protocolo binario).
nodetool [-u username -pw password] -h nodeIP describecluster
Este comando muestra si los nodos nuevos usan la misma versión de esquema que los nodos más antiguos.
Para obtener más información sobre el uso de nodetool
, consulta la documentación de uso de nodetool.