开发者社区> 科技小能手> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Zabbix服务器端安装过程(含centos 7.1安装 zabbix3.0.8的故障排除)

简介:
+关注继续查看

Task 7

 目标:监控线上服务的正常运行

 意义:了解运维的另一份重要职责,系统监控

 步骤:1.安装zabbix                  2.配置监控任务7的Web项目

 要求:1.停止服务之后,发出报警邮件 

                  2.启动服务之后,发出故障恢复邮件                  

                  3.查看系统的其他负载。了解CPU,IO,内存的使用率。超过设定阈值之后报警。

 掌握技能:     

   1.zabbix的配置 2.邮件发送的配置 3.了解服务器的基本状况



http://www.osyunwei.com/archives/7984.html,这就是安装及汉化的全部过程,感谢先人栽树!


这篇文章写的已经很到位了,一步一步按着来肯定能安装完毕,不过要注意他的Nginx安装包不是官方下载的,而是lnmp的包,如果是官方下载的话,需要在.conf那里多改一点东西。


这里面有几个细节问题,原作者没有说,都是发生在网页调试阶段

1)http://本地ip/zabbix/setup.php 网页打不开

将lnmp的nginx.conf中的local位置改成setup.php的目录,即由原来的/home/wwwroot/default改成/usr/local/nginx/html/。这样配置文件会默认打开新的路径并且找到index.html,同时在这个路径下输入/zabbix/setup.pjp也是可读的。

2)下一步,即Check of pre-requisites这步会有红字错误,文中作者说是要改/etc/php.ini,其实不对,#find / -name php.ini一下就会发现,其实有两个php.ini,需要改的其实是/usr/local/php/etc/php.ini,如图:

wKiom1ac6ZOQNes6AABs4_Sn-zI879.png

wKioL1ac6c3TW-_uAAA1eJAlyfo145.png

改完之后,需要#service php-fpm reload一下,然后刷新一下网页就能看到,配置文件里改成了303,而网页显示的也是303,这证明了这个php.ini才是真的需要更改的配置文件,其实改成300就可以了。


如果Zabbix server is not running怎么办?

#netstat -anp|grep zabbix,看看是否有zabbix server的项目,若是没有的话,#service zabbix_server start,这句命令有的机器是#service zabbix-server start

同时要关闭selinux,这玩意我也不知道美国国家安全局发明它有啥用,貌似我接触的运维软件都是要关闭这个的。#vim /etc/selinux/conf,然后将SELINUX = disabled。


还有一种超级情况,就是这样:

1453139461_601125.png明明启动了zabbix_server,但是检查端口的使用,却没有server这个服务,可见server根本没有启动,如果你使用#service zabbix_server restart,会发现shutdown那一步是“失败”的。


出现这种情况第一件事先检查mysql的服务器是否打开,#service mysql start,如果依旧,那就调用启动日志。默认的启动日志是/tmp/zabbix_server.log,vim了它,发现出现这样的字样:

wKioL1aeA2Wz0faeAAAfg4ja00o599.png说链接mysql的zabbix数据库失败,那么就要返回去zabbix的配置文件,看一下用户名和密码是否填写正确,默认的zabbix的配置文件在/user/local/zabbix/etc/zabbix_server.conf,vim一下,找到DBname,这个是zabbix,不要改,DBuser这个是mysql的登录名,DBpasswd这个就是登陆的密码。


我这个情况很奇怪,我使用账号zabbix和对应的密码是可以登录mysql的,但是SHOW DATABASES一下却看不到这个zabbix的数据库,而使用root账号登陆却是有的,我想是用户权限出了问题。于是我把zabbix_server.conf的DBuser改成root,密码也对应更改,就提示OK了。


情况二:检查日志,zabbix的日志写的比较好,比较通俗,发现日志的内容是这样的:

connection to database 'ZABBIX' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

 26986:20160707:092553.068 Database is down. Reconnecting in 10 seconds.

由于我这次设置的数据库叫ZABBIX,区分大小写。所以第一时间要登陆mysql,然后使用SHOW DATABASESE;这个命令检查一下这个账户和密码是否能看到ZABBIX这个数据库,如果没有,就CREATE DATABASE ZABBIX;建立ZABBIX数据库。


建立完毕,还是提示连接不上,那么就去zabbix_server.log里检查一下DBName和DBPasswd是否正确,顺便再去zabbix.conf.php检查一下,如果不正确,请按设定更改,然后#service zabbix_server restart。


如果还不正确,那就是socket的问题,#ps auxwww|grep mysql,检查一下看一下mysql的socket,比如这台机器检查到mysql的情况如下:

wKioL1d9sjvB01vjAAA8StuU-28489.png看到配置的socket位置是/tmp/mysql.sock,而不是日志写的/var/lib/mysql/mysql.sock,于是乎,来到zabbix_server.conf里更改如下:

wKioL1d9suOCCwZTAAAcQJ2k03s766.png


然后重启zabbix_server服务即可。


==========================================分割线======================================

centos7.1 通过yum安装 zabbix 3.0的方法主要参考:http://www.cnblogs.com/hanyifeng/p/5353068.html


这里说一点其他地方的坑:

1)Requires: libnetsnmp.so.20()(64bit)的错误:

# yum install zabbix-agent zabbix-server zabbix-server-pgsql -y
...
Error: Package: zabbix-server-pgsql-2.4.1-1.el6.x86_64 (zabbix)
           Requires: libnetsnmp.so.20()(64bit)

# yum provides libnetsnmp* --showduplicates | grep -w libnetsnmp
Provides    : libnetsnmp.so.31
Provides    : libnetsnmp.so.31()(64bit)
Provides    : libnetsnmp.so.31()(64bit)

找我要libnetsnmp.so.20()(64bit),但是7.1已经没有20()了,那么就去/etc/yum.repos.d/zabbix.repo这个文件里,把下面两行更改一下:

1
2
baseurl=http://repo.zabbix.com/zabbix/2.4/rhel/6/$basearch/
baseurl=http://repo.zabbix.com/non-supported/rhel/6/$basearch/

更改成

1
2
baseurl=http://repo.zabbix.com/zabbix/2.4/rhel/7/$basearch/ 
baseurl=http://repo.zabbix.com/non-supported/rhel/7/$basearch/


2)启动zabbix的时候会启动失败,这个时候需要先把seforce停止,然后安装下面两个东西:

[root@test ~]# yum install trousers -y
[root@test ~]# yum install gnutls -y



3)进入web界面却是下面这样的样子,那是因为这台机器是原机zabbix2.2升级到3.0.8,需要在浏览器把cookie重新清理一下即可:

wKiom1jaFxqyVZjHAAEu6u4mgz8102.png-wh_50



 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1736330


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
全方位解读服务网格(Service Mesh)的背景和概念
为了解决微服务框架的侵入性问题,我们引入服务网格。
1254 0
PolarDB 并行查询的前世今生
本文会深入介绍PolarDB MySQL在并行查询这一企业级查询加速特性上做的技术探索、形态演进和相关组件的实现原理,所涉及功能随PolarDB MySQL 8.0.2版本上线。
524 0
企业内部应用接入钉钉获取部门及人员信息
企业内部应用接入钉钉,同时通过API获取当前企业下部门及人员信息
1201 0
MySQL模糊查询再也用不着 like+% 了!
我们都知道 InnoDB 在模糊查询数据时使用 "%xx" 会导致索引失效,但有时需求就是如此,类似这样的需求还有很多,例如,搜索引擎需要根基用户数据的关键字进行全文查找,电子商务网站需要根据用户的查询条件,在可能需要在商品的详细介绍中进行查找,这些都不是B+树索引能很好完成的工作。 通过数值比较,范围过滤等就可以完成绝大多数我们需要的查询了。但是,如果希望通过关键字的匹配来进行查询过滤,那么就需要基于相似度的查询,而不是原来的精确数值比较,全文索引就是为这种场景设计的。
25676 0
阿里云云原生一体化数仓正式发布  助力企业数据驱动业务创新
云原生一体化数仓是集阿里云大数据产品MaxCompute、DataWorks、Hologres三种产品能力于一体的一站式大数据处理平台。核心是3个一体化和全链路数据治理能力,包括离线实时一体、湖仓一体、分析服务一体、全链路数据治理。
1622 0
全面公测|Grafana服务:一张图表胜过千行指标&日志
Grafana 帮助运维人员轻松处理各类运维过程中遇到的各类数据可视化与分析难题。目前阿里云 Grafana 服务全面免费公测,帮助企业轻松构建运维数据可视化平台,轻松实现数据驱动运维!
1174 0
一起学Golang系列(五)初次接触Go语言可能遇到的各种坑!
前面介绍了Go语言的基础语法,所谓磨刀不误砍柴工,希望大家还是能熟悉掌握这些基础知识,这样后面真正学起Go来才会得心应手。 作为初学者。Go语言的语法有些和java类似,但也有很多不一样的地方。刚开始都会遇到各种各样的坑。下面就来总结下学习go语言的过程中,遇到的各种坑。
1046 0
设备接入--海康摄像头SDK
springboot-对接海康摄像头,兼容window和Linux环境
1360 0
Flink SQL 在快手的扩展和实践
快手实时计算团队技术专家张静、张芒在 FFA 2021 的分享
1167 0
无影云桌面,企业与个人的应用神器
阿里云无影云桌面( Elastic Desktop Service)的原产品名为弹性云桌面,融合了无影产品技术后更名升级。它可以为您提供易用、安全、高效的云上桌面服务,帮助您快速构建、高效管理桌面办公环境,提供安全、灵活的办公体系。
276311 0
23704
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载