Apache Cassandra je open source systém pro správu databází NoSQL se širokými sloupci, který je navržen tak, aby zpracovával velké množství dat. Cassandra může být distribuována na mnoha serverech, aby bylo dosaženo vysoké dostupnosti bez jediného bodu selhání. Obecně se používá jako úložiště provozních dat v reálném čase pro online transakční aplikace a jako databáze náročná na čtení pro rozsáhlé systémy. V současné době jej používá mnoho organizací včetně Netflix, Digg, Adobe, Twitter, HP, IBM, Rackspace, Cisco a Reddit.
V této příručce vysvětlíme, jak nainstalovat Apache Cassandra na Oracle Linux 8.
Předpoklady
- Server se systémem Oracle Linux 8 na cloudové platformě Atlantic.Net
- Heslo uživatele root nakonfigurované na vašem serveru
Krok 1 – Vytvořte cloudový server Atlantic.Net
Nejprve se přihlaste ke svému cloudovému serveru Atlantic.Net. Vytvořte nový server a jako operační systém vyberte Oracle Linux s alespoň 4 GB RAM. Připojte se ke svému cloudovému serveru přes SSH a přihlaste se pomocí přihlašovacích údajů zvýrazněných v horní části stránky.
Jakmile se přihlásíte na svůj server, spusťte následující příkaz a aktualizujte svůj základní systém nejnovějšími dostupnými balíčky.
dnf update -y
Krok 2 – Instalace Java 8
dnf install epel-release python2 python2-pip java-1.8.0-openjdk -y
Po instalaci ověřte instalaci Java pomocí následujícího příkazu:
java -version
Verzi Java získáte v následujícím výstupu:
openjdk version "1.8.0_332" OpenJDK Runtime Environment (build 1.8.0_332-b09) OpenJDK 64-Bit Server VM (build 25.332-b09, mixed mode)
Dále nainstalujte nástroj příkazového řádku cqlsh pro připojení ke Cassandře prostřednictvím příkazového řádku.
pip2 install cqlsh
Krok 3 – Instalace Apache Cassandra
nano /etc/yum.repos.d/cassandra.repo
Přidejte následující řádky:
[cassandra] name=Apache Cassandra baseurl=https://www.apache.org/dist/cassandra/redhat/40x/ gpgcheck=1 repo_gpgcheck=1 gpgkey=https://www.apache.org/dist/cassandra/KEYS
Po dokončení uložte a zavřete soubor a poté nainstalujte Apache Cassandra pomocí následujícího příkazu:
dnf install cassandra -y
Krok 4 – Vytvořte soubor služby pro Cassandru
Pro správu služby Apache Cassandra prostřednictvím systemd se doporučuje vytvořit soubor služby. Můžete jej vytvořit pomocí následujícího příkazu:
nano /etc/systemd/system/cassandra.service
Přidejte následující řádky:
[Unit] Description=Apache Cassandra After=network.target [Service] PIDFile=/var/run/cassandra/cassandra.pid User=cassandra Group=cassandra ExecStart=/usr/sbin/cassandra -f -p /var/run/cassandra/cassandra.pid Restart=always [Install] WantedBy=multi-user.target
Uložte a zavřete soubor a poté znovu načtěte démona systemd, aby se změny aplikovaly:
systemctl daemon-reload
Dále spusťte a povolte službu Cassandra pomocí následujícího příkazu:
systemctl start cassandra systemctl enable cassandra
Chcete-li ověřit stav Apache Cassandra, spusťte následující příkaz:
systemctl status cassandra
Měli byste vidět následující výstup:
● cassandra.service - Apache Cassandra Loaded: loaded (/etc/systemd/system/cassandra.service; disabled; vendor preset: disabled) Active: active (running) since Sat 2022-04-30 07:54:46 EDT; 15s ago Main PID: 2170 (java) Tasks: 23 (limit: 23694) Memory: 1.1G CGroup: /system.slice/cassandra.service └─2170 /usr/bin/java -ea -da:net.openhft... -XX:+UseThreadPriorities -XX:+HeapDumpOnOutOfMemoryError -Xss256k -XX:+AlwaysPreTouch > Apr 30 07:55:00 oraclelinux cassandra[2170]: INFO [main] 2022-04-30 07:55:00,318 CassandraDaemon.java:640 - Classpath: /etc/cassandra/conf:/> Apr 30 07:55:00 oraclelinux cassandra[2170]: INFO [main] 2022-04-30 07:55:00,319 CassandraDaemon.java:642 - JVM Arguments: [-ea, -da:net.ope> Apr 30 07:55:00 oraclelinux cassandra[2170]: WARN [main] 2022-04-30 07:55:00,405 NativeLibrary.java:201 - Unable to lock JVM memory (ENOMEM)> Apr 30 07:55:00 oraclelinux cassandra[2170]: INFO [main] 2022-04-30 07:55:00,569 MonotonicClock.java:202 - Scheduling approximate time conve> Apr 30 07:55:00 oraclelinux cassandra[2170]: INFO [main] 2022-04-30 07:55:00,577 MonotonicClock.java:338 - Scheduling approximate time-check> Apr 30 07:55:00 oraclelinux cassandra[2170]: WARN [main] 2022-04-30 07:55:00,585 StartupChecks.java:143 - jemalloc shared library could not > Apr 30 07:55:00 oraclelinux cassandra[2170]: WARN [main] 2022-04-30 07:55:00,585 StartupChecks.java:187 - JMX is not enabled to receive remo> Apr 30 07:55:00 oraclelinux cassandra[2170]: INFO [main] 2022-04-30 07:55:00,590 SigarLibrary.java:44 - Initializing SIGAR library Apr 30 07:55:00 oraclelinux cassandra[2170]: WARN [main] 2022-04-30 07:55:00,603 SigarLibrary.java:174 - Cassandra server running in degrade> Apr 30 07:55:00 oraclelinux cassandra[2170]: WARN [main] 2022-04-30 07:55:00,604 StartupChecks.java:329 - Maximum number of memory map areas>
Krok 5 – Ověřte Apache Cassandra
Počkejte nějakou dobu, než se Apache Cassandra úplně zobrazí, a poté ověřte Apache Cassandra pomocí následujícího příkazu:
nodetool status
Zobrazí se následující chyba:
nodetool: Failed to connect to '127.0.0.1:7199' - URISyntaxException: 'Malformed IPv6 address at index 7: rmi://[127.0.0.1]:7199'.
Chcete-li tuto chybu vyřešit, přidejte při spuštění nodetool příznak „starší“ analýzy:
nodetool -Dcom.sun.jndi.rmiURLParsing=legacy status
Měli byste získat následující výstup:
Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 127.0.0.1 69.06 KiB 16 100.0% 91f2092e-f428-40f8-8093-efe820abe917 rack1
Dále se připojte k shellu Cassandra pomocí nástroje cqlsh:
cqlsh
Jakmile se připojíte, měli byste získat následující výstup:
Connected to Test Cluster at 127.0.0.1:9042 [cqlsh 6.0.0 | Cassandra 4.0.3 | CQL spec 3.4.5 | Native protocol v5] Use HELP for help. cqlsh>
Krok 6 – Změna názvu clusteru Cassandra
cqlsh
Dále změňte název clusteru pomocí následujícího příkazu:
cqlsh> UPDATE system.local SET cluster_name = 'Atlantic Cluster' WHERE KEY = 'local';
Dále opusťte shell Cassandra pomocí následujícího příkazu:
cqlsh> exit
Dále upravte hlavní konfigurační soubor Apache Cassandra a definujte svůj nový název clusteru:
nano /etc/cassandra/default.conf/cassandra.yaml
Změňte název clusteru Cassandra, jak je znázorněno níže:
cluster_name: 'Atlantic Cluster'
Uložte a zavřete soubor a restartujte Apache Cassandra, aby se změny projevily:
systemctl restart cassandra
Nyní ověřte název clusteru Cassandra pomocí následujícího příkazu:
cqlsh
Nový název clusteru byste měli získat v následujícím výstupu:
Connected to Atlantic Cluster at 127.0.0.1:9042 [cqlsh 6.0.0 | Cassandra 4.0.3 | CQL spec 3.4.5 | Native protocol v5] Use HELP for help.
Závěr
Ve výše uvedené příručce jsme vysvětlili, jak nainstalovat Apache Cassandra na Oracle Linux 8. Apache Cassandra nyní můžete používat ke zpracování a správě velkých datových sad. Vyzkoušejte to na hostingu VPS od Atlantic.Net!