В този блог ще обясним как да инсталирате Apache Cassandra на Ubuntu 20.10/Ubuntu 20.04. Apache Cassandra е NoSQL база данни с отворен код, предназначена за съхранение на големи количества данни в децентрализиран, високодостъпен клъстер, осигурява устойчивост на грешки, последователност в множество сървъри и линейна мащабируемост.
Стъпки за инсталиране на Apache Cassandra в Ubuntu
Стъпка 1:Инсталирайте Java на Ubuntu 20
$ sudo apt инсталирайте openjdk-8-jdk
В моята система Java вече беше там, така че ще се надстрои.
Стъпка 2:Проверете инсталирането на Java
$ java -версия
Примерен изход:
root@Cassandra:~# java -versionopenjdk версия "1.8.0_292"OpenJDK Runtime Environment (build 1.8.0_292-8u292-b10-0ubuntu1~20.10-b10)OpenJDK 64-битов 2-битов сървър VM29. режим)
Стъпка 3:Инсталирайте пакета на зависимости:
$ sudo apt install apt-transport-https
Стъпка 4:Импортиране на GPG ключ:
$ wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
Примерен изход:
root@Cassandra:~# wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -Предупреждение:apt-key е остарял. Вместо това управлявайте файловете с ключодържатели в trusted.gpg.d (виж apt-key(8)).OKroot@Cassandra:~#
Стъпка 5:Добавете хранилището на Apache Cassandra
$ sudo sh -c 'echo "deb http://www.apache.org/dist/cassandra/debian 311x main"> /etc/apt/sources.list.d/cassandra.list'
Примерен изход:
root@Cassandra:~# sudo sh -c 'echo "deb http://www.apache.org/dist/cassandra/debian 311x main"> /etc/apt/sources.list.d/cassandra.list 'root@Cassandra:~#
Стъпка 6:Актуализирайте Ubuntu System
$ sudo apt актуализация
Стъпка 7:Инсталирайте Apache Cassandra в Ubuntu
$ sudo apt инсталира касандра
Можете също да видите най-новата версия на Cassandra
След инсталирането услугата Cassandra се стартира автоматично.
Примерен изход:
root@Cassandra:~# sudo apt install cassandraЧетене на списъци с пакети... DoneBuilding дърво на зависимости Четене на информация за състоянието... Готово Следният пакет беше инсталиран автоматично и вече не е необходим:virtualbox-guest-utilsИзползвайте 'sudo apt autoremove' за премахнете го. Ще бъдат инсталирани следните допълнителни пакети:libpython2-stdlib libpython2.7-minimal libpython2.7-stdlibpython-is-python2 python2 python2-минимален python2.7 python2.7-minimal python2.7-minimal python2.7-minimalSuggested packages python-2.7-stdlibpython-is-python2 tk python2.7-doc binutils binfmt-supportСледните НОВИ пакети ще бъдат инсталирани:cassandra libpython2-stdlib libpython2.7-minimal libpython2.7-stdlibpython-is-python2 python2 python2-minimal2-7 python2-minimal27. новоинсталиран, 0 за премахване и 332 не надстроен. Трябва да получите 34,4 MB архиви. След тази операция ще бъдат използвани 56,9 MB допълнително дисково пространство. Искате ли да продължите? [Y/n] YGet:2 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 libpython2.7-minimal amd64 2.7.18-1build2 [335 kB]Get:1 https://downloads.apache .org/cassandra/debian 311x/main amd64 cassandra all 3.11.10 [30.7 MB]Get:3 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python2.7-minimal amd64 2.7.18-18. [1,264 kB]Get:4 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python2-minimal amd64 2.7.18-2 [13.5 kB]Get:5 http://us.archive.ubuntu. com/ubuntu groovy/universe amd64 libpython2.7-stdlib amd64 2.7.18-1build2 [1,867 kB]Get:6 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python2.7 amd.18 1build2 [248 kB]Get:7 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 libpython2-stdlib amd64 2.7.18-2 [7,332 B]Get:8 http://us.archive.ubuntu .com/ubuntu groovy/universe amd64 python2 amd64 2.7.18-2 [9,068 B]Get:9 http://us.archive.ubuntu.com/ubuntu groovy/universe amd64 python-is-python2 всички 2.7.17-4 [2496 B] Извлечени 34,4 MB за 1 мин. 12 секунди (474 kB/s) Избиране на по-рано неизбран пакет libpython2.7-minimal:amd64.(Четене на база данни ... 155984 файла и директории, инсталирани в момента.) Подготовка за разопаковане .../0-libpython2.7-minimal_2.7.18-1build2_amd64.deb ...Разопаковане ... libpython2.7-minimal:amd64 (2.7.18-1build2) ...Избиране на по-рано неизбран пакет python2.7-minimal.Подготовка за разопаковане .../1-python2.7-minimal_2.7.18-1build2_amd64.deb ... Разопаковане на python2.7-minimal (2.7.18-1build2) ...Избиране на неизбран преди това пакет python2-minimal.Подготовка за разопаковане .../2-python2-minimal_2.7.18-2_amd64.deb ...Разопаковане на python2-minimal ( 2.7.18-2) ...Избор на по-рано неизбран пакет libpython2.7-stdlib:amd64.Подготовка за разопаковане .../3-libpython2.7-stdlib_2.7.18-1build2_amd64.deb ...Разопаковане libpython2.7-st :amd64 (2.7.18-1build2) ...Избор на по-рано неизбран пакет python2.7.Подготовка за разопаковане .../4-python2.7_2.7.18-1build2_amd64.deb ...Разопаковане на python2.7 (2.7.18- 1build2) ...Избиране на по-рано неизбран пакет l ibpython2-stdlib:amd64.Подготовка за разопаковане .../5-libpython2-stdlib_2.7.18-2_amd64.deb ...Разопаковане на libpython2-stdlib:amd64 (2.7.18-2) ...Настройка на libpython2-minimal2. :amd64 (2.7.18-1build2) ...Настройка на python2.7-minimal (2.7.18-1build2) ...Свързване и компилиране на байтове на пакети за време на изпълнение python2.7...Настройка на python2-minimal (2.7 .18-2) ...Избиране на по-рано неизбран пакет python2.(Четене на база данни ... 156719 файлове и директории, инсталирани в момента.) Подготовка за разопаковане .../python2_2.7.18-2_amd64.deb ...Разопаковане на python2 (2.7. 18-2) ...Избиране на неизбран преди това пакет python-is-python2. Подготовка за разопаковане .../python-is-python2_2.7.17-4_all.deb ...Разопаковане на python-is-python2 (2.7.17-4 ) ...Избор на по-рано неизбран пакет cassandra.Подготовка за разопаковане .../cassandra_3.11.10_all.deb ...Разопаковане на cassandra (3.11.10) ...Настройка на libpython2.7-stdlib:amd64 (2.7.18- 1build2) ...Настройка на python2.7 (2.7.18-1build2) ...Настройка на libpython2-stdlib:amd64 (2.7.18-2) ...Sett настройване на python2 (2.7.18-2) ...Настройка на python-is-python2 (2.7.17-4) ...Настройка на cassandra (3.11.10) ...Добавяне на група `cassandra' (GID 141) ...Done.vm.max_map_count =1048575net.ipv4.tcp_keepalive_time =300update-rc.d:предупреждение:действията за стартиране и спиране вече не се поддържат; връщане към настройките по подразбиране. Обработка на тригери за mime-support (3.64ubuntu1) ... Обработка на тригери за gnome-menus (3.36.0-1ubuntu1) ... Обработка на тригери за systemd (246.6-1ubuntu1) ... Обработка на тригери за man-db (2.9.3-2) ...Обработка на тригери за помощни програми на настолни файлове (0.24-1ubuntu4) ...root@Cassandra:~#
За да стартирате автоматично услугата Cassandra при стартиране:
sudo systemctl активира cassandra
Примерен изход:
root@Cassandra:~# sudo systemctl enable cassandracassandra.service не е собствена услуга, пренасочва към systemd-sysv-install.Изпълнение:/lib/systemd/systemd-sysv-install enable cassandraroot@Cassandra:~#предварително>Стъпка 8:Проверете състоянието на Cassandra и nodetool
$ sudo systemctl status cassandra
Проверете статистиката на вашия възел
$ sudo nodetool състояние
ООН букви в изходния сигнал, че клъстерът работи.
Стъпка 9:Влезте в терминала Cassandra
$ cqlsh
Примерен изход:
root@Cassandra:~# cqlshСвързан с тестов клъстер на 127.0.0.1:9042.[cqlsh 5.0.1 | Касандра 3.11.10 | CQL спецификация 3.4.4 | Вроден протокол v4]Използвайте ПОМОЩ за help.cqlsh>Стъпка 10:Конфигуриране на Apache Cassandra в Ubuntu
- Конфигурационни файлове –> /etc/cassandra
- Данните се съхраняват –> /var/lib/cassandra
- Стартов файл –> /etc/default/cassandra
Името на клъстера по подразбиране на Cassandra е „Test Cluster“, за да актуализирате името на клъстера за вход до Cassandra.
$ cqlsh
В моя случай ще задам името на клъстера на Cassandra на „SysAdminXpert Cluster“
АКТУАЛИЗИРАНЕ system.local SET cluster_name ='SysAdminXpert Cluster' WHERE KEY ='local';
Команда за излизане от подканата на Cassandra
ИЗХОД;
Препоръчваме да направите резервно копие, преди да редактирате “cassandra.yaml” файл
sudo cp /etc/cassandra/cassandra.yaml /etc/cassandra/cassandra.yaml.org-backup
Намерете и редактирайте “cassandra.yaml” файл и актуализирайте името на клъстера.
$ sudo vim /etc/cassandra/cassandra.yaml
Потърсете „cluster_name“ и актуализирам името на клъстера, зададох го на „SysAdminXpert Cluster“.
Добавете IP адреси на възлите на Касандра. Отворете конфигурационния файл и под секцията _доставчик на семена намерете семена запис:
Запазете и излезте от “cassandra.yaml” файл, за да отразите промените, рестартирайте услугата Cassandra.
Рестартирайте услугата Cassandra и проверете състоянието:
$ sudo systemctl рестартирайте cassandra &&sudo systemctl status cassandra
Влезте отново в терминала Cassandra и проверете името на клъстера, което е актуализирано, както е показано на екрана по-долу.
$ cqlsh
Употреба на Cassandra cqlsh:
Cassandra Query Language Shell (CQLSH) е основно средство за комуникация между Касандра и потребителя. CQLSH е платформа, която позволява на потребителя да стартира езика за заявки Cassandra (CQL).
root@Cassandra:~# cqlsh --helpUsage:cqlsh.py [опции] [хост [порт]]CQL Shell за Apache CassandraОпции:--версията показва номера на версията на програмата и exit-h, --help показва тази помощ съобщение и exit-C, --color Винаги използвайте цветен изход--no-color Никога не използвайте цветен изход--browser=BROWSER Браузърът, който да използвате за показване на помощ за CQL, където BROWSER може да бъде:- един от поддържаните браузъри в https:// docs.python.org/2/library/webbrowser.html.- път на браузъра, последван от %s, пример:/usr/bin/google-chrome-stable %s--ssl Използвайте SSL--no_compact Без Compact-u ПОТРЕБИТЕЛСКО ИМЕ, --username=USERNAMEУдостоверяване като потребител.-p PASSWORD, --password=PASSWORDAuthenticates using password.-k KEYSPACE, --keyspace=KEYSPACEAuthenticates to the data keyspace.-f FILE, --file=FILE Изпълнете команди от FILE, след което излезте --debug Показване на допълнителна информация за отстраняване на грешки--encoding=ENCODING Посочете кодиране, което не е по подразбиране за изхода. (По подразбиране:utf-8)--cqlshrc=CQLSHRC Посочете алтернативно местоположение на файла cqlshrc.--cqlversion=CQLVERSION Посочете конкретна версия на CQL, по подразбиране ще се използва най-високата версия, поддържана от сървъра. Примери:"3.0.3", " 3.1.0"--protocol-version=PROTOCOL_VERSIONПосочете конкретна версия на протокола, в противен случай клиентът ще по подразбиране и ще понижи, ако е необходимо-e EXECUTE, --execute=EXECUTEEИзпълнете оператора и излезте.--connect-timeout=CONNECT_TIMEOUTУкажете времето за изчакване на връзката в секунди по подразбиране:5 секунди).--request-timeout=REQUEST_TIMEOUTУказва времето за изчакване на заявката по подразбиране в секунди (по подразбиране:10 секунди).-t, --tty Принудително tty режим (команден ред). Свързва се към 127.0.0.1:9042 по подразбиране. Тези настройки по подразбиране могат да бъдат променени чрез настройка на $CQLSH_HOST и/или $CQLSH_PORT. Когато хост (и незадължителен номер на порт) са дадени в командния ред, те имат предимство пред всички defaults.root@Cassandra:~#
Команда за получаване на версия:
Тази команда ще ви покаже версията на cqlsh, Cassandra, CQL и нативния протокол.
Пример:
root@Cassandra:~# cqlshСвързан с клъстер SysAdminXpert на 127.0.0.1:9042.[cqlsh 5.0.1 | Касандра 3.11.10 | CQL спецификация 3.4.4 | Вроден протокол v4]Използвайте ПОМОЩ за help.cqlsh>
Команда за показване на хост:
Тази команда ще ви покаже името на клъстера, IP адреса с порта.
Пример:
cqlsh> покажи хост, свързан с тестов клъстер на 127.0.0.1:9042.cqlsh>
Команда за ОПИСВАНЕ:
Тази команда дава описанието на всички по-долу елементи на схемата, както е споменато по-долу:
Синтаксис:
Опишете ClusterDescribe Schemadescribe tablesdescribe таблица <Име на таблицата> Опишете индекс <Име на индекса> Опишете keyspacesdescribe keyspaceопишете typesescribe type описват функции Изписване на функция <Име на функция> Опишете агрегатите
Пример:
cqlsh> описва clusterCluster:SysAdminXpert ClusterPartitioner:Murmur3Partitionercqlsh>
Команда за изчиства конзолата:
Синтаксис:
CLEARCLS
Край на статията. Видяхме как да инсталирате Apache Cassandra на Ubuntu 20.10.