Icinga 2是一个流行的开源网络资源监控系统,Icinga Web 2是Icinga 2的Web界面,本文将介绍如何在CentOS 7服务器上安装它们。
前提条件一个新的CentOS 7服务器实例,
步骤1:更新系统sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
重新引导后,使用相同的sudo用户登录。
步骤2:安装Apache
使用YUM安装Apache :sudo yum install httpd -y
禁用预设置Apache欢迎页面:sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
禁止Apache将web root目录/var/www/html中的文件和目录公开给访问者:sudo sed -i"s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
启动Apache服务并在开机时启动它:sudo systemctl start httpd.service
sudo systemctl enable httpd.service
步骤3:安装MariaDB
使用YUM安装MariaDB :sudo yum install mariadb mariadb-server -y
启动MariaDB服务:sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
保护MariaDB的安装:sudo /usr/bin/mysql_secure_installation
在该进程中,按如下所示回答屏幕上的问题:Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password:
Re-enter new 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
步骤4:安装PHP
按照ICINGA 2和ICINGA Web 2的要求安装PHP和必要的PHP扩展:sudo yum install php php-gd php-intl php-ldap php-ZendFramework php-ZendFramework-Db-Adapter-Pdo-Mysql -y
然后你需要为你的机器设置适当的时区,这可以从PHP官方网站获取 ,在我的服务器实例中,时区值是"america/los_angeles"
使用vi编辑器打开PHP配置文件:sudo vi/etc/php.ini
查找行:;date.timezone =
将其改为:date.timezone = America/Los_Angeles
保存和退出::wq!
重新启动Apache服务,以便使新配置生效:sudo systemctl restart httpd.service
步骤5安装ICINGA 2及其插件
在CentOS 7上你可以使用Icinga YUM repo安装Icinga 2及它插件:sudo rpm --import http://packages.icinga.org/icinga.key
sudo rpm -i https://packages.icinga.org/epel/7/release/noarch/icinga-rpm-release-7-1.el7.centos.noarch.rpm
sudo yum install icinga2 nagios-plugins-all -y
你可以从监控Plugins Project了解有关这些插件的更多信息 。
启动ICINGA 2服务:sudo systemctl start icinga2.service
sudo systemctl enable icinga2.service
默认情况下,Icinga 2程序将启用三个功能: checker ,mainlog ,和notification,可以使用以下命令验证:sudo icinga2 feature list
步骤6:设置Icinga 2个IDO模块
6.1 )为MySQL安装(Icinga Data Output)模块sudo yum install icinga2-ido-mysql -y
6.2为Icinga 2创建一个数据库
以root的形式登录到MySQL shell :mysql -u root -p
使用在步骤3中设置的MariaDB根密码登录。
创建名为"icinga"的数据库和名为icinga且密码为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;
6.3导入ICINGA 2IDO架构mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql
出现提示时,输入MariaDB root密码以完成作业。
6.4 )启用模块sudo vi /etc/icinga2/features-available/ido-mysql.conf
查找以下行://user ="icinga"
//password ="icinga"
//host ="localhost"
//database ="icinga"
按如下方式取消注释:user ="icinga"
password ="icinga"
host ="localhost"
database ="icinga"
保存和退出::wq!
启用功能:sudo icinga2 feature enable ido-mysql
sudo systemctl restart icinga2.service
步骤7安装Icinga Web 2
7.1 )设置外部命令管道sudo icinga2 feature enable command
sudo systemctl restart icinga2.service
在使用Web界面向Icinga 2发送命令之前,需要将"apache"用户添加到icingacmd组,sudo usermod -a -G icingacmd apache
你可以使用以下命令验证修改:id apache
7.2安装icingaweb2和icingacli RPM包sudo yum install icingaweb2 icingacli -y
将Apache Web root目录指向Icinga Web 2的位置:sudo icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public
sudo systemctl restart httpd.service
7.3 )生成设置令牌供以后在web界面中使用sudo icingacli setup token create
7.4 )修改防火墙规则以允许网络访问sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
7.5在Web界面中启动ICINGA 2安装向导
将你的网页浏览器指向以下网址:http:///icingaweb2/setup
7.6 )在欢迎页面上,输入你先前生成的设置标记,然后单击"下一步"按钮。
7.7 )在模块页面上,选择要启用(至少需要监控模块)的模块,然后单击"下一步"按钮。
7.8 )在需求页面上,确保满足每个需求项,然后单击"下一步"按钮。
7.9在认证页面上,需要选择在访问Icinga Web 2.时身份验证方法,你可以选择Database然后,单击"下一步"按钮。
7.10 )在数据库资源页上,按如下所示填写所有必需的字段,然后单击"下一步"按钮。资源名称*:icingaweb_db
数据库类型*:MySQL
数据库名称*:icingaweb2
Username* :root
Password* :
7.11 )在认证后台页面,使用默认的后台名称icingaweb2,点击Next按钮继续。
7.12)在Administration页面上,设置第一个Icinga Web 2管理帐户(icingaweb2admin)和密码(icingaweb2pass),然后单击"Next "按钮。
7.13)在"应用程序配置"页面上,你可以调整与应用程序和日志记录相关的配置选项以满足你的需求。现在,你可以使用下面列出的默认值,并单击"下一步"按钮进行操作。Show Stacktraces:选中
用户首选项存储类型*:数据库
记录类型*:Syslog
日志记录级别*:错误
应用程序前缀*:icingaweb2
7.14 )在检查页面上,双击你的配置,然后单击Next按钮。
7.15 )在监视模块配置欢迎页面上,单击Next按钮。
7.16 )在监视后台页面上,使用默认的后台名称icinga和后台类型IDO,然后单击"下一步"按钮。
7.17 )在监视"下一步"资源页面上,输入先前设置的输入数据库详细信息,然后单击按钮。资源名称*:ICINGA UIDO
数据库类型*:MySQL
数据库名称*:ICINGA
Username* :icinga
Password* :icinga
7.18 )在命令传输页上,仍然使用下面列出的这些默认值,单击Next按钮以移动。Transport Name*:ICINGA2
Transport Type*本地命令文件
Command File* : /var/run/icinga2/cmd/icinga2.cmd
7.19 )在监视安全性页面上,仍然使用默认值:受保护的自定义变量:*pw *,*pass *,community,
单击"下一步"按钮转到下一页。
7.20 )在检查页面上,双击你的配置,然后单击Finish按钮。
7.21 )在Congratulations页中,单击 Login to Icinga Web 2 按钮跳转到ICINGA Web 2登录页面,使用你之前设置的Icinga Web 2管理帐户和密码登录,现在你可以随意浏览ICINGA Web 2仪表盘了。
这是我们的教程,感谢你阅读。