Cómo instalar un clúster de CockroachDB en Debian 11

descargar e instalar cucarachadb

CockroachDB es una base de datos SQL escalable y distribuida de código abierto para aplicaciones en la nube. CockroachDB proporciona consistencia de siguiente nivel, base de datos SQL replicada y un almacén de datos transaccionales. CockroachDB almacena sus datos en múltiples ubicaciones, lo que hace que la entrega de datos sea más rápida. Además, es fácil de escalar y brinda alta disponibilidad y tolerancia a fallas para sus aplicaciones.

En este tutorial, le mostraremos cómo instalar el clúster CockroachDB en el servidor Debian 11.

requisitos previos

  • Dos o más servidores Debian 11.
  • Una contraseña de root está configurada en los servidores.

Instalación de CockroachDB en los 3 servidores

Para la instalación, cockroachdb es fácil de instalar. Es porque cockroachdb proporciona un archivo binario para el sistema Linux que puede descargar a su sistema.

Descargue el archivo binario cockroachdb para Linux usando el siguiente comando. Este comando descargará el archivo binario de cockroachdb, extraerá el archivo comprimido y luego moverá el archivo binario de cockroachdb al directorio /usr/local/bin.

curl https://binaries.cockroachdb.com/cockroach-v21.2.8.linux-amd64.tgz | tar -xz && sudo cp -i cockroach-v21.2.8.linux-amd64/cockroach /usr/local/bin/

El cockroachdb usó la biblioteca GEOS integrada personalizada. La biblioteca GEOS está incluida en el archivo comprimido de cockroachdb y debe instalarse en el directorio lib.

Cree un nuevo directorio /usr/local/lib/cockroach usando el siguiente comando.

mkdir -p /usr/local/lib/cockroach

Ahora copie la biblioteca GEOS en el directorio /usr/local/lib/cockroach.

cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos.so /usr/local/lib/cockroach/
cp -i cockroach-v21.2.8.linux-amd64/lib/libgeos_c.so /usr/local/lib/cockroach/

La instalación básica de cockroachdb está instalada en servidores Debian.

descargar e instalar cucarachadb

Ejecute el siguiente comando para verificar el archivo binario de cockroachdb y la versión actual de cockroachdb que acaba de instalar.

which cockroach
cockroach version

Obtendrá el siguiente resultado.

comprobando cucarachadb

Configuración del cortafuegos

Si está ejecutando el cortafuegos en sus servidores Debian, deberá agregar puertos cockroachdb a la configuración del cortafuegos.

El puerto usado cockroachdb 8080 para la administración basada en web cockroachdb y puerto 26257 para las conexiones de usuario y la configuración del clúster.

Agregar puertos 8080 y 25267 al firewall UFW usando el siguiente comando.

sudo ufw allow 8080/tcp
sudo ufw allow 26257/tcp

Ahora vuelva a cargar las reglas de firewall de UFW y verifique el estado actual de las reglas de firewall.

sudo ufw reload
sudo ufw status

Abajo puedes ver los puertos 8080 y 25267 se agregan al cortafuegos UFW.

configurar el cortafuegos ufw

Inicializando el clúster de CockroachDB

Para inicializar el clúster de cockroachdb, ejecute el siguiente comando en el servidor11.

Deberá cambiar el valor de las siguientes opciones:

  • –store: para almacenar los datos del clúster de CockroachDB.
  • –listen-addr: qué dirección IP ejecutará cockroachdb en el servidor. El puerto predeterminado para cockroachdb es el puerto 25267.
  • –http-addr: en qué dirección IP se ejecutará la administración basada en web de cockroachdb. La administración web predeterminada de cockroachdb es el puerto 8080.
cockroach start \
--insecure \
--store=server11 \
--listen-addr=192.168.10.11:26257 \
--http-addr=192.168.10.11:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background

Obtendrá el siguiente resultado.

iniciar el clúster en el servidor 11

Ahora muévete a servidor2 y ejecute el siguiente comando para iniciar cockroachdb y unirse al clúster. Cambie la dirección IP en –listen-addr y –http-addr a la dirección IP del servidor2.

cockroach start \
--insecure \
--store=server2 \
--listen-addr=192.168.10.13:26257 \
--http-addr=192.168.10.13:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background

Obtendrá el siguiente resultado del servidor2.

iniciar el clúster en el servidor 2Anuncio publicitario

A continuación, muévase a servidor3 y ejecute el siguiente comando para iniciar cockroachdb y unirse al grupo de cockroachdb. Además, cambie la dirección IP de –listen-addr y –http-addr a la dirección IP del servidor3.

cockroach start \
--insecure \
--store=server3 \
--listen-addr=192.168.10.14:26257 \
--http-addr=192.168.10.14:8080 \
--join=192.168.10.11:26257,192.168.10.13:26258,192.168.10.14:26259 \
--background

Obtendrá el siguiente resultado de server3.

iniciar servidor de clúster3

Una vez que todo esté completo, regrese al servidor 11 y ejecute el siguiente comando para inicializar el clúster de cockroachdb.

cockroach init --insecure --host=192.168.10.11:26257

Obtendrá el mensaje de salida ‘clúster inicializado con éxito‘, lo que significa que el clúster de cockroachdb se inicializó correctamente.

Puede ejecutar el comando grep a continuación para verificar el registro de la inicialización de cockroachdb. Cambie el directorio server11 con su directorio –store cockroachdb.

grep 'node starting' server11/logs/cockroach.log -A 11

A continuación, puede ver los registros de la inicialización del clúster de server11 cockroachdb.

clúster inicializado

Por último, abra su navegador web y visite la dirección IP del servidor seguida del puerto 8080.

http://192.168.10.11:8080/

A continuación, puede ver que hay tres nodos en el clúster de cockroachdb.

grupo de cucarachas

Probando la creación de una nueva base de datos en CockroachDB

Ahora que tiene el clúster cockroachdb en ejecución, puede usar cualquier servidor como puerta de enlace SQL para acceder a cockroachdb.

Ejecute el comando cucaracha en el servidor11 para conectarse al clúster cockroachdb.

cockroach sql --insecure --host=192.168.10.11:26257

Inicie sesión en el shell de SQL

Una vez que esté conectado al shell de SQL, ejecute la siguiente consulta para crear una nueva base de datos.

CREATE DATABASE bank;

Ahora cree una nueva tabla en la base de datos usando la siguiente consulta.

CREATE TABLE bank.accounts (id INT PRIMARY KEY, balance DECIMAL);

A continuación, importe datos de muestra a la tabla.

INSERT INTO bank.accounts (1, 1000.50);

Verifique los datos en la base de datos usando la siguiente consulta.

SELECT * FROM bank.accounts;

Obtendrá el siguiente resultado.

Crear nueva base de datos e insertar datos

A continuación, muévase a servidor2 o servidor3 e inicie sesión en el shell SQL de cockroachdb con el siguiente comando.

cockroach sql --insecure --host=192.168.10.14:26257

Después de conectarse al shell de SQL en el servidor 3, ejecute la siguiente consulta para comprobar y verificar la replicación de la base de datos.

SELECT * FROM bank.accounts;

Verá que la base de datos y los datos del servidor 11 se replican automáticamente en el servidor 2 y el servidor 3.

comprobando la base de datos y la replicación

Conclusión

¡Felicidades! Ya ha instalado y configurado el clúster cockroachdb en servidores Debian 11. Además, aprendió cómo conectarse al shell de cockroachdb y los comandos SQL básicos para crear una base de datos e insertar datos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *