编译安装zabbix
‘壹’ 装zabbix时报错
方法/步骤
yum install zabbix-server-mysql-3.4.9-1.el7.x86_64.rpm
提示Requires: libiksemel.so.3()(64bit)
‘贰’ 如何在ubuntu下编译安装zabbix系统
第一部分,php\nginx\mysql组件安装
1,php-cgi
zabbix的web前端是用php写成的,需要php来运行
view sourceprint?1 jcwu@ubuntu:~$ sudo apt-get update
2 jcwu@ubuntu:~$ sudo apt-get install php5-cgi
3 jcwu@ubuntu:~$ sudo useradd www #php运行用户
php-cgi控制脚本
view sourceprint?01 jcwu@ubuntu:~$ cat /etc/init.d/php-fcgi
02 #!/bin/bash
03
04 BIND=127.0.0.1:9000
05 USER=www
06 PHP_FCGI_CHILDREN=15
07 PHP_FCGI_MAX_REQUESTS=1000
08 PHP_CGI=/usr/bin/php-cgi
09 PHP_CGI_NAME=`basename $PHP_CGI`
10 PHP_CGI_ARGS="- USER=$USER PATH=/usr/bin PHP_FCGI_CHILDREN=$PHP_FCGI_CHILDREN PHP_FCGI_MAX_REQUESTS=$PHP_FCGI_MAX_REQUESTS $PHP_CGI -b $BIND"
11 RETVAL=0
12
13 start() {
14 echo -n "Starting PHP FastCGI: "
15 start-stop-daemon --quiet --start --background --chuid "$USER" --exec /usr/bin/env -- $PHP_CGI_ARGS
16 RETVAL=$?
17 echo "$PHP_CGI_NAME."
18 }
19 stop() {
20 echo -n "Stopping PHP FastCGI: "
21 killall -q -w -u $USER $PHP_CGI
22 RETVAL=$?
23 echo "$PHP_CGI_NAME."
24 }
25
26 case "$1" in
27 start)
28 start
29 ;;
30 stop)
31 stop
32 ;;
33 restart)
34 stop
35 start
36 ;;
37 *)
38 echo "Usage: php-fastcgi {start|stop|restart}"
39 exit 1
40 ;;
41 esac
42 exit $RETVAL
43
44 jcwu@ubuntu:~$ sudo update-rc.d php-fcgi defaults #添加至系统启动项
2,nginx
参考http://wiki.nginx.org/Install
view sourceprint?01 jcwu@ubuntu:~$sudo vi /etc/apt/source.list
02 #在文件尾添加以下2行
03 deb http://nginx.org/packages/ubuntu/ lucid nginx
04 deb-src http://nginx.org/packages/ubuntu/ lucid nginx
05 #############官方文档中如下#######################################
06 su -s
07 nginx=stable # use nginx=development for latest development version
08 add-apt-repository ppa:nginx/$nginx
09 # add-apt-repository 安装命令为 apt-get install python-software-properties
10 apt-get update
11 apt-get install nginx
12 #############我的安装命令########################################
13 jcwu@ubuntu:~$ sudo apt-get update
14 jcwu@ubuntu:~$ sudo apt-get install nginx
设置php-cgi
view sourceprint?1 sudo vi /etc/nginx/conf.d/default.conf
将root html提前到server_name下面
将location /中的index 指令后加上index.php
设置php解析
view sourceprint?01 # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
02 #
03 location ~ \.php$ {
04 root html;
05 fastcgi_pass 127.0.0.1:9000;
06 fastcgi_index index.php;
07 #fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
08 #fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
09 fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
10 include fastcgi_params;
11 }
测试
view sourceprint?1 sudo vi /usr/share/nginx/html/info.php
2 #添加
3 <!--?php phpinfo(); ?-->
4 #然后reload nginx
5 sudo kill -HUP $(cat /var/run/nginx.pid)
在浏览器中打开http://192.168.1.115/info.php
这样就OK了
3,mysql
用来存储监控数据,这里可以选很多种db2、mysql、oracle、postgresql、sqlite
view sourceprint?1 jcwu@ubuntu:~$ sudo apt-get install mysql-server
第二部分,zabbix编译安装和web前面配置
0-准备工作
view sourceprint?1 #安装编译套件
2 sudo apt-get install build-essential
3 #安装php前端需要的包
4 sudo apt-get install libmysqlclient15-dev php5-gd php5-mysql
5 #安装zabbix需要的包,snmp\curl\ssl\fping
6 sudo apt-get install snmp libsnmp-dev snmpd libcurl4-openssl-dev fping
1-添加用户,并添加到admin用户组
view sourceprint?1 sudo adser zabbix
2 sudo adser zabbix admin
2-获取zabbix 1.8.11 源码包,并解压
view sourceprint?1 cd /usr/src && wget http //prdownloads sourceforge net/zabbix/zabbix-1.8.11.tar.gz?download
2 sudo mv zabbix-1.8.11.tar.gz?download zabbix-1.8.11.tar.gz
3 tar xvf zabbix-1.8.11.tar.gz
3-mysql数据库初始化
view sourceprint?1 mysql -uroot -p -e"create database zabbix;"
2 mysql -uroot -p -e"grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"
3 mysql -D zabbix -uzabbix -pzabbix < zabbix-1.8.11/create/schema/mysql.sql
4 mysql -D zabbix -uzabbix -pzabbix < zabbix-1.8.11/create/data/data.sql
5 mysql -D zabbix -uzabbix -pzabbix < zabbix-1.8.11/create/data/images_mysql.sql
4-编译安装
view sourceprint?1 cd zabbix-1.8.11/
2 ./configure --prefix=/usr/local --with-mysql --with-net-snmp \
3 --with-libcurl --enable-server --enable-agent && \
4 make
5 sudo make install
6 #--with-net-snmp是启用SNMP协议
7 #--with-libcurl是监控web网站用的
8 #--enable-server只可在服务端上使用
9 #其它还有IPMI等,参阅./configure --help
5-系统其它设置
view sourceprint?1 sudo vi /etc/services
2 #添加
3 zabbix_agent 10050/tcp # Zabbix ports
4 zabbix_trap 10051/tcp
6-设置zabbix配置文件目录
view sourceprint?1 sudo mkdir /etc/zabbix
2 sudo chown -R zabbix.zabbix /etc/zabbix/
3 cp misc/conf/zabbix_* /etc/zabbix/
修改配置文件zabbix_server.conf
view sourceprint?1 vi /etc/zabbix/zabbix_server.conf
搜索DBUser DBPassword这两个关键字,替换为前面mysqlDB中设置的用户和密码(这里都是zabbix\zabbix)
7-设置zabbix开机启动
view sourceprint?1 sudo cp misc/init.d/debian/zabbix-server /etc/init.d
2 sudo cp misc/init.d/debian/zabbix-agent /etc/init.d
3 cd !$
4 sudo chmod 755 zabbix-*
5 sudo update-rc.d zabbix-server defaults
6 sudo update-rc.d zabbix-agent defaults
其实misc/init.d/ubuntu/下面还有2个conf配置文件,但这个扔/etc/init.d里来启动zabbix会报错
8-zabbix web界面安装设置
view sourceprint?1 sudo mkdir /usr/share/nginx/html/zabbix/
2 cd /usr/src/zabbix-1.8.11/frontends/ && sudo cp -r php /usr/share/nginx/html/zabbix
在浏览器中打开http://192.168.1.115/zabbix开始web界面的setup
这里有2个重要的地方,一是 zabbix会检查php的设置
如下图,图中标红的是默认需要修改的参数,php的设置文件为/etc/php5/cgi/php.ini
改完后记得
view sourceprint?1 sudo service php-fcgi restart
二是mysql db的设置
最后,要手动将生成的设置文件zabbix.conf.php上传到/usr/share/nginx/html/zabbix/conf
gnome终端对rz支持不好,我就不上传了,而是直接将下载的zabbix.conf.php的内容进行Ctl+C,直接在服务器上vi zabbix.conf.php然后再Shift+Insert粘贴进去
然后再点几个Next.就安装完了
zabbix默认用户是admin,密码是zabbix,登陆后一定要修改。
‘叁’ ZABBIX在编译过程中报错:configure: error: libcurl is not available for static linking
./configure --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/usr/local/zabbix
这是正确的安装方式
‘肆’ 如何在centos7上安装zabbix
zabbix 是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案,下文我们一起来看看linux中Zabbix安装配置图文教程,希望例子能帮助到各位同学哦。
说明:
操作系统:CentOS
IP地址:192.168.21.127
Web环境:Nginx+MySQL+PHP
zabbix版本:Zabbix 2.2 LTS
备注:Linux下安装zabbix需要有LAMP或者LNMP运行环境
安装篇
一、创建、导入zabbix数据库
cd /usr/local/src #进入软件包下载目录
tar zxvf zabbix-2.2.6.tar.gz #解压
cd /usr/local/src/zabbix-2.2.6/database/mysql #进入mysql数据库创建脚本目录
ls #列出文件,可以看到有schema.sql、images.sql、data.sql这三个文件
mysql -u root -p #输入密码,进入MySQL控制台
create database zabbix character set utf8; #创建数据库zabbix,并且数据库编码使用utf8
insert into mysql.user(Host,User,Password) values(‘localhost','zabbix',password('123456’)); #新建账户zabbix,密码123456
flush privileges; #刷新系统授权表
grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by '123456' with grant option; #允许账户zabbix能从本机连接到数据库zabbix
flush privileges; #再次刷新系统授权表
use zabbix #进入数据库
source /usr/local/src/zabbix-2.2.6/database/mysql/schema.sql #导入脚本文件到zabbix数据库
source /usr/local/src/zabbix-2.2.6/database/mysql/images.sql #导入脚本文件到zabbix数据库
source /usr/local/src/zabbix-2.2.6/database/mysql/data.sql #导入脚本文件到zabbix数据库
注意:请按照以上顺序进行导入,否则会出错。
exit #退出
或者这样导入
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/schema.sql
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/images.sql
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/data.sql
cd /usr/lib64/mysql #32位系统为/usr/lib/mysql,注意系统版本同,文件版本可能不一样,这里是16.0.0
ln -s libmysqlclient.so.16.0.0 libmysqlclient.so #添加软连接
ln -s libmysqlclient_r.so.16.0.0 libmysqlclient_r.so #添加软连接
二、安装zabbix
1、添加用户:
groupadd zabbix #创建用户组zabbix
useradd zabbix -g zabbix -s /bin/false #创建用户zabbix,并且把用户zabbix加入到用户组zabbix中
2、安装依赖包 #CentOS使用yum命令安装
yum install net-snmp-devel curl curl-devel mysql-devel
备注:以上软件包如果在安装Web环境LAMP或者LNMP时已经安装过,此步骤可忽略
3、安装zabbix
cd /usr/local/src/zabbix-2.2.6 #进入安装目录
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config #配置
make #编译
make install #安装
说明:find / -name mysql_config 查找位置,如果没有mysql_config,需要安装yum install mysql-devel
4、添加zabbix服务对应的端口
vi /etc/services #编辑,在最后添加以下代码
# Zabbix
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
:wq! #保存退出
5、修改zabbix配置文件
cd /usr/local/zabbix/etc
vi /usr/local/zabbix/etc/zabbix_server.conf
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户名
DBPassword=123456 #数据库密码
ListenIP=127.0.0.1 #数据库ip地址
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录
:wq! #保存退出
6、添加开机启动脚本
cp /usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server #服务端
cp /usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd #客户端
chmod +x /etc/rc.d/init.d/zabbix_server #添加脚本执行权限
chmod +x /etc/rc.d/init.d/zabbix_agentd #添加脚本执行权限
chkconfig zabbix_server on #添加开机启动
chkconfig zabbix_agentd on #添加开机启动
7、修改zabbix开机启动脚本中的zabbix安装目录
vi /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安装目录
:wq! #保存退出
vi /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安装目录
:wq! #保存退出
四、配置web站点
cd /usr/local/src/zabbix-2.2.6
cp -r /usr/local/src/zabbix-2.2.6/frontends/php /usr/local/nginx/html/zabbix
chown www.www -R /usr/local/nginx/html/zabbix
备注:/usr/local/nginx/html为Nginx默认站点目录 www为Nginx运行账户
service zabbix_server start #启动zabbix服务端
service zabbix_agentd start #启动zabbix客户端
六、修改php配置文件参数
1、vi /etc/php.ini #编辑修改
post_max_size =16M
max_execution_time =300
max_input_time =300
:wq! #保存退出
2、vi /usr/local/php/etc/php-fpm.conf #编辑修改
request_terminate_timeout = 300
:wq! #保存退出
service php-fpm reload #重启php-fpm
七、安装web
‘伍’ zabbix server 与mysql分离怎么编译安装
首先安装zabbix的时候不影响mysql 官网提供如何安装zabbix Centos_6.5 安装zabbix 2.4版本
‘陆’ 生产环境中 zabbix yum安装好 还是 源码安装好
1、YUM安装可以看成是在线安装的一种方式,只需要yum install 软件名,系统就自动根据yum源配置文件中的镜像位置去下载安装包了,并可以自动分析所需的软件依赖关系,自动安装所需的依赖软件包。此方式适合初学者,简单方便,不用考虑依赖关系
‘柒’ 如何查看zabbix编译安装的参数
1、进入zabbix的源码文件夹,比如:/usr/local/src/zabbix-3.2.6
2、查看 config.log,即可发现当初编译安装的参数。如下例所示:
This file contains any messages proced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by Zabbix configure 3.2.6, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --enable-ipv6 --with-net-snmp --with-libcurl --enable-smtp
## --------- ##
## Platform. ##
## --------- ##
hostname = hostname.domain
uname -m = x86_64
uname -r = 2.6.32-696.3.2.el6.x86_64
uname -s = Linux
uname -v = #1 SMP Tue Jun 20 01:26:55 UTC 2017
/usr/bin/uname -p = unknown
/bin/uname -X = unknown
/bin/arch = x86_64
‘捌’ CentOS 7 如何安装zabbix 4.0需要多台服务器吗
我可以和你详细讨论一下
‘玖’ 如何安装Zabbix
方法:
1.下载zabbix;
2.安装zabbix所需的组件
#yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
3.数据库创建并导入数据
#tar zxf zabbix 1.8.2.tar.gz
#cd zabbix 1.8.2
#mysql -uroot -p
>create database zabbix;
>grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
>flush privileges;
#mysql -uroot zabbix<create/schema/mysql.sql
#mysql -uroot zabbix<create/data/data.sql
#mysql -uroot zabbix<create/data/images_mysql.sql
//为zabbix创建自己的数据库,以便zabbix可以把收集到的数据信息存放在那里调用。
4.编译安装
#./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/local/mysql-5.1.56/bin/mysql_config --with-net-snmp --with-libcurl
//--prefix指定zabbix安装目录,--enable-server 支持zabbix服务器
--enable-agent支持zabbix代理
--enable-proxy 支持zabbix代理服务器
--with-mysql 使用MySQL客户端库可以选择指定路径mysql_config
--with-net-snmp 使用net - snmp软件包,择性地指定路径NET - SNMP配置
--with-libcurl 使用curl包
#make && make install
5.添加zabbix服务对应的端口(可以省略,但是官方建议有)
#cat >>/etc/services<<EOF
zabbix-agent 10050/tcp Zabbix Agent
zabbix-agent 10050/udp Zabbix Agent
zabbix-trapper 10051/tcp Zabbix Trapper
zabbix-trapper 10051/udp Zabbix Trapper
EOF
6.拷贝zabbix的配置文件到etc下,web相关文件拷贝到web目录下
#cd zabbix-1.8.2
#mkdir /etc/zabbix
#cp misc/conf/* etc/zabbix
#cp -r frontends/php /var/www/html/zabbix
修改zabbix连接的数据库的用户名和密码
#vi /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBUDBPassword=zabbix
7.为zabbix的启动、关闭和重启的脚本文件做链接,方便系统可以找得到
#cd /usr/local/zabbix/bin/
#for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done
#cd /usr/local/zabbix/sbin/
#for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done
8.把mysql的lib库文件添加到系统动态库配置文件中,方便系统可以找到mysql的lib库。
#echo “/usr/local/mysql-5.1.56/lib/mysql/” >>/etc/ld.so.conf
#ldconfig //使上面的操作立即生效
9.将zabbix相关的启动脚本等文件拷贝的/etc/init.d/下,方便日后对zabbix的启动关闭操作
#cp misc/init.d/redhat/8.0/zabbix_server /etc/init.d/
#chmod +x /etc/init.d/zabbix_server //赋予可执行权限
#cp misc/init.d/redhat/8.0/zabbix_agentd /etc/init.d/
#chmod +x /etc/init.d/zabbix_agentd
修改zabbix server和agentd程序目录的位置:
#vi /etc/init.d/zabbix_server
progdir="/usr/local/zabbix/sbin/"
#vi /etc/init.d/zabbix_agentd
progdir="/usr/local/zabbix/sbin/"
10.添加开机启动服务
#chkconfig --add zabbix_server
#chkconfig --add zabbix_agentd
#chkconfig --level 345 zabbix_server on
#chkconfig --level 345 zabbix_agentd on
7、修改php相关参数
# vi /etc/php.ini
max_input_time = 600
max_execution_time = 300
date.timezone = Asia/Shanghai
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 2
重启apache
#service httpd restart
‘拾’ 编译安装zabbix 怎么连接mysql
Zabbix的简单安装配置说明
1、在已有的LAMP或者LNMP的基础上安装zabbix,安装一些依赖包:
yum -y install mysql-devel libcurl-devel net-snmp-devel
2、添加用户:
groupadd zabbix
useradd zabbix -g zabbix
3、创建数据库,添加授权账号
create database zabbix character set utf8;
导入数据库
mysql -uzabbix -pzabbix -hlocalhost zabbix < database/mysql/schema.sql
mysql -uzabbix -pzabbix -hlocalhost zabbix < database/mysql/images.sql
mysql -uzabbix -pzabbix -hlocalhost zabbix < database/mysql/data.sql