Ubuntu安装配置zabbix

前言

对于服务器集群的监控,有很多可选的开源技术方案,比如zabbix,nagios,Cacti,Munin,icinga,ganglia ,collectd + graphite,influxed + grafana,prometheus等。以前简单研究过ganglia,本文中,来研究学习一下zabbix。

zabbix简介

参考zabbix监控的基础概念、工作原理及架构,我们了解到zabbix是一个分布式系统监控和网络监视工具。
zabbix支持主机的性能监控、网络设备性能监控、数据库性能监控、多种告警方式、详细的报表图表绘制。
zabbix的基本工作原理为:zabbix agent需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。这里agent收集数据分为主动和被动两种模式。

环境准备

在VirtualBox中创建两台Ubuntu16虚拟机,zabbix0和zabbix1。硬件配置都是1核2GB内存,IP分别为192.168.56.200和192.168.56.201。

zabbix0上安装zabbix-server和zabbix-agent,zabbix1上zabbix-agent。

sudo -i切换到root用户,方便安装配置。

zabbix0

zabbix服务端的安装配置,主要参考在Ubuntu16.04 Server上安装Zabbix

软件安装

1、安装zabbix需要的PHP模块
apt-get install php7.0-bcmath php7.0-xml php7.0-mbstring

2、下载导入zabbix-server安装源

1
2
3
wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+xenial_all.deb
dpkg -i zabbix-release_3.2-1+xenial_all.deb
apt-get update

Ubuntu仓库中提供的zabbix是过时的,因此使用官方的安装包。

3、安装zabbix-server(支持mysql的版本)和zabbix-web
apt-get install zabbix-server-mysql zabbix-frontend-php

4、安装zabbix-client(可选)
apt-get install zabbix-agent

mysql配置

1、登录mysql
mysql -uroot -p
默认密码为空。

2、创建zabbix数据库和zabbix用户

1
2
3
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix_password';
exit;

3、导入初始表和数据

1
zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

zabbix-server配置

1、vim /etc/zabbix/zabbix_server.conf,如下修改:

1
2
3
4
5
6
7
8
# line 81, uncomment
DBHost=localhost
# line 91, change
DBName=zabbix
# line 107, change
DBUser=zabbix
# line 115, uncomment and change
DBPassword=zabbix_password

2、vim /etc/zabbix/apache.conf,如下修改:

1
2
3
4
# line 19, uncomment and change
php_value date.timezone Asia/Shanghai
# line 28, uncomment and change
php_value date.timezone Asia/Shanghai

3、重启apache,启动zabbix-server并设置开机启动

1
2
3
4
systemctl restart apache2
systemctl start zabbix-server
systemctl enable zabbix-server
systemctl status zabbix-server

zabbix-web配置

1、浏览器访问 http://192.168.56.200/zabbix

2、点击“Next step”,按照提示进行安装配置。中间只要填写一次数据库密码,其他的默认即可。
安装完成后的配置文件为/usr/share/zabbix/conf/zabbix.conf.php。

3、浏览器访问 http://192.168.56.200/zabbix/index.php
使用默认的用户Admin和密码zabbix登录,即可进入管理界面。

此时,我们看到Number of hosts enabled为0。

zabbix-agent配置

1、vim /etc/zabbix/zabbix_agentd.conf,如下修改:

1
2
3
4
5
6
# line 95, change
Server=127.0.0.1
# line 136, change
ServerActive=127.0.0.1
# line 147, change
Hostname=zabbix0

其中Server和ServerActive指的是Zabbix Server,Hostname指的是client server name。

2、启用zabbix-agent并设置开机启动

1
2
systemctl start zabbix-agent
systemctl enable zabbix-agent

此时,在zabbix web管理页面依然看不到主机的信息。

3、在zabbix web管理页面添加zabbix0主机,参考How to Add Host in Zabbix Server to Monitor

(1)在zabbix web管理页面,Configuration,Hosts,Create host。

(2)在Host标签页,填入如下信息。

  • Hostname: Enter hostname of Remote system
  • Visible name: Name to be display in zabbix
  • Group: Select the desired group for you host
  • Agent interface: Fill the info of Zabbix agent running on host
  • Enabled: Check for active

(3)在Templates标签页,点击Select选择要监控的指标,点击Add链接确认。

(4)点击Add按钮确认添加host。

此时,就可以在zabbix web管理页面看到host的信息了,选择host的Graphs,即可查看host状态相关的绘图。

zabbix1

1、下载导入zabbix-server安装源

1
2
3
wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+xenial_all.deb
dpkg -i zabbix-release_3.2-1+xenial_all.deb
apt-get update

2、安装zabbix-client
apt-get install zabbix-agent

3、vim /etc/zabbix/zabbix_agentd.conf,如下修改:

1
2
3
4
5
6
# line 95, change
Server=192.168.56.200
# line 136, change
ServerActive=192.168.56.200
# line 147, change
Hostname=zabbix1

4、启用zabbix-agent并设置开机启动

1
2
systemctl start zabbix-agent
systemctl enable zabbix-agent

5、在zabbix web管理页面添加zabbix1主机,再添加一台不存在的zabbix2主机。添加完成后即可看到三台主机都是Enabled,等待两分钟后界面显示其中一台不可用。

后记

至此,zabbix就安装配置完成了,更高级的用法,用到了再去研究学习。

书签

Zabbix Documentation 3.2

How to Install Zabbix Server 3.4 on Ubuntu 18.04 & 16.04 LTS

How To Install Zabbix Agent on Ubuntu 18.04 & 16.04 LTS

ubuntu 16.04.1 LTS zabbix-agent安装

Update-rc.d 命令用法详解

zabbix常见指标项梳理

0%