linux编译安装zabbix,Linux 下 Zabbix 源码编译安装

Zabbix 是一个企业级开源分布式监控软件, 打算学习下,这篇文章介绍 Linux 下 Zabbix 源码编译安装过程图解。

一 环境信息

zabbix server:  192.168.2.37

zabbix agent:  192.168.2.38

二 zabbix 服务端安装

--下载

http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.2.6/zabbix-2.2.6.tar.gz/download

--解压

[root@db1 soft_bak]# tar zxvf zabbix-2.2.6.tar.gz

--创建 zabbix 用户

[root@db1 soft_bak]# groupadd zabbix

[root@db1 soft_bak]# useradd -g zabbix zabbix

[root@db1 soft_bak]# passwd zabbix

--创建 zabbix 数据库

[linuxidc94@db1~]$ mkdir-p/database/linuxidc94/pg_tbs/tbs_zabbix

[linuxidc94@db1~]$ psql-h127.0.0.1

psql(9.4beta1)

Type"help"forhelp.

postgres=# CREATE ROLE zabbix LOGIN  ENCRYPTED PASSWORD 'zabbix' nosuperuser noinherit nocreatedb nocreaterole ;

CREATE ROLE

[linuxidc94@db1~]$ psql-h127.0.0.1

psql(9.4beta1)

Type"help"forhelp.

postgres=# create tablespace tbs_zabbix owner postgres LOCATION '/database/linuxidc94/pg_tbs/tbs_zabbix';

CREATE TABLESPACE

postgres=# CREATE DATABASE zabbix

postgres-# WITH  OWNER = postgres

postgres-#      TEMPLATE = template0

postgres-#      ENCODING = 'UTF8'

postgres-#      TABLESPACE = tbs_zabbix;

CREATE DATABASE

postgres=# grant all on database zabbix to zabbix  with grant option;

GRANT

postgres=# grant all on tablespace tbs_zabbix to zabbix;

GRANT

--导入 zabbix 数据

[linuxidc93@db1~]$ cd/opt/soft_bak/zabbix-2.2.6/database/postgresql/

[linuxidc94@db1 postgresql]$ psql-h127.0.0.1-d zabbix-U zabbix-a-f schema.sql

[linuxidc94@db1 postgresql]$ psql-h127.0.0.1-d zabbix-U zabbix-a-f images.sql

[linuxidc94@db1 postgresql]$ psql-h127.0.0.1-d zabbix-U zabbix-a-f data.sql

备注: zabbix 数据库字符集为 UTF-8。

--编译

[root@db1 zabbix-2.2.6]# mkdir /usr/local/zabbix

[root@db1 zabbix-2.2.6]# ./configure  --prefix=/usr/local/zabbix --enable-server --enable-agent --with-postgresql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

--编译报错

....

checkingforfile/proc/stat...yes

checkingforfile/proc/cpuinfo...yes

checkingforfile/proc/0/psinfo...no

checkingforfile/proc/loadavg...yes

checkingforfile/proc/net/dev...yes

checkingforlonglongformat...no

checkingfor-rdynamic linking option...yes

checkingforlibperfstat5.2.0.40fileset...no

checkingforlibperfstat5.3.0.60fileset...no

checkingforarchitecture...linux(linux-gnu)

checkingforthe linux kernel version...2.6family(2.6.32-220.el6.i686)

checking size ofvoid*...4

checkingforsupport...no

checkingforpg_config...no

configure:error:PostgreSQLlibrarynotfound

备注:找不到 postgresql 相关信息,环境变量没加上,加上环境变量编译通过,如果还没其它包没装, yum 安装即可。

--yum  补充安装的包

yum install libxml2-devel

yum install net-snmp-devel.i686

yum install libcurl-devel

--安装

[root@db1 zabbix-2.2.6]# make install

--配置 php 前端

[root@db1 php]# mkdir -p /var/www/html/zabbix

[root@db1 php]# cp -r /opt/soft_bak/zabbix-2.2.6/frontends/php/* /var/www/html/zabbix/

备注:将php 程序复制到指定目录即可。

--设置 zabbix 环境变量

exportZABBIX_HOME=/usr/local/zabbix

exportPGHOME=/opt/pgsql_9.4beta1

exportLD_LIBRARY_PATH=$PGHOME/lib:$ZABBIX_HOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib

exportPATH=$ZABBIX_HOME/bin:$ZABBIX_HOME/sbin:$PATH.

--打开浏览器

http://192.168.2.37/zabbix/setup.php

4a107d92ca6695c3c0b4ad8a59ad9a65.png

点 Next , 进入 "Check of pre-requisites" 界面,一开始,我这步有很多选项没通过,没通过的参数只需要更改 /etc/php.ini 里的相应配置,并重启 httpd 即可,其它缺少的包需要安装。

7a29ab92deeb818c5b7f5286b5348f9b.png

接下来配置数据库连接,我这边用的是 PostgreSQL 数据库,遇到这个问题:

648ec710f65fdd59889992c1c3c222b3.png

报错代码 “the frontend does not match zabbix database” , 经分析是由于在 zabbix 数据库中创建了 zabbix 模式,而默认的情况 zabbix 读取的是 public 模式,所以不通过了

全部配置通过后,看到如下界面:

a7bfc6bf716a9678fe2b2b026f8ea31e.png

默认用户名 Admin ,密码 zabbix 。

--如需查看 php 配置

[root@db1~]# cat /var/www/html/index.php

phpinfo();

?>

备注:浏览器输入http://192.168.2.37/index.php 可查看 php 配置。

--配置  /usr/local/etc/zabbix_server.conf

[root@db1 etc]# grep "^[A-Z]" zabbix_server.conf

LogFile=/tmp/zabbix_server.log

DBHost=127.0.0.1

DBName=zabbix

DBUser=zabbix

DBPort=1921

--开启 zabbix 服务

[zabbix@db1~]$ zabbix_server

--可能遇到的错误

[zabbix@db1~]$ zabbix_server--help

zabbix_server:errorwhileloading shared libraries:libpq.so.5:cannot open sharedobjectfile:Nosuch fileordirectory

备注:是由于没配好LD_LIBRARY_PATH 的原因。

三 zabbix agent 客户端安装

--下载

http://www.zabbix.com/downloads/2.2.5/zabbix_agents_2.2.5.linux2_6.i386.tar.gz

--解压

[root@db2 zabbix]# cd /usr/local/zabbix

[root@db2 zabbix]# tar zxvf zabbix_agents_2.2.5.linux2_6.i386.tar.gz

--配置 /usr/local/zabbix/conf/zabbix_agentd.conf

LogFile=/tmp/zabbix_agentd.log

SourceIP=192.168.2.38##  zabbix 客户端 IP

Server=192.168.2.37##  zabbix 服务端 IP

ListenPort=10050

Hostname=db2

--开启 agentd

[zabbix@db2 sbin]$ zabbix_agentd-c/usr/local/zabbix/conf/zabbix_agentd.conf

--查看 agentd 进程

[root@db2~]# ps -ef | grep zabbix_agent

zabbix32921009:47?00:00:00zabbix_agentd-c/usr/local/zabbix/conf/zabbix_agentd.conf

zabbix32933292009:47?00:00:02zabbix_agentd:collector[idle1sec]

zabbix32943292009:47?00:00:00zabbix_agentd:listener#1 [waiting for connection]

zabbix32953292009:47?00:00:00zabbix_agentd:listener#2 [waiting for connection]

zabbix32963292009:47?00:00:00zabbix_agentd:listener#3 [waiting for connection]

root41633648010:31pts/200:00:00grep zabbix_agent

--可能遇到的问题

浏览器输入"http://192.168.2.37/zabbix/" 进入主界面,看到了如下告警

Zabbixagent on db2isunreachablefor5minutes

备注:经过一段时间检查,发现 agentd 的端口号配置错了,配置页面 Configuraton -> Hosts -> DB2 ,如下图

8241c2fe6bbfebc02168e211733ea1c1.png

一些Zabbix相关教程集合:

ZABBIX 的详细介绍:请点这里

ZABBIX 的下载地址:请点这里

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值