Tu primer clúster

Une dos nodos más al primero con un token de alta y mira cómo se reparten los rangos.

Un clúster de TeselaDB es el mismo binario arrancado en varias máquinas. El primer nodo crea la CA; los demás entran con un token de alta de un solo uso, reciben su certificado firmado por esa CA y empiezan a recibir réplicas de rangos.

Tres nodos en tu máquina

Para probar, teseladb dev arranca varios nodos en un solo proceso. El nodo k escucha en el puerto de clientes más k:

Shell
teseladb dev --nodes 3

Tres nodos en tres máquinas

1. Arranca el primer nodo

En node-01, escucha en una dirección que vean las otras máquinas:

Shell
teseladb start --dbpath /var/lib/teseladb \
  --bind_ip 0.0.0.0 --peer-listen 0.0.0.0:27100 --admin-listen 0.0.0.0:27200

2. Crea un token de alta

En node-01. El token es de un solo uso y caduca; --ttl fija cuánto dura. teseladb admin se presenta al nodo con el certificado que encuentra en --dbpath:

Shell
teseladb admin --dbpath /var/lib/teseladb token create --ttl 1h

3. Une los otros nodos

En node-02 y node-03, cada uno con su propio token:

Shell
teseladb start --dbpath /var/lib/teseladb \
  --bind_ip 0.0.0.0 --peer-listen 0.0.0.0:27100 --admin-listen 0.0.0.0:27200 \
  --join node-01:27100 --enroll-token <token>

El nodo nuevo comprueba la huella de la CA que lleva el token, recibe su certificado y la clave maestra por ese canal cifrado y entra en el clúster. Un token usado o caducado se rechaza.

Mira el clúster

Shell
teseladb admin --dbpath /var/lib/teseladb nodes
teseladb admin --dbpath /var/lib/teseladb ranges --collection shop.orders

nodes lista los nodos y su estado. ranges muestra los rangos de una colección, sus réplicas y su líder. A medida que la colección crece, sus rangos se dividen y el equilibrador reparte réplicas y líderes entre los tres nodos.

Siguiente paso

Antes de llevarlo a producción, repasa Lista para producción.