源码安装zabbix
Posted 尹正杰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了源码安装zabbix相关的知识,希望对你有一定的参考价值。
源码安装zabbix
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
欢迎加入:高级运维工程师之路 598432640
前言:参考网上多篇源码安装的连接,自己把安装过程丢在这里不让后人继续进坑了。在安装zabbix之前,你要有LNMP环境,可以参考的另外一片文档,是关于LNMP的~我是在那个环境基础上搭建出来的(http://www.cnblogs.com/yinzhengjie/p/6126818.html)~建议关闭selinux,不然写规则起来比较麻烦~但iptables建议要开启来!
以下是我安装zabbix的笔记,建议用一可以联网的测试机将之前的LNMP环境搭好,然后在进行下面的操作,不然你可能会掉坑哟~缺少各种依赖包的情况。
一.安装配置zabbix
1.下载zabbix软件包
链接:http://pan.baidu.com/s/1gePtFBd 密码:9ioz
[root@yinzhengjie ~]# yum -y install lrzsz //利用linux自带的上传命令上传软件包到服务器目录上
2.安装依赖包,不然配置zabbix的时候会报错
1 [root@yinzhengjie ~]# mkdir -pv /yinzhengjie/ && cd /yinzhengjie
2 [root@yinzhengjie yinzhengjie]# yum -y install mysql-devel net-snmp-devel
3.源码安装zabbix
1 [root@yinzhengjie yinzhengjie]# tar -zxvf zabbix-3.0.4.tar.gz
2 [root@yinzhengjie yinzhengjie]# cd zabbix-3.0.4
3 [root@yinzhengjie zabbix-3.0.4]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2
4 [root@yinzhengjie zabbix-3.0.4]# make -j 4 && make install
4.创建zabbix用户
1 [root@yinzhengjie ~]# groupadd zabbix
2 [root@yinzhengjie ~]# useradd zabbix -s /sbin/nologin -M -g zabbix
5.导入sql文件
1 [root@yinzhengjie zabbix-3.0.4]# pwd 2 /yinzhengjie/zabbix-3.0.4 3 [root@yinzhengjie zabbix-3.0.4]# mysql -uroot -pyinzhengjie zabbix < database/mysql/schema.sql 4 [root@yinzhengjie zabbix-3.0.4]# mysql -uroot -pyinzhengjie zabbix < database/mysql/images.sql 5 [root@yinzhengjie zabbix-3.0.4]# mysql -uroot -pyinzhengjie zabbix < database/mysql/data.sql 6 [root@yinzhengjie zabbix-3.0.4]#
6.创建zabbix项目目录便于管理
a>.将数据拷贝到指定的项目目录中
1 [root@yinzhengjie zabbix]# more /etc/init.d/zabbix_server | grep DAEMON= 2 DAEMON=/usr/local/zabbix/sbin/zabbix_server 3 [root@yinzhengjie zabbix]# 4 [root@yinzhengjie zabbix]# more /etc/init.d/zabbix_agentd | grep DAEMON= 5 DAEMON=/usr/local/zabbix/sbin/zabbix_agentd 6 [root@yinzhengjie zabbix]#
b>.修改配置文件
切记要修改这个变量的path,因为咱们是源码安装的,路径并不是默认的,如果不修改的话脚本就会报错哟~具体的可以参考这个Shell脚本,如果你shell不是很好的,可以看一下我的shell学习笔记,相信你看完的shell笔记再来看这个脚本就是小菜一碟了。
1 [root@yinzhengjie zabbix]# more /etc/init.d/zabbix_server | grep DAEMON= 2 DAEMON=/usr/local/zabbix/sbin/zabbix_server 3 [root@yinzhengjie zabbix]# 4 [root@yinzhengjie zabbix]# more /etc/init.d/zabbix_agentd | grep DAEMON= 5 DAEMON=/usr/local/zabbix/sbin/zabbix_agentd 6 [root@yinzhengjie zabbix]#
1 [root@yinzhengjie ~]# mkdir -pv /usr/local/nginx/conf/zabbix && cd /usr/local/nginx/conf/zabbix 2 [root@yinzhengjie zabbix]# 3 [root@yinzhengjie zabbix]# more zabbix.conf 4 server { 5 listen 8080; 6 server_name web; 7 access_log /yinzhengjie/data/zabbix/log/zabbix.access.log main; 8 index index.html index.php index.html; 9 root /yinzhengjie/data/zabbix/web; 10 location /{ 11 try_files $uri $uri/ /index.php?$args; 12 } 13 location ~ ^(.+.php)(.*)$ { 14 fastcgi_split_path_info ^(.+.php)(.*)$; 15 include fastcgi.conf; 16 fastcgi_pass 127.0.0.1:9000; 17 fastcgi_index index.php; 18 fastcgi_param PATH_INFO $fastcgi_path_info; 19 } 20 } 21 [root@yinzhengjie zabbix]#
8.编辑zabbix的配置文件
修改相应的参数,注意,这些用户名密码都是在搭建LNMP时设置的,这个密码要和数据库的密码要一直,数据库如果不是本机的话就得写一下数据的IP哟!
1 [root@yinzhengjie zabbix]# cat /usr/local/zabbix/etc/zabbix_server.conf | grep -v ^# | grep -v "^$" 2 LogFile=/tmp/zabbix_server.log 3 PidFile=/tmp/zabbix_server.pid 4 DBHost=localhost 5 DBName=zabbix 6 DBUser=zabbix 7 DBPassword=zabbix 8 Timeout=4 9 LogSlowQueries=3000 10 [root@yinzhengjie zabbix]#
9..编辑nginx的配置文件(基本上是架空了nginx配置文件,而是用include模块已经写好的调用配置文件)
1 [root@yinzhengjie ~]# cd /usr/local/nginx/conf/ 2 [root@yinzhengjie conf]# 3 [root@yinzhengjie conf]# more nginx.conf 4 user nginx; 5 worker_processes 1; 6 7 #error_log logs/error.log warning; 8 #error_log logs/error.log notice; 9 #error_log logs/error.log info; 10 pid logs/nginx.pid; 11 12 events { 13 worker_connections 1024; 14 } 15 http { 16 include mime.types; 17 default_type application/octet-stream; 18 log_format main \'$remote_addr - $remote_user [$time_local] "$request" \' 19 \'$status $body_bytes_sent "$http_referer" \' 20 \'"$http_user_agent" "$http_x_forwarded_for"\'; 21 access_log logs/access.log main; 22 sendfile on; 23 keepalive_timeout 65; 24 gzip on; 25 include zabbix/*.conf; 26 } 27 [root@yinzhengjie conf]#
10.重启相关服务
1 [root@yinzhengjie ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT 2 [root@yinzhengjie ~]# iptables -I INPUT -p tcp --dport 8080 -j ACCEPT 3 [root@yinzhengjie ~]# service zabbix_server start 4 Zabbix server started. 5 [root@yinzhengjie ~]# service zabbix_agentd start 6 Zabbix agent started. 7 [root@yinzhengjie ~]# 8 9 [root@yinzhengjie ~]# service nginx restart 10 Stop Nginx... [OK] 11 Starting Nginx... [OK] 12 [root@yinzhengjie ~]#
好了,以上就是zabbix服务器已经部署完毕了,下面我们要开始页面安装zabbix了
二.前端安装配置
1.首先登陆服务器地址(服务器地址+nginx监听zabbix的端口号,listen 8080;)
http://172.16.96.66:8080
2.输入账号密码,这个是在zabbix配置文件中定义的
3.直接下一步
4.点击下一步
5.需要下载文件到服务器
a>.第一步,点击图中连接进行下载,然后上传到服务器并修改相应的权限;
1 [root@yinzhengjie ~]# cd /yinzhengjie/data/zabbix/web/conf/ 2 [root@yinzhengjie conf]# ll 3 总用量 8 4 -rw-r--r--. 1 1000 1000 1036 7月 22 2016 maintenance.inc.php 5 -rw-r--r--. 1 1000 1000 411 7月 22 2016 zabbix.conf.php.example 6 [root@yinzhengjie conf]# rz 7 rz waiting to receive. 8 zmodem trl+C ȡ 9 10 100% 415 bytes 415 bytes/s 00:00:01 0 Errors 11 12 [root@yinzhengjie conf]# ll #查看文件的属主属组有问题 13 总用量 12 14 -rw-r--r--. 1 1000 1000 1036 7月 22 2016 maintenance.inc.php 15 -rw-r--r--. 1 root root 415 10月 13 12:56 zabbix.conf.php 16 -rw-r--r--. 1 1000 1000 411 7月 22 2016 zabbix.conf.php.example 17 [root@yinzhengjie conf]# chown -R 1000:1000 zabbix.conf.php #修改文件的所有者和所属组 18 [root@yinzhengjie conf]# 19 [root@yinzhengjie conf]# ll 20 总用量 12 21 -rw-r--r--. 1 1000 1000 1036 7月 22 2016 maintenance.inc.php 22 -rw-r--r--. 1 1000 1000 415 10月 13 12:56 zabbix.conf.php 23 -rw-r--r--. 1 1000 1000 411 7月 22 2016 zabbix.conf.php.example 24 [root@yinzhengjie conf]#
b>.等第一步完成之后,再来到web界面点击右键刷新即可;
6.输入账号密码,默认用户名是“admin”,默认密码是“zabbix”,当然这些都是可以修改的。
7.登陆zabbix主界面
三.防坑小技巧
安装zabbix其实很简单,就算是刚刚入门的童鞋,给他2个小时也是很轻松的安装完成的,不是吗?zabbix的难点在于其配置的繁琐,虽然有服务器,网络设备的模板,但是和我们实际业务需求可能偏差很大,因此,需要我们自定义写脚本之类的。
zabbix的功能强大到什么程度,需要你用了才知道,用好它对你的运维生涯必定是好处大大的哟~,后期如果有时间,我很跟大家一起分享一些用zabbix的小技巧。
1.配置中文界面
a>.点击zabbix用户图标
b>.选择我们的母语
c>.点击更新
d>.查看效果
e>.如果你出现了以下的情况,不要慌,我已经找到了解决方案。继续往下看,如果你的服务器中文显示正常就可以不用往下看了
f>.怎么处理这个问题呢?其实很简单,我们可以把windows系统自带的字体放到服务器上替换一下就好使了。找到windows楷体的字体文件:
g>.更换zabbix服务器字体文件
1 [root@yinzhengjie ~]# cd /yinzhengjie/data/zabbix/web/fonts 2 [root@yinzhengjie fonts]# mv DejaVuSans.ttf /yinzhengjie/ 3 [root@yinzhengjie fonts]# ll 4 总用量 11512 5 -rw-r--r--. 1 root root 11785184 7月 17 06:28 simkai.ttf #用Linux自带的rz命令上传刚刚的文件即可~ 6 [root@bogon fonts]#
h>.修改配置文件,之后切换到末行模式:执行 %s/DejaVuSans/simkai
1 [root@yinzhengjie ~]# more /yinzhengjie/data/zabbix/web/include/defines.inc.php | grep ZBX_GRAPH_FONT_NAME 2 define(\'ZBX_GRAPH_FONT_NAME\', \'simkai\'); // font file name 3 define(\'ZBX_GRAPH_FONT_NAME\', \'simsun\'); // font file name #此行为新增行 4 [root@yinzhengjie ~]# 5 [root@yinzhengjie ~]# more /yinzhengjie/data/zabbix/web/include/defines.inc.php | grep ZBX_FONT_NAME 6 define(\'ZBX_FONT_NAME\', \'simkai\'); 7 define(\'ZBX_FONT_NAME\', \'simsun\'); #此行为新增行; 8 [root@yinzhengjie ~]#
I>.重启zabbix服务
1 [root@yinzhengjie yinzhengjie]# /etc/init.d/zabbix_server restart 2 Zabbix server terminated. 3 Zabbix server started. 4 [root@yinzhengjie yinzhengjie]#
J>.验证你的服务器是否都是正常的字体了
以上是关于源码安装zabbix的主要内容,如果未能解决你的问题,请参考以下文章
Android 插件化VirtualApp 源码分析 ( 目前的 API 现状 | 安装应用源码分析 | 安装按钮执行的操作 | 返回到 HomeActivity 执行的操作 )(代码片段