
Apache Cassandra è un database NoSQL gratuito e open source senza un singolo punto di errore. Fornisce scalabilità lineare e alta disponibilità senza compromettere le prestazioni. Apache Cassandra è utilizzato da numerose aziende che dispongono di set di dati attivi di grandi dimensioni, tra cui Reddit, NetFlix, Instagram e Github.
In questo articolo spiegheremo come installare Apache Cassandra su Debian 10, Buster.
Prerequisiti #
Le istruzioni presuppongono che tu abbia effettuato l'accesso come root o utente con privilegi sudo.
Installazione di Java #
Al momento della stesura di questo articolo, l'ultima versione stabile di Apache Cassandra è 3.11
e richiede OpenJDK 8, che non è disponibile nei repository Debian Buster ufficiali.
Abiliteremo AdoptOpenJDKrepository e installeremo il pacchetto OpenJDK 8 precompilato.
Aggiorna l'elenco dei pacchetti e installa le dipendenze necessarie per aggiungere un nuovo repository su HTTPS:
sudo apt update
sudo apt install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common
Importa la chiave GPG del repository e aggiungi il repository APT AdoptOpenJDK al tuo sistema:
wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add -
sudo add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/
Installa Java 8 eseguendo i seguenti comandi:
sudo apt update
sudo apt install adoptopenjdk-8-hotspot
Una volta completato, verificalo stampando la versione Java:
java -version
L'output dovrebbe essere simile a questo:
openjdk version "1.8.0_232"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.232-b09, mixed mode)
Installazione di Apache Cassandra #
Installeremo Apache Cassandra utilizzando il pacchetto deb dal repository del fornitore. Per farlo, dobbiamo abilitare il repository Apache Cassandra.
Importa la chiave pubblica del repository utilizzando il seguente wget
comando:
wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
Il comando sopra dovrebbe restituire OK
. Ciò significa che la chiave è stata importata correttamente e i pacchetti da questo repository saranno considerati attendibili.
Aggiungi il repository Cassandra all'elenco delle fonti di sistema eseguendo il comando seguente:
sudo sh -c 'echo "deb https://www.apache.org/dist/cassandra/debian 311x main" > /etc/apt/sources.list.d/cassandra.list'
Aggiorna l'indice dei pacchetti e installa il pacchetto Apache Cassandra:
sudo apt update
sudo apt install cassandra
Al termine del processo di installazione, il servizio Cassandra verrà avviato automaticamente. Per verificare che Cassandra sia in esecuzione, digita:
nodetool status
Dovresti vedere qualcosa di simile al seguente:
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 127.0.0.1 103.71 KiB 256 100.0% dd8f6709-08ef-45b8-881e-5c1b5bbfc7f7 rack1
Questo è tutto. Apache Cassandra è stato installato correttamente.
Configurazione di Apache Cassandra #
I dati di Apache Cassandra sono archiviati in /var/lib/cassandra
directory. I file di configurazione si trovano in /etc/cassandra
e le opzioni di avvio di Java possono essere configurate in /etc/default/cassandra
file.
Per impostazione predefinita, Cassandra è in ascolto solo su localhost. Se anche il client che si connette al database è in esecuzione sulla stessa macchina, non è necessario modificare l'interfaccia di associazione.
Per interagire con Cassandra tramite la riga di comando, usa il cqlsh
strumento, fornito con il pacchetto Cassandra.
cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.5 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>
Rinominare il cluster Apache Cassandra #
Per impostazione predefinita, il cluster Cassandra è denominato "Test Cluster". Se vuoi cambiarlo, segui i passaggi seguenti:
-
Accedi al terminale Cassandra CQL con
cqlsh
:cqlsh
-
Immettere il comando seguente per modificare il nome del cluster in "Linuxize Cluster":
UPDATE system.local SET cluster_name = 'Linuxize Cluster' WHERE KEY = 'local';
Cambia "Linuxize Cluster" con il nome desiderato. Una volta terminato, digita
exit
per uscire dal terminale. -
Modifica il
/etc/cassandra/cassandra.yamlcassandra.yaml
file di configurazione e inserisci il nuovo nome del cluster:cluster_name: 'Linuxize Cluster'
-
Svuota la cache di sistema:
nodetool flush system
-
Riavvia il servizio Cassandra eseguendo:
sudo systemctl restart cassandra