Introduzione
Apache Cassandra è un database NoSQL gratuito e open source altamente stabile. Fornisce scalabilità lineare e alta disponibilità senza compromettere le prestazioni. Apache Cassandra è utilizzato da molte aziende che dispongono di set di dati di grandi dimensioni e attivi, tra cui Reddit, NetFlix, Instagram e Github.
Questo articolo spiega come installare Apache Cassandra su CentOS 8.
Se desideri installare Apache Cassandra su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digita il seguente comando:
ssh root@IP_DEL_SERVER
Successivamente sarà necessario inserire la password dell'utente root.
Se non utilizzi l'utente root puoi connetterti con un'altro nome utente utilizzando lo stesso comando, quindi modifica root con il tuo nome_utente:
ssh nome_utente@IP_DEL_SERVER
Successivamente ti verrà chiesto di inserire la password del vostro utente.
La porta standard per connettersi tramite ssh è la 22, se il tuo server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Installare Apache Cassandra
Il modo più semplice per installare Apache Cassandra su CentOS 8 è installando il pacchetto rpm dal repository ufficiale di Apache Cassandra.
L'ultima versione di Apache Cassandra è 3.11
e richiede che OpenJDK 8 sia installato sul sistema.
Eseguire il comando seguente come root o utente con privilegi sudo per installare OpenJDK :
sudo dnf install java-1.8.0-openjdk-devel
Una volta completato, verificare l'installazione stampando la versione Java:
java -version
L'output dovrebbe assomigliare a questo:
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
Ora che Java è installato, il passo successivo è aggiungere il repository Apache Cassandra.
Installa l'editor di testo nano, altrimenti puoi utilizzare vi/vim per modificare i file:
sudo yum install nano
Apri il tuo editor di testo e crea il seguente file repository:
sudo nano /etc/yum.repos.d/cassandra.repo
Incolla il seguente contenuto nel file:
Salvare il file e installare l'ultima versione di Apache Cassandra digitando:
sudo dnf install cassandra
Quando richiesto, digitare y
per importare le chiavi GPG, dovrai impartare diverse chiavi.
Una volta completata l'installazione, abilitare e avviare il servizio Cassandra:
sudo systemctl enable cassandra
sudo systemctl start cassandra
Verifica che Cassandra sia in esecuzione digitando, potesti dover aspettare qualche secondo prima di ottenere un output positivo:
nodetool status
Dovresti vedere qualcosa di simile a questo:
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 127.0.0.1 70.03 KiB 256 100.0% 10481d73-8c54-430a-b4dd-ffad85466ff6 rack1
Questo è tutto. A questo punto, hai Apache Cassandra installato sul tuo server CentOS 8.
Configurare Apache Cassandra
I dati Apache Cassandra sono archiviati nella directory /var/lib/cassandra
, i file di configurazione si trovano in /etc/cassandra
e le opzioni di avvio di Java possono essere configurate nel file /etc/default/cassandra
.
Per impostazione predefinita, Cassandra è configurato per l'ascolto solo su localhost. Se anche il client che si collega al database è in esecuzione sullo stesso host, non è necessario modificare il file di configurazione predefinito.
Per interagire con Cassandra tramite CQL (il linguaggio di query Cassandra), è possibile utilizzare un'utilità della riga di comando denominata cqlsh
fornita con il pacchetto Cassandra.
cqlsh
richiede che Python 2 si trovi nel PATH del sistema. Se non hai Python 2 installato sul server, puoi farlo con i seguenti comandi:
sudo dnf install python2
sudo alternatives --set python /usr/bin/python2
Una volta impostato python, esegui cqlsh
per accedere alla shell CQL:
cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.7 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>
Rinominare Apache Cassandra Cluster
Per impostazione predefinita, il cluster Cassandra è denominato "Test Cluster". Se si desidera modificare il nome del cluster, attenersi alla seguente procedura:
Accedi al terminale Cassandra CQL con cqlsh
:
cqlsh
Il seguente comando cambierà il nome del cluster in "Noviello Cluster":
UPDATE system.local SET cluster_name = 'Noviello Cluster' WHERE KEY = 'local';
Sostituisci "Noviello Cluster" con il nome desiderato. Al termine, digitare exit
per uscire dalla console:
exit
Apri il file cassandra.yaml
di configurazione, cerca "cluster_name" e inserisci il nome del tuo nuovo cluster:
sudo nano /etc/cassandra/default.conf/cassandra.yaml
Cancella la cache di sistema:
nodetool flush system
Infine riavviare il servizio Cassandra:
sudo systemctl restart cassandra
Conclusione
Ti abbiamo mostrato come installare Apache Cassandra su CentOS 8. Ora puoi visitare la pagina ufficiale della documentazione di Apache Cassandra e imparare ad iniziare Apache Cassandra.