Introducció
Instal·lació
Connecteu-vos a la vostra nova instància de VM
Accés a la base de dades
Elimina la base de dades de prova
Jugant a la base de dades
Configuració del clúster
Conclusió
Introducció
RethinkDB és una base de dades NoSQL que emmagatzema dades com a documents JSON. Té un llenguatge de consulta súper intuïtiu i té funcions disponibles habitualment als RDBMS tradicionals, com ara "unions a taula" i "agrupar per". Aquest tutorial explicarà com configurar un clúster RethinkDB mitjançant 3 servidors Vultr VPS amb Ubuntu 14.04.
Instal·lació
Creeu un nou script d'inici de Vultr utilitzant el contingut següent com a plantilla.
#!/usr/bin/env bash
echo ">>> Installing RethinkDB<<<"
# Add RethinkDB Repo to list of Repos
source /etc/lsb-release && echo "deb http://download.rethinkdb.com/apt $DISTRIB_CODENAME main" | sudo tee /etc/apt/sources.list.d/rethinkdb.list
wget -qO- http://download.rethinkdb.com/apt/pubkey.gpg | sudo apt-key add -
# Update Apt Repo & Install RethinkDB
sudo apt-get update
sudo apt-get install -qq rethinkdb
Engegueu una instància de VM Vultr escollint qualsevol tipus de servidor , ubicació i mida del servidor que vulgueu. Per triar el sistema operatiu , assegureu-vos de seleccionar Ubuntu 14.04 x64 i marcar l' opció Habilita la xarxa privada . També ASSEGURAR per seleccionar el script d'inici creat anterior abans de realitzar la seva comanda.
Connecteu-vos a la vostra nova instància de VM
Quan la vostra nova instància de VM estigui preparada, connecteu-vos-hi des d'un terminal/indicador d'ordres mitjançant SSH.
ssh root@[vultr-ip-address]
Quan se us demani la vostra contrasenya, utilitzeu la contrasenya inicial a la pestanya "informació del servidor" de l'administrador de Vultr.
Podeu actualitzar la vostra contrasenya escrivint passwdi prement la tecla INTRO . Ubuntu us demanarà una contrasenya nova (d'aquesta manera podeu triar alguna cosa que recordeu fàcilment).
Accés a la base de dades
Inicieu RethinkDB executant l'ordre següent. Tingueu en compte que estem "vinculant a tots" perquè no ens trobem amb problemes quan intentem accedir a la interfície d'administració web de RethinkDB.
rethinkdb --bind all
Un cop iniciat RethinkDB, hi accediu per la línia d'ordres o per una interfície web.
Accés web
Per accedir a través del web, utilitzeu el port 8080 escrivint http://[vultr-ip-address]:8080a la barra d'adreces del vostre navegador web. Hauríeu de veure la fantàstica eina d'administració web de RethinkDB.
Accés a la línia d'ordres
Per accedir mitjançant la línia d'ordres, inicieu una nova sessió de terminal/indicador d'ordres i connecteu-vos al servidor mitjançant SSH tal com s'ha explicat anteriorment. A continuació, emet l'ordre rethinkdb admin join 127.0.0.1:29015. Assegureu-vos d'utilitzar el port 29015 .
Elimina la base de dades de prova
A partir d'ara farem servir la interfície web per manipular la base de dades. Accediu-hi navegant http://[vultr-ip-address]:8080i fent clic a l'enllaç "Taules". Veureu que RethinkDB ja ha instal·lat una base de dades de "prova". Feu clic a l'enllaç "Explorador de dades" i executeu l'ordre següent per eliminar la base de dades "prova".
r.dbDrop('test')
Jugant a la base de dades
Mentre encara esteu a la secció "Explorador de dades" de l'administrador de RethinkDB, creeu una nova base de dades anomenada "tweetDB" executant el codi següent.
r.dbCreate('tweetDB')
A continuació, creeu una taula de "tuits".
r.db('tweetDB').tableCreate('tweets')
Inseriu alguns registres a la taula "tuits".
r.db('tweetDB').table('tweets').insert([
{
name: 'Lami',
twitterHandle: 'mrLami',
message: 'Best cloud hosting on the planet - vultr'
},
{
name: 'Vultr Hosting',
twitterHandle: '@TheVultr',
message: '50% off on new instances - coupon - tgif'
}
])
Consulteu la taula "tuits" per veure els resultats.
r.db('tweetDB').table('tweets')
Hauríeu de veure el següent sota la vista d'arbre (amb identificadors diferents).
[
{
"id": "6afe436c-7db4-4c86-b4db-3279acb3265d" ,
"message": "50% off on new instances - coupon - tgif" ,
"name": "Vultr Hosting" ,
"twitterHandle": "@TheVultr"
} ,
{
"id": "fd328cd5-d9f4-40ee-8a32-880cd8cda15d" ,
"message": "Best cloud hosting on the planet - vultr" ,
"name": "Lami" ,
"twitterHandle": "mrLami"
}
]
Configuració del clúster
Engegueu una segona i una tercera màquina seguint les instruccions de les seccions "Instal·lació" , "Connecteu-vos a la vostra nova instància de VM" i "Accés a la base de dades" d'aquesta guia. Assegureu-vos d'eliminar la base de dades de "prova" a cadascuna de les instàncies noves i NO hi afegiu cap base de dades nova.
Després d'eliminar la base de dades "prova" de la segona i la tercera instància, torneu a les indicacions d'ordres i atureu RethinkDB emetent Ctrl + C (o Cmd + C a Mac). Ara torneu a iniciar RethinkDB en aquestes instàncies mitjançant l'ordre següent (bàsicament estem dient a les noves instàncies de segona i tercera que s'uneixin a la primera).
$ rethinkdb --join [ip-of-first-vultr-vm]:29015 --bind all
En la segona i tercera instància, accediu a les interfícies d'administració web i aneu a la secció "Explorador de dades". Executeu la consulta següent per obtenir una llista de tuits.
r.db('tweetDB').table('tweets')
Veureu que ja s'han replicat des de la instància mestra (primera configuració de VM).
Conclusió
Tot i que RethinkDB encara està en els seus inicis en el moment d'escriure aquest article, és molt prometedor i té una potent interfície d'administració basada en web que fa que les tasques àrdues que solen implicar l'escalat d'una base de dades (fragmentació, rèplica) s'aconsegueixin fàcilment amb només unes poques. clics.
Per a més informació, visiteu RethinkDB Docs . Consulteu també el canal IRC #rethinkdb per obtenir més informació de la comunitat.
Altres versions
CentOS 7
Ubuntu 14
Escrit per Lami Adabonyan