Инструкция по установке распределенной NoSQL СУБД Cassandra на виртуальный сервера под управлением операционной системы семйства Linux.
Что это такое?
Cassandra - это проект Apache, который представляет собой распределенную базу данных для управления большими объемами структурированных данных, обеспечивая при этом высокую доступность и отсутствие единой точки отказа. Apache Cassandra обладает возможностями, с которыми реляционные базы данных и другие NoSQL БД не могут сравниться, например: постоянная доступность, линейная масштабируемость, простота в эксплуатации и простое распределение данных в нескольких центрах обработки данных и облачных зонах доступности.
Первоначальные требования
Cassandra требовательна к количеству доступной оперативной памяти, так как написана на языке Java, поэтому рекомендуется наличие не менее 4 Гб RAM.
Установка на Ubuntu/Debian
Cassandra написана на языке программирования Java, поэтому для работы СУБД необходимо его установить:
sudo apt install openjdk-8-jre
Выполните экспорт переменной JAVA_HOME:
export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre"
Для работы терминала cqlsh, где можно исполнять команды CQL (Cassandra Query Language), необходимо установить язык python и специальный драйвер:
sudo apt install python python-pip
pip install cassandra-driver
Установите значение переменной CQLSH_NO_BUNDLED для использования установленного драйвера cassandra-driver, а не драйвера дистрибутива по умолчанию:
export CQLSH_NO_BUNDLED=true
Добавьте репозиторий и ключи:
echo "deb http://www.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
sudo apt-key adv --keyserver pool.sks-keyservers.net --recv-key A278B781FE4B2BDA
Обновите локальную базу пакетов и выполните установку:
sudo apt-get update
sudo apt-get install cassandra
Запустите СУБД:
sudo service cassandra start
Проверьте работу, просмотрев статус поднятого узла:
nodetool status
Результат:
Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 127.0.0.1 164.97 KiB 256 100.0% 7d3040b5-b3d0-4b80-8417-1131a42eef44 rack1
Для подключения к консоли используйте следующую команду:
cqlsh
Установка на CentOS
Cassandra написана на языке программирования Java, поэтому для работы СУБД необходимо его установить:
yum update
yum install java
Выполните экспорт переменной JAVA_HOME:
export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre"
Теперь добавьте репозиторий Apache Cassandra в список, создав новый файл репозитория:
nano /etc/yum.repos.d/cassandra.repo
Вставьте следующие строки и сохраните файл:
[cassandra]
name=Apache Cassandra
baseurl=https://www.apache.org/dist/cassandra/redhat/311x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://www.apache.org/dist/cassandra/KEYS
Выполните установку:
yum -y install cassandra
Перезагрузите системные демоны:
systemctl daemon-reload
Запустите СУБД:
systemctl start cassandra
Проверьте работу, просмотрев статус поднятого узла:
nodetool status
Результат:
Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 127.0.0.1 103.69 KiB 256 100.0% 20116060-4c08-47bd-9a5f-242b67f12308 rack1
Для подключения к консоли используйте следующую команду:
cqlsh