Как установить Cassandra и запустить одноузловой кластер в Ubuntu 14.04

Вступление

Cassandra, или Apache Cassandra, является легко масштабируемой системой баз данных NoSQL с открытым исходным кодом, обеспечивающей высокую производительность при многоузловых настройках.

В этом руководстве вы узнаете, как установить и использовать его для запуска кластера с одним узлом в Ubuntu 14.04.

необходимое условие

Для завершения этого урока вам понадобится следующее:

  • Ubuntu 14.04 Droplet

  • Пользователь без полномочий root с правами sudo (Initial Server Setup с Ubuntu 14.04 объясняет, как это настроить .)

Шаг 1 - Установка Oracle Java Virtual Machine

Cassandra требует установки Oracle Java SE Runtime Environment (JRE). Итак, на этом этапе вы установите и убедитесь, что это JRE по умолчанию.

Чтобы сделать пакет Oracle JRE доступным, вам нужно добавить Личные архивы пакетов (PPA) с помощью этой команды:

sudo add-apt-repository ppa:webupd8team/java

Обновите базу данных пакетов:

sudo apt-get update

Затем установите Oracle JRE. Установка этого конкретного пакета не только устанавливает его, но и делает его JRE по умолчанию. При появлении запроса примите лицензионное соглашение:

sudo apt-get install oracle-java8-set-default

После установки убедитесь, что теперь это JRE по умолчанию:

java -version

Вы должны увидеть вывод, похожий на следующий:

Outputjava version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

Шаг 2 - Установка Кассандры

Мы установим Cassandra с использованием пакетов из официальных репозиториев Apache Software Foundation, поэтому начните с добавления репозитория, чтобы пакеты были доступны для вашей системы. Обратите внимание, что Cassandra 2.2.2 является последней версией на момент публикации. Измените + 22x +, чтобы соответствовать последней версии. Например, используйте + 23x +, если Cassandra 2.3 является последней версией:

echo "deb http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list

Добавьте источник репо:

echo "deb-src http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list

Чтобы избежать предупреждений о подписи пакетов во время обновлений пакетов, нам нужно добавить три открытых ключа из Apache Software Foundation, связанных с хранилищами пакетов.

Добавьте первую, используя эту пару команд, которые должны выполняться одна за другой:

gpg --keyserver pgp.mit.edu --recv-keys F758CE318D77295D
gpg --export --armor F758CE318D77295D | sudo apt-key add -

Затем добавьте второй ключ:

gpg --keyserver pgp.mit.edu --recv-keys 2B5C1B00
gpg --export --armor 2B5C1B00 | sudo apt-key add -

Затем добавьте третий:

gpg --keyserver pgp.mit.edu --recv-keys 0353B12C
gpg --export --armor 0353B12C | sudo apt-key add -

Обновите базу данных пакетов еще раз:

sudo apt-get update

Наконец, установите Cassandra:

sudo apt-get install cassandra

Шаг 3 - Устранение неисправностей и запуск Cassandra

Обычно Кассандра должна была быть запущена автоматически в этот момент. Однако из-за ошибки это не так. Чтобы убедиться, что он не запущен, введите:

sudo service cassandra status

Если он не запущен, будет отображаться следующий вывод:

Output* could not access pidfile for Cassandra

Это хорошо известная проблема с последними версиями Cassandra в Ubuntu. Мы попробуем несколько исправлений. Во-первых, начните с редактирования сценария инициализации. Параметр, который мы собираемся изменить, находится в строке 60 этого скрипта, поэтому откройте его, используя:

sudo nano +60 /etc/init.d/cassandra

Эта строка должна читать:

/etc/init.d/cassandraCMD_PATT=""

Измените это на:

/etc/init.d/cassandra
CMD_PATT=""

Закройте и сохраните файл, затем перезагрузите сервер:

sudo reboot

Or:

sudo shutdown -r now

После входа в систему Cassandra должна быть запущена. Убедитесь, что:

sudo service cassandra status

Если вы добились успеха, вы увидите:

Output* Cassandra is running

Шаг 4 - Подключение к кластеру

Если вы смогли успешно запустить Cassandra, проверьте состояние кластера:

sudo nodetool status

В выводе * UN * означает, что это U p и N ormal:

OutputDatacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address    Load       Tokens       Owns    Host ID                               Rack
 127.0.0.1  142.02 KB  256          ?       2053956d-7461-41e6-8dd2-0af59436f736  rack1

Note: Non-system keyspaces don't have the same replication settings, effective ownership information is meaningless

Затем подключитесь к нему с помощью интерактивного интерфейса командной строки + cqlsh +.

cqlsh

Вы увидите, что это соединяется:

OutputConnected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 2.2.2 | CQL spec 3.3.1 | Native protocol v4]
Use HELP for help.
cqlsh>

Введите + exit +, чтобы выйти:

exit

Заключение

Поздравляем! Теперь у вас есть одноузловой кластер Cassandra, работающий на Ubuntu 14.04. Более подробную информацию о Кассандре можно найти на веб-сайте project.

Related