使用CentOS搭建zabbix分布式监控系统
一、配置yum源环境
将Centos镜像挂载到/opt/centos目录下,并将zabbix文件拷贝到/opt目录下
修改主机名并配置yum源
1.修改主机名称
[root@localhost ~]# hostnamectl set-hostname zabbix-server
[root@localhost ~]# hostnamectl set-hostname zabbix-agent
2.配置节点yum源文件
此处安装使用的是本地源安装,若有需要百度网络源替换安装即可
zabbix-server:
[root@zabbix-server ~]# cat /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[zabbix]
name=zabbix
baseurl=file:///opt/zabbix
gpgcheck=0
enabled=1
zabbix-server节点
3.安装vsftp服务
[root@zabbix-server ~]# yum install -y vsftpd
[root@zabbix-server ~]# vi /etc/vsftpd/vsftpd.conf
anon_root=/opt
[root@zabbix-server ~]# systemctl restart vsftpd
[root@zabbix-server ~]# systemctl enable vsftpd
4.关闭防火墙服务
zabbix-server****节点:
[root@zabbix-server ~]# systemctl stop firewalld
[root@zabbix-server ~]# systemctl disable firewalld
zabbix-agent****节点:
关闭防火墙服务
[root@zabbix-agent ~]# systemctl stop firewalld
[root@zabbix-agent ~]# systemctl disable firewalld
配置zabbix-agent****节点vsftpd 源文件
此处安装使用的是本地ftp源安装,若有需要百度网络源替换安装即可
[root@zabbix-agent ~]# cat /etc/yum.repos.d/ftp.repo
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
gpgcheck=0
enabled=1
[zabbix]
name=zabbix
baseurl=ftp://192.168.100.10/zabbix
gpgcheck=0
enabled=1
至此,zabbix-server 和zabbix-agent节点的 Yum 源配置完毕。
二、安装 LAMP+Zabbix 服务(在 zabbix-server 节点执行)
1.安装http服务
[root@zabbix-server ~]# yum install httpd -y
2.安装数据库服务
[root@zabbix-server ~]# yum install -y mariadb-server mariadb
3.安装 Zabbix 服务
[root@zabbix-server ~]# yum install -y zabbix-server-mysql zabbix-web-mysql
zabbix-agent mariadb-server
4.升级trousers服务
[root@zabbix-server ~]# yum install -y trousers
至此,Zabbix 服务所需要的软件包已安装完毕
三、配置并启动 Zabbix 服务
1.启动 httpd 服务
使用命令启动 httpd 服务,并设置开机自启,最后查看运行状态。命令如下:
[root@zabbix-server ~]# systemctl start httpd
[root@zabbix-server ~]# systemctl enable httpd
ln -s '/usr/lib/systemd/system/httpd.service'
'/etc/systemd/system/multi-user.target.wants/httpd.service'
2.启动并配置数据库服务
[root@zabbix-server ~]# systemctl start mariadb
[root@zabbix-server ~]# systemctl enable mariadb
[root@zabbix-server ~]# mysql_secure_installation
**设置mysql****数据库密码为“000000****”**
3.登录数据库
创建 zabbix 库(中文编码格式),命令如下:
[root@zabbix-server ~]# mysql -uroot -p000000
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2
Server version: 5.5.44-MariaDB MariaDB Server
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
**MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;**
Query OK, 1 row affected (0.00 sec)
授予 zabbix 用户的访问权限,命令如下:
**MariaDB [(none)]> grant all privileges on zabbix.\* to zabbix@'%' identified by '000000';**
Query OK, 0 rows affected (0.00 sec)
**MariaDB [(none)]> grant all privileges on zabbix.\* to zabbix@localhost identified by '000000';**
Query OK, 0 rows affected (0.00 sec)
4.导入数据库文件
退出数据库,进入到/usr/share/doc/zabbix-server-mysql-3.4.15/目录,导入数据库文件
[root@zabbix-server ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.15/
[root@zabbix-server ~]# zcat create.sql.gz > /root/zabbix.sql
[root@zabbix-server ~]# mysql -uroot -p000000
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 624
Server version: 5.5.44-MariaDB MariaDB Server
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
**MariaDB [(none)]> use zabbix**
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
MariaDB [zabbix]> source /root/zabbix.sql
至此,数据库配置完毕。
四、设置时区
1.编辑/etc/php.ini 文件
设置时区,在[Date]字段下,设置 date.timezone=PRC,命令如下:
[root@zabbix-server ~]# vi /etc/php.ini
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = PRC
2.编辑/etc/httpd/conf.d/zabbix.conf 文件
修改时区,修改 php_value date.timezone 为Asia/Shanghai,命令如下:
[root@zabbix-server ~]# vi /etc/httpd/conf.d/zabbix.conf
<IfModule mod_php5.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value max_input_vars 10000
php_value always_populate_raw_post_data -1
\# php_value date.timezone Europe/Riga
php_value date.timezone Asia/Shanghai
3.修改完配置文件后重启 httpd 服务
[root@zabbix-server ~]# systemctl restart httpd
五、修改 Zabbix 配置文件并启动
1.修改/etc/zabbix/zabbix_server.conf 配置文件
修改完的配置文件如下所示:
[root@zabbix-server ~]# vi /etc/zabbix/zabbix_server.conf
[root@zabbix-server ~]# grep -n '^'[a-Z] /etc/zabbix/zabbix_server.conf
38:LogFile=/var/log/zabbix/zabbix_server.log
49:LogFileSize=0
72:PidFile=/var/run/zabbix/zabbix_server.pid
82:SocketDir=/var/run/zabbix
**91:DBHost=localhost**
100:DBName=zabbix
116:DBUser=zabbix
**124:DBPassword=zabbix**
**132:DBSocket=/var/lib/mysql/mysql.sock**
330:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
447:Timeout=4
489:AlertScriptsPath=/usr/lib/zabbix/alertscripts
499:ExternalScripts=/usr/lib/zabbix/externalscripts
535:LogSlowQueries=3000
2.启动 Zabbix 服务
命令如下:
[root@zabbix-server ~]# systemctl start zabbix-server
3.安装net-tools检查端口状态
[root@zabbix-server ~]# yum install -y net-tools
[root@zabbix-server ~]# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 6117/mysqld
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1473/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1988/master
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 6262/zabbix_server
tcp6 0 0 :::80 :::* LISTEN 6245/httpd
tcp6 0 0 :::21 :::* LISTEN 2826/vsftpd
tcp6 0 0 :::22 :::* LISTEN 1473/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1988/master
tcp6 0 0 :::10051 :::* LISTEN 6262/zabbix_server
至此,Zabbix 监控服务的 server 端配置完毕,接下来需要在 Web 界面操作。
六、使用 Zabbix 服务
1.登录界面
在浏览器访问 (本机ip地址)192.168.100.10/zabbix,进入 Zabbix 安装向导,单击右下角“Next step”按钮,进入下一步操作,如图
显示 PHP 版本信息等内容,然后单击右下角“Next step”按钮,进入下一步操作,如图
填写连接数据库的必要信息,Password 为 000000,填写内容如图所示,填写完毕后单击右下角“Next step”按钮,进行下一步操作。
填写 Zabbix 服务端的详细信息,内容如图所示,Name 字段可以随意填写,是给监控平台起个名字。然后单击右下角“Next step”按钮,进行下一步操作。填写 Zabbix 服务端的详细信息平台配置概况如图所示
确认后单击右下角“Next step”按钮。
安装 Zabbix,安装成功后,单击右下角“Finish”按钮,结束安装,如图所示。
单击“Finish”按钮后,进入登录界面,使用默认的用户名和密码 Admin/zabbix 登录,
2.进入 Zabbix 主页
中文界面
单击右上角的头像按钮,进入设置界面,如图所示。
将“Language”一栏修改为“Chinexe(zh CN)”,然后单击下方“Update”按钮,如
中文界面的 Zabbix 监控界面已配置完成,如图所示。
七、添加被监控机器
1.回到 zabbix-agent 节点,安装 zabbix-agent 服务
命令如下:
[root@zabbix-agent ~]# yum install -y zabbix-agent
2.修改/etc/zabbix/zabbix_agentd.conf 配置文件
配置 zabbix-agent,修改如下:
[root@zabbix-agent ~]# vi /etc/zabbix/zabbix_agentd.conf
[root@zabbix-agent ~]# grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf
13:PidFile=/var/run/zabbix/zabbix_agentd.pid
32:LogFile=/var/log/zabbix/zabbix_agentd.log
43:LogFileSize=0
97:Server=192.168.100.10
138:ServerActive=192.168.100.10
149:Hostname=Zabbix-agent
267:Include=/etc/zabbix/zabbix_agentd.d/*.conf
3.启动 zabbix-agent 服务
并查看 10050 端口是否存在,命令如下:
[root@zabbix-agent ~]# systemctl start zabbix-agent
[root@zabbix-agent ~]# netstat -ntpl
Active Internet connections (only servers)
16
Proto Recv-Q Send-Q Local Address Foreign Address State
PID/Program name
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN
10613/zabbix_agentd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
979/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
899/master
tcp6 0 0 :::10050 :::* LISTEN
10613/zabbix_agentd
tcp6 0 0 :::22 :::* LISTEN
979/sshd
tcp6 0 0 ::1:25 :::* LISTEN
899/master
4.回到 Web 界面
选择菜单栏“配置”→“主机”→“创建主机”命令,会跳转到如图所示的配置主机的页面。
填写信息,将 zabbix-agent 节点添加到被监控机器,填写信息如图所示。然后单击下方“添加”按钮。
添加完毕后如图所示。
添加监控项,单击“zabbix-agent”名称,然后单击“模板”标签,进行添加模板操作
界面,如图所示。
单击图中的“选择”按钮,进行监控模板添加,在跳转界面勾选用户想要监控
的复选框,然后单击下方“选择”按钮,如图所示。
选择完模板后,如图所示。
单击“添加”按钮,显示链接的模板,然后单击“更新”按钮,如图所示。
单击“更新”按钮后,zabbix-agent 节点被添加到监控中,如图所示。
5.监控机器
在最上面的选择菜单栏中“监测中”→“图形”命令,群组选择 Linux server,主机选择 zabbix-agent,图形选择需要显示的监控项,此处选择为 CPU jumps,如图所示。
需要被监控的主机,首先安装 zabbix-agent 服务,然后修改配置文件并启动服务。登录Zabbix 的 Web 界面,添加主机,并添加监控模板。成功添加后,就可以通过 Zabbix 界面进行主机的监控