Εισαγωγή
Εγκατάσταση
Συνδεθείτε στο νέο σας στιγμιότυπο VM
Πρόσβαση στη βάση δεδομένων
Καταργήστε τη βάση δεδομένων δοκιμής
Παίζοντας στη βάση δεδομένων
Ρύθμιση συμπλέγματος
συμπέρασμα
Εισαγωγή
Το RethinkDB είναι μια βάση δεδομένων NoSQL που αποθηκεύει δεδομένα ως έγγραφα JSON. Έχει μια εξαιρετικά διαισθητική γλώσσα ερωτημάτων και διαθέτει χαρακτηριστικά που είναι κοινά διαθέσιμα στο παραδοσιακό RDBMS, όπως "ενώσεις πίνακα" και "ομαδοποίηση κατά". Αυτό το σεμινάριο θα εξηγήσει πώς να ρυθμίσετε ένα σύμπλεγμα RethinkDB χρησιμοποιώντας 3 διακομιστές Vultr VPS που εκτελούν το Ubuntu 14.04.
Εγκατάσταση
Δημιουργήστε ένα νέο σενάριο εκκίνησης Vultr χρησιμοποιώντας το ακόλουθο περιεχόμενο ως πρότυπο.
#!/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
Περιστρέψτε μια παρουσία Vultr VM επιλέγοντας οποιονδήποτε τύπο διακομιστή , τοποθεσία και μέγεθος διακομιστή της επιλογής σας. Για την επιλογή Λειτουργικού Συστήματος , φροντίστε να επιλέξετε το Ubuntu 14.04 x64 και να τσεκάρετε την επιλογή Ενεργοποίηση ιδιωτικού δικτύου . Επίσης, Βεβαιωθείτε ότι έχετε επιλέξει το σενάριο εκκίνησης που δημιουργήθηκε παραπάνω πριν κάνετε την παραγγελία σας.
Συνδεθείτε στο νέο σας στιγμιότυπο VM
Μόλις το νέο σας στιγμιότυπο VM είναι έτοιμο, συνδεθείτε σε αυτό από ένα τερματικό/γραμμή εντολών μέσω SSH.
ssh root@[vultr-ip-address]
Όταν σας ζητηθεί ο κωδικός πρόσβασής σας, χρησιμοποιήστε τον αρχικό κωδικό πρόσβασης στην καρτέλα "πληροφορίες διακομιστή" από το διαχειριστή του Vultr.
Μπορείτε να ενημερώσετε τον κωδικό πρόσβασής σας πληκτρολογώντας passwdκαι πατώντας το πλήκτρο ENTER . Το Ubuntu θα σας ζητήσει έναν νέο κωδικό πρόσβασης (με αυτόν τον τρόπο μπορείτε να επιλέξετε κάτι που θυμάστε εύκολα).
Πρόσβαση στη βάση δεδομένων
Ξεκινήστε το RethinkDB εκτελώντας την παρακάτω εντολή. Λάβετε υπόψη ότι "δεσμευόμαστε για όλους", ώστε να μην αντιμετωπίζουμε προβλήματα όταν προσπαθούμε να αποκτήσουμε πρόσβαση στη διεπαφή διαχειριστή ιστού του RethinkDB.
rethinkdb --bind all
Μόλις ξεκινήσει το RethinkDB, έχετε πρόσβαση είτε μέσω γραμμής εντολών είτε μέσω διασύνδεσης ιστού.
Web Access
Για πρόσβαση μέσω web, χρησιμοποιήστε τη θύρα 8080 πληκτρολογώντας http://[vultr-ip-address]:8080στη γραμμή διευθύνσεων του προγράμματος περιήγησής σας. Θα πρέπει να δείτε το εκπληκτικό εργαλείο διαχείρισης ιστού του RethinkDB.
Πρόσβαση στη γραμμή εντολών
Για πρόσβαση μέσω γραμμής εντολών, ξεκινήστε μια νέα συνεδρία τερματικού/γραμμής εντολών και συνδεθείτε στον διακομιστή μέσω SSH, όπως εξηγήθηκε προηγουμένως. Στη συνέχεια, εκδώστε την εντολή rethinkdb admin join 127.0.0.1:29015. Βεβαιωθείτε ότι χρησιμοποιείτε τη θύρα 29015 .
Καταργήστε τη βάση δεδομένων δοκιμής
Θα χρησιμοποιήσουμε τη διεπαφή ιστού στο μέλλον για να χειριστούμε τη βάση δεδομένων. Αποκτήστε πρόσβαση σε αυτό κάνοντας περιήγηση http://[vultr-ip-address]:8080και κάντε κλικ στον σύνδεσμο "Πίνακες". Θα δείτε ότι το RethinkDB έχει ήδη εγκαταστήσει μια "δοκιμαστική" βάση δεδομένων. Κάντε κλικ στον σύνδεσμο "Εξερεύνηση δεδομένων" και εκτελέστε την παρακάτω εντολή για να διαγράψετε τη βάση δεδομένων "δοκιμής".
r.dbDrop('test')
Παίζοντας στη βάση δεδομένων
Ενώ είστε ακόμα στην ενότητα "Εξερεύνηση δεδομένων" του διαχειριστή του RethinkDB, δημιουργήστε μια νέα βάση δεδομένων με το όνομα "tweetDB" εκτελώντας τον παρακάτω κώδικα.
r.dbCreate('tweetDB')
Στη συνέχεια, δημιουργήστε έναν πίνακα "tweets".
r.db('tweetDB').tableCreate('tweets')
Εισαγάγετε μερικές εγγραφές στον πίνακα "tweets".
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'
}
])
Ρωτήστε τον πίνακα "tweets" για να δείτε αποτελέσματα.
r.db('tweetDB').table('tweets')
Θα πρέπει να δείτε τα ακόλουθα κάτω από την προβολή δέντρου (με διαφορετικά αναγνωριστικά).
[
{
"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"
}
]
Ρύθμιση συμπλέγματος
Περιστρέψτε ένα δεύτερο και τρίτο μηχάνημα χρησιμοποιώντας οδηγίες από τις ενότητες "Εγκατάσταση" , "Σύνδεση με τη νέα παρουσία VM σας" και "Πρόσβαση στη βάση δεδομένων" αυτού του οδηγού. Βεβαιωθείτε ότι έχετε διαγράψει τη "δοκιμαστική" βάση δεδομένων σε κάθε μια από τις νέες παρουσίες και ΜΗΝ προσθέσετε νέες βάσεις δεδομένων σε αυτές.
Αφού διαγράψετε τη βάση δεδομένων "δοκιμής" από τη δεύτερη και την τρίτη παρουσία, επιστρέψτε στις γραμμές εντολών τους και σταματήστε το RethinkDB εκδίδοντας Ctrl + C (ή Cmd + C σε Mac). Τώρα ξεκινήστε ξανά το RethinkDB σε αυτές τις παρουσίες χρησιμοποιώντας την παρακάτω εντολή (βασικά λέμε στις νέες δεύτερες και τρίτες περιπτώσεις να συμμετάσχουν στην πρώτη).
$ rethinkdb --join [ip-of-first-vultr-vm]:29015 --bind all
Στη δεύτερη και τρίτη περίπτωση, αποκτήστε πρόσβαση στις διεπαφές διαχειριστή ιστού και μεταβείτε στην ενότητα "Εξερεύνηση δεδομένων". Εκτελέστε το ακόλουθο ερώτημα για να λάβετε μια λίστα με tweets.
r.db('tweetDB').table('tweets')
Θα δείτε ότι έχουν ήδη αναπαραχθεί από την κύρια (πρώτη ρύθμιση VM) παρουσία.
συμπέρασμα
Παρόλο που το RethinkDB είναι ακόμη στα σπάργανα κατά τη στιγμή της συγγραφής αυτής της έκθεσης, υπόσχεται πολλά και έχει μια ισχυρή διεπαφή διαχείρισης που βασίζεται στον ιστό που κάνει τις επίπονες εργασίες που συνήθως εμπλέκονται με την κλιμάκωση μιας βάσης δεδομένων (διαμοιρασμός, αναπαραγωγή) εύκολα να πραγματοποιούνται με λίγα μόνο κλικ.
Για περαιτέρω ανάγνωση, επισκεφτείτε τα Έγγραφα RethinkDB . Δείτε επίσης το κανάλι #rethinkdb IRC για να μάθετε περισσότερα από την κοινότητα.
Άλλες Εκδόσεις
CentOS 7
Ubuntu 14
Σε σενάριο Lami Adabonyan