Senso è una soluzione di monitoraggio open source che ha la capacità di monitorare diversi ambienti, in particolare per ambienti misti come cloud pubblici, privati e ibridi. Sensu fornisce anche numerosi plugin che possono essere utilizzati come quelli che chiamano "controlli Sensu". Questi plug-in monitorano lo stato di salute dei servizi, delle risorse del server e raccolgono diverse metriche del server da diversi servizi. Fornisce anche avvisi e notifiche.
È sviluppato utilizzando il linguaggio Ruby. Utilizza RabbitMQ come intermediario per i messaggi e Redis per la memorizzazione nella cache dei dati e l'archiviazione.
In questo articolo, ti mostreremo istruzioni dettagliate su come installare Sensu su Ubuntu 18.04 .
Prerequisiti:
Per questo tutorial, ti consigliamo di utilizzare una nuova installazione di Ubuntu 18.04 VPS.
Assicurati che il tuo server soddisfi la seguente configurazione hardware e software minima per il back-end del server Sensu:
Hardware:
- 4 core CPU
- 4 GB di RAM
- 4 GB di spazio libero su disco
- Collegamento di rete affidabile
Software:
- Ubuntu 18.04
- Un indirizzo IP dedicato
- Privilegi di root completi o utente root
Per ulteriori informazioni sui requisiti del back-end e degli agenti per Sensu, puoi visitare il loro articolo ufficiale sui requisiti hardware qui.
Verifica aggiornamenti e dipendenze di installazione
Accedi al tuo server tramite SSH:
ssh [username]@[server_ip_address]
Assicurati di sostituire "username" con il nome account di un utente root trovato sul server (o l'utente root stesso) e sostituisci "server_ip" con l'indirizzo IP del tuo server.
Prima di iniziare con l'installazione, si consiglia di aggiornare tutti i pacchetti Ubuntu alle loro ultime versioni:
apt-get update apt-get upgrade
Per evitare il problema delle "librerie mancanti" nelle installazioni future, si consiglia di installare le dipendenze di base:
apt-get install software-properties-common build-essential -y
Installazione e configurazione di RabbitMQ
RabbitMQ è il broker di messaggi più popolare. Fungerà da sistema di messaggistica intermedio per Sensu. RabbitMQ richiede Erlang, un linguaggio di programmazione utilizzato per la creazione di sistemi applicativi in tempo reale.
Per installare Erlang, utilizzare i seguenti comandi per installare il pacchetto del repository Erlang:
cd /opt wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb dpkg -i erlang-solutions_1.0_all.deb
Dopo aver configurato il repository Erlang e RabbitMQ e aver aggiornato la nostra installazione di Ubuntu, ora possiamo procedere all'installazione del pacchetto Erlang semplicemente digitando quanto segue:
apt-get update apt-get install erlang rabbitmq-server
Per verificare se il servizio RabbitMQ è stato installato correttamente, esegui quanto segue per verificare lo stato del servizio RabbitMQ:
systemctl status rabbitmq-server
Dovresti essere in grado di vedere un messaggio simile a questo:
rabbitmq-server.service - RabbitMQ Messaging Server
Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor
Active: active (running) since Sun 2019-03-17 23:12:51 CDT; 1min 22s ago
Ora, dobbiamo creare un vhost per la nostra installazione di Sensu:
rabbitmqctl add_vhost /sensu
Il prossimo è aggiungere un utente a vhost. Sostituisci [password] con una password complessa.
rabbitmqctl add_user sensu [password]
Infine, concedi i permessi completi al nostro utente "sensu":
rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"
Installazione e configurazione di Redis
Redis viene utilizzato da Sensu come principale sistema di memorizzazione nella cache dei dati prodotti dagli agenti di monitoraggio, inclusi controlli, eventi, avvisi e notifiche.
L'installazione del server Redis è semplice:devi solo digitare quanto segue:
apt-get -y install redis-server
Per verificare che il server Redis sia in esecuzione:
systemctl status redis-server
Dovresti vedere "Attivo(in esecuzione)" nei risultati:redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor pre
Active: active (running) since Sun 2019-03-17 23:23:15 CDT; 1min 15s ago
Installazione di Sensu
Dopo aver installato i due requisiti principali, possiamo ora procedere con l'installazione e la configurazione di Sensu Core.
Al momento della stesura di questo articolo, il pacchetto Sensu Core non è ancora ufficialmente disponibile nel repository di Ubuntu. Per aggiungere il repository e le chiavi ufficiali di Sensu, utilizza i seguenti comandi:
echo "deb https://sensu.global.ssl.fastly.net/apt bionic main" | sudo tee /etc/apt/sources.list.d/sensu.list wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg | sudo apt-key add -
Il prossimo passo è aggiornare e infine installare il pacchetto Sensu:
apt-get update apt-get install sensu -y
Configurazione di Sensu
Dopo aver installato Sensu, dovremo configurare API, RabbitMQ e Redis per Sensu creando singoli file di configurazione in formato JSON. Useremo nano
per aprire i file di configurazione.
API:
nano /etc/sensu/conf.d/api.json
{ "api": { "host": "localhost", "bind": "0.0.0.0", "port": 4567 } }
ConiglioMQ:
nano /etc/sensu/conf.d/rabbitmq.json
{ "rabbitmq": { "host": "127.0.0.1", "port": 5672, "vhost": "/sensu", "user": "sensu", "password": "[password]" } }
Redis:
nano /etc/sensu/conf.d/redis.json
{ "redis": { "host": "127.0.0.1", "port": 6379 } }
Installazione e configurazione di Uchiwa come interfaccia Web del dashboard di Sensu
Sensu non ha un dashboard di monitoraggio installato per impostazione predefinita. Uchiwa è una dashboard open source progettata per Sensu.
Per installare Uchiwa, digita i seguenti comandi:
apt-get install uchiwa -y
Una volta installato, dobbiamo creare il file di configurazione per Sensu. Si consiglia di utilizzare una password complessa per l'account amministratore di Uchiwa:
nano /etc/sensu/uchiwa.json
{ "sensu": [ { "name": "sensu.your-domain.com", "host": "127.0.0.1", "port": 4567, "timeout": 10 } ], "uchiwa": { "host": "0.0.0.0", "port": 3000, "refresh": 10, "user": "admin", "pass": "[password]" } }
Ricordati di sostituire [password] con una password complessa a tua scelta.
Configura Sensu Server come client
Possiamo configurare Sensu per monitorare se stesso creando il seguente file:
nano /etc/sensu/conf.d/client.json
{ "client": { "environment": "development", "name": "sensu-server", "address": "127.0.0.1", "subscriptions": [ "development", "sensu-server" ] } }
Infine, è necessario impostare i permessi corretti per la configurazione.
chown -R sensu:sensu /etc/sensu/conf.d/*
chown sensu:sensu /etc/sensu/uchiwa.json
Gestione dei servizi Sensu
Per abilitare l'avvio automatico di tutti i servizi all'avvio:
systemctl enable sensu-server systemctl enable sensu-api systemctl enable sensu-client systemctl enable uchiwa
Assicuriamoci che tutti i servizi siano avviati:
systemctl start sensu-server systemctl start sensu-api systemctl start sensu-client systemctl start uchiwa
Ora puoi accedere alla dashboard di Uchiwa utilizzando http://[server's public IP]:3000
. Dovresti essere in grado di vedere sensu-server come client.
Ecco fatto - ora hai un server di monitoraggio Sensu funzionante sul tuo server Ubuntu 18.04.
Ovviamente non è necessario installare Sensu su Ubuntu 18.04 se hai un VPS Ubuntu con noi. Puoi semplicemente chiedere al nostro team di supporto di installare Sensu su Ubuntu 18.04 per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e saranno in grado di aiutarti con l'installazione.
Chi usa Sensu su Ubuntu 20.04 può trovare ulteriori informazioni su come installare Sensu su Ubuntu 20.04 nella nostra guida passo passo.
PS . Se ti è piaciuto leggere questo post del blog su come installare Sensu su Ubuntu 18.04, sentiti libero di condividerlo sui social network usando le scorciatoie qui sotto, o semplicemente lascia un commento nella sezione commenti. Grazie.