Introduksjon
Installasjon
Koble til din nye VM-forekomst
Få tilgang til databasen
Fjern testdatabase
Leker rundt i databasen
Sette opp klynge
Konklusjon
Introduksjon
RethinkDB er en NoSQL-database som lagrer data som JSON-dokumenter. Den har et superintuitivt spørringsspråk og har funksjoner som vanligvis er tilgjengelige i tradisjonelle RDBMS som "tabellsammenføyninger" og "grupper etter". Denne opplæringen vil forklare hvordan du setter opp en RethinkDB-klynge ved å bruke 3 Vultr VPS-servere som kjører Ubuntu 14.04.
Installasjon
Lag et nytt Vultr-oppstartsskript ved å bruke følgende innhold som mal.
#!/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
Spinne opp en Vultr VM eksempel ved å plukke noen servertype , plassering , og Server størrelse du ønsker. For valg av operativsystem , sørg for å velge Ubuntu 14.04 x64 og merk av for Aktiver privat nettverk . Også SØRG for å velge oppstartsskriptet opprettet ovenfor før du bestiller.
Koble til din nye VM-forekomst
Når din nye VM-forekomst er klar, kobler du til den fra en terminal/kommando-ledetekst via SSH.
ssh root@[vultr-ip-address]
Når du blir bedt om passordet ditt, bruk det første passordet under fanen "serverinfo" fra Vultr admin.
Du kan oppdatere passordet ditt ved å skrive passwdog trykke på ENTER- tasten. Ubuntu vil be deg om et nytt passord (på denne måten kan du velge noe du enkelt husker).
Få tilgang til databasen
Start RethinkDB ved å kjøre kommandoen nedenfor. Merk at vi er "bindende for alle", slik at vi ikke får problemer når vi prøver å få tilgang til RethinkDBs webadministrasjonsgrensesnitt.
rethinkdb --bind all
Når RethinkDB er startet, får du tilgang til den enten via kommandolinje eller et nettgrensesnitt.
Netttilgang
For å få tilgang via Internett, bruk port 8080 ved å skrive http://[vultr-ip-address]:8080inn i adressefeltet til nettleseren din. Du bør se RethinkDBs fantastiske webadministrasjonsverktøy.
Kommandolinjetilgang
For å få tilgang via kommandolinje, start en ny terminal-/kommandoprompt-sesjon og koble til serveren via SSH som forklart tidligere. Utfør deretter kommandoen rethinkdb admin join 127.0.0.1:29015. Sørg for å bruke port 29015 .
Fjern testdatabase
Vi vil bruke webgrensesnittet fremover for å manipulere databasen. Få tilgang til den ved å bla til http://[vultr-ip-address]:8080og klikke på "Tabell"-lenken. Du vil se at RethinkDB allerede har installert en "test"-database. Klikk på "Data Explorer"-koblingen og kjør kommandoen nedenfor for å slette "test"-databasen.
r.dbDrop('test')
Leker rundt i databasen
Mens du fortsatt er på "Data Explorer"-delen av RethinkDBs admin, oppretter du en ny database kalt "tweetDB" ved å kjøre koden nedenfor.
r.dbCreate('tweetDB')
Deretter oppretter du en "tweets"-tabell.
r.db('tweetDB').tableCreate('tweets')
Sett inn noen poster i "tweets"-tabellen.
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'
}
])
Spør "tweets"-tabellen for å se resultater.
r.db('tweetDB').table('tweets')
Du bør se følgende under trevisning (med forskjellige id-er).
[
{
"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"
}
]
Sette opp klynge
Spinn opp en andre og tredje maskin ved å bruke instruksjoner fra delene "Installasjon" , "Koble til din nye VM-forekomst" og "Tilgang til databasen" i denne veiledningen. Sørg for å slette "test"-databasen på hver av de nye forekomstene, og IKKE legg til nye databaser i dem.
Etter å ha slettet "test"-databasen fra andre og tredje forekomst, gå tilbake til kommandopromptene og stopp RethinkDB ved å utstede Ctrl + C (eller Cmd + C på Mac). Start nå RethinkDB igjen på disse forekomstene ved å bruke kommandoen nedenfor (vi ber i utgangspunktet nye andre og tredje forekomster bli med i den første).
$ rethinkdb --join [ip-of-first-vultr-vm]:29015 --bind all
På den andre og tredje forekomsten, få tilgang til webadministrasjonsgrensesnitt og gå til "Data Explorer"-delen. Kjør følgende spørring for å få en liste over tweets.
r.db('tweetDB').table('tweets')
Du vil se at de allerede har replikert fra hovedforekomsten (første VM-oppsett).
Konklusjon
Selv om RethinkDB fortsatt er i sin spede begynnelse når dette skrives, lover det mye og har et kraftig nettbasert administrasjonsgrensesnitt som gjør at vanskelige oppgaver som vanligvis er involvert med skalering av en database (sharding, replikering) lett kan utføres med bare noen få klikker.
For ytterligere lesing, besøk RethinkDB Docs . Sjekk også ut #rethinkdb IRC-kanalen for å lære mer fra fellesskapet.
Andre versjoner
CentOS 7
Ubuntu 14
Skrevet av Lami Adabonyan