在Debian 9上安装Zabbix Monitoring Server和Agent
监控工具用于持续跟踪系统状态,并在出现任何问题时发出警报和通知。 另外,监视工具可帮助您确保关键系统,应用程序和服务始终处于运行状态。 监控工具是对您的网络安全的补充,允许您检测恶意流量,来自何处以及如何取消恶意流量。
Zabbix是一款免费的开源软件,是企业级的最佳监控工具,专为实时监控从数以万计的服务器,虚拟机和网络设备收集的数百万个指标而设计。 Zabbix被设计为从小环境到大环境的技巧。 其网页前端用PHP编写,后端用C编写,使用MySQL,PostgreSQL,SQLite,Oracle或IBM DB2来存储数据。 Zabbix提供图形功能,使您能够了解特定节点和网络的当前状态
下面列出了Zabbix的一些主要功能:
- 监控服务器,数据库,应用程序,网络设备,Vmware管理程序,虚拟机等等。
- 专门设计用于支持小型到大型环境,通过避免停机时间来提高服务质量并降低运营成本。
- 完全开放源码,所以你不需要支付任何费用。
- 提供用户友好的网络界面,从中央位置做一切事情。
- 用SNMP来监视网络设备和IPMI来监视硬件设备。
- 基于Web的前端,允许从浏览器进行全面的系统控制。
本教程将逐步指导您如何在Debian 9服务器上安装Zabbix Server和Zabbix代理。 我们也将解释如何将Zabbix代理添加到Zabbix服务器进行监控。
要求
- 两个系统与Debian 9安装。
- 最少需要1 GB的RAM和10 DB的磁盘空间。 RAM和磁盘空间的大小取决于正在监视的主机数量和参数。
- 在服务器上设置具有sudo权限的非root用户。
入门
在开始之前,需要将服务器的软件包库更新到最新的稳定版本。 您可以通过在两个实例上运行以下命令来更新它:
sudo apt-get update -y
sudo apt-get upgrade -y
接下来,重新启动您的系统以应用这些更改。
安装Apache,PHP和MariaDB
Zabbix运行在Apache Web服务器上,用PHP编写,使用MariaDB / MySQL来存储数据。 所以为了安装Zabbix,你需要Apache,MariaDB和PHP工作。 首先,运行以下命令安装Apache,PHP和其他PHP模块:
sudo apt-get install apache2 libapache2-mod-php7.0 php7.0 php7.0-xml php7.0-bcmath php7.0-mbstring -y
接下来,您将需要将MariaDB存储库添加到您的系统。 因为,最新版本的MariaDB在Debian 9默认存储库中不可用。
您可以通过运行以下命令来添加存储库:
sudo apt-get install software-properties-common -y
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64] http://www.ftp.saix.net/DB/mariadb/repo/10.1/debian stretch main'
接下来,通过运行以下命令来更新存储库:
sudo apt-get update -y
最后,使用以下命令安装MariaDB服务器:
sudo apt-get install mariadb-server -y
默认情况下,MariaDB安装不受保护。 所以你需要先保证它。 您可以通过运行mysql_secure_installation脚本执行此操作。
sudo 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
上面的脚本将设置root密码,删除测试数据库,删除匿名用户,并禁止从远程位置进行root登录。
一旦MariaDB安装受到保护,请启动Apache和MariaDB服务,并通过运行以下命令使其在启动时启动:
sudo systemctl start apache2
sudo systemctl enable apache2
sudo systemctl start mysql
sudo systemctl enable mysql
安装Zabbix服务器
默认情况下,Zabbix在Debian 9仓库中可用,但可能已经过期。 所以建议安装官方Zabbix存储库的最新版本。 您可以使用以下命令下载并添加最新版本的Zabbix存储库:
wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-2+stretch_all.deb
接下来,使用以下命令安装下载的存储库:
sudo dpkg -i zabbix-release_3.0-2+stretch_all.deb
接下来,通过运行以下命令来更新程序包缓存并通过Web前端和Mysql支持安装Zabbix服务器:
sudo apt-get update -y
sudo apt-get install zabbix-server-mysql zabbix-frontend-php -y
您还需要安装Zabbix代理来收集有关Zabbix服务器状态本身的数据:
sudo apt-get install zabbix-agent -y
在安装Zabbix代理之后,启动Zabbix代理服务,并通过运行以下命令使其在启动时启动:
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent
配置Zabbix数据库
Zabbix使用MariaDB / MySQL作为数据库后端。 所以,你将需要创建一个MySQL数据库和用户zabbix安装:
首先,使用以下命令登录到MySQL shell:
mysql -u root -p
输入您的root密码,然后使用以下命令为Zabbix创建一个数据库:
MariaDB [(none)]> CREATE DATABASE zabbixdb character set utf8 collate utf8_bin;
接下来,为Zabbix创建一个用户,使用以下命令分配一个密码并授予Zabbix数据库的所有权限:
MariaDB [(none)]> CREATE user zabbix identified by 'password';
MariaDB [(none)]> GRANT ALL PRIVILEGES on zabbixdb.* to zabbixuser@localhost identified by 'password';
接下来,使用以下命令刷新权限:
MariaDB [(none)]> FLUSH PRIVILEGES;
最后,使用以下命令退出MySQL shell:
MariaDB [(none)]> exit;
接下来,使用以下命令将初始模式和数据导入新创建的数据库:
cd /usr/share/doc/zabbix-server-mysql*/
zcat create.sql.gz | mysql -u zabbix -p zabbixdb
配置Zabbix
Zabbix在`/etc/zabbix/apache.conf`创建自己的配置文件。 编辑这个文件并根据您的需要更新时区和PHP设置:
sudo nano /etc/zabbix/apache.conf
如下所示更改文件:
php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 32M php_value upload_max_filesize 8M php_value max_input_time 300 php_value always_populate_raw_post_data -1 php_value date.timezone Asia/Kolkata
完成后保存文件。
接下来,您将需要更新Zabbix的数据库详细信息。 你可以通过编辑`/ etc / zabbix / zabbix_server.conf`文件来做到这一点:
sudo nano /etc/zabbix/zabbix_server.conf
更改以下行:
DBHost=localhost DBName=zabbixdb DBUser=zabbixuser DBPassword=password
完成后保存并关闭文件。 然后使用以下命令重新启动所有服务:
sudo systemctl restart apache2
sudo systemctl restart mysql
sudo systemctl restart zabbix-server
配置防火墙
在继续之前,您需要配置UFW防火墙来保护Zabbix服务器。
首先,确保您的系统上安装了UFW。 另外,您可以通过运行以下命令来安装它:
sudo apt-get install ufw -y
接下来,启用UFW防火墙:
sudo ufw enable
接下来,使用以下命令通过UFW允许端口10050,10051和80:
sudo ufw allow 10050/tcp
sudo ufw allow 10051/tcp
sudo ufw allow 80/tcp
最后,重新加载防火墙,使用以下命令应用这些更改:
sudo ufw reload
一旦配置了UFW防火墙,您就可以继续通过Web界面安装Zabbix服务器。
访问Zabbix Web安装向导
一旦一切正常,是时候访问Zabbix网页安装向导。
打开你的浏览器并浏览http:// zabbix-server-ip / zabbix的 URL,你将被重定向到以下页面:
点击下一步按钮,你会看到以下页面:
在这里,所有的Zabbix先决条件都被检查和验证,然后点击下一步按钮,你应该看到下面的页面:
在这里,提供Zabbix数据库名称,数据库用户名和密码,然后点击下一步按钮,你会看到以下页面:
在这里,指定Zabbix服务器的详细信息和端口号,然后点击下一步按钮,你应该可以在下面的页面看到Zabbix服务器的预安装摘要:
接下来,点击下一步按钮来启动Zabbix安装。 一旦Zabbix安装成功完成,您应该会看到以下页面:
在这里,点击完成按钮,它将重定向到Zabbix登录页面,如下所示:
在这里,提供用户名作为管理员和密码zabbix然后点击登录按钮。 您应该在下图中看到Zabbix服务器仪表板:
你的Zabbix网页安装已经完成。
安装Zabbix Agent
现在你的Zabbix服务器已经启动并运行了。 是时候将Zabbix代理节点添加到Zabbix服务器进行监控。
首先,登录到Zabbix代理实例,并使用以下命令添加Zabbix存储库:
wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-2+stretch_all.deb
sudo dpkg -i zabbix-release_3.0-2+stretch_all.deb
sudo apt-get update -y
在您的系统上配置了Zabbix存储库后,只需运行以下命令即可安装Zabbix代理:
sudo apt-get install zabbix-agent -y
一旦安装了Zabbix代理,您将需要配置Zabbix代理与Zabbix服务器进行通信。 你可以通过编辑Zabbix代理配置文件来做到这一点:
sudo nano /etc/zabbix/zabbix_agentd.conf
如下所示更改文件:
#Zabbix Server IP Address / Hostname Server=192.168.0.103 #Zabbix Agent Hostname Hostname=zabbix-agent
完成后保存并关闭文件,然后重新启动Zabbix代理服务,并使用以下命令在启动时启动它:
sudo systemctl restart zabbix-agent
sudo systemctl enable zabbix-agent
将Zabbix代理节点添加到Zabbix服务器
接下来,您需要将Zabbix代理节点添加到Zabbix服务器进行监视。 首先,登录到Zabbix服务器的Web界面。
接下来,点击配置 - >主机 - >创建主机 ,你会看到以下页面:
在这里,指定Zabbix代理的主机名,IP地址和组名。 然后导航到模板选项卡,您应该看到以下页面:
在这里,搜索适当的模板并点击添加按钮,你应该看到以下页面:
最后,再次点击添加按钮。 你会看到你的新主机与绿色标签指示,一切工作正常。
如果您需要监视额外的服务器和网络设备,请登录到每个主机,安装Zabbix代理并从Zabbix Web界面添加每台主机。
结论
恭喜! 你已经在Debian 9服务器上成功安装了Zabbix服务器和Zabbix代理。 您还将Zabbix代理节点添加到Zabbix服务器进行监视。 您现在可以轻松列出当前问题和过去的历史记录,获取主机的最新数据,列出当前的问题,并通过图形显示收集的资源统计信息,如CPU负载,CPU利用率,内存使用情况等。 我希望您现在可以在Debian 9服务器上轻松安装和配置Zabbix,并将其部署到生产环境中。 与其他监控软件相比,Zabbix允许您在监控多台主机的同时建立自己的不同网段的地图。 您也可以使用Zabbix windows代理监视Windows主机。 有关更多信息,请参阅Zabbix文档页面 。 随意问我,如果你有任何问题。