共计 10866 个字符,预计需要花费 28 分钟才能阅读完成。
CentOS 6.8 下 Zabbix Server 安装部署详细步骤
所需要的环境:apache php mysql
这里 apache 和 mysql 已经预先装好了,具体安装请参见 apache 和 mysql 的安装方法
因为装 php 的时候遇到了很多问题
可能步骤会有些乱
1. 准备 zabbix 的源码包
http://www.zabbix.com/download.php
zabbix-2.4.8.tar.gz
这里用的是 2.4.8 版本
解压
[root@linux1 ~]# tar -zxvf zabbix-2.4.8.tar.gz
[root@linux1 ~]# cd zabbix-2.4.8
2. 新建用户组
[root@linux1 ~]# groupadd zabbix
[root@linux1 ~]# useradd -g zabbix zabbix
3.zabbix 数据库创建导入
mysql> create database zabbix character set utf8;
mysql> use zabbix
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by “zabbix”;
mysql> flush privileges;
mysql> source /root/zabbix-2.4.8/database/mysql/schema.sql
mysql> source /root/zabbix-2.4.8/database/mysql/images.sql
mysql> source /root/zabbix-2.4.8/database/mysql/data.sql
4. 编译安装 zabbix
[root@linux1 ~]# cd zabbix-2.4.8
[root@linux1 zabbix-2.4.8]# ./configure –prefix=/usr/local/zabbix –with-mysql –with-net-snmp –with-libcurl –enable-server –enable-agent –enable-proxy
可能会缺少一些包,查看一下报错,用 yum 安装即可
[root@linux1 zabbix-2.4.8]# make
[root@linux1 zabbix-2.4.8]# make install
5. 添加服务端口
[root@linux1 zabbix-2.4.8]# vim /etc/services
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
6. 修改 zabbix 配置文件
[root@linux1 ~]# cd /usr/local/zabbix/etc
[root@linux1 ~]# vim zabbix_server.conf
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户名
DBPassword=zabbix #数据库密码
DBPort=3306 #我机器数据库端口是 3306
DBSocket=/tmp/mysql.sock
ListenIP=192.168.1.120 #数据库 ip 地址
7. 设置启动脚本
zabbix 默认的启动脚本在 /usr/local/zabbix/sbin/ 下
[root@linux1 ~]# cp /usr/local/zabbix/sbin/zabbix_server /etc/init.d/zabbix_server
[root@linux1 ~]# cp /usr/local/zabbix/sbin/zabbix_agentd /etc/init.d/zabbix_agentd
[root@linux1 ~]# chkconfig zabbix_server on #添加开机启动
[root@linux1 ~]# chkconfig zabbix_agentd on #添加开机启动
8. 设置 zabbix 的 web 站点
[root@linux1 ~]# mkdir /usr/local/apache/zabbix
[root@linux1 ~]# cp /root/zabbix-2.4.8/frontends/php/* /usr/local/apache/zabbix/
修改 apache 的配置文件
[root@linux1 ~]# vim /usr/local/apache2/conf/httpd.conf
Alias /zabbix /usr/local/apache2/zabbix
<Directory /usr/local/apache2/zabbix>
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
<IfModule dir_module>
DirectoryIndex index.html index.php 在这后面添加 index.php
</IfModule>
在这两行后面
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
9. 下载 php 源码包
http://www.php.net/downloads.php
php-5.6.29.tar.gz
解压
[root@linux1 ~]# tar -zxvf php-5.6.29.tar.gz
10. 编译安装 php
[root@linux1 ~]# cd php-5.6.29
[root@linux1 php-5.6.29]# ./configure \
–prefix=/usr/local/php \
–with-apxs2=/usr/local/apache2/bin/apxs \
–enable-bcmath \
–enable-sockets \
–with-libxml-dir \
–with-zlib \
–with-curl \
–with-gd \
–with-jpeg-dir \
–with-png-dir \
–with-zlib-dir \
–with-freetype-dir \
–with-gettext \
–enable-mbstring \
–with-mcrypt \
–with-mysql=/usr/local/mysql \
–with-pdo-mysql=/usr/local/mysql/bin/mysql_config \
–with-mysqli=/usr/local/mysql/bin/mysql_config \
–enable-zip \
–with-bz2 \
–enable-soap \
–with-pear \
–with-pcre-dir \
–with-openssl \
–with-config-file-path=/usr/local/php/etc \
–enable-shmop \
–enable-intl \
这中间可能会缺少很多包,报错解决办法参见
PHP 编译安装时常见错误解决办法
http://www.linuxidc.com/Linux/2016-12/138909.htm
[root@linux1 php-5.6.29]# make
[root@linux1 php-5.6.29]#make install
11. 测试一下 apache 是否可以解析 php(这一步没有问题可以不做,因为当时在这里卡了很久)
在 /usr/local/apache2/htdocs/ 新建一个 php 页面
[root@linux1 htdocs]# vi info.php
<?php
phpinfo();
?>;
重启一下 apache
[root@linux1 htdocs]# service httpd restart
用浏览器打开 192.168.1.120/info.php
出现上面的界面说明可以运行 php,同时这里也能看到 php 的具体配置信息
* 我在这里遇到的问题
apache 无法解析 php,原因是 apache 中没有加载 libphp5.so 模块,
这个模块是在编译安装 php 时就应该导入进 apache,配置命令如下
–with-apxs2=/usr/local/apache2/bin/apxs
但是结果 apache 中并没有 libphp5.so 模块,不知道是什么原因
起初我编译的是 php5.5,找不出原因之后我才重新下载了 5.6 版本进行编译安装
发现 libphp5.so 导入成功,apache 可以运行 php
12. 修改 php.ini
[root@linux1 ~]# vi /usr/local/php/etc/php.ini
date.timezone = Asia/Shanghai
max_execution_time= 300
post_max_size = 32M
max_input_time = 300
memory_limit = 128M
mbstring.func_overload = 0
always_populate_raw_post_data = -1
** 参照官方文档 **
Pre-requisiteMinimum valueDescription
PHP version
5.3.0
PHP memory_limit option
128MB
In php.ini:
memory_limit = 128M
PHP post_max_size option
16MB
In php.ini:
post_max_size = 16M
PHP upload_max_filesize option
2MB
In php.ini:
upload_max_filesize = 2M
PHP max_execution_time option
300 seconds
In php.ini:
max_execution_time = 300
PHP max_input_time option
300 seconds
In php.ini:
max_input_time = 300
PHP session.auto_start option
must be disabled
In php.ini:
session.auto_start = 0.
Database support
One of: IBM DB2, MySQL, Oracle, PostgreSQL, SQLite
One of the following modules must be installed:
ibm_db2, mysql, oci8, pgsql, sqlite3
bcmath
php-bcmath
mbstring
php-mbstring
PHP mbstring.func_overload option
must be disabled
In php.ini:
mbstring.func_overload = 0.
PHP always_populate_raw_post_data option
must be set to -1Required only for PHP versions 5.6.0 or newer.
In php.ini:
always_populate_raw_post_data = -1
sockets
php-net-socket. Required for user script support.
gd
2.0 or higher
php-gd. PHP GD extension must support PNG images (–with-png-dir), JPEG (–with-jpeg-dir) images and FreeType 2 (–with-freetype-dir).
libxml
2.6.15
php-xml or php5-dom
xmlwriter
php-xmlwriter
xmlreader
php-xmlreader
ctype
php-ctype
session
php-session
gettext
php-gettext
Since Zabbix 2.2.1, the PHP gettext extension is not a mandatory requirement for installing Zabbix. If gettext is not installed, the frontend will work as usual, however, the translations will not be available.
然后按官方手册,mbstring.func_overload 必须关闭,lways_populate_raw_post_data option 必须设为 1
更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2016-12/138908p2.htm
13. 重启 apache
[root@linux1 ~]# service httpd restart
14. 浏览器打开 192.168.1.120/zabbix
–>next 检测环境
–> 看到 OK 就可以 next 检测数据库
–> 输入配置的用户名密码 –>Test connection –>OK–>next
–> 输入 zabbix server 的地址 –>next
–>next
–> 建立配置文件,这里可能会碰到一个问题如下图,但是上面已经给出了明确的解决方法
–>finish
至此 Zabbix Server 端就部署完成了~~
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-12/138908.htm
CentOS 6.8 下 Zabbix Server 安装部署详细步骤
所需要的环境:apache php mysql
这里 apache 和 mysql 已经预先装好了,具体安装请参见 apache 和 mysql 的安装方法
因为装 php 的时候遇到了很多问题
可能步骤会有些乱
1. 准备 zabbix 的源码包
http://www.zabbix.com/download.php
zabbix-2.4.8.tar.gz
这里用的是 2.4.8 版本
解压
[root@linux1 ~]# tar -zxvf zabbix-2.4.8.tar.gz
[root@linux1 ~]# cd zabbix-2.4.8
2. 新建用户组
[root@linux1 ~]# groupadd zabbix
[root@linux1 ~]# useradd -g zabbix zabbix
3.zabbix 数据库创建导入
mysql> create database zabbix character set utf8;
mysql> use zabbix
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by “zabbix”;
mysql> flush privileges;
mysql> source /root/zabbix-2.4.8/database/mysql/schema.sql
mysql> source /root/zabbix-2.4.8/database/mysql/images.sql
mysql> source /root/zabbix-2.4.8/database/mysql/data.sql
4. 编译安装 zabbix
[root@linux1 ~]# cd zabbix-2.4.8
[root@linux1 zabbix-2.4.8]# ./configure –prefix=/usr/local/zabbix –with-mysql –with-net-snmp –with-libcurl –enable-server –enable-agent –enable-proxy
可能会缺少一些包,查看一下报错,用 yum 安装即可
[root@linux1 zabbix-2.4.8]# make
[root@linux1 zabbix-2.4.8]# make install
5. 添加服务端口
[root@linux1 zabbix-2.4.8]# vim /etc/services
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
6. 修改 zabbix 配置文件
[root@linux1 ~]# cd /usr/local/zabbix/etc
[root@linux1 ~]# vim zabbix_server.conf
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户名
DBPassword=zabbix #数据库密码
DBPort=3306 #我机器数据库端口是 3306
DBSocket=/tmp/mysql.sock
ListenIP=192.168.1.120 #数据库 ip 地址
7. 设置启动脚本
zabbix 默认的启动脚本在 /usr/local/zabbix/sbin/ 下
[root@linux1 ~]# cp /usr/local/zabbix/sbin/zabbix_server /etc/init.d/zabbix_server
[root@linux1 ~]# cp /usr/local/zabbix/sbin/zabbix_agentd /etc/init.d/zabbix_agentd
[root@linux1 ~]# chkconfig zabbix_server on #添加开机启动
[root@linux1 ~]# chkconfig zabbix_agentd on #添加开机启动
8. 设置 zabbix 的 web 站点
[root@linux1 ~]# mkdir /usr/local/apache/zabbix
[root@linux1 ~]# cp /root/zabbix-2.4.8/frontends/php/* /usr/local/apache/zabbix/
修改 apache 的配置文件
[root@linux1 ~]# vim /usr/local/apache2/conf/httpd.conf
Alias /zabbix /usr/local/apache2/zabbix
<Directory /usr/local/apache2/zabbix>
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
<IfModule dir_module>
DirectoryIndex index.html index.php 在这后面添加 index.php
</IfModule>
在这两行后面
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
9. 下载 php 源码包
http://www.php.net/downloads.php
php-5.6.29.tar.gz
解压
[root@linux1 ~]# tar -zxvf php-5.6.29.tar.gz
10. 编译安装 php
[root@linux1 ~]# cd php-5.6.29
[root@linux1 php-5.6.29]# ./configure \
–prefix=/usr/local/php \
–with-apxs2=/usr/local/apache2/bin/apxs \
–enable-bcmath \
–enable-sockets \
–with-libxml-dir \
–with-zlib \
–with-curl \
–with-gd \
–with-jpeg-dir \
–with-png-dir \
–with-zlib-dir \
–with-freetype-dir \
–with-gettext \
–enable-mbstring \
–with-mcrypt \
–with-mysql=/usr/local/mysql \
–with-pdo-mysql=/usr/local/mysql/bin/mysql_config \
–with-mysqli=/usr/local/mysql/bin/mysql_config \
–enable-zip \
–with-bz2 \
–enable-soap \
–with-pear \
–with-pcre-dir \
–with-openssl \
–with-config-file-path=/usr/local/php/etc \
–enable-shmop \
–enable-intl \
这中间可能会缺少很多包,报错解决办法参见
PHP 编译安装时常见错误解决办法
http://www.linuxidc.com/Linux/2016-12/138909.htm
[root@linux1 php-5.6.29]# make
[root@linux1 php-5.6.29]#make install
11. 测试一下 apache 是否可以解析 php(这一步没有问题可以不做,因为当时在这里卡了很久)
在 /usr/local/apache2/htdocs/ 新建一个 php 页面
[root@linux1 htdocs]# vi info.php
<?php
phpinfo();
?>;
重启一下 apache
[root@linux1 htdocs]# service httpd restart
用浏览器打开 192.168.1.120/info.php
出现上面的界面说明可以运行 php,同时这里也能看到 php 的具体配置信息
* 我在这里遇到的问题
apache 无法解析 php,原因是 apache 中没有加载 libphp5.so 模块,
这个模块是在编译安装 php 时就应该导入进 apache,配置命令如下
–with-apxs2=/usr/local/apache2/bin/apxs
但是结果 apache 中并没有 libphp5.so 模块,不知道是什么原因
起初我编译的是 php5.5,找不出原因之后我才重新下载了 5.6 版本进行编译安装
发现 libphp5.so 导入成功,apache 可以运行 php
12. 修改 php.ini
[root@linux1 ~]# vi /usr/local/php/etc/php.ini
date.timezone = Asia/Shanghai
max_execution_time= 300
post_max_size = 32M
max_input_time = 300
memory_limit = 128M
mbstring.func_overload = 0
always_populate_raw_post_data = -1
** 参照官方文档 **
Pre-requisiteMinimum valueDescription
PHP version
5.3.0
PHP memory_limit option
128MB
In php.ini:
memory_limit = 128M
PHP post_max_size option
16MB
In php.ini:
post_max_size = 16M
PHP upload_max_filesize option
2MB
In php.ini:
upload_max_filesize = 2M
PHP max_execution_time option
300 seconds
In php.ini:
max_execution_time = 300
PHP max_input_time option
300 seconds
In php.ini:
max_input_time = 300
PHP session.auto_start option
must be disabled
In php.ini:
session.auto_start = 0.
Database support
One of: IBM DB2, MySQL, Oracle, PostgreSQL, SQLite
One of the following modules must be installed:
ibm_db2, mysql, oci8, pgsql, sqlite3
bcmath
php-bcmath
mbstring
php-mbstring
PHP mbstring.func_overload option
must be disabled
In php.ini:
mbstring.func_overload = 0.
PHP always_populate_raw_post_data option
must be set to -1Required only for PHP versions 5.6.0 or newer.
In php.ini:
always_populate_raw_post_data = -1
sockets
php-net-socket. Required for user script support.
gd
2.0 or higher
php-gd. PHP GD extension must support PNG images (–with-png-dir), JPEG (–with-jpeg-dir) images and FreeType 2 (–with-freetype-dir).
libxml
2.6.15
php-xml or php5-dom
xmlwriter
php-xmlwriter
xmlreader
php-xmlreader
ctype
php-ctype
session
php-session
gettext
php-gettext
Since Zabbix 2.2.1, the PHP gettext extension is not a mandatory requirement for installing Zabbix. If gettext is not installed, the frontend will work as usual, however, the translations will not be available.
然后按官方手册,mbstring.func_overload 必须关闭,lways_populate_raw_post_data option 必须设为 1
更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2016-12/138908p2.htm
正文完
星哥玩云-微信公众号