图文讲解zabbix安装全过程(5)

2017-01-05 11:13:37来源:oschina作者:bengozhong人点击

在了解《zabbix硬件、软件需求》之后,在你心里应该有备选的机器。今天开始安装zabbix。zabbix需要LNMP或者LAMP环境。环境的搭建不在本章范围内。


LNMP环境配置 Linux安装:http://www.osyunwei.com/archives/1024.html NGINX安装:http://www.ttlsa.com/nginx/nginx-install-on-linux/ PHP安装+NGINX配置:http://www.ttlsa.com/nginx/nginx-php-5_5/ (安装前一定要看1.1 PHP安装参数) MYSQL安装:http://www.ttlsa.com/mysql/install-mysql5_6/


1. PHP配置参数

zabbix对PHP参数、PHP模块有特殊要求。


1.1 PHP安装参数 php具体安装方法参考上面的链接,不过如下模块要特别留意加上 bcmath--enable-bcmath mbstring --enable-mbstring sockets--enable-sockets gd --with-gd libxml--with-libxml-dir=/usr/local xmlwriter 同上 xmlreader 同上 ctype默认支持 session默认支持 gettext默认支持


以下是我PHP的配置参数


./configure --prefix=/usr/local/php-5.5.7 / --with-config-file-path=/usr/local/php-5.5.7/etc --with-bz2 --with-curl / --enable-ftp --enable-sockets --disable-ipv6 --with-gd / --with-jpeg-dir=/usr/local --with-png-dir=/usr/local / --with-freetype-dir=/usr/local --enable-gd-native-ttf / --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar / --with-gettext --with-libxml-dir=/usr/local --with-zlib / --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd / --enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath



1

2

3

4

5

6

7

8

9


./configure --prefix=/usr/local/php-5.5.7 /

--with-config-file-path=/usr/local/php-5.5.7/etc --with-bz2 --with-curl /

--enable-ftp --enable-sockets --disable-ipv6 --with-gd /

--with-jpeg-dir=/usr/local --with-png-dir=/usr/local /

--with-freetype-dir=/usr/local --enable-gd-native-ttf /

--with-iconv-dir=/usr/local --enable-mbstring --enable-calendar /

--with-gettext --with-libxml-dir=/usr/local --with-zlib /

--with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd /

--enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath



1.2 PHP配置参数 打开php.ini配置文件,修改如下参数为如下值,否则zabbix安装不了。


max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 date.timezone PRC



1

2

3

4

5

6


max_execution_time = 300

memory_limit = 128M

post_max_size = 16M

upload_max_filesize = 2M

max_input_time = 300

date.timezone PRC




2 zabbix服务端安装

2.1 下载安装zabbix 所有版本下载地址:http://www.zabbix.com/download.php


# yum install net-snmp-devel libxml2-devel libcurl-devel // 一定先安装依赖 # cd /usr/local/src # wget "http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.2/zabbix-2.2.2.tar.gz?r=http%3A%2F%2Fwww.zabbix.com%2Fdownload.php&ts=1395066528&use_mirror=jaist" # tar -xzvf zabbix-2.2.2.tar.gz # cd zabbix-2.2.2 # ./configure --prefix=/usr/local/zabbix-2.2.2/ --enable-server / --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 # make # make install



1

2

3

4

5

6

7

8

9


# yum install net-snmp-devel libxml2-devel libcurl-devel // 一定先安装依赖

# cd /usr/local/src

# wget "http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.2/zabbix-2.2.2.tar.gz?r=http%3A%2F%2Fwww.zabbix.com%2Fdownload.php&ts=1395066528&use_mirror=jaist"

# tar -xzvf zabbix-2.2.2.tar.gz

# cd zabbix-2.2.2

# ./configure --prefix=/usr/local/zabbix-2.2.2/ --enable-server /

--enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2

# make

# make install



在zabbix server一般充当两个角色:server、angent,所以上面的配置参数也同时加上了--enable-agent。 备注:请安装好MySQL,snmp,curl开发库。


2.2 创建用户 为了安全考虑zabbix只使用普通用户运行,假如你当前用户叫ttlsa,那么你运行他,他便使用ttlsa身份运行。但是如果你在root环境下运行 zabbix,那么zabbix将会主动使用zabbix用户来运行。但是如果你的系统没有名叫zabbix的用户,你需要创建一个用户,如下: # groupadd zabbix # useradd -g zabbix zabbix


2.3 初始化数据库 zabbix server与proxy需要数据库,angent不需要。尤其要注意的是proxy只需要导入一个sql文件,而server一共要导入3个sql文 件。我当时在搭建proxy的时候导入了3个sql,导致出现报错。后来才发现proxy只需要导入一个表结构即可。


我假想你安装好了MySQL,用户名为root,密码为ttlsapwd


# mysql -uroot -pttlsapwd mysql> create database zabbix default charset utf8; mysql> quit; # mysql -uroot -pttlsapwd zabbix < database/mysql/schema.sql



1

2

3

4


# mysql -uroot -pttlsapwd

mysql> create database zabbix default charset utf8;

mysql> quit;

# mysql -uroot -pttlsapwd zabbix < database/mysql/schema.sql



备注:创建数据库请别忘记加default charset utf8,有可能会导致你出现中文乱码问题,具体问题请查看《zabbix中文乱码解决方法》


如果你仅仅是初始化proxy的数据库,那么够了。如果初始化server,那么接着导入下面两个sql


# mysql -uroot -pttlsapwd zabbix < database/mysql/images.sql # mysql -uroot -ppttlsapwd zabbix < database/mysql/data.sql



1

2


# mysql -uroot -pttlsapwd zabbix < database/mysql/images.sql

# mysql -uroot -ppttlsapwd zabbix < database/mysql/data.sql



其他数据库(db2/sqlite/oracle)数据库初始化方法参考:https://www.zabbix.com/documentation/2.2/manual/appendix/install/db_scripts


2.4 配置zabbix 配置zabbix_server配置文件,zabbix源码目录下


# mkdir /etc/zabbix # cp config/zabbix_server.conf /etc/zabbix/ # vim /etc/zabbix/zabbix_server.conf DBName=zabbix DBUser=root DBPassword=ttlsapwd DBPort=3306



1

2

3

4

5

6

7


# mkdir /etc/zabbix

# cp config/zabbix_server.conf /etc/zabbix/

# vim /etc/zabbix/zabbix_server.conf

DBName=zabbix

DBUser=root

DBPassword=ttlsapwd

DBPort=3306



2.5 启动zabbix server


# /usr/local/zabbix-2.2.2/sbin/zabbix_server



1


# /usr/local/zabbix-2.2.2/sbin/zabbix_server



默认端口10051


3. 客户端安装配置

3.1 下载安装客户端 所有版本下载地址:http://www.zabbix.com/download.php,可以直接下载已经编译好的二进制文件,或者也可以源码安装。


# cd /usr/local/src # wget "http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.2/zabbix-2.2.2.tar.gz?r=http%3A%2F%2Fwww.zabbix.com%2Fdownload.php&ts=1395066528&use_mirror=jaist" # tar -xzvf zabbix-2.2.2.tar.gz # cd zabbix-2.2.2 # ./configure --prefix=/usr/local/zabbix-2.2.2/ --enable-agent # make # make install



1

2

3

4

5

6

7


# cd /usr/local/src

# wget "http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.2/zabbix-2.2.2.tar.gz?r=http%3A%2F%2Fwww.zabbix.com%2Fdownload.php&ts=1395066528&use_mirror=jaist"

# tar -xzvf zabbix-2.2.2.tar.gz

# cd zabbix-2.2.2

# ./configure --prefix=/usr/local/zabbix-2.2.2/ --enable-agent

# make

# make install



3.2 zabbix客户端配置 配置zabbix_server配置文件,zabbix源码目录下


# vim /usr/local/zabbix-2.2.2/etc/zabbix_agentd.conf Server=127.0.0.1 ServerActive=127.0.0.1 Hostname=Zabbix server



1

2

3

4


# vim /usr/local/zabbix-2.2.2/etc/zabbix_agentd.conf

Server=127.0.0.1

ServerActive=127.0.0.1

Hostname=Zabbix server



其中Server和ServerActive都指定zabbixserver的IP地址,不同的是,前者是被动后者是主动。也就是说Server这 个配置是用来允许127.0.0.1这个ip来我这取数据。而serverActive的127.0.0.1的意思是,客户端主动提交数据给他。明白了 吗?为什么要分主动和被动?后续再来讨论这个问题!


其他主机安装客户端记得添加zabbix用户。


3.3 zabbix客户端启动


# /usr/local/zabbix-2.2.2/sbin/zabbix_agentd



1


# /usr/local/zabbix-2.2.2/sbin/zabbix_agentd



默认端口10050


4. zabbix管理网站配置

4.1 拷贝前端文件


# mkdir /data/logs/nginx # mkdir /data/site/monitor.ttlsa.com/zabbix # cp -rp frontends/php/* /data/site/monitor.ttlsa.com/zabbix



1

2

3


# mkdir /data/logs/nginx

# mkdir /data/site/monitor.ttlsa.com/zabbix

# cp -rp frontends/php/* /data/site/monitor.ttlsa.com/zabbix



4.2 配置虚拟主机 请相应修改你的配置文件路径


# vim /usr/local/nginx-1.5.8/conf/vhost/monitor.ttlsa.com.conf server {listen 80;server_name monitor.ttlsa.com;access_log /data/logs/nginx/monitor.ttlsa.com.access.log main;index index.html index.php index.html;root /data/site/monitor.ttlsa.com;location /{try_files $uri $uri/ /index.php?$args;}location ~ ^(.+.php)(.*)$ {fastcgi_split_path_info ^(.+.php)(.*)$;include fastcgi.conf;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param PATH_INFO $fastcgi_path_info;} }



1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22


# vim /usr/local/nginx-1.5.8/conf/vhost/monitor.ttlsa.com.conf

server {

listen 80;

server_name monitor.ttlsa.com;

access_log /data/logs/nginx/monitor.ttlsa.com.access.log main;

index index.html index.php index.html;

root /data/site/monitor.ttlsa.com;

location /

{

try_files $uri $uri/ /index.php?$args;

}

location ~ ^(.+.php)(.*)$ {

fastcgi_split_path_info ^(.+.php)(.*)$;

include fastcgi.conf;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param PATH_INFO $fastcgi_path_info;

}

}



4.3 在线配置zabbix 浏览器打开http://monitor.ttlsa.com/zabbix。 如下是zabbix 2.2的安装界面,包括欢迎界面一共6步.


4.3.1 欢迎界面


monitor


zabbix安装


4.3.2 php需求检查


monitor


zabbix php环境检查


4.3.3 MySQL配置


monitor


zabbix MySQL配置


4.3.4 zabbix服务端详细信息


monitor


zabbix-detail


4.3.5 zabbix安装前信息列表

monitor


zabbix安装前信息


4.3.6 安装完成


如果失败了,一般情况是php对zabbix没有写权限


monitor


zabbix安装完成


登陆zabbix,默认用户名:Admin,密码:zabbix


monitor


zabbix登陆


如下是zabbix首页


monitor


zabbix首页


5. 结束

zabbix安装比较简单,但是也比较消耗时间。相比之下,未来的路还长着呢。请大家继续关注我们运维生存时间的zabbix系列教程。下一篇文章《zabbix数据库需要多大硬盘?我告诉你(6)》

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台