赞
踩
# yum快速部署LAMP环境
[root@master ~]# yum install httpd mariadb mariadb-server php php-mysql -y
# 安装zabbix所需php库
[root@master ~]# yum install php-bcmath php-gd php-ldap php-mbstring php-xml -y
# 服务端:zabbix-4.4.6.tar.gz
# 客户端:zabbix-agent-4.4.6-1.el7.x86_64.rpm
# http://repo.zabbix.com/zabbix/4.4/rhel
# http://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-agent-4.4.6-1.el7.x86_64.rpm
# 以上两个安装包,从网上很容易下载到本地。
# 安装所需的rpm包都在zabbix-4.4.6.tar.gz里
[root@master opt]# ll
总用量 10224
-rw-r--r--. 1 root root 10029701 2月 29 11:54 zabbix-4.4.6.tar.gz
-rw-r--r--. 1 root root 438076 2月 29 11:52 zabbix-agent-4.4.6-1.el7.x86_64.rpm
# 解压zabbix-4.4.6.tar.gz,并以该目录配置一个本地yum源
[root@master ~]# tar xzf /opt/zabbix-4.4.6.tar.gz -C /opt/
[root@master ~]# cd /opt/zabbix4-4-6/
[root@master zabbix4-4-6]# ll
总用量 10036
-rw-r--r--. 1 root root 65788 2月 29 11:52 dejavu-fonts-common-2.33-6.el7.noarch.rpm
-rw-r--r--. 1 root root 1482820 2月 29 11:52 dejavu-sans-fonts-2.33-6.el7.noarch.rpm
-rw-r--r--. 1 root root 10116 2月 29 11:52 fontpackages-filesystem-1.44-8.el7.noarch.rpm
-rw-r--r--. 1 root root 41292 2月 29 11:52 fping-3.10-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 219068 2月 29 11:52 libevent-2.0.21-4.el7.x86_64.rpm
-rw-r--r--. 1 root root 768380 2月 29 11:52 net-snmp-libs-5.7.2-43.el7_7.3.x86_64.rpm
-rw-r--r--. 1 root root 248708 2月 29 11:52 OpenIPMI-2.0.27-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 535796 2月 29 11:52 OpenIPMI-libs-2.0.27-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 16368 2月 29 11:52 OpenIPMI-modalias-2.0.27-1.el7.x86_64.rpm
drwxr-xr-x. 2 root root 4096 2月 29 11:53 repodata
-rw-r--r--. 1 root root 423152 2月 29 11:52 unixODBC-2.3.1-14.el7.x86_64.rpm
-rw-r--r--. 1 root root 438076 2月 29 11:52 zabbix-agent-4.4.6-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 307352 2月 29 11:52 zabbix-get-4.4.6-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 2599260 2月 29 11:52 zabbix-server-mysql-4.4.6-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 3076048 2月 29 11:52 zabbix-web-4.4.6-1.el7.noarch.rpm
-rw-r--r--. 1 root root 10976 2月 29 11:52 zabbix-web-mysql-4.4.6-1.el7.noarch.rpm
# 配置本地yum源,用于安装zabbix的rpm包
[root@master zabbix4-4-6]# vim /etc/yum.repos.d/zabbix.repo
[root@master zabbix4-4-6]# cat /etc/yum.repos.d/zabbix.repo
[zabbix4-4-6]
name=zabbix4-4-6
baseurl=file:///opt/zabbix4-4-6
enabled=1
gpgcheck=0
# 解决zabbix依赖
[root@master ~]# yum install OpenIPMI OpenIPMI-libs OpenIPMI-modalias unixODBC fping -y
# 安装zabbix服务
# zabbix-server-mysql 服务端
# zabbix-web-mysql zabbix的web页面
# zabbix-agent 客户端
# zabbix-get 服务端和客户端之间的测试命令
[root@master ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get -y
# 启动mariadb数据库,禁用firewall,查看下mariadb是否启动
[root@master ~]# systemctl start mariadb
[root@master ~]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@master ~]# systemctl stop firewalld && systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@master ~]# netstat -antup | grep mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 76623/mysqld
# 配置zabbix数据库
[root@master ~]# mysql -uroot
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.65-MariaDB MariaDB Server
Copyright (c) 2000, 2018, 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)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye
# 导入zabbix自带的数据
# zcat命令用于不解压就能显示压缩包中的文件
[root@master ~]# zcat /usr/share/doc/zabbix-server-mysql-4.4.6/create.sql.gz | mysql -u zabbix -p zabbix
Enter password: # 输入zabbix数据库的密码
[root@master ~]# mysql -uzabbix -pzabbix
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 6
Server version: 5.5.65-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| test |
| zabbix |
+--------------------+
3 rows in set (0.00 sec)
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]> show tables;
# 有数据表就说明加载进去了
# 修改zabbix服务端配置文件
[root@master ~]# vim /etc/zabbix/zabbix_server.conf
91 DBHost=localhost # 数据库主机名
100 DBName=zabbix # zabbix数据库
116 DBUser=zabbix # 数据库用户zabbix
124 DBPassword=zabbix # zabbix数据库密码
# 修改zabbix在http中的配置文件
[root@master ~]# find / -name zabbix.conf
/etc/httpd/conf.d/zabbix.conf
[root@master ~]# vim /etc/httpd/conf.d/zabbix.conf
5 Alias /zabbix /usr/share/zabbix # 快捷访问,真实网站数据目录为/usr/share/zabbix
6
7 <Directory "/usr/share/zabbix">
8 Options FollowSymLinks
9 AllowOverride None
10 Require all granted
11
12 <IfModule mod_php5.c>
13 php_value max_execution_time 300
14 php_value memory_limit 128M
15 php_value post_max_size 16M
16 php_value upload_max_filesize 2M
17 php_value max_input_time 300
18 php_value max_input_vars 10000
19 php_value always_populate_raw_post_data -1
20 php_value date.timezone Asia/Shanghai # 修改时区
21 </IfModule>
22 </Directory>
# 监控服务器本身
[root@master ~]# vim /etc/zabbix/zabbix_agentd.conf
98 Server=127.0.0.1 # zabbix服务器ip
139 ServerActive=127.0.0.1 # zabbix服务器IP(主动模式:客户端主动发送数据给服务端)
150 Hostname=Zabbix server # 客户端主机名,与web内主机名一致
309 UnsafeUserParameters=1 # 支持自定义脚本
# 重启zabbix服务端和客户端、httpd、mariadb数据库
[root@master ~]# systemctl restart zabbix-server zabbix-agent httpd mariadb
[root@master ~]# systemctl enable zabbix-server zabbix-agent httpd mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
# 发现zabbix服务端没有启动
[root@master ~]# netstat -antup | grep mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 77326/mysqld
[root@master ~]# netstat -antup | grep httpd
tcp6 0 0 :::80 :::* LISTEN 77092/httpd
[root@master ~]# netstat -antup | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 77095/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 77095/zabbix_agentd
[root@master ~]# netstat -antup | grep 10051
# 查看zabbix服务端日志,最后记录是停止了,然后报错。
[root@master ~]# tail /var/log/zabbix/zabbix_server.log
80718:20200813:221207.699 cannot start LLD manager service: Cannot bind socket to "/var/run/zabbix/zabbix_server_lld.sock": [13] Permission denied.
# 上网搜了,说是selinux的问题。先临时设置为Permissive
[root@master ~]# setenforce 0
[root@master ~]# getenforce
Permissive
# 再次尝试开启,zabbix服务端终于起来了
[root@master ~]# systemctl start zabbix-server
[root@master ~]# netstat -antup | grep 10051
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 81972/zabbix_server
tcp 0 0 127.0.0.1:10051 127.0.0.1:57390 TIME_WAIT -
tcp6 0 0 :::10051 :::* LISTEN 81972/zabbix_server
[root@master ~]# systemctl enable zabbix-server
输入网址:http://192.168.8.133/zabbix/setup.php
点击下一步
全都OK
输入mysql数据库信息
直接下一步
确认信息,下一步
点击完成即可
登录zabbix web
,账号密码为Admin
/zabbix
看到这个界面就表示已经安装好了。
设置中文:
设置字体:
# 上传字体文件
[root@master ~]# cd /usr/share/zabbix/assets/fonts/
[root@master fonts]# rz
[root@master fonts]# ll
总用量 11512
lrwxrwxrwx. 1 root root 33 8月 13 21:48 graphfont.ttf -> /etc/alternatives/zabbix-web-font
-rw-r--r--. 1 root root 11787328 8月 9 2018 simkai.ttf
[root@master fonts]# chown zabbix:zabbix simkai.ttf
[root@master fonts]# vim /usr/share/zabbix/include/defines.inc.php
# 修改zabbix默认使用的字体
[root@master fonts]# vim /usr/share/zabbix/include/defines.inc.php
67 define('ZBX_GRAPH_FONT_NAME', 'simkai'); // font file name
111 define('ZBX_FONT_NAME', 'simkai');
# 重启httpd服务
[root@master fonts]# systemctl restart httpd.service
刷新一下zabbix web
# 上传zabbix客户端rpm包
# 上传zabbix客户端rpm包
[root@client ~]# ll /opt/zabbix-agent-4.4.6-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 438076 8月 13 22:49 /opt/zabbix-agent-4.4.6-1.el7.x86_64.rpm
# 安装zabbix客户端
[root@client ~]# rpm -ivh /opt/zabbix-agent-4.4.6-1.el7.x86_64.rpm
# 修改客户端配置文件
[root@client ~]# vim /etc/zabbix/zabbix_agentd.conf
98 Server=192.168.8.133 # 服务端IP
139 ServerActive=192.168.8.133 # 服务端IP
150 Hostname=192.168.8.152 # 客户端主机名
# 启动zabbix客户端
[root@client ~]# systemctl restart zabbix-agent.service
[root@client ~]# systemctl enable zabbix-agent.service
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
在zabbix web配置客户端主机
添加主机:
填写远程主机信息:
选择监控模板“Template OS Linux by Zabbix agent”
发现有报错:
# 解决报错
Received empty response from Zabbix Agent at [192.168.8.152]. Assuming that agent dropped connection because of access permissions
# 查看下zabbix客户端进程,正常路径是/usr/sbin/zabbix_agentd的,多出来一个/usr/local/zabbix/sbin/zabbix_agentd,原来是之前在这台主机上用源码包装过一次zabbix客户端,导致装的zabbix4-4-6的客户端无法被访问。
[root@client ~]# ps -ef | grep zabbix
以下方式停掉的只是rpm包安装的zabbix,对于源码包的zabbix还在。
停掉源码包安装的zabbix
重新启动下rpm包安装的zabbix
刷新下zabbix web,可以看到已经可以正常监控了。
从下图可以看到,磁盘容量总共有17G,已用4.88G。并且使用饼图展示占比。如果想知道剩余磁盘空间的情况,并且对其进行监控,然后设定一个阈值,当磁盘空间低于这个阈值就会主动告警。这种情况要怎么设置呢?
①找到客户端使用的模板
②创建监控项
我这里仅为主机192.168.8.152
创建监控项;【在生产中,可为模板创建监控项,然后多台远程客户端主机使用同一模板】
vfs.fs.size[/,free]
# 可以使用以下方法查看键值是否可用
[root@master ~]# zabbix_agentd -p | grep vfs.fs.size
vfs.fs.size[/,free] [u|13840769024]
# 看能否获取到对应远程主机的对应键值的数据
[root@master ~]# zabbix_get -s 192.168.8.152 -p 10050 -k vfs.fs.size[/,free]
13001203712
③创建监控项对应的图形
为图形添加监控项
④查看监控图形数据
可以看到,已经可以监控远程客户端的剩余磁盘空间了。
⑤创建触发器用于告警
这里也是只为192.168.8.152
创建触发器。
设定触发表达式:
设定恢复表达式:
触发器设置如下:
点击添加:
查看触发器情况:
总结:根据键值自定义监控项,为监控项创建图形展示,为监控项创建触发器告警。
参考grafana美化zabbix监控
一点心得:
搭建zabbix,要基于LAMP或者LNMP环境,并且zabbix与LAMP或LNMP架构最好都保持一致,即都用源码包安装或者都用rpm包安装。在生产环境中,对于没有部署mysql数据库或者web服务的服务器,用rpm包安装环境LAMP或LAMP环境,然后直接使用rpm包安装zabbix是比较高效快速的。而对于已经包含mysql数据库或者web服务,就要看mysql数据库和web服务是通过什么方式安装的了,如果是用源码包安装的,那相应的LAMP和LNMP架构和zabbix就得用源码包安装了。
以上就是zabbix4-4-6的部署及使用。感谢大家的关注!!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。