Настройте RethinkDB Cluster на Ubuntu 14

Настройте RethinkDB Cluster на Ubuntu 14

Въведение

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 бъде стартиран, имате достъп до него или чрез команден ред, или чрез уеб интерфейс.

Уеб достъп

За достъп през уеб, използвайте порт 8080, като напишете http://[vultr-ip-address]:8080в адресната лента на вашия уеб браузър. Трябва да видите страхотния инструмент за уеб администриране на RethinkDB.

Достъп от командния ред

За достъп чрез командния ред стартирайте нова сесия на терминал/команден ред и се свържете със сървъра чрез SSH, както беше обяснено по-горе. След това издайте командата rethinkdb admin join 127.0.0.1:29015. Уверете се, че използвате порт 29015 .

Премахнете тестовата база данни

Ще използваме уеб интерфейса занапред, за да манипулираме базата данни. Достъп до него, като прегледате http://[vultr-ip-address]:8080и кликнете върху връзката „Таблици“. Ще видите, че RethinkDB вече е инсталирал "тестова" база данни. Щракнете върху връзката „Data Explorer“ и изпълнете командата по-долу, за да изтриете „тестовата“ база данни.

r.dbDrop('test')

Игра наоколо в базата данни

Докато все още сте в секцията „Data Explorer“ на администратора на RethinkDB, създайте нова база данни с име „tweetDB“, като изпълните кода по-долу.

r.dbCreate('tweetDB')

След това създайте таблица с "туитове".

r.db('tweetDB').tableCreate('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'
    }
])

Заявете таблицата с „туитове“, за да видите резултатите.

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

На втория и третия екземпляр отворете интерфейсите на уеб администратора и отидете в секцията „Data Explorer“. Изпълнете следната заявка, за да получите списък с туитове.

 r.db('tweetDB').table('tweets')

Ще видите, че те вече са репликирани от главната (първата настройка на VM) инстанция.

Заключение

Въпреки че RethinkDB все още е в начален стадий към момента на писането, той носи много обещания и има мощен уеб-базиран административен интерфейс, който прави трудните задачи, обикновено свързани с мащабиране на база данни (шардиране, репликация), лесно изпълнени само с няколко щраквания.

За допълнително четене посетете RethinkDB Docs . Вижте също IRC канала #rethinkdb, за да научите повече от общността.

Други версии

CentOS 7

Ubuntu 14

Написано от Лами Адабонян


Как да настроите Tekkit Classic Server на Ubuntu 16.10

Как да настроите Tekkit Classic Server на Ubuntu 16.10

Използване на различна система? Какво е Tekkit Classic? Tekkit Classic е модпак за играта, която всички познават и обичат; Minecraft. Съдържа част от вер

Създаване на блог на Jekyll в Ubuntu 16.04

Създаване на блог на Jekyll в Ubuntu 16.04

Използване на различна система? Jekyll е чудесна алтернатива на WordPress за блогове или споделяне на съдържание. Не изисква никакви бази данни и е много лесно i

Използване на Screen в Ubuntu 14.04

Използване на Screen в Ubuntu 14.04

Screen е приложение, което позволява многократно използване на терминални сесии в рамките на един прозорец. Това ви позволява да симулирате множество терминални прозорци, където е възможно

Конфигуриране на статична мрежа и IPv6 на CentOS 7

Конфигуриране на статична мрежа и IPv6 на CentOS 7

VULTR наскоро направи промени от своя страна и вече всичко трябва да работи добре от кутията с активиран NetworkManager. Ако желаете да деактивирате

Как да инсталирате Apache Cassandra 3.11.x на CentOS 7

Как да инсталирате Apache Cassandra 3.11.x на CentOS 7

Използване на различна система? Apache Cassandra е безплатна система за управление на база данни NoSQL с отворен код, която е проектирана да осигури мащабируемост, висока

Как да инсталирате MODX Revolution на Ubuntu 16.04 LAMP VPS

Как да инсталирате MODX Revolution на Ubuntu 16.04 LAMP VPS

Използване на различна система? MODX Revolution е бърза, гъвкава, мащабируема, безплатна и отворена система за управление на съдържанието (CMS) от корпоративен клас, написана i

Как да инсталирате MODX Revolution на FreeBSD 11 FAMP VPS

Как да инсталирате MODX Revolution на FreeBSD 11 FAMP VPS

Използване на различна система? MODX Revolution е бърза, гъвкава, мащабируема система за управление на съдържанието (CMS) от корпоративен клас, написана на PHP. То и

Настройте не-root потребител със Sudo Access в Ubuntu

Настройте не-root потребител със Sudo Access в Ubuntu

Да имаш само един потребител, който е root, може да бъде опасно. Така че нека поправим това. Vultr ни предоставя свободата да правим каквото пожелаем с нашите потребители и нашите сървъри

Как да инсталирате и конфигурирате ArangoDB на CentOS 7

Как да инсталирате и конфигурирате ArangoDB на CentOS 7

Използване на различна система? Въведение ArangoDB е NoSQL база данни с отворен код с гъвкав модел на данни за документи, графики и ключ-стойности. то е

Настройване на сървър на Half Life 2 на CentOS 6

Настройване на сървър на Half Life 2 на CentOS 6

Този урок ще обхване процеса на инсталиране на сървър за игри Half Life 2 на CentOS 6 System. Стъпка 1: Инсталиране на предпоставките За да настроите ou

Настройка на Counter Strike: Source на Debian

Настройка на Counter Strike: Source на Debian

В това ръководство ще настроим сървър за игри Counter Strike: Source на Debian 7. Тези команди бяха тествани на Debian 7, но те също трябва да работят o

Как да инсталирате Unturned 2.2.5 на Debian 8

Как да инсталирате Unturned 2.2.5 на Debian 8

В това ръководство ще научите как да настроите Unturned 2.2.5 сървър на Vultr VPS, работещ с Debian 8. Забележка: Това е редактирана версия на Unturned, която не

Как да инсталирате Harbor на CentOS 7

Как да инсталирате Harbor на CentOS 7

Harbor е регистър на сървър от корпоративен клас с отворен код, който съхранява и разпространява изображения на Docker. Harbour разширява Docker Distribution с отворен код b

Как да инсталирате OpenMeetings на CentOS 7

Как да инсталирате OpenMeetings на CentOS 7

Използване на различна система? Apache OpenMeetings е приложение за уеб конференции с отворен код. Той е написан на Java и поддържа множество сървъри за бази данни. аз

Автоматично архивиране на множество MySQL или MariaDB бази данни

Автоматично архивиране на множество MySQL или MariaDB бази данни

Въведение В тази статия, разгледайте как да архивирате множество MySQL или MariaDB бази данни, които се намират на една и съща машина с помощта на персонализиран bash scrip

Как да инсталирате Jenkins на CentOS 7

Как да инсталирате Jenkins на CentOS 7

Jenkins е популярен инструмент за CI (непрекъсната интеграция) с отворен код, който се използва широко за разработване, внедряване и автоматизация на проекти. Тази статия ще

Как да инсталирате Cuberite на сървър CentOS 6 или 7

Как да инсталирате Cuberite на сървър CentOS 6 или 7

Въведение Какво е куберит? Cuberite е мащабируема реализация на сървър на Minecraft с отворен код, която е написана на C++. Той има лесен за използване plugi

Инсталиране на Teamspeak на CentOS 7

Инсталиране на Teamspeak на CentOS 7

Teamspeak е VOIP сървър, който може да се използва за комуникация на екипи/много хора. Той е сравнително лек и сигурен, тъй като се пускат актуализации

Създаване на блог на Jekyll на CentOS 7

Създаване на блог на Jekyll на CentOS 7

Използване на различна система? Jekyll е добра алтернатива на WordPress. Не изисква никакви бази данни и работи с език, който мнозина познават

Стартиране на сървър на Teamspeak 3 на CentOS 6.4

Стартиране на сървър на Teamspeak 3 на CentOS 6.4

Изпълнете следните команди, за да инсталирате сървър на Teamspeak 3. # Secure Iptables iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече