如何在 Ubuntu 20.04 上安裝 Icinga2

Icinga2 是一個免費的、開源的、跨平台的監控工具,用 PHP 和 C++ 編寫。 它可以監控網絡資源、通知中斷、大型複雜環境、生成用於報告的性能數據。 Icinga 具有可擴展性和可擴展性。

Icinga 功能包括監控 SMTP、POP3、HTTP、NNTP、ping、CPU 負載、磁盤使用情況、交換機、路由器等。

Icinga 堆棧包括 冰加2 – 哪個監控服務器和 冰加網絡 2 – 是保持監控的網絡界面。

在本教程中學習如何 安裝 Icinga2Ubuntu 20.04 LTS. 我們還配置了 Icinga Web 2 界面。

第 1 步:安裝 LAMP 堆棧

Icinga 在 Web 服務器上運行,可從瀏覽器訪問。 所以第一步是安裝 LAMP 堆棧。 LAMP 是 操作系統 一個補丁 ariaDB/MySQL 和 生命值。 Apache 是網絡服務器, 瑪麗亞數據庫 是數據庫服務器和 PHP 是流行的服務器端腳本語言。

讓我們開始。 首先更新包列表:

$ sudo apt update

安裝 Apache web服務器,運行命令:

$ sudo apt install apache2

一次 Apache 安裝後,啟用它在啟動時自動啟動。

$ sudo systemctl enable apache2

然後開始 Apache 守護進程。

$ sudo systemctl start apache2

要確認 Web 服務器正在運行,請執行:

$ sudo systemctl status apache2

檢查Apache2狀態

繼續,我們將安裝 MariaDB 數據庫服務器和客戶端。

$ sudo apt install mariadb-server mariadb-client

安裝完成後,啟用 MariaDB 以在啟動時啟動。

$ sudo systemctl enable mariadb

然後啟動 MariaDB 守護進程。

$ sudo systemctl start mariadb

再次驗證 MariaDB 的狀態

$ sudo systemctl status mariadb

啟用啟動並確認 MariaDB 的狀態啟用啟動並確認 MariaDB 的狀態

要強化數據庫服務器,請運行腳本

$ sudo mysql_secure_installation

確保使用 root 密碼保護數據庫服務器。

強化 MariaDB 數據庫服務器強化 MariaDB 數據庫服務器

並對其餘提示回答“是”以保護數據庫服務器。

強化 MariaDB 數據庫服務器安全的 MariaDB 數據庫服務器

繼續,我們將安裝 PHP,它是 LAMP 堆棧的剩餘組件。 但首先,安裝顯示的依賴項。

$ sudo apt install software-properties-common

然後添加 OndeJ 存儲庫,該存儲庫提供最新版本的 PHP,目前為 PHP 8.0。 Icinga 需要 PHP 7.3 及更高版本,因此我們完全在所需的版本範圍內。

$ sudo add-apt-repository ppa:ondrej/php

添加存儲庫後,安裝 PHP 和安裝 Icinga 所需的依賴項

$ sudo apt install php php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip php-cli php-mysql php8.0-common php8.0-opcache php-gmp php-imagick

然後驗證安裝的 PHP 版本。

$ php -v

檢查 PHP 版本檢查 PHP 版本

需要進行一些修改。 編輯 php.ini 文件。

$ sudo vim /etc/php/8.0/apache2/php.ini

請務必設置 date.timezone 參數並將 cgi.fix_pathinfo 參數設置為 0。

date.timezone = Africa/Kolkata
cgi.fix_pathinfo=0

Save 更改並退出。

第 2 步:添加 Icinga2 存儲庫

下一步是在 Ubuntu 上安裝 Icinga2。 但是,由於 Icinga 的存儲庫未託管在 Ubuntu 存儲庫上,因此我們需要在本地手動添加存儲庫。

首先,添加Icinga的GPG密鑰

$ curl https://packages.icinga.com/icinga.key | apt-key add -

接下來,在 /etc/apt/sources.list.d 目錄。

$ sudo vim /etc/apt/sources.list.d/icinga-focal.list

然後添加以下行來定義 Ubuntu 將從哪裡下載 Icinga。

deb https://packages.icinga.com/ubuntu icinga-focal main
deb-src https://packages.icinga.com/ubuntu icinga-focal main

Save 並退出配置文件。

第 3 步:安裝 Icinga2

首先,首先更新包列表和存儲庫。

$ sudo apt update

然後 安裝 Icinga2 和監控插件。

$ sudo apt install icinga2 monitoring-plugins

安裝後,啟用 Icinga 監控工具。

$ sudo systemctl enable icinga2

然後啟動服務。

$ sudo systemctl start icinga2

然後檢查Icinga的運行狀態。

$ sudo systemctl status icinga2

檢查 Icinga 狀態檢查 Icinga 狀態

Icinga 正在按預期運行,這是一個好兆頭,表明我們正朝著正確的方向前進。

第 4 步:安裝 Icinga2 IDO MySQL 模塊

Icinga 數據輸出 (IDO) 功能將所有配置和狀態信息導出到數據庫中。 IDO 數據庫被 Icinga Web 2 用作數據後端。

要安裝 Icinga IDO 數據庫模塊,請運行以下命令:

$ sudo apt 安裝 icinga2-ido-mysql

安裝將開始,在此過程中,您會看到此彈出窗口,提示您啟用 Icinga 2 的 ido-mysql 功能。 選擇“是”選項,然後按 ENTER。

選擇是否啟用 Icinga 2 ido-mysql 功能選擇是否啟用 Icinga 2 ido-mysql 功能

icinga2-ido-mysql 模塊必須安裝和配置一個數據庫才能使用。 我們將在 MariaDB 數據庫服務器中手動配置數據庫,因此在提示是否自動創建時,選擇“‘ 並按 ENTER。

選擇否取消 icinga-ido-mysql 數據庫創建選擇否取消 icinga-ido-mysql 數據庫創建

下一步是為 icinga2-ido-mysql 模塊手動創建數據庫。

登錄到 MariaDB 外殼。

$ sudo mysql -u root -p

運行提供的命令以創建數據庫、數據庫用戶並將所有權限授予用戶。

> 創建數據庫 icinga2db; > 授予所有 icinga2db.* 到 ‘icinga2user’@’localhost’ IDENTIFIED BY ‘P@ssword’; > 同花順特權; > 退出;

數據庫就位後,使用顯示的命令導入 Icinga2 IDO 模式。 出現提示時,輸入 root 密碼並按 ENTER。

導入 IDO-mysql-schema導入 IDO-mysql-schema

第 5 步:啟用 IDO MySQL 模塊

IDO 包帶有名為 ido-mysql.conf 的配置文件。 我們需要訪問這個文件並修改數據庫連接細節。

因此,訪問配置文件。

$ sudo vim /etc/icinga2/features-available/ido-mysql.conf

使用您在上一步中指定的內容編輯用戶、密碼、主機和數據庫的數據庫詳細信息並保存更改

ido_mysql 的數據庫詳細信息ido_mysql 的數據庫詳細信息

此後,啟用 ido-mysql 模塊。

$ sudo icinga2 feature enable ido-mysql

啟用 ido-mysql 模塊啟用 ido-mysql 模塊

要使我們所做的所有更改生效,請重新啟動 Icinga2 服務。

$ sudo systemctl restart icinga2

第 6 步:安裝和設置 Icinga Web 2

下一步是安裝 Icinga Web 2 包。 這是一個功能強大且可擴展的 PHP 應用程序框架,為 Icinga 提供簡潔直觀的 IU。

安裝 冰加網絡 2 與 Icinga2 客戶端和 PHP 模塊一起運行命令:

$ sudo apt install icingaweb2 icingacli libapache2-mod-php

安裝後,為 Icinga Web 2 創建一個數據庫,如下所示。

$ sudo mysql -u root -p

定義數據庫和數據庫用戶並分配權限並保存更改。

> 創建數據庫 icingaweb2; > 授予所有 icingaweb2.* 到 ‘icingaweb2user’@’localhost’ IDENTIFIED BY ‘P@ssword’; > 同花順特權; > 退出;

下一步涉及使用 Icinga2 Web 嚮導安裝程序設置 Icinga2。 這需要一個令牌,因此使用 Icinga 客戶端生成令牌。

$ sudo icingacli setup token create

將此令牌複製並粘貼到某處。

使用 Icinga CLI 生成令牌使用 Icinga CLI 生成令牌

如果您清除屏幕或忘記令牌,請不要擔心。 您可以通過運行在其他時間點顯示它:

$ sudo icingacli setup token show

步驟 7:在瀏覽器上設置 Icinga Web 2

要訪問 Icinga2 Web 安裝程序,請瀏覽以下地址:

https://server-ip/icingaweb2/setup

您將看到歡迎頁面。 粘貼您創建的令牌,然後按“下一步”。

歡迎使用 Icinga Web 2 嚮導歡迎使用 Icinga Web 2 嚮導

下一頁顯示了所有可以激活的模塊。 默認情況下選擇“監控”,現在就足夠了。 隨意激活其他人。

選擇 Icinga2 模塊選擇 Icinga2 模塊

完成後,點擊 ‘下一個‘ 按鈕。

選擇首選模塊,然後單擊下一步選擇首選模塊,然後單擊下一步

下一頁顯示了所有已啟用的 PHP 模塊。 當我們安裝了所需的模塊時,您不應收到錯誤或警告。

啟用 Icinga 的 PHP 模塊啟用 Icinga 的 PHP 模塊

只需向下滾動並單擊下一步按鈕。

單擊下一步 PHP 模塊滿意 Icinga Web 2單擊下一步 PHP 模塊滿意 Icinga Web 2

對於身份驗證類型,選擇“數據庫‘ 然後點擊 ‘下一個‘。

選擇身份驗證類型 Icinga Web 2選擇身份驗證類型 Icinga Web 2

接下來,輸入您在步驟 4 中為 Icinga 創建的數據庫詳細信息。

Enter  Icinga 的數據庫詳細信息 Enter Icinga 的數據庫詳細信息

在底部點擊 ‘驗證配置‘ 以檢查提供的數據庫詳細信息是否正確。

驗證數據庫配置驗證數據庫配置

如果一切按計劃進行,您將收到配置已成功驗證的通知。

Icinga 配置已成功驗證Icinga 配置已成功驗證

在下一步中,只需單擊下一步即可接受默認選擇 Icingaweb2 作為身份驗證後端類型。

Icinga 身份驗證後端Icinga 身份驗證後端

接下來,創建您將用於登錄 Icinga Web GUI 的 Admin 用戶。

為 Icinga 創建管理員用戶為 Icinga 創建管理員用戶

在下一步中,只需按 ENTER 即可接受默認的應用程序配置詳細信息。

接受默認的應用程序配置詳細信息。接受默認的應用程序配置詳細信息。

至此,Icinga2已經配置成功。 查看所做的所有設置。 如果一切看起來不錯,向下滾動並點擊下一步按鈕。

查看 Icinga2 網絡設置查看 Icinga2 網絡設置

下一步需要您配置監控模塊。 這是為您提供強大過濾功能並幫助您跟踪事件的核心模塊。 因此,單擊下一步按鈕。

Icinga2監控模塊配置Icinga2監控模塊配置

在“監控 IDO 資源”步驟中,填寫在步驟 6 中創建的 Icinga2 Web 的數據庫詳細信息。

監控IDO資源為Icinga2填寫數據庫詳細信息監控IDO資源為Icinga2填寫數據庫詳細信息

一直向下滾動並單擊“驗證配置‘ 以確認設置是否正常。

驗證模塊配置驗證模塊配置

如果所有設置都正常,您應該確認配置已成功驗證。

模塊配置驗證成功。模塊配置驗證成功

對於命令傳輸,選擇本地命令文件並單擊下一步。

Icinga 命令傳輸

對於監控安全,只需按下一步接受默認值。

Icinga 監控安全

最後查看所有模塊配置設置。

查看所有模塊配置設置查看所有模塊配置設置

如果一切看起來都不錯。 單擊“完成”按鈕,否則返回並編輯一些設置。

單擊完成以完成 Icinga 安裝單擊完成以完成 Icinga 安裝

您將收到 Icinga Web 2 已成功設置的確認信息。 要登錄,請單擊“登錄到 Icinga Web 2”按鈕的鏈接。

Icinga Web 2 成功創建Icinga Web 2 成功創建

這會將您帶到登錄屏幕。 輸入 Icinga 登錄憑據,然後按登錄按鈕。

Icinga登錄界面

登錄後,您將獲得提供的儀表板。

結論

在本教程中,我們學習瞭如何在 Ubuntu 20.04 上安裝 Icinga2 和 Icinga Web 2。 感謝您的閱讀,請在下面的評論部分告訴我們您的建議。