Riak è un database NoSQL distribuito che offre alta disponibilità, tolleranza agli errori, semplicità operativa e scalabilità. Riak è stato scritto in Erlang e fa parte dei prodotti "Basho" che forniscono versioni diverse, tra cui Riak KV (Key-value), Riak TS (ottimizzato per IoT/Time Series) e Riak CS (Riak Cloud Storage).
In questo tutorial, ti mostreremo passo dopo passo come installare e configurare il database NoSQL Riak KV sul server Ubuntu 18.04 LTS. Creeremo il cluster Riak KV con tre server Ubuntu.
Prerequisiti
- 3 server Ubuntu 18.04/16.04
- hakase-riak01 10.1.1.10
- hakase-riak02 10.1.1.11
- hakase-riak03 10.1.1.12
- Privilegi di root
Cosa faremo?
- Installa Riak KV su Ubuntu 18.04
- Configurazione di base Riak KV
- Impostazione del cluster Riak KV
- Test
Passaggio 1:installa Riak KV su Ubuntu 18.04 LTS
Il primo passo che faremo per questa guida è installare i pacchetti Riak KV su tutti i server, quindi esegui tutti i comandi in questa fase su tutti i server.
Installeremo Riak KV dal repository packagecloud e utilizzeremo i pacchetti Riak KV per la versione Ubuntu Xenial.
Aggiungi la chiave packagecloud e installa 'apt-transport-https'.
curl https://packagecloud.io/gpg.key | sudo apt-key add -
sudo apt-get install -y apt-transport-https
Ora vai nella directory '/etc/apt/sources.list.d' e crea un nuovo file di repository 'riak.list'.
cd /etc/apt/sources.list.d/
vim riak.list
Incolla il repository Riak KV di seguito.
# this file was generated by packagecloud.io for # the repository at https://packagecloud.io/basho/riak deb https://packagecloud.io/basho/riak/ubuntu/ xenial main deb-src https://packagecloud.io/basho/riak/ubuntu/ xenial main
Salva ed esci.
Aggiorna il repository e installa i pacchetti Riak KV usando il comando apt di seguito.
sudo apt update
sudo apt install riak -y
Attendi l'installazione.
Nota:
- Esegui tutti i comandi in questa fase su tutti i nodi del server.
Fase 2 - Configurazione di base Riak KV
In questo passaggio, configureremo il Riak KV per il nostro cluster NoSQL. Prima di configurare il Riak KV stesso, dobbiamo impostare il limite di file aperti sul sistema Ubuntu.
Modifica il file '/etc/security/limits.conf' usando l'editor vim.
vim /etc/security/limits.conf
Incolla la configurazione di seguito fino alla fine della riga.
riak soft nofile 65536 riak hard nofile 200000
Salva ed esci.
Ora vai nella directory '/etc/riak', modifica il file di configurazione predefinito 'riak.conf'.
cd /etc/riak/
vim riak.conf
Modifica il nome del nodo predefinito "[email protected]" con "[email protected]".
nodename = [email protected]
Ora decommenta quelle righe di pianificazione di seguito.
erlang.schedulers.force_wakeup_interval = 500 erlang.schedulers.compaction_of_load = false
Decommenta la riga 'ring_size' e lascia il valore predefinito '64'.
ring_size = 64
Modifica il listener HTTP e i buffer di protocollo con 'ServerIP'.
listener.http.internal = 10.1.1.11:8098 listener.protobuf.internal = 10.1.11.11:8087
Salva ed esci.
Ora prova le configurazioni riak, quindi avvia il servizio riak.
riak chkconfig
riak start
E il seguente è il risultato.
Successivamente, testeremo la nostra configurazione del servizio riak eseguendo i comandi seguenti.
riak ping
curl -v http://10.1.1.11:8098/types/default/props
Assicurati di ottenere il risultato 'pong' dal comando 'riak ping' e ottieni il codice di stato HTTP '200' dal comando curl.
Le configurazioni di base di Riak KV distribuito NoSQL sono state completate e siamo pronti per configurare il Riak KV Cluster.
Nota:
- Esegui tutti i comandi in questa fase su tutti i nodi del server.
Fase 3 - Configurazione del cluster Riak KV
In questo passaggio, configureremo il cluster unendo i nodi "hakase-riak02" e "hakase-riak03" al primo nodo.
Secondo nodo
Sul nodo 'hakase-riak02', esegui riak-admin di seguito.
riak-admin cluster join [email protected]
Ora torna al nodo 'hakase-riak01', esegui i comandi riak-admin di seguito.
riak-admin cluster plan
riak-admin cluster commit
E il nodo 'hakase-riak02' è stato aggiunto al cluster, controllalo usando il comando seguente.
riak-admin cluster status
Terzo nodo
Sul nodo 'hakase-riak03', esegui il comando riak-admin di seguito.
riak-admin cluster join [email protected]
Ora torna al nodo 'hakase-riak01', esegui i comandi riak-admin di seguito.
riak-admin cluster plan
riak-admin cluster commit
Tutti i nodi del server "hakase-riak02" e "hakase-riak03" sono stati aggiunti al cluster, controlla di nuovo utilizzando il comando seguente.
riak-admin cluster status
L'installazione e la configurazione del cluster Riak KV sono state completate.
Fase 4 - Test
Il cluster Riak KV NoSQL è stato creato, ora vogliamo testare il cluster caricando un'immagine di dati nel cluster e testare l'accesso dagli altri nodi per garantire la replica dei dati tra tutti i nodi.
Sul server 'hakase-riak01', scarica un'immagine usando il comando wget di seguito.
cd ~/
wget https://vignette.wikia.nocookie.net/nichijou/images/a/a0/113407.jpg -O hakase.jpg
Ora carica l'immagine nel cluster Riak KV usando il comando curl.
curl -XPUT http://10.9.9.10:8098/riak/images/hakase.jpg -H "Content-type: image/jpg" --data-binary @hakase.jpg
Apri il tuo browser web e digita l'indirizzo IP di altri nodi e otterrai la stessa immagine.
'hakase-riak02'.
http://10.1.1.11:8098/riak/images/hakase.jpg
'hakase-riak03'.
http://10.1.1.12:8098/riak/images/hakase.jpg
Se vuoi eliminare i dati dell'immagine, usa il comando curl qui sotto.
curl -XDELETE 'http://10.9.9.10:8098/riak/images/hakase.jpg'
L'installazione e la configurazione del cluster Riak KV su Ubuntu 18.04 sono state completate con successo.