GNU/Linux >> Linux Esercitazione >  >> Debian

Come aggiungere un host Linux remoto nello strumento di monitoraggio Sensu

I client Sensu sono agenti di monitoraggio, installati ed eseguiti su ogni server monitorato dallo strumento Sensu. Il lavoro di un cliente Sensu consiste nel registrare un sistema con Sensu , invio di messaggi Keepalive ed esecuzione di controlli di monitoraggio .

Ogni cliente può essere membro di uno o più abbonamenti – puoi semplicemente dire; un elenco di ruoli loro assegnati (Ex, web server, database, ecc.).

Quando un client si iscrive alle richieste di controllo pubblicate dal server Sensu (tramite RabbitMQ – Sensu transport), le esegue localmente e pubblica il risultato del controllo sul trasporto Sensu, quindi un server Sensu elaborerà i risultati.

In questa guida, configureremo le macchine client per inviare i risultati dei controlli di servizio al server Sensu. Supponendo che tu abbia seguito i nostri precedenti articoli su Sensu core.

LEGGI :Installa Sensu su Ubuntu 16.04 / Debian 8

Sensu core non viene fornito con la dashboard grafica, quindi è necessario installare Uchiwa, una dashboard open source per lo strumento di monitoraggio Sensu.

LEGGI :Come installare Uchiwa – Dashboard open source per lo strumento di monitoraggio Sensu

Aggiungi repository Sensu:

A seconda del tuo sistema operativo, configura il repository Sensu per recuperare il pacchetto dal sito Web ufficiale.

### CentOS 7 / RHEL 7 ###

echo '[sensu]
name=sensu
baseurl=https://sensu.global.ssl.fastly.net/yum/7/x86_64/
gpgcheck=0
enabled=1' | sudo tee /etc/yum.repos.d/sensu.repo

### Ubuntu 16.04 / Debian 8 ###

sudo apt-get update && sudo apt-get -y install apt-transport-https
wget -q https://sensu.global.ssl.fastly.net/apt/pubkey.gpg -O- | sudo apt-key add -
echo "deb     https://sensu.global.ssl.fastly.net/apt sensu main" | sudo tee /etc/apt/sources.list.d/sensu.list
sudo apt-get update

Installa Sensu usando il seguente comando.

### CentOS 7 / RHEL 7 ### 

yum -y install sensu

### Ubuntu 16.04 / Debian 8 ###

sudo apt-get -y install sensu

Registra un sistema:

La directory di configurazione predefinita di Sensu è /etc/sensu/config.d , in alcuni casi, potrebbe essere necessario creare questa directory manualmente se non disponibile.

I file di configurazione devono essere in formato JSON . Crea client.json file.

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

Inserisci il seguente contenuto nel file sopra.

{
"client": {
  "name": "debian.itzgeek.local",
  "address": "10.128.0.4",
  "environment": "production",
  "subscriptions": [
    "web",
    "debian"
  ]
 }
}

Dove,

client:il nome del client deve essere un nome univoco. La mia macchina è Debian 8 .

indirizzo: indirizzo IP o nome host del client.

ambiente: Un attributo personalizzato, non parte delle specifiche del client Sensu. Questi attributi personalizzati vengono controllati dai filtri Sensu che ti aiutano a eseguire azioni specifiche in base all'ambiente (es. avviso solo su eventi nell'ambiente di produzione)

abbonamenti: Elenco di ruoli o responsabilità assegnati al cliente.

Configura il client Sensu per la connessione con il trasporto Sensu. Crea il file transport.json.

vi /etc/sensu/conf.d/transport.json

Inserisci il seguente contenuto nel file sopra.

{
 "transport": {
   "name": "rabbitmq",
   "reconnect_on_error": true
  }
 }

Configura i dettagli del trasporto Sensu creando rabbitmq.json.

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

Copia e incolla i contenuti seguenti nel file sopra. Sostituisci i valori verdi a seconda della configurazione di Sensu.

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

Dove,

host – IP del server RabbitMQ (server Sensu)

porta:porta del server RabbitMQ

vhost, utente e password:host virtuale, utente e password RabbitMQ che abbiamo creato durante l'installazione del server Sensu.

Riavvia il servizio client Sensu utilizzando il comando seguente.

service sensu-client restart

Apri la dashboard Uchiwa e verifica se il nuovo client è stato registrato correttamente sul server Sensu.

Lo screenshot sottostante mostra i dettagli di un nuovo cliente aggiunto.

Ora è il momento di configurare Sensu per monitorare la tua infrastruttura.

Monitoraggio di un servizio:

Sensu utilizza i controlli (comandi) per monitorare un'infrastruttura, viene eseguito dal client Sensu per monitorare una condizione (es. verifica dello stato del servizio) o raccogliere misurazioni (es. quanta memoria viene utilizzata).

I dati dei risultati dei controlli standard si trovano in genere in un messaggio leggibile dall'uomo e i controlli metrici contengono in genere misurazioni raccolte dal controllo. Inoltre, lo stato del codice di uscita indica lo stato; 0 – OK , 1 – ATTENZIONE e 2 – CRITICO , simile a Nagios; significa che puoi utilizzare plug-in Nagios con Sensu senza modifiche.

Questi controlli sono programmati dal server Sensu o dal client Sensu.

Controlli dell'abbonamento:

Questi controlli sono definiti e programmati centralmente dal server Sensu, e hanno un insieme definito di abbonati (potresti dire - un ruolo) e i client sensu diventano abbonati a questi ruoli (cioè abbonamento) tramite "abbonamento ” attributo.

Monitoriamo il servizio Apache utilizzando i "Controlli abbonamenti ” con l'intervallo di 60 secondi. Sul server sensu, crea un file di configurazione per "Controlli abbonamenti ” sul server Sensu.

raj@server:~$ sudo vi /etc/sensu/conf.d/apache_check.json

Inserisci i seguenti contenuti in .json sopra file.

Se il cliente è Ubuntu 16.04 / Debian 8 :

{
  "checks": {
    "apache-status": {
      "command": "check-process.rb -p apache2",
      "subscribers": [
        "web"
      ],
      "interval": 60    
    }
  }
}

Se il client è CentOS 7 / RHEL 7 :

{
  "checks": {
    "apache-status": {
      "command": "check-process.rb -p httpd",
      "subscribers": [
        "web"
      ],
      "interval": 60    
    }
  }
}

Riavvia il "sensu-server ” utilizzando il comando seguente.

raj@server:~$ sudo service sensu-server restart

Assicurati che la macchina client (es, debian.itzgeek.local ) è iscritto a “web “, in caso contrario, aggiorna il client.json file.

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

Il file dovrebbe apparire come sotto.

{
"client": {
  "name": "debian.itzgeek.local",
  "address": "10.128.0.4",
  "environment": "production",
  "subscriptions": [
    "web",
    "debian"
  ]
 }
}

I plug-in Sensu forniscono uno script eseguibile che può essere utilizzato come controlli sensu per monitorare le risorse di sistema, i servizi e lo stato delle applicazioni. Installa il plug-in Sensu per i controlli di processo "sensu-plugins-process-checks ” usando il comando gem sulla macchina client (debian.itzgeek.local ).

/opt/sensu/embedded/bin/gem install sensu-plugins-process-checks

Apri la dashboard di Uchiwa e attendi un po' di tempo, nuova spunta "stato-apache ” apparirà tra un minuto. Se il processo Apache non è in esecuzione o non è stato trovato, potresti ricevere un messaggio di evento critico come di seguito nella dashboard.

Se il processo Apache è in esecuzione, la dashboard potrebbe apparire come di seguito.

Spero che tu abbia ora capito come "Verifica dell'abbonamento ” lavorare a Sensu. Vedremo "Controlli autonomi ” nella prossima sezione.

Assegni autonomi:

Questi controlli sono definiti su un client Sensu (debian.itzgeek.local ) con l'attributo di controllo “autonomo ” impostato su “vero “. Qui, il client Sensu utilizza il proprio scheduler per la pianificazione dei controlli standalone e invia il risultato dei controlli al server Sensu.

Monitoriamo lo spazio su disco utilizzando i "Controlli autonomi ” con l'intervallo di 60 secondi. Sulla macchina client (debian.itzgeek.local ), installa il plug-in di spazio su disco Sensu utilizzando il comando seguente.

/opt/sensu/embedded/bin/gem install sensu-plugins-disk-checks

Crea un file di configurazione per il controllo del disco in "/etc/sensu/conf.d ” directory.

vi /etc/sensu/conf.d/disk_check.json

Utilizza il contenuto di seguito per questo controllo.

{
  "checks": {
    "disk-status": {
      "command": "check-disk-usage.rb -w 70 -c 90",
      "standalone": true,
      "interval": 60
   }
 }
}

Riavvia il servizio sensu-client.

service sensu-client restart

Apri la dashboard Uchiwa e controlla se il nuovo controllo è visibile sulla dashboard.

L'immagine sotto mostra che l'utilizzo del disco è in condizioni di avviso.

Interessato al monitoraggio del server:

LEGGI :Installa e configura Nagios su CentOS 7 / Ubuntu 16.04 / Debian 8

LEGGI :Installa Icinga2 su Ubuntu 16.04 / 14.04, Debian e Mint

LEGGI:​​Come installare Zabbix Server 3.2 su CentOS 7 / Ubuntu 16.04 / Debian 8

LEGGI :Installa Monitorix su CentOS 7 / Ubuntu 16.04 / Fedora 24 / Debian 8 – Strumento di monitoraggio del sistema leggero OpenSource

LEGGI :Netdata – Strumento di monitoraggio delle prestazioni in tempo reale per Linux

È tutto. Grazie per aver letto.


Debian
  1. Come aggiungere host Linux e Windows remoti a Icinga 2 per il monitoraggio

  2. Come aggiungere host Windows e Linux a Nagios Server per il monitoraggio

  3. Come aggiungere un host Linux remoto a Cacti per il monitoraggio

  4. Come inserire nella whitelist un IP in Fail2ban su Debian Linux

  5. Come aggiungere una connessione MySQL remota in Linux?

Come SSH in una directory particolare su Linux

Come installare lo strumento di monitoraggio del sistema Gtop in Linux

Come aggiungere un host Linux a Nagios Ubuntu Server – Parte 2

Come installare lo strumento di monitoraggio Pandora FMS in Ubuntu Linux

Come installare il client desktop remoto Remmina in Ubuntu Linux

Come installare lo strumento di monitoraggio Icinga 2 su Rocky Linux 8