如何在Ubuntu 16.04上安装Icinga 2和Icinga Web 2

Icinga 2是广泛使用的开源网络资源监视系统,而Icinga Web 2是Icinga 2的官方Web界面。

在本教程中,我将说明如何在Ubuntu 16.04服务器上安装它们。

先决条件

  • 新部署的Vultr Ubuntu 16.04服务器实例。
  • sudo用户。要了解有关在Ubuntu上创建sudo用户的更多信息,请参阅另一本Vultr教程中有关Debian的说明。

步骤1:更新系统

以sudo用户身份从SSH终端登录,然后使用以下命令将系统更新为最新的稳定状态:

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

重新引导后,使用相同的sudo用户登录。

步骤2:安装Apache

使用以下命令安装Apache:

sudo apt-get install apache2 -y

删除默认的Ubuntu Apache欢迎页面:

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

为了安全起见,应禁止Apache将Web根目录中的文件和目录暴露/var/www/html给访问者:

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

启动Apache服务,并在启动时启动它:

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

步骤3:配置UFW防火墙

默认情况下,在新部署的Vultr Ubuntu 16.04服务器实例上禁用UFW防火墙。使用以下命令启用UFW防火墙并允许SSH,HTTP和HTTPS的入站流量:

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

步骤4:安装MariaDB

4.1)使用以下命令安装MariaDB:

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

4.2)启动MariaDB服务:

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

4.3)确保MariaDB的安装安全:

sudo /usr/bin/mysql_secure_installation

在交互过程中,如下一个一个地回答问题:

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

注意<your-password>用您自己的MySQL root密码替换。

4.4)修改MySQL root用户的身份验证插件:

sudo mysql -u root -p

使用您先前设置的MariaDB root密码登录。

在MySQL Shell中:

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

注意<your-password>用您自己的MySQL root密码替换。

步骤5:安装PHP

安装PHP 7.0和Icinga 2和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

安装当前版本的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');"

注意:上面的命令将来可能已经过时,因此您应该始终从Composer官方网站上获取最新版本。

为了方便起见,将Composer脚本composer.phar移至/usr/local/bin并重命名composer

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

安装压缩和解压缩:

sudo apt-get install zip unzip -y

使用Composer安装ZendFramework Db组件:

composer require zendframework/zend-db

然后,您需要为您的计算机设置正确的时区,可以从PHP官方网站确定。例如,如果您的服务器实例位于Vultr Los Angeles数据中心中,则其时区值为America/Los_Angeles

使用vi编辑器打开PHP配置文件:

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

找到这行:

;date.timezone =

更改为:

date.timezone = America/Los_Angeles

保存并退出:

:wq!

重新启动Apache服务,以使新设置生效:

sudo systemctl restart apache2.service

步骤6:安装Icinga 2及其插件

设置Icinga APT存储库:

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

使用Icinga APT存储库安装Icinga 2和几个插件:

sudo apt-get install icinga2 nagios-plugins -y

要了解有关Icinga 2插件的更多信息,请访问Monitoring Plugins Project网站。

启动Icinga 2服务:

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

默认情况下,Icinga 2程序将启用三个功能:检查器,主日志和通知。您可以使用以下命令来确认:

sudo icinga2 feature list

步骤7:设置Icinga 2 IDO模块

7.1)安装MySQL的IDO(Icinga数据输出)模块

sudo apt-get install icinga2-ido-mysql

Configuring icinga2-ido-mysql向导中,当询问您是否要启用Icinga 2的ido-mysql功能时,选择<No>。我们将在以后手动启用此功能。

当询问您是否要为icinga2-ido-mysql配置数据库时,选择<No>。相反,您可以按照步骤7.2中的说明手动创建数据库。

7.2)为Icinga 2创建数据库

以root用户身份登录到MySQL Shell:

sudo mysql -u root -p

使用在步骤4中设置的MariaDB root密码登录。

在MySQL Shell中,创建一个名为的数据库icinga和一个名为icingapassword 的数据库用户icinga,然后将该数据库的特权授予该数据库用户。

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)导入Icinga 2 IDO模式

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

出现提示时,输入MariaDB根密码以完成作业。

7.4)启用IDO MySQL模块

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

找到这些行:

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

如下修改它们:

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

保存并退出:

:wq!

启用ido-mysql功能:

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

步骤8:安装Icinga Web 2

8.1)设置外部命令管道

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

在使用Web界面将命令发送到Icinga 2之前,需要将www-data用户添加到icingacmd组中:

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

使用以下命令来确认您的设置:

id www-data

8.2)安装Icinga Web 2软件包

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

将Apache Web根目录指向Icinga Web 2指定的位置:

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

8.3)设置Icinga Web 2数据库

sudo mysql -u root -p

CREATE DATABASE icingaweb2;
EXIT;

8.4)加载Icinga Web 2数据库架构

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

8.5)生成安装令牌,以供以后在Icinga Web 2 Web安装向导中使用

sudo icingacli setup token create

8.6)在Web界面中启动Icinga 2安装向导

将您的Web浏览器指向以下URL:

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

8.7)在“欢迎”页面上,输入您之前生成的安装令牌,然后单击Next按钮。

8.8)在“模块”页面上,选择一个或多个要启用的Monitoring模块(至少,该模块是必需的),然后单击Next按钮。

8.9)在“需求”页面上,确保满足每个必需的项目,然后单击Next按钮。

8.10)在“身份验证”页面上,访问Icinga Web 2时需要选择身份验证方法。在这里,您可以选择Database,然后单击Next按钮。

8.11)在“数据库资源”页面上,填写以下所有必填字段,然后单击Next按钮。

  • 资源名称*:icingaweb_db
  • 数据库类型*:MySQL
  • 主机*:localhost
  • 数据库名称*:icingaweb2
  • 用户名*:root
  • 密码*:<MariaDB-root-password>

8.12)在“身份验证后端”页面上,使用默认的后端名称icingaweb2,单击Next按钮继续。

8.13)在“管理”页面上,设置第一个Icinga Web 2管理帐户(例如,为icingaweb2admin)和密码(例如,为icingaweb2pass),然后单击Next按钮。

8.14)在“应用程序配置”页面上,您可以调整与应用程序和日志记录相关的配置选项,以适应您的需求。现在,您可以使用下面列出的默认值,然后单击Next按钮继续。

  • 显示堆栈跟踪:已选中
  • 用户首选项存储类型*:数据库
  • 日志记录类型*:Syslog
  • 记录级别*:错误
  • 应用前缀*:icingaweb2

8.15)在“检查”页面上,仔细检查您的配置,然后单击Next按钮。

8.16)在“监视模块配置欢迎”页面上,单击Next按钮。

8.17)在“监视后端”页面上,使用默认的后端名称icinga和后端类型IDO,然后单击Next按钮。

8.18)在“监视IDO资源”页面上,输入您之前设置的IDO数据库详细信息,然后单击Next按钮。

  • 资源名称*:icinga_ido
  • 数据库类型*:MySQL
  • 主机*:localhost
  • 数据库名称*:icinga
  • 用户名*:icinga
  • 密码*:icinga

8.19)在“命令传输”页面上,仍使用下面列出的这些默认值。单击Next按钮继续。

  • 运输名称*:icinga2
  • 传输类型*:本地命令文件
  • 命令文件*:/var/run/icinga2/cmd/icinga2.cmd

8.20)在“监视安全性”页面上,仍使用默认值:

  • 受保护的自定义变量:* pw *,* pass *,社区

点击Next按钮进入下一页。

8.21)在检查页面上,仔细检查您的配置,然后单击Finish按钮。

8.22)恭喜!页面上,单击Login to Icinga Web 2按钮跳转到Icinga Web 2登录页面。使用您之前设置的Icinga Web 2管理帐户和密码登录。随时浏览Icinga Web 2仪表板。

我们的教程到此结束。感谢您的阅读。



Leave a Comment

如何在CentOS 7上安装Oxwall

如何在CentOS 7上安装Oxwall

Oxwall是一个开源社交网络软件平台,可用于免费构建自定义社交网站(SNS)。在这篇文章中,

如何在Ubuntu 16.10上安装Review Board

如何在Ubuntu 16.10上安装Review Board

使用其他系统?Review Board是一个免费且开源的工具,用于检查源代码,文档,图像等。这是基于网络的软件战

如何在Debian 9 LAMP VPS上安装October 1.0 CMS

如何在Debian 9 LAMP VPS上安装October 1.0 CMS

使用其他系统?October 1.0 CMS是基于Laravel框架构建的简单,可靠,免费和开源的内容管理系统(CMS)

如何使用Ubuntu 15.10在Vultr服务器上安装Xubuntu桌面

如何使用Ubuntu 15.10在Vultr服务器上安装Xubuntu桌面

Xubuntu是XFCE + Ubuntu!XFCE是Ubuntu的轻量级GUI /桌面。Vultr服务器需要其他依赖项,默认情况下未安装这些依赖项。

如何在Debian 9上安装Monica

如何在Debian 9上安装Monica

使用其他系统?Monica是一个开源的个人关系管理系统。可以将其视为CRM(销售团队使用的一种流行工具

如何使用SSL和安全密码保护由Nginx驱动的网站

如何使用SSL和安全密码保护由Nginx驱动的网站

简介SSL(代表安全套接字层)及其后续版本TLS(代表传输层安全性)是需要加密的加密协议。

如何在Fedora 26 LAMP VPS上安装MODX Revolution

如何在Fedora 26 LAMP VPS上安装MODX Revolution

使用其他系统?MODX Revolution是一种快速,灵活,可扩展,免费和开源的企业级内容管理系统(CMS),由

如何在Ubuntu 17.04上安装JuliaLang

如何在Ubuntu 17.04上安装JuliaLang

朱莉娅(Julia)通常称为JuliaLang,是一种用于数值计算的编程语言。Julia的速度和C一样快,但是却不牺牲可读性

在Ubuntu 14.04上安装Ruby on Rails

在Ubuntu 14.04上安装Ruby on Rails

Ruby on Rails(RoR)是用Ruby编程语言编写的框架,可让您将Ruby与HTML,CSS和类似的程序结合使用。

在Fedora 28上安装Anchor CMS

在Fedora 28上安装Anchor CMS

使用其他系统?Anchor是用PHP编写的轻量级开源博客CMS。Anchors源代码托管在GitHub上。本指南将向您展示

将Debian 9升级到Debian 10

将Debian 9升级到Debian 10

简介Debian 10(Buster)是Debian 9(Stretch)的后继产品。它于2019年7月6日发布。在本教程中,我们将升级一个existin

如何管理Linux服务器时区设置

如何管理Linux服务器时区设置

在Linux服务器上正确设置日期和时间非常重要。您的服务器日志和其他重要信息都将反映时区

如何在Ubuntu 16.04上安装Taiga项目管理工具

如何在Ubuntu 16.04上安装Taiga项目管理工具

使用其他系统?Taiga是用于项目管理的免费和开源应用程序。与其他项目管理工具不同,Taiga使用增量

在Ubuntu上配置Nagios:第1部分-Nagios服务器

在Ubuntu上配置Nagios:第1部分-Nagios服务器

本文是有关在Ubuntu 14.04上安装和配置Nagios的2部分系列文章的一部分。第1部分:Nagios服务器第2部分:远程主机概述Nagio

如何访问Vultr VPS

如何访问Vultr VPS

Vultr提供了几种不同的方式来访问VPS以进行配置,安装和使用。访问凭据VPS ar的默认访问凭据

如何在Debian 9上安装Grav CMS

如何在Debian 9上安装Grav CMS

使用其他系统?Grav是用PHP编写的开源平面文件CMS。Grav源代码公开托管在GitHub上。本指南将向您展示如何

如何在Fedora 26 LAMP VPS上安装Pagekit 1.0 CMS

如何在Fedora 26 LAMP VPS上安装Pagekit 1.0 CMS

使用其他系统?Pagekit 1.0 CMS是一个美观,模块化,可扩展,轻量级,免费和开源的内容管理系统(CMS),具有

如何在Ubuntu 16.04 LAMP VPS上安装BigTree CMS

如何在Ubuntu 16.04 LAMP VPS上安装BigTree CMS

使用其他系统?BigTree CMS 4.2是一种快速,轻量级,免费和开源的企业级内容管理系统(CMS),具有广泛的功能。

如何在CentOS 7上设置vsFTPd

如何在CentOS 7上设置vsFTPd

FTP是用于通过Internet传输文件的有用协议,本指南将向您展示如何设置vsFTPd(非常安全的文件传输协议守护程序)o

在Debian / Ubuntu中使用Rsync设置文件镜像

在Debian / Ubuntu中使用Rsync设置文件镜像

简介如果您经营一个重要的网站,则最好将文件镜像到辅助服务器。如果您的主服务器有网络

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息