GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Sensu Monitoring su Ubuntu 20.04

Sensu è uno strumento gratuito e open source utilizzato per monitorare lo stato dell'infrastruttura e delle applicazioni. È scritto in Ruby, usa RabbitMQ per gestire i messaggi e Redis per archiviare i dati. Può essere installato sulla maggior parte dei sistemi operativi inclusi Ubuntu, Debian, RHEL, CentOS, IBM, AIX, FreeBSD, Mac OS, Solaris, Windows e molti altri. È una delle piattaforme più popolari e di nuova generazione che sostituisce altri sistemi di monitoraggio come Zabbix, Icinga e Nagios. Sensu utilizza un modello client-server. Dovrai solo installare un client sensu su ogni sistema che desideri monitorare.

In questo tutorial, mostreremo come installare il server di monitoraggio Sensu sul server Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04.
  • Una password di root è configurata sul server.

Per iniziare

Innanzitutto, dovrai aggiornare il tuo sistema all'ultima versione stabile. Puoi farlo aggiornando tutti i pacchetti di sistema usando il seguente comando:

apt-get update -y

Una volta che il tuo sistema è stato aggiornato, installa altre dipendenze usando il seguente comando:

apt-get install gnupg2 curl wget unzip -y

Una volta installati tutti i pacchetti, puoi procedere al passaggio successivo.

Installa Redis e RabbitMQ

Sensu utilizza RabbitMQ per gestire i messaggi e Redis per archiviare i dati. Quindi entrambi i pacchetti devono essere installati nel tuo sistema. Per impostazione predefinita, RabbitMQ non è disponibile nel repository predefinito di Ubuntu 20.04. Quindi dovrai aggiungere il repository RabbitMQ nel tuo sistema.

Innanzitutto, importa la chiave GPG con il seguente comando:

wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | apt-key add -

Quindi, aggiungi il repository eseguendo il seguente comando:

echo "deb http://binaries.erlang-solutions.com/debian $(lsb_release -cs) contrib" | tee /etc/apt/sources.list.d/erlang-solutions.list

Quindi, aggiorna il repository e installa il pacchetto RabbitMQ con il seguente comando:

apt-get update -y
apt-get install rabbitmq-server -y

Una volta installato, dovrai creare un vhost RabbitMQ per Sensu. Puoi crearlo con il seguente comando:

rabbitmqctl add_vhost /sensu

Dovresti vedere il seguente output:

Adding vhost "/sensu" ...

Quindi, crea un utente per gestire il vhost con il seguente comando:

rabbitmqctl add_user sensu password

Dovresti vedere il seguente output:

Adding user "sensu" ...

Successivamente, dovrai assegnare autorizzazioni complete per vhost /sensu.

rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"

Dovresti ottenere il seguente output:

Setting permissions for user "sensu" in vhost "/sensu" ...

Quindi, installa il server Redis con il seguente comando:

apt-get install redis-server -y

Una volta completata l'installazione, avvia il servizio Redis e abilitalo all'avvio al riavvio del sistema con il seguente comando:

systemctl start redis-server
systemctl enable redis-server

Una volta terminato, puoi procedere al passaggio successivo.

Installa Sensu Server

Per impostazione predefinita, Sensu non è disponibile nel repository ufficiale di Ubuntu. Quindi dovrai aggiungere il repository Sensu nel tuo sistema.

Innanzitutto, importa la chiave GPG del repository con il seguente comando:

wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg | apt-key add -

Successivamente, aggiungi il repository con il seguente comando:

echo "deb https://sensu.global.ssl.fastly.net/apt bionic main" | tee /etc/apt/sources.list.d/sensu.list

Una volta aggiunto il repository, aggiorna il repository e installa Sensu con il seguente comando:

apt-get update -y
apt-get install sensu -y

Una volta installato Sensu, puoi procedere al passaggio successivo.

Configura Sensu

Successivamente, dovrai creare file di configurazione per RabbitMQ, Redis e Api. Innanzitutto, crea un file api.json con il seguente comando:

nano /etc/sensu/conf.d/api.json

Aggiungi le seguenti righe:

{
  "api": {
    "host": "localhost",
    "bind": "0.0.0.0",
    "port": 4567
  }
}

Salva e chiudi il file, quindi crea un file redis.json con il seguente comando:

nano /etc/sensu/conf.d/redis.json

Aggiungi le seguenti righe:

{
  "redis": {
    "host": "127.0.0.1",
    "port": 6379
  }
}

Salva e chiudi il file, quindi crea un file di configurazione RabbitMQ con il seguente comando:

nano /etc/sensu/conf.d/rabbitmq.json

Aggiungi le seguenti righe:

{
  "rabbitmq": {
    "host": "127.0.0.1",
    "port": 5672,
    "vhost": "/sensu",
    "user": "sensu",
    "password": "password"
  }
}

Salva e chiudi il file quando hai finito.

Installa e configura Sensu Dashboard

Successivamente, dovrai installare la dashboard Uchiwa nel tuo sistema. Uchiwa è una dashboard open source per monitorare Sensu tramite l'interfaccia web.

Puoi installare Uchiwa con il seguente comando:

apt-get install uchiwa -y

Dopo aver installato Uchiwa, crea un file di configurazione per Uchiwa con il seguente comando:

nano /etc/sensu/uchiwa.json

Aggiungi le seguenti righe:

{
  "sensu": [
    {
      "name": "Sensu",
      "host": "127.0.0.1",
      "port": 4567,
      "timeout": 10
    }
  ],
  "uchiwa": {
    "host": "0.0.0.0",
    "port": 3000,
    "refresh": 10
  }
}

Salva e chiudi il file quando hai finito.

Successivamente, dovrai creare un file client.json per monitorare il server Sensu stesso. Puoi crearlo con il seguente comando:

nano /etc/sensu/conf.d/client.json

Aggiungi le seguenti righe:

{
  "client": {
    "name": "sensu-server",
    "address": "127.0.0.1",
    "environment": "management",
    "subscriptions": [
      "dev",
      "ubuntu"
   ],
    "socket": {
      "bind": "127.0.0.1",
      "port": 3030
    }
  }
}

Salva e chiudi il file quando hai finito.

Quindi, avvia il server Sensu, il servizio client Api, Uchiwa e Sensu con il seguente comando:

systemctl start sensu-server
systemctl start sensu-api
systemctl start uchiwa
systemctl start sensu-client

Una volta avviati tutti i servizi, puoi verificare lo stato di tutti i servizi con il seguente comando:

systemctl status sensu-server sensu-api sensu-client uchiwa

Dovresti ottenere il seguente output:

? sensu-server.service - sensu server
     Loaded: loaded (/lib/systemd/system/sensu-server.service; disabled; vendor preset: enabled)
     Active: active (running) since Sun 2020-08-23 09:04:43 UTC; 4min 18s ago
   Main PID: 10031 (sensu-server)
      Tasks: 24 (limit: 2353)
     Memory: 20.6M
     CGroup: /system.slice/sensu-server.service
             ??10031 /opt/sensu/embedded/bin/ruby /opt/sensu/bin/sensu-server -c /etc/sensu/config.json -d /etc/sensu/conf.d -e /etc/sensu/ext>

Aug 23 09:04:43 ubuntu2004 systemd[1]: Started sensu server.

? sensu-api.service - sensu api
     Loaded: loaded (/lib/systemd/system/sensu-api.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2020-08-23 09:04:42 UTC; 4min 19s ago
   Main PID: 10023 (sensu-api)
      Tasks: 2 (limit: 2353)
     Memory: 18.9M
     CGroup: /system.slice/sensu-api.service
             ??10023 /opt/sensu/embedded/bin/ruby /opt/sensu/bin/sensu-api -c /etc/sensu/config.json -d /etc/sensu/conf.d -e /etc/sensu/extens>

Aug 23 09:04:42 ubuntu2004 systemd[1]: Started sensu api.

? sensu-client.service - sensu client
     Loaded: loaded (/lib/systemd/system/sensu-client.service; disabled; vendor preset: enabled)
     Active: active (running) since Sun 2020-08-23 09:04:42 UTC; 4min 18s ago
   Main PID: 10027 (sensu-client)
      Tasks: 2 (limit: 2353)
     Memory: 17.0M
     CGroup: /system.slice/sensu-client.service
             ??10027 /opt/sensu/embedded/bin/ruby /opt/sensu/bin/sensu-client -c /etc/sensu/config.json -d /etc/sensu/conf.d -e /etc/sensu/ext>

Aug 23 09:04:42 ubuntu2004 systemd[1]: sensu-client.service: Succeeded.
Aug 23 09:04:42 ubuntu2004 systemd[1]: Stopped sensu client.
Aug 23 09:04:42 ubuntu2004 systemd[1]: Started sensu client.

? uchiwa.service - LSB: Uchiwa, a Sensu dashboard.
     Loaded: loaded (/etc/init.d/uchiwa; generated)
     Active: active (exited) since Sun 2020-08-23 09:04:41 UTC; 4min 19s ago

Una volta terminato, puoi procedere al passaggio successivo.

Accedi al dashboard di Sensu

Ora apri il tuo browser web e digita l'URL http://your-server-ip:3000. Dovresti vedere la dashboard di Sensu nella schermata seguente:

Ora, fai clic sul cliente icona nel riquadro di sinistra. Dovresti vedere lo stato del client Sensu nella schermata seguente:

Conclusione

Congratulazioni! hai installato e configurato correttamente Sensu e Uchiwa sul server Ubuntu 20.04. Ora puoi aggiungere più client e iniziare a monitorare dalla dashboard di Uchiwa. Sentiti libero di chiedermi se hai domande.


Ubuntu
  1. Come installare Logstash su Ubuntu 18.04

  2. Come installare Sensu su Ubuntu 18.04

  3. Come installare XWiki su Ubuntu 20.04

  4. Come installare phpBB su Ubuntu 20.04

  5. Come installare R su Ubuntu 18.04

Come installare Sysdig su Ubuntu 20.04

Come installare Cacti Monitoring su Ubuntu 15.04

Come installare Sensu su Ubuntu 16.04 LTS

Come installare Sensu Monitoring su Ubuntu 20.04 LTS

Come installare Jenkins su Ubuntu 18.04

Come installare Monit Monitoring Server su Ubuntu 20.04.