Sensu je bezplatný a open source nástroj pro sestavení monitorovacího systému, který potřebujete. Je napsán v Ruby, který používá RabbitMQ ke zpracování zpráv a Redis k ukládání dat. Sensu poskytuje rámec pro monitorování infrastruktury a stavu aplikací. Sensu podporuje řadu platforem, jako jsou IBM AIX, Ubuntu, Debian, RedHat, CentOS, FreeBSD, Mac OS, Solaris, Windows a mnoho dalších. Sensu umožňuje organizacím vytvářet komplexní řešení monitorování, která splňují jejich jedinečné obchodní požadavky. Sensu přichází se stovkami pluginů, které poskytují nativní instrumentaci pro nástroje a služby, na kterých závisí vaše podnikání, včetně webového serveru a proxy, databáze, front zpráv, agregace protokolů, indexování, vyhledávání, mezipaměti, síťových a systémových zdrojů, správy konfigurace a zjišťování , General Purpose, Chef, Clack a mnoho dalších.
V tomto tutoriálu si projdeme krok za krokem instalaci Redis, RabbitMQ a Sensu na Ubuntu 16.04.
Požadavky
- Na vašem systému je nainstalován server Ubuntu 16.04.
- Na vašem systému je nastaven uživatel bez oprávnění root s právy sudo.
- Statická IP adresa 192.168.0.227 nakonfigurovaná ve vašem systému.
Aktualizovat systém
Před spuštěním se doporučuje aktualizovat systém na nejnovější stabilní verzi. Svůj systém můžete aktualizovat spuštěním následujícího příkazu:
sudo apt-get update -y
sudo apt-get upgrade -y
Jakmile je váš systém aktualizován, restartujte systém, abyste použili všechny aktualizace, pomocí následujícího příkazu:
sudo reboot
Po restartu se přihlaste do systému pomocí uživatele sudo a přejděte k dalšímu kroku.
Instalace a konfigurace RabbitMQ
Než začnete, RabbitMQ běží na Erlang, takže budete muset nainstalovat Erlang do vašeho systému.
Nejprve přidejte úložiště Erlang a veřejný klíč Erlang do svého seznamu důvěryhodných klíčů pomocí následujícího příkazu:
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | sudo apt-key add -
Dále aktualizujte úložiště pomocí následujícího příkazu:
sudo apt-get update -y
Jakmile je úložiště aktualizováno, nainstalujte Erlang spuštěním následujícího příkazu:
sudo apt-get install socat erlang-nox -y
Dále si budete muset stáhnout a nainstalovat nejnovější verzi úložiště RabbitMQ do vašeho systému. Můžete to provést spuštěním následujícího příkazu:
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server_3.6.10-1_all.deb
sudo dpkg -i rabbitmq-server_3.6.10-1_all.deb
Jakmile je úložiště nainstalováno, aktualizujte úložiště pomocí následujícího příkazu:
sudo apt-get update -y
Nakonec nainstalujte RabbitMQ server spuštěním následujícího příkazu:
sudo apt-get install rabbitmq-server -y
Po dokončení instalace spusťte službu RabbitMQ a povolte její spuštění při spouštění pomocí následujícího příkazu:
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server
Dále budete muset vytvořit RabbitMQ vhost a uživatele pro Sensu. Můžete to provést spuštěním následujícího příkazu:
sudo rabbitmqctl add_vhost /sensu
sudo rabbitmqctl add_user sensu your-password
sudo rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"
Jakmile budete hotovi, můžete pokračovat v instalaci serveru Redis.
Instalovat Redis Server
Sensu používá k ukládání dat server Redis. Ve výchozím nastavení je Sensu k dispozici v úložišti Ubuntu. Server Redis můžete nainstalovat spuštěním následujícího příkazu:
sudo apt-get install redis-server apt-transport-https -y
Po dokončení instalace spusťte server Redis a povolte jeho spuštění při spuštění spuštěním následujícího příkazu:
sudo systemctl start Redis-server
sudo systemctl enable Redis-server
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Instalace a konfigurace Sensu
Ve výchozím nastavení není Sensu k dispozici v úložišti Ubuntu. Budete tedy muset do svého systému přidat veřejný klíč a úložiště.
Nejprve přidejte klíč GPG pomocí následujícího příkazu:
wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg | sudo apt-key add -
Dále přidejte úložiště Sensu vytvořením souboru sensu.list v adresáři /etc/apt/sources.list.d pomocí následujícího příkazu:
sudo nano /etc/apt/sources.list.d/sensu.list
Přidejte následující řádek:
deb https://sensu.global.ssl.fastly.net/apt sensu main
Uložte soubor a aktualizujte úložiště pomocí následujícího příkazu:
sudo apt-get update -y
Jakmile je úložiště aktualizováno, nainstalujte Sensu pomocí následujícího příkazu:
sudo apt-get install sensu -y
Po instalaci Sensu budete muset nakonfigurovat Sensu pro RabbitMQ a Redis. Ve výchozím nastavení načte Sensu konfiguraci z adresáře /etc/sensu/conf.d/. Takže budete muset vytvořit konfigurační soubory pro RabbitMQ, Redi a Api.
Nejprve vytvořte soubor rabbitmq.json v adresáři /etc/sensu/conf.d spuštěním následujícího příkazu:
sudo nano /etc/sensu/conf.d/rabbitmq.json
Přidejte následující řádky pro připojení instance RabbitMQ:
{ "rabbitmq": { "host": "127.0.0.1", "port": 5672, "vhost": "/sensu", "user": "sensu", "password": "your-password" } }
Po dokončení uložte a zavřete soubor.
Dále vytvořte soubor redis.json pomocí následujícího příkazu:
sudo nano /etc/sensu/conf.d/redis.json
Přidejte následující řádky, abyste zahrnuli informace o připojení pro Sensu pro přístup k Redis:
{ "redis": { "host": "127.0.0.1", "port": 6379 } }
Po dokončení uložte a zavřete soubor.
Dále vytvořte soubor api.json, který bude obsahovat informace o připojení pro Sensu pro přístup ke službě API spuštěním následujícího příkazu.
sudo nano /etc/sensu/conf.d/api.json
Přidejte následující řádky:
{ "api": { "host": "localhost", "bind": "0.0.0.0", "port": 4567 } }
Po dokončení uložte a zavřete soubor, poté můžete přejít k dalšímu kroku.
Instalovat a konfigurovat Sensu Dashboard
Ve výchozím nastavení se Sensu nedodává s Dashboardem pro monitorování Sensu přes webové rozhraní.
Budete tedy muset do svého systému nainstalovat open source Dashboard Uchiwa. Ve výchozím nastavení není Uchiwa k dispozici v úložišti Ubuntu. Takže budete muset do svého systému přidat úložiště Uchiwa.
Nejprve přidejte veřejný klíč pro Uchiwa pomocí následujícího příkazu:
wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg | sudo apt-key add -
Dále přidejte úložiště Uchiwa vytvořením souboru uchiwa..list v adresáři /etc/apt/sources.list.d pomocí následujícího příkazu:
sudo nano /etc/apt/sources.list.d/uchiwa.list
Přidejte následující řádky:
deb https://sensu.global.ssl.fastly.net/apt sensu main
Uložte soubor a poté aktualizujte úložiště pomocí následujícího příkazu:
sudo apt-get update -y
Jakmile je úložiště aktualizováno, nainstalujte Uchiwa pomocí následujícího příkazu:
sudo apt-get install uchiwa -y
Jakmile je Uchiwa nainstalována, vytvořte konfigurační soubor pro Uchiwa pomocí následujícího příkazu:
sudo nano /etc/sensu/conf.d/uchiwa.json
Přidejte následující řádky:
{ "sensu": [ { "name": "Sensu", "host": "localhost", "port": 4567, "timeout": 10 } ], "uchiwa": { "host": "0.0.0.0", "port": 3000, "refresh": 10 } }
Po dokončení uložte a zavřete soubor.
Nakonec restartujte službu Sensu a Uchiwa a povolte jim spuštění při spouštění pomocí následujícího příkazu:
sudo systemctl start sensu-server
sudo systemctl enable sensu-server
sudo systemctl start sensu-api
sudo systemctl enable sensu-api
sudo systemctl start sensu-client
sudo systemctl enable sensu-client
sudo systemctl start uchiwa
sudo systemctl enable uchiwa
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Přístup k řídicímu panelu Sensu
Před přístupem k řídicímu panelu Sensu budete muset povolit port 3000 přes firewall UFW.
Nejprve nainstalujte UFW firewall spuštěním následujícího příkazu:
sudo apt-get install ufw -y
Po instalaci UFW povolte službu UFW pomocí následujícího příkazu:
sudo ufw enable
Dále povolte port 3000 přes firewall UFW pomocí následujícího příkazu:
sudo ufw allow 3000
Jakmile je firewall nakonfigurován, otevřete webový prohlížeč a zadejte adresu URL http://192.168.0.227:3000, měla by se zobrazit následující stránka:
Dále klikněte na ikonu datového centra, měli byste vidět instanci serveru Sensu takto:
Dále budete muset přidat klienta pro sledování samotného serveru Sensu. Můžete to udělat vytvořením souboru client.json:
sudo nano /etc/sensu/conf.d/client.json
Přidejte následující řádky:
{ "client": { "name": "sensu-server", "address": "127.0.0.1", "environment": "management", "subscriptions": [ "dev", "ubuntu" ], "socket": { "bind": "127.0.0.1", "port": 3030 } } }
Po dokončení uložte a zavřete soubor, poté restartujte službu sensu-client, abyste použili tyto změny:
sudo systemctl restart sensu-client
Nakonec zkontrolujte stav klienta kliknutím na ikonu klienta následovně:
Závěr
Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali Sensu server na serveru Ubuntu 16.04. Nyní můžete snadno přidat další klienty podle svých potřeb. Pokud máte nějaké dotazy, neváhejte mě komentovat.