1.1 生产环境选择LAMP还是LNMP环境使用zabbix
- 全新的物理机:
- yum安装 LAMP+zabbix
- 编译安装nginx,php,二进制mysql,+zabbix
- 已经使用过的物理机:(里面可能已经有很多软件了)
- 确定能否重装系统,如果可以重新安装系统则重新安装系统再按照全新物理机方式安装
- 不能重装系统时只能编译安装(LNMP和Zabbix),yum安装虽然能够解决软件依赖问题,但是解决不了依赖冲突的问题
1.2 网页检查时出现warning
【问题现象】:
PHP LDAP | off | Warning |
【原因分析】:
PHP未安装ldap模块。
【解决方法】:
安装php55w-ldap模块并重启apache服务即可:
[root@m01 ~]# yum install -y php55w-ldap [root@m01 ~]# server httpd restart
1.3 网页配置连接数据库时提示无法连接数据库
【问题现象】:
【原因分析】:
MySQL数据库内zabbix用户授权主机不是localhost导致
【解决方法】:
网页Database host处填写相应zabbix用户授权主机网段IP信息即可。
1.4 无法登录zabbix服务端web界面
【问题现象】:
【原因分析】:
zabbix默认用户名为Admin,默认密码为zabbix。
【解决方法】:
使用正确的用户名和密码登录即可。
1.5 忘记zabbix用户名和密码
【解决方法】:
直接登录数据库进行修改用户密码:
[root@m01 ~]# mysql mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | test | | zabbix | +--------------------+ 4 rows in set (0.00 sec) mysql> use zabbix; Database changed mysql> desc users; +----------------+---------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------------+---------------------+------+-----+---------+-------+ | userid | bigint(20) unsigned | NO | PRI | NULL | | | alias | varchar(100) | NO | UNI | | | | name | varchar(100) | NO | | | | | surname | varchar(100) | NO | | | | | passwd | char(32) | NO | | | | | url | varchar(255) | NO | | | | | autologin | int(11) | NO | | 0 | | | autologout | int(11) | NO | | 900 | | | lang | varchar(5) | NO | | en_GB | | | refresh | int(11) | NO | | 30 | | | type | int(11) | NO | | 1 | | | theme | varchar(128) | NO | | default | | | attempt_failed | int(11) | NO | | 0 | | | attempt_ip | varchar(39) | NO | | | | | attempt_clock | int(11) | NO | | 0 | | | rows_per_page | int(11) | NO | | 50 | | +----------------+---------------------+------+-----+---------+-------+ 16 rows in set (0.03 sec) mysql> select userid,alias,name,surname,passwd,url from users; +--------+-------+--------+---------------+----------------------------------+-----+ | userid | alias | name | surname | passwd | url | +--------+-------+--------+---------------+----------------------------------+-----+ | 1 | Admin | Zabbix | Administrator | 5fce1b3e34b520afeffb37ce08c7cd66 | | | 2 | guest | | | d41d8cd98f00b204e9800998ecf8427e | | +--------+-------+--------+---------------+----------------------------------+-----+ 2 rows in set (0.00 sec) mysql> update users set passwd=md5("zabbix") where userid='1'; Query OK, 0 rows affected (0.03 sec) Rows matched: 1 Changed: 0 Warnings: 0 mysql> select userid,alias,name,surname,passwd,url from users; +--------+-------+--------+---------------+----------------------------------+-----+ | userid | alias | name | surname | passwd | url | +--------+-------+--------+---------------+----------------------------------+-----+ | 1 | Admin | Zabbix | Administrator | 5fce1b3e34b520afeffb37ce08c7cd66 | | | 2 | guest | | | d41d8cd98f00b204e9800998ecf8427e | | +--------+-------+--------+---------------+----------------------------------+-----+ 2 rows in set (0.00 sec) mysql> quit Bye
1.6 提示没有zabbix_get命令
【问题现象】:
[root@m01 ~]# zabbix_get -s 172.16.1.61 -p 10050 -k "system.cpu.load[all,avg1]" -bash: zabbix_get: command not found
【原因分析】:
yum安装zabbix默认未安装zabbix_get命令。
【解决方法】:
安装zabbix-get命令即可:
[root@m01 ~]# yum install -y zabbix-get
1.7 zabbix_get获取不到数据
【问题现象】:
[root@m01 ~]# zabbix_get -s 172.16.1.8 -p 10050 -k "system.cpu.load[all,avg1]" zabbix_get [38708]: Get value error: cannot connect to [[172.16.1.8]:10050]: [113] No route to host
【原因分析】:
IP地址不存在或者防火墙或selinux开启导致问题发生。
【解决方法】:
- 检查IP地址是否正确
- 关闭防火墙和SELinux
1.8 zabbix_get提示不支持自定义key
【问题现象】:
[root@m01 ~]# zabbix_get -s 172.16.1.8 -p 10050 -k "login-user" ZBX_NOTSUPPORTED: Unsupported item key.
【原因分析】:
- 没有“login-user”这个监控项,即key写错了
- 监控项key写对了但是修改配置文件后没有重启agent服务
【解决方法】:
检查监控项key是否书写正确后,重启zabbix-agent服务:
[root@m01 ~]# service zabbix-agent restart
提示:自定义的key必须是唯一的,不能重复(同时不能和系统已有的冲突);
将想要监控的内容配置到/etc/zabbix/zabbix_agentd.d/中,客户端服务重启后服务端就可以获取数据。
1.9 中文乱码
【问题现象】:
【原因分析】:
zabbix默认自带的字体库对中文支持有限。
【解决方法】:
更换中文字体后刷新页面即可:
[root@m01 ~]# cd /usr/share/fonts/dejavu [root@m01 dejavu]# rz -E # 上传simkai.ttf字体 rz waiting to receive. [root@m01 dejavu]# ls DejaVuSans-BoldOblique.ttf DejaVuSansCondensed-Oblique.ttf DejaVuSans.ttf DejaVuSans-Bold.ttf DejaVuSansCondensed.ttf simkai.ttf DejaVuSansCondensed-BoldOblique.ttf DejaVuSans-ExtraLight.ttf DejaVuSansCondensed-Bold.ttf DejaVuSans-Oblique.ttf [root@m01 dejavu]# cp DejaVuSans.ttf{,.bak} # 备份原有字体 [root@m01 dejavu]# cp simkai.ttf DejaVuSans.ttf # 替换原有字体
1.10 更新数据库中zabbix用户授权主机信息后无法进入web界面
【问题现象】:
或
【原因分析】:
数据库中zabbix用户不存在或没有权限或主机设置不正确造成
【解决方法】:
删除原有用户重新创建新的用户或直接更新用户授权主机信息:
[root@m01 ~]# mysql # 删除原有用户重新创建新的用户 mysql> use mysql; mysql> Delete FROM user Where User='zabbix' and Host='localhost'; mysql> grant all on zabbix.* to zabbix@'172.16.1.%' identified by 'zabbix'; mysql> flush privileges; # 直接更新用户授权主机信息,不一定可用 mysql> use mysql; mysql> update user set host='172.16.1.%' where user='zabbix'; mysql> flush privileges;
查看并更改zabbix配置文件:
[root@m01 ~]# vim /etc/zabbix/web/zabbix.conf.php $DB['SERVER'] = '172.16.1.61'; $ZBX_SERVER = '172.16.1.61';
更改zabbix_server.conf配置文件:
[root@m01 ~]# vim /etc/zabbix/zabbix_server.conf 82 DBHost=172.16.1.61 # 更改DBHost为zabbix授权主机网段内IP,而不是用默认的localhost
1.11 zabbix进程启动但却未打开端口
【问题现象】:
# 查看进程信息:有进程(不完整) [root@m01 ~]# ps -ef | grep zabbix zabbix 22074 1 0 21:41 00:00:00 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf root 22081 20958 0 21:42 pts/1 00:00:00 grep zabbix # 查看端口信息:无端口 [root@m01 ~]# lsof -i:10051
web页面提示:
【原因分析】:
zabbix用户授权主机信息更新后导致数据库错误。
【解决方法】:
查看并zabbix配置文件是否按照更新信息更改:
[root@m01 ~]# vim /etc/zabbix/web/zabbix.conf.php $DB['SERVER'] = '172.16.1.61'; $ZBX_SERVER = '172.16.1.61';
查看zabbix_server.conf配置文件是否按照更新信息更改:
[root@m01 ~]# vim /etc/zabbix/zabbix_server.conf DBHost=172.16.1.61
1.12 zabbix客户端无法连接服务端
【问题现象】:
【原因分析】:
配置文件编写不正确或更改zabbix客户端配置文件后未重启zabbix客户端服务。
【解决方法】:
检查zabbix客户端配置文件编写是否正确后重启zabbix客户端服务:
[root@web01 ~]# service zabbix-agent restart
1.13 重启客户端服务后提示已经存在相同的key
【问题现象】:
[root@db01 ~]# service zabbix_agentd restart zabbix_agentd [25626]: ERROR: cannot add user parameter "mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/var/lib/zabbix /usr/local/mysql/bin/mysql -N | awk '{print $$2}'": key "mysql.status" already exists
【原因分析】:
配置文件中的key重复。
【解决方法】:
检查zabbix_agentd.conf.d目录内配置文件和zabbix_agentd.conf配置文件:
- 查看文件内key是否有重复项;
- 查看conf.d目录下是否有配置文件的备份文件,如果有将备份文件移出;
- 查看conf文件内编写是否正确,Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/是否有多条,有多条则只保留一条。
