1.Zabbix官方文档要求Apache的版本要在1.3.12以后php
1 |
shell> yum install httpd -y |
我这里已经安装了httpd 2.2
版本,符合官方文档中的要求html
2.启动httpd服务,并设置为开机自动启动mysql
1 |
shell> service httpd start |
PHP的版本要求在5.4以上,但Linux 6.x系统自带repo中的PHP版本是5.3.3 不符合Zabbix官方文档的要求,须要使用Remi repo来安装更高版本的PHPgit
1.下载Remigithub
1 |
shell> yum install http://rpms.famillecollet.com/enterprise/remi-release-6.rpm |
2.配置Remisql
1 |
使用习惯的文本编辑器(如 vim)打开 Remi 源配置文件 /etc/yum.repos.d/remi.repo |
3.安装PHPshell
1 |
shell> yum install --enablerepo=remi php php-gd |
由于php-gd和php版本可能有依赖,因此php-gd这个扩展也使用remi这个repo来安装数据库
若是出现Requires: libt1.so.5()(64bit)
这个报错,能够参考 http://docs.20150509.cn/2016/03/02/Requires-libt1-so-5-64bit/ 这篇文章解决json
4.根据Zabbix官方文档需求安装PHP扩展vim
1 |
shell> yum install php-bcmath php-ctype php-xml php-xmlreader php-xmlwriter php-session php-net-socket php-gettext php-mbstring php-gettext php-ldap php-mysql |
根据官方文档的要求,须要在服务器中安装一下软件支持
1 |
shell> yum install OpenIPMI OpenIPMI-devel libssh2 libssh2-devel fping libcurl libxml2 libxml2-devel net-snmp |
官方文档要求MySQL的版本要在5.0.3以上,CentOS 6.7默认的repo里提供的MySQL版本为5.1.73 符合官方文档要求
1 |
shell> yum install mysql mysql-server mysql-devel |
Zabbix 3.0的安装参考了官方文档中源码编译安装的方式,软件包的方式比较简单,你们能够参考官方文档自行试验,时间关系,这里暂不介绍rpm包的安装方式,后续有时间会补充提供这种安装方式的说明
Zabbix 3.0 源码官方下载地址: http://www.zabbix.com/download.php
选择Zabbix Sources
下的Zabbix 3.0 LTS
进行下载
1 |
shell> tar -zxvf zabbix-3.0.0.tar.gz #解压缩 |
1 |
shell> groupadd zabbix |
1 |
shell> mysql -uroot -p<password> |
1 |
shell> ./configure --help #能够查看编译的参数项 |
其余组件安装参考:
1 |
shell> ./configure --prefix=/usr --enable-proxy --with-net-snmp --with-sqlite3 --with-ssh2 #Zabbix Proxy安装参数参考 |
若是Server与Agent采用了AIO(All In One)的部署方式,做为测试,Agent的配置文件能够不修改
接下来修改Server的配置文件
1 |
shell> vim /usr/local/etc/zabbix_server.conf |
1 |
shell> zabbix_server #启动Zabbix Server |
启动其余服务:
1 |
shell> zabbix_proxy #启动Zabbix Proxy |
1 |
shell> mkdir /var/www/html/zabbix |
在打开的页面中看到“Welcome to Zabbix 3.0”几个大字就算成功了一半了!点击Next step
第二个页面Check of pre-requisites
会检查PHP的一些配置参数(第一列是变量名;第二列是PHP配置文件实际值;第三项是Zabbix强制要求的最低值或固定值),默认状况下这个页面全部的检查项应该都是“OK”的,若是有红色的错误项,根据前面提示的变量名,去找PHP的配置文件,修改为“REQUIRED”要求的值就能够啦(默认PHP的配置文件/etc/php.ini
)
第三个页面Configure DB connection
这一步骤会去尝试链接数据库。第一项数据库类型选择MySQL
;DB Host 保持默认的localhost
(由于这里采用了AIO的安装方式,数据库没有单独分离);DB Port修改为3306
;DB Name:zabbix
; User:zabbix
;Password:zabbix
。点击Next step
若是出现报错,根据报错信息排查是不是配置错误(这些配置都是在前面设置过的,3306是MySQL默认的端口号)
第四个页面Zabbix server details
保持默认的Host:localhost
和Port:10051
配置便可,Name能够自定义设置,为这套监控系统起个名字
第五个页面Pre-installation summary
总览一下前面全部的配置Next step
第六个页面Install
我在进入到这个页面后,出现了报错,提示Can not create the configuration file
下方官方也给出了手动解决这个问题的方法。按照提示,第一步点击给出的链接,下载zabbix官方提供的配置文件;第二步,根据提示,放在指定的位置保存为指定的文件,我这里提示保存为:/usr/share/zabbix/conf/zabbix.conf.php
按照提示操做完成后点击Finis
h
若是上面配置的都没有问题,第七个页面将会出现congratulations! ...
点击Finish
第八个页面将会出现登录页面,默认的登录用户名为Admin
密码为zabbix
进入到Zabbix首页后,会发现3.0版本与以前的2.x版本的界面相比面目一新,更养眼了,对解决2.x版本的审美疲劳起到了必定的做用。固然这只是最肤浅的外貌协会成员的结论,除了颜值高了,Zabbix还有50余项技术更新,变得愈发强大了~~~
Configuation
–>Hosts
–>status
中,将Disabled
变成Enabled
状态,稍等片刻,若是Zabbix Agent启动正常的话,ZBX
的图标就会亮起,表示Server与Agent之间通讯正常那么问题来了,虽然3.0换了一层扁平简约的外观,可是图表展现仍是同样的丑……为了解决这个问题,Grafana能够帮上大忙,接下来的部分就详细介绍如何使用Grafana给Zabbix监控图表披上一层华丽的外衣
略
截止至我写这篇文档的时候,Grafana的最新版本是2.6.0
而Grafana原生是不支持获取Zabbix数据的,须要经过grafana-zabbix插件来实现,grafana-zabbix插件的最新版本是2.5.1,github上写的很清楚,该插件服务于Grafana的2.5版本。通过测试,成功在2.6.0的Grafana上使用了grafana-zabbix的2.5.1版本。因此这里你能够任意选择2.5或2.6版本的Grafana来安装。
1 |
shell> yum install https://grafanarel.s3.amazonaws.com/builds/grafana-2.6.0-1.x86_64.rpm #这里只提供了yum的安装方式,其余安装方式能够参考附录中的Grafana官方安装文档 |
1 |
#https://github.com/alexanderzobnin/grafana-zabbix/releases/latest #请到该网址下载2.5.1版本的grafana-zabbix插件 |
http://IP:3000
就能够看到Grafana的登录页面了。输入默认的用户名admin
密码admin
登录Data Sourses
–>Add new
Zabbix
http://zabbix-server-ip/zabbix/api_jsonrpc.php
这里填入的是Zabbix API接口direct
使用直接访问的方式Admin
zabbix
Save
保存后再编辑,出现Test Connection
按钮,点击可测试API配置是否正确。出现:Success Zabbix API version: 3.0.0 配置成功至此仅差最后一步,将Zabbix的数据读取到Grafana来以图表展现,就打完收工啦!
Dashboards
–>Home
–>在下拉菜单的底部选择+ New
。这时新的页面中默认出现一个空的横行图表,左上角有绿色的竖线,右下角有+ ADD ROW
添加新行的按钮。Add Panel
。下面有五个选项,下面选择四个经常使用的分别介绍保存
按钮以保存新建的页面这个选项是建立一个图表,相似于Zabbix的监控图表,是最经常使用的类型之一。
+ Query
竖线
展现,以折线
展现或以点
来展现数据- +
号能够调整该模块的大小(横向伸缩)Edit
能够从新编辑该模块的数据源单统计模块,从字面意思就能够知道,该种模块仅能够展现一种数据,统计一种数据。这里须要重点说明就是Option
选项下的参数
以统计磁盘使用大小一项来举例
data
下的bytes
单位来统计Show
会在数据的下方展现折线;Background mode
会在整个模块的背景展现折线这个模块很好理解,就是一个现实文字的模块,支持markdown语法,能够放在每一个页面的头部,标记当前图表信息的归类。
这个模块是用来展现页面列表用的。举个例子,若是一个监控系统中,涉及到了多个页面展现监控图表,就会用到这个功能,这个模块会列出你须要展现的页面的列表,方便在当前页面中,快速的切换到其余监控页面。
点击右上角Last 6 hours
, 在弹出的下拉框中,选择Time range
下的Refreshing every
选项,点击下拉框按钮,默认应该有off
和1m
两个选项。点击1m
而后Apply
设置。即为每一分钟刷新一次数据的意思。设置成功后,在原来Last 6 hours
的后面会出现Refresh every 1m
的橙色文字!