Hur man installerar Icinga 2 och Icinga Web 2 på Ubuntu 16.04

Icinga 2 är ett allmänt använt system för övervakning av nätverksresurser med öppen källkod, och Icinga Web 2 är det officiella webbgränssnittet för Icinga 2.

I den här handledningen kommer jag att förklara hur man installerar båda på en Ubuntu 16.04-server.

Förutsättningar

  • En nyligen distribuerad Vultr Ubuntu 16.04-serverinstans.
  • En sudo-användare. För att lära dig mer om att skapa en sudo-användare på Ubuntu, se instruktioner om Debian i en annan Vultr-handledning .

Steg 1: Uppdatera systemet

Logga in från en SSH-terminal som sudo-användare och uppdatera sedan systemet till den senaste stabila statusen med hjälp av följande kommandon:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo shutdown -r now

Efter omstarten använder du samma sudo-användare för att logga in.

Steg 2: Installera Apache

Installera Apache med följande kommando:

sudo apt-get install apache2 -y

Ta bort standard Ubuntu Apache välkomstsida:

sudo rm /var/www/html/index.html

Av säkerhetsskäl bör du förbjuda Apache att exponera filer och kataloger i webbrotkatalogen /var/www/htmlför besökare:

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf

Starta Apache-tjänsten och sätt igång den vid uppstart:

sudo systemctl start apache2.service
sudo systemctl enable apache2.service

Steg 3: Konfigurera UFW-brandväggen

Som standard är UFW-brandväggen inaktiverad på en nyligen distribuerad Vultr Ubuntu 16.04-serverinstans. Använd följande kommandon för att aktivera UFW-brandväggen och för att tillåta inkommande trafik av SSH, HTTP och HTTPS:

sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in "Apache Full"
sudo ufw enable

Steg 4: Installera MariaDB

4.1) Använd följande kommando för att installera MariaDB:

sudo apt-get install mariadb-client mariadb-server -y

4.2) Starta MariaDB-tjänsten:

sudo systemctl start mysql.service
sudo systemctl enable mysql.service

4.3) Säkra installationen av MariaDB:

sudo /usr/bin/mysql_secure_installation

Under den interaktiva processen, svara på frågorna en efter en enligt nedan:

Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Obs : Ersätt <your-password>med ditt eget MySQL root-lösenord.

4.4) Ändra autentiseringsplugin för MySQL- rootanvändare:

sudo mysql -u root -p

Använd MariaDB root-lösenordet som du angav tidigare för att logga in.

I MySQL-skalet:

UPDATE mysql.user SET authentication_string=PASSWORD('<your-password>'), plugin='mysql_native_password' WHERE user='root';
FLUSH PRIVILEGES;
EXIT;

Obs : Ersätt <your-password>med ditt eget MySQL root-lösenord.

Steg 5: Installera PHP

Installera PHP 7.0 och flera tillägg för Icinga 2 och Icinga Web 2:

sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-gd php7.0-intl php7.0-xml php7.0-ldap php7.0-mysql php7.0-pgsql php-imagick -y

Installera den aktuella versionen av Composer:

cd
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

Obs : Ovanstående kommandon kan vara inaktuella i framtiden, så du bör alltid hämta den senaste versionen från Composers officiella webbplats .

För enkelhets skull, flytta Composer-skriptet composer.phartill /usr/local/binoch byt namn på det composer:

sudo mv ~/composer.phar /usr/local/bin/composer

Installera zip och packa upp:

sudo apt-get install zip unzip -y

Installera ZendFramework Db-komponenten med hjälp av Composer:

composer require zendframework/zend-db

Sedan måste du ställa in rätt tidszon för din maskin, vilket kan bestämmas från PHPs officiella webbplats . Till exempel, om din serverinstans finns i Vultr Los Angeles datacenter, då är tidszonsvärdet för den America/Los_Angeles.

Öppna PHP-konfigurationsfilen med vi-redigeraren:

sudo vi /etc/php/7.0/apache2/php.ini

Hitta raden:

;date.timezone =

Ändra det till:

date.timezone = America/Los_Angeles

Spara och avsluta:

:wq!

Starta om Apache-tjänsten för att sätta nya inställningar i kraft:

sudo systemctl restart apache2.service

Steg 6: Installera Icinga 2 och dess plugins

Ställ in Icinga APT-repo:

cd
wget -O - http://packages.icinga.org/icinga.key | sudo apt-key add -
sudo add-apt-repository 'deb http://packages.icinga.org/ubuntu icinga-xenial main'
sudo apt-get update

Installera Icinga 2 och flera plugins med hjälp av Icinga APT-repo:

sudo apt-get install icinga2 nagios-plugins -y

För att lära dig mer om Icinga 2-plugins, besök webbplatsen Monitoring Plugins Project .

Starta tjänsten Icinga 2:

sudo systemctl start icinga2.service
sudo systemctl enable icinga2.service

Som standard aktiverar Icinga 2-programmet tre funktioner: checker, mainlog och notification. Du kan bekräfta det med följande kommando:

sudo icinga2 feature list

Steg 7: Konfigurera Icinga 2 IDO-modulerna

7.1) Installera IDO-modulerna (Icinga Data Output) för MySQL

sudo apt-get install icinga2-ido-mysql

I Configuring icinga2-ido-mysqlguiden, när du får frågan om du vill aktivera Icinga 2:s ido-mysql-funktion, välj <No>. Vi kommer att aktivera den här funktionen manuellt senare.

När du får frågan om du vill konfigurera en databas för icinga2-ido-mysql, välj <No>. Istället kan du skapa en databas manuellt enligt beskrivningen i steg 7.2.

7.2) Skapa en databas för Icinga 2

Logga in på MySQL-skalet som root:

sudo mysql -u root -p

Använd MariaDB root-lösenordet du ställde in i steg 4 för att logga in.

Skapa en databas med namnet i MySQL-skalet icingaoch en databasanvändare som heter icingalösenordet icinga, och ge den här databasanvändaren privilegier på databasen.

CREATE DATABASE icinga;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';
FLUSH PRIVILEGES;
EXIT;

7.3) Importera Icinga 2 IDO-schemat

sudo mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql

När du uppmanas, mata in MariaDB root-lösenordet för att avsluta jobbet.

7.4) Aktivera IDO MySQL-modulen

sudo vi /etc/icinga2/features-available/ido-mysql.conf

Hitta dessa rader:

user = "icinga2",
password = "",
host = "localhost",
database = "icinga2"

Ändra dem enligt nedan:

user = "icinga"
password = "icinga"
host = "localhost"
database = "icinga"

Spara och avsluta:

:wq!

Aktivera ido-mysql-funktionen:

sudo icinga2 feature enable ido-mysql
sudo systemctl restart icinga2.service

Steg 8: Installera Icinga Web 2

8.1) Installera externt kommandorör

sudo icinga2 feature enable command
sudo systemctl restart icinga2.service
sudo icinga2 feature list

Innan du kan skicka kommandon till Icinga 2 med ett webbgränssnitt måste du lägga till www-dataanvändaren i icingacmdgruppen:

sudo groupadd icingacmd
sudo usermod -a -G icingacmd www-data

Använd följande kommando för att bekräfta din installation:

id www-data

8.2) Installera Icinga Web 2-paket

sudo apt-get install icingaweb2 icingaweb2-module-monitoring icingaweb2-module-doc icingacli -y

Peka Apache-webbrotkatalogen till en plats som anges av Icinga Web 2:

sudo icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public
sudo systemctl restart apache2.service

8.3) Installera Icinga Web 2-databas

sudo mysql -u root -p

CREATE DATABASE icingaweb2;
EXIT;

8.4) Ladda Icinga Web 2-databasschemat

mysql -u root -p icingaweb2 < /usr/share/icingaweb2/etc/schema/mysql.schema.sql

8.5) Generera en installationstoken för senare användning i Icinga Web 2-webbinstallationsguiden

sudo icingacli setup token create

8.6) Starta installationsguiden för Icinga 2 i webbgränssnittet

Peka din webbläsare till följande URL:

http://<your-serve-ip>/icingaweb2/setup

8.7) På välkomstsidan anger du inställningstoken som du genererade tidigare och klickar sedan på Nextknappen.

8.8) På sidan Moduler, välj en eller flera moduler som du vill aktivera (åtminstone Monitoringmodulen krävs) och klicka sedan på Nextknappen.

8.9) På sidan Krav, se till att alla obligatoriska objekt är uppfyllda och klicka sedan på Nextknappen.

8.10) På sidan Autentisering måste du välja autentiseringsmetod när du kommer åt Icinga Web 2. Här kan du välja Databaseoch sedan klicka på Nextknappen.

8.11) På sidan Databasresurs fyller du i alla obligatoriska fält enligt nedan och klickar sedan på Nextknappen.

  • Resursnamn*: icingaweb_db
  • Databastyp*: MySQL
  • Värd*: lokal värd
  • Databasnamn*: icingaweb2
  • Användarnamn*: rot
  • Lösenord*: <MariaDB-root-lösenord>

8.12) På sidan för autentisering av backend, använd standardnamnet för backend icingaweb2, klicka på Nextknappen för att gå vidare.

8.13) På administrationssidan, ställ in det första administrativa kontot för Icinga Web 2 (säg att det är icingaweb2admin) och lösenordet (säg att det är icingaweb2pass), och klicka sedan på Nextknappen.

8.14) På applikationskonfigurationssidan kan du justera applikations- och loggningsrelaterade konfigurationsalternativ för att passa dina behov. För närvarande kan du använda standardvärdena nedan och klicka på Nextknappen för att fortsätta.

  • Visa Stacktraces: Markerad
  • Användarinställningar Lagringstyp*: Databas
  • Loggningstyp*: Syslog
  • Loggningsnivå*: Fel
  • Applikationsprefix*: icingaweb2

8.15) På granskningssidan, dubbelkolla din konfiguration och klicka sedan på Nextknappen.

8.16) Klicka på Nextknappen på välkomstsidan för konfiguration av övervakningsmodul .

8.17) På sidan Monitoring Backend, använd standardnamnet för backend icingaoch backend-typ IDOoch klicka sedan på Nextknappen.

8.18) På sidan Övervakning av IDO-resurs, mata in IDO-databasdetaljer som du ställt in tidigare och klicka sedan på Nextknappen.

  • Resursnamn*: icinga_ido
  • Databastyp*: MySQL
  • Värd*: lokal värd
  • Databasnamn*: icinga
  • Användarnamn*: icinga
  • Lösenord*: icinga

8.19) På kommandotransportsidan, använd fortfarande dessa standardvärden som listas nedan. Klicka på Nextknappen för att gå vidare.

  • Transportnamn*: icinga2
  • Transporttyp*: Lokal kommandofil
  • Kommandofil*: /var/run/icinga2/cmd/icinga2.cmd

8.20) På sidan Övervakningssäkerhet använder du fortfarande standardvärdet:

  • Skyddade anpassade variabler: *pw*,*pass*,community

Klicka på Nextknappen för att gå till nästa sida.

8.21) På granskningssidan, dubbelkolla din konfiguration och klicka sedan på Finishknappen.

8.22) På Grattis! sida, klicka på Login to Icinga Web 2knappen för att hoppa till inloggningssidan för Icinga Web 2. Använd det administrativa kontot och lösenordet för Icinga Web 2 som du ställt in tidigare för att logga in. Utforska gärna Icinga Web 2-instrumentpanelen.

Det avslutar vår handledning. Tack för att du läste.

Lämna en kommentar

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.

DDOS-attacker: En kort översikt

DDOS-attacker: En kort översikt

Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.

Har du någonsin undrat hur hackare tjänar pengar?

Har du någonsin undrat hur hackare tjänar pengar?

Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...

Technological Singularity: A Distant Future of Human Civilization?

Technological Singularity: A Distant Future of Human Civilization?

När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.

Funktioner för Big Data Reference Architecture Layers

Funktioner för Big Data Reference Architecture Layers

Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.

Utveckling av datalagring – Infographic

Utveckling av datalagring – Infographic

Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer