Установка Cassandra и запуск одноузлового кластера в Ubuntu 14.04
Ubuntu | Комментировать запись
Cassandra (или Apache Cassandra) – это маштабируемая система управления базами данных NoSQL (СУБД) с открытым исходным кодом, обладающая высокой производительностью на многоузловых установках.
Данное руководство поможет установить Cassandra и настроить одноузловой кластер на Ubuntu 14.04.
Требования
Для выполнения руководства нужно:
- Предварительно настроить сервер Ubuntu 14.04.
- Не-root пользователь с доступом к sudo (об этом – в статье «Начальная настройка сервера Ubuntu 14.04»).
1: Установка Oracle Java Virtual Machine
Для корректной работы Cassandra нужно установить Oracle Java SE Runtime Environment (JRE).
Чтобы получить доступ к пакету Oracle JRE, нужно добавить Personal Package Archives (PPA). Для этого используйте команду:
sudo add-apt-repository ppa:webupd8team/java
Обновите список пакетов:
sudo apt-get update
Затем установите Oracle JRE. Для этого запустите следующую команду и примите условия лицензии:
sudo apt-get install oracle-java8-set-default
После установки убедитесь, что установленная версия JRE используется по умолчанию:
java -version
На экране должен появиться такой вывод:
java 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
Для установки Cassandra используются пакеты из официальных репозиториев Apache Software Foundation, потому сначала нужно добавить эти репозитории.
Примечание: На момент написания статьи последней версией является Cassandra 2.2.2. При необходимости замените 22x номером наиболее актуальной версии.
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 -
Снова обновите список пакетов системы:
gpg --keyserver pgp.mit.edu --recv-keys 0353B12C
gpg --export --armor 0353B12C | sudo apt-key add -
Теперь всё готово к установке Cassandra:
sudo apt-get install cassandra
3: Устранение неполадок и запуск Cassandra
Как правило, Cassandra запускается автоматически после завершения установки. Но иногда по причине различных неполадок этого не происходит. Чтобы убедиться, что система Cassandra была запущена, введите:
sudo service cassandra status
Если в данный момент Cassandra не запущена, появится такой вывод:
could not access pidfile for Cassandra
Это довольно распространённая ошибка среди последних версий Cassandra в системе Ubuntu. Её можно устранить. Для начала отредактируйте init-скрипт. Необходимый параметр находится в строке под номером 60. Откройте файл на этой строке:
sudo nano +60 /etc/init.d/cassandra
Нужная строка выглядит так:
/etc/init.d/cassandra
CMD_PATT=”cassandra.+CassandraDaemon”
Замените её строкой:
/etc/init.d/cassandra
CMD_PATT="cassandra"
Сохраните и закройте файл, а затем перезапустите сервер:
sudo reboot
или
sudo shutdown -r now
После этого Cassandra будет запущена. Проверьте состояние программы:
sudo service cassandra status
Если ошибка была устранена, на экране появится вывод:
* Cassandra is running
4: Подключение к кластеру
Если Cassandra работает должным образом, проверьте состояние кластера:
sudo nodetool status
В выводе будет аббревиатура UN, что значит «Up and Normal».
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 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
После соединения появится вывод:
Connected 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
Заключение
Теперь на сервере Ubuntu 14.04 запущен одноузловой кластер Cassandra. Больше информации о Cassandra можно найти на официальном сайте проекта.
Tags: Apache Cassandra, Cassandra, NoSQL, Oracle Java, Ubuntu 14.04