亚马逊的EC2服务给我们提供了一个相对便捷的服务器环境,我们利用 Zabbix 监测系统对云服务器进行监测与报警。今天首先说一下整个监测系统的安装与配置。由于 Ubuntu 提供了方便的包管理机制,所以直接通过 apt-get 方式进行 Zabbix 系统的安装,但这样的安装方式只能得到较旧的版本,如果想尝试 Zabbix 的新特性和功能,可以从 Zabbix 官网下载最新的源代码编译安装(开源)。
由于Zabbix的监测是通过一台Master机器上安装的 Zabbix Server 对每台被监测机器上安装的 Zabbix Agent 进行监测而得到监测数据,所以整个监测系统的安装分为两个部分:Server 和 Agent。在安装过程中要特别注意亚马逊云服务器内部ip和外部ip的区分,选取有固定对外ip的服务器安装Server,而Agent的安装和配置只要用内部ip就可以搞定啦。
首先,选取一台安装Server的服务器登陆,运行
sudo apt-get install zabbix-server-mysql
这一步将安装Zabbix Server 和 Zabbix 用来存储监测数据的 mysql 数据库。在安装过程中会提示输入mysql for zabbix-server 的用户名和密码,选取本机可用的mysql用户名和密码即可。
第二步,运行
sudo apt-get install zabbix-frontend-php
cp -R /usr/share/zabbix /var/www
将 php 程序拷到 Apache 的Web源文件目录下就可以访问 Zabbix-Server 的控制界面了(http://服务器ip/Zabbix),初始用户admin,密码 zabbix。
对要进行监测的每台机器安装 Zabbix Agent
sudo apt-get install zabbix-agent
客户端的安装很简单,安装完成后可以用命令
netstat -l
来查看Zabbix Server 和 Zabbix Agent 的绑定端口,分别为 10050 和10051
接下来要对整个系统进行配置,整个配置过程都很简单,这里提一下要注意的地方,打开 Agent 的配置文件
sudo vim /etc/zabbix/zabbix-agentd.config
Server=10.154.14.190(server的内部ip) Hostname=ip-10-154-12-188(agent_hostname) LogFile=/mnt/zabbix/log/zabbix_agentd.log AllowRoot=1
然后重启 Agent
sudo service zabbix-agent restart
在 Server 的前台管理页面上添加相应的监测主机(安装 Agent 的机器),看到小图标变为绿色(可用状态)即配置成功。