编译安装zabbix3.2

时间:2022-09-22 17:04:22

1.1 环境准备

系统环境准备:
redhat 6.6 64位
mysql-5.6.34
php-5.6.28
zabbix-3.2.1 配置前先关闭iptables和SELINUX,避免安装过程中报错。
# service iptables stop
# setenforce 0
# vi /etc/sysconfig/selinux

SELINUX=disabled
zabbix3.2.0对环境的要求 :
MySQL 5.1以上最好是 5.6或者更高的版本
PHP 5.4或者更高的版本

1.2 LAMP安装

1.2.1 yum安装httpd

安装Apahce, PHP, MySQL以及php连接mysql库组件。
#yum -y install httpd httpd-devel

1.2.2 编译安装mysql5.6

安装编译源码所需的工具和库

yum install \

make \

gcc \

gcc-c++ \

ncurses-devel \

cmake

新增mysql用户组:

groupadd mysql

新增mysql用户:

useradd  -g mysql mysql  -s /sbin/nologin

chmod 755 /home/mysql/

新建MySQL所需要的目录

新建mysql安装目录:

mkdir -p /usr/local/mysql

新建mysql数据库数据文件目录:

mkdir -p /data/mysqldb

编译安装:

cmake  \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_DATADIR=/data/mysqldb/ \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DEXTRA_CHARSETS=all \

-DWITH_SSL=system \

-DMYSQL_TCP_PORT=3306 \

--enable-proxy \

-DWITH_SSL=bundled

注:重新运行配置,需要删除CMakeCache.txt文件

rm -f CMakeCache.txt 
make
make install
 
修改mysql安装目录
chown -R mysql:mysql /usr/local/mysql

修改mysql数据库文件目录

chown -R mysql:mysql /data/mysqldb
 

初始化配置

进入安装路径
# cd /usr/local/mysql
进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表

# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysqldb --user=mysql

注:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir/my.cnf"


注意:若在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。


在使用"yum update"更新系统后,需要检查下/etc目录下是否会多出一个my.cnf,如果多出,将它重命名成别的。否则,MySQL将使用这个配置文件启动,可能造成无法正常启动等问题。

复制mysql服务启动配置文件

# mv /etc/my.cnf /etc/my.cnf.bak

# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf 

启动MySQL

添加服务,拷贝服务脚本到init.d目录,并设置开机启动
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 

设置开机启动
chkconfig mysqld on 
service mysqld start

配置用户

MySQL启动成功后,root默认没有密码,我们需要设置root密码。

设置之前,我们需要先设置PATH,要不不能直接调用mysql

修改/etc/profile文件,在文件末尾添加

PATH=/usr/local/mysql/bin:$PATH

export PATH

让配置立即生效

source /etc/profile

修改数据库的root密码:

mysql -uroot  

mysql> SET PASSWORD = PASSWORD('123abc');

或是
# mysqladmin -uroot -p password 123abc
Enter password: 这里直接回车
Warning: Using a password on the command line interface can be insecure. 若要设置root用户可以远程访问,执行 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.%' IDENTIFIED BY 'password' WITH GRANT OPTION; 红色的password为远程访问时,root用户的密码,可以和本地不同。

配置防火墙


防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口

打开/etc/sysconfig/iptables文件,在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:

-A INPUT -m state --state NEW -m tcp -p -dport 3306 -j ACCEPT

然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:

 service iptables restart 

OK,一切配置完毕,你可以访问你的MySQL了~


1.2.3编译安装PHP5.6


添加依赖应用
yum install -y gcc \

gcc-c++ \

autoconf \

libjpeg \

libjpeg-devel \

libpng \

libpng-devel \

freetype \

freetype-devel \

libpng \

libpng-devel \

libxml2 \

libxml2-devel \

zlib \

zlib-devel \

glibc \

glibc-devel \

glib2 \

glib2-devel \

bzip2 \

bzip2-devel \

ncurses \

curl \

openssl-devel \

db4-devel \

libXpm-devel \

libX11-devel \

gmp-devel \

readline-devel \

libxslt-devel \

expat-devel \

xmlrpc-c \

libcurl \

libcurl-devel 

安装加密扩展库,先安装Libmcrypt


 tar zxvf libmcrypt-2.5.8.tar.gz 

 cd libmcrypt-2.5.8

 ./configure

 make

 make install

编译安装

./configure \

--prefix=/usr/local/php \

--with-config-file-path=/etc \

--with-apxs2=/usr/sbin/apxs \

--with-mysql=/usr/local/mysql \

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--enable-inline-optimization \

--enable-fpm \

--enable-soap \

--with-libxml-dir \

--with-xmlrpc \

--with-openssl \

--with-mcrypt \

--with-mhash \

--with-pcre-regex \

--with-sqlite3 \

--with-zlib \

--enable-bcmath \

--with-iconv \

--with-bz2 \

--enable-calendar \

--with-curl \

--with-cdb \

--enable-dom \

--enable-exif \

--enable-fileinfo \

--enable-filter \

--with-pcre-dir \

--enable-ftp \

--with-gd \

--with-openssl-dir \

--with-jpeg-dir \

--with-png-dir \

--with-zlib-dir  \

--with-freetype-dir \

--enable-gd-native-ttf \

--with-gettext \

--with-gmp \

--with-mhash \

--enable-json \

--enable-mbstring \

--disable-mbregex \

--disable-mbregex-backtrack \

--with-libmbfl \

--with-onig \

--enable-pdo \

--with-pdo-mysql \

--with-zlib-dir \

--with-pdo-sqlite \

--with-readline \

--enable-session \

--enable-shmop \

--enable-simplexml \

--enable-sockets \

--enable-sysvmsg \

--enable-sysvsem \

--enable-sysvshm \

--enable-wddx \

--with-libxml-dir  \

--with-xsl \

--enable-zip \

--enable-mysqlnd-compression-support \

--with-pear
其中--with-apxs2是用来生成Apache的PHP模块libphp5.so的,不需要可以去掉.

make
make install

php配置

php.ini是php运行核心配置文件
php-fpm.conf是php-fpm进程服务的配置文件
 # cd php-5.6.28

 # cp php.ini-production /etc/php.ini

 # cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

 # cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

 # chmod +x /etc/init.d/php-fpm

fpm测试php配置

# /usr/local/php/sbin/php-fpm -t

[23-May-2016 20:03:52] NOTICE: 

configuration file /usr/local/php/etc/php-fpm.conf test is successful

添加到server里管理启动:

# chkconfig --add php-fpm

# chkconfig php-fpm on

# service php-fpm start
Starting php-fpm done netstat –anpt
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 705/php-fpm

修改PHP默认端口:

vi /usr/local/php/etc/php-fpm.conf

listen = 127.0.0.1:8000
 

1.3配置apache访问PHP


配置 httpd.conf 让apache支持PHP


# vi /usr/local/apache/conf/httpd.conf

找到 AddType application/x-gzip .gz .tgz (369)在其下添加如下内

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

DirectoryIndex index.php index.html   //调整首页文件设置

LoadModule php5_module        /usr/lib64/httpd/modules/libphp5.so  这个模块会在编译的自动生成加入进去

测试页面:


vi /var/www/html/test.php 

<?php
phpinfo();
?>

2.1 下载zabbix源码包


官网:http://www.zabbix.com/download.php
下载zabbix-3.2.1.tar.gz


安装zabbix所需的组件(server,agent)

yum -y install curl libcurl-devel net-snmp net-snmp-devel perl-DBI libdbi-dbd-mysql mysql-devel gcc gcc++ make libxml2 libxml2-devel  
 

server: (172.28.3.103)服务端


创建zabbix用户组与用户:

# groupadd zabbix
# useradd -g zabbix -s /sbin/nologin zabbix
# tar xzvf zabbix-3.2.1.tar.gz

编译安装:

# cd zabbix-3.2.1
# ./configure --prefix=/usr/local/zabbix-server --enable-server --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --enable-agent --enable-ipv6 make && make install

创建数据库和授权用户


说明:数据文件导入的顺序不能变,也可以在命令行使用mysql命令导入数据文件

[root@test ~]# service mysqld start

mysql> create database zabbix character set utf8;

mysql> grant all on zabbix.* to zabbix@'localhost' identified by '123456';

mysql> flush privileges;
 

导入数据库sql脚本:

# cd zabbix-3.2.1
在解压的zabbix目录下,将database/mysql目录下三个sql文件导入到zabbix数据库里。(下面用的是zabbix用户来导入文件,这个用户在数据库是默认存在的)
# mysql -uzabbix -p123456 zabbix < database/mysql/schema.sql

# mysql -uzabbix -p123456 zabbix < database/mysql/images.sql

# mysql -uzabbix -p123456 zabbix < database/mysql/data.sql
或是
# mysql -uzabbix -p123456 zabbix < database/mysql/schema.sql

# mysql -uzabbix -p123456 zabbix < database/mysql/images.sql

# mysql -uzabbix -p123456 zabbix < database/mysql/data.sql

修改配置文件并启动

mkdir -p /var/www/zabbix

cp -R frontends/php /var/www/zabbix

chmod 777 /var/www/zabbix/php/conf
 
修改过滤掉注释的名字
cat /usr/local/zabbix-server/etc/zabbix_server.conf |grep -v "^#" |grep -v "^$" > /usr/local/zabbix-server/etc/zabbix_server.conf.back

我们只需要关注DBHost、DBName、DBUser、DBPassword几项即可。这几项是配置zabbix server连接mysql数据库的参数。
vim /usr/local/zabbix-server/etc/zabbix_server.conf

LogFile=/var/log/zabbix/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456

创建日志文件存放位置:
mkdir /var/log/zabbix
chown -R zabbix:zabbix /var/log/zabbix
启动zabbix服务:
/usr/local/zabbix-server/sbin/zabbix_server
 

用server来管理启动zabbix服务:

# cd zabbix-3.2.1

# cp misc/init.d/fedora/core/zabbix_server /etc/init.d/

# chkconfig --add zabbix_server

# chkconfig zabbix_server on

创建软链接:

ln -s /usr/local/zabbix/sbin/zabbix_server /usr/local/sbin/

启动服务:

service zabbix_server start

agent:  (172.28.3.100)客户端

创建zabbix用户组与用户:

# groupadd zabbix

# useradd -g zabbix -s /sbin/nologin zabbix 

编译安装:

# cd zabbix-3.2.1

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

make && make install

# cd /usr/local/zabbix-agent

# vi etc/zabbix_agentd.conf

LogFile=/var/log/zabbix/zabbix_agentd.log

Server=172.28.3.103

ServerActive=172.28.3.103

Hostname=172.28.3.100

用server来管理启动zabbix服务:

# cd zabbix-3.2.1

# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/

# chkconfig --add zabbix_agentd

# chkconfig zabbix_agentd on

创建软链接:

# ln -s /usr/local/zabbix/sbin/zabbix_agentd/usr/local/sbin/ 

启动服务:

service zabbix_agentd start
注:若要服务器端也安装客户端相关参数可以参考:http://meiling.blog.51cto.com/6220221/1339389

2.3 配置zabbix web页面

vim /etc/httpd/conf.d/zabbix.conf

#

# Zabbix monitoring system php web frontend

# 

#Alias /zabbix/usr/share/zabbix

Alias /zabbix /var/www/zabbix/php 

<Directory "/var/www/zabbix/php">

    Options FollowSymLinks

       AllowOverride None

       Order allow,deny

       Allow from all

    #Require all granted

    <IfModule mod_php5.c>

        php_value max_execution_time 300

        php_value memory_limit 128M

        php_value post_max_size 16M

        php_value upload_max_filesize 2M

        php_value max_input_time 300

        php_value always_populate_raw_post_data -1

        # php_value date.timezone Europe/Riga

        php_value date.timezone Asia/Chongqing

    </IfModule>

</Directory>

其中php_value date.timezone Asia/Chongqing主要是定义php的时区。

 

最后重启apache,zabbix服务,如下:

services  httpd restart

services zabbix_server restart

然后访问http://172.28.3.103/zabbix/setup.php这个地址,如下进行安装:

编译安装zabbix3.2

编译安装zabbix3.2

编译安装zabbix3.2

编译安装zabbix3.2

编译安装zabbix3.2

完成后即可登录:zabbix默认的用户名和密码是Admin/zabbix

编译安装zabbix3.2

如果创建zabbix.conf.php文件这一步有报错话,可以手动下载好那个文件在相应目录创建zabbix.conf.php文件复制里面的内容即可:

vi /var/www/zabbix/php/conf/zabbix.conf.php

<?php

// Zabbix GUI configuration file.

global $DB;

$DB['TYPE']     = 'MYSQL';

$DB['SERVER']   = '172.28.3.103';

$DB['PORT']     = '3306';

$DB['DATABASE'] = 'zabbix';

$DB['USER']     = 'zabbix';

$DB['PASSWORD'] = 'zabbix';

// Schema name. Used for IBM DB2 and PostgreSQL.

$DB['SCHEMA'] = '';

$ZBX_SERVER      = '172.28.3.103';

$ZBX_SERVER_PORT = '10051';

$ZBX_SERVER_NAME = '';

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
														
		

编译安装zabbix3.2的更多相关文章

  1. centos6编译安装zabbix3&period;0和中文支持整理文档

    编者按: 最近公司部分业务迁移机房,为了更方便的监控管理主机资源,决定上线zabbix监控平台.运维人员使用2.4版本的进行部署,个人在业余时间尝鲜,使用zabbix3.0进行部署,整理文档如下,仅供 ...

  2. centos6&period;9 编译安装 zabbix-3&period;0&period;15

    本文采用编译安装,请在zabbix官网下载所需版本.此处安装版本是:zabbix-3.0.15.tar.gz 操作系统:centos 6.9 一.安装mysqlmysql-community-libs ...

  3. 编译安装zabbix3&period;2&period;5

    1. 配置lnmp环境 首先配置Nginx+mysql+php-fpm的系统环境,具体配置见另一篇文章 2. 编译安装zabbix 2.1 下载并解压zabbix 可以到zabbix官网下载zabbi ...

  4. centos7&period;2编译安装zabbix-3&period;0&period;4

    安装zabbix-3.0.4 #安装必备的包 yum -y install gcc* make php php-gd php-mysql php-bcmath php-mbstring php-xml ...

  5. centons7编译安装zabbix3&period;4【转https&colon;&sol;&sol;www&period;cnblogs&period;com&sol;kowloon&sol;p&sol;7771495&period;html】

    或者参考官方文档:https://www.zabbix.com/documentation/3.4/manual/installation/install 一.预编译环境准备 1.lamp安装和启动 ...

  6. centos 7 lnmp环境编译安装zabbix-3&period;4&period;14

    一.安装环境(zabbix3.0需要php在5.5版本以上) [root@localhost ~]# cat /etc/redhat-release CentOS Linux release (Cor ...

  7. 6&period;6安装编译安装zabbix3&period;2

    添加yum源 get -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo #安装阿里云y ...

  8. centos7&period;6环境zabbix3&period;2源码编译安装版升级到zabbix4&period;0长期支持版

    zabbix3.2源码编译安装版升级到zabbix4.0长期支持版 项目需求: .2版本不再支持,想升级成4.0的长期支持版 环境介绍: zabbix服务端是编译安装的,数据库和web在一台机器上 整 ...

  9. Ubuntu 16&period;04 编译安装&amp&semi;&amp&semi;用dpkg安装--zabbix3&period;4

    编译安装zabbix3.4,官方有教程,但是遇到一些报错: 总结下来,需要安装这些环境: 更新系统: apt update apt upgrade 先装这些: apt-get install libm ...

随机推荐

  1. layer 弹出子页面然后给父页面赋值

    //----赋值 并关闭当前页面 开始---- FunctionActionDeleteXZ = function (CompanyId, RelCompanyName) { parent.$(&qu ...

  2. 【CSS3】---only-child选择器&plus;only-of-type选择器

    only-child选择器 “:only-child”选择器选择的是父元素中只有一个子元素,而且只有唯一的一个子元素.也就是说,匹配的元素的父元素中仅有一个子元素,而且是一个唯一的子元素. 示例演示 ...

  3. sql中复合组建解析

    每个表只能有一个主键 唯一键/约束可以多个 复合主键是指复合唯一,比如: 1 1 1 2 2 1 2 2 单看任何一列都不是唯一,但组合起来就是唯一的. Create Table 表名 (字段名1 I ...

  4. CREELINKS平台&lowbar;处理器CeAd资源使用说明&lpar;CeAd的配置与使用&rpar;

    0x00 CREELINKS平台简介     CREELINKS(创e联)是由大信科技有限公司研发,集合软硬件.操作系统.数据云储存.开发工具于一体,用于物联网产品的设计.研发与生产的平台.    平 ...

  5. mysql 数据库查看表的信息

    查看正在改动的数据库: 1. select database(); 2. status;   查看表的结构: desc table_name show columns from table_name ...

  6. 定时任务APScheduler

    安装 APScheduler $ pip install apscheduler 快速开始 from apscheduler.schedulers.blocking import BlockingSc ...

  7. Mysql内置功能《三》视图

    一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的 ...

  8. UI设计黄金法则

    1. 网页用户界面(WUI - web user interface) 最佳设计经验与准则 以主页为基准,建立标准的层级结构 保持布局的一致性 将大版本的内容或过于复杂的任务分解为多个页面显示 将导航 ...

  9. JS高程3:错误处理和调试

    浏览器打开控制台的快捷键 Ctrl+shift+I try-catch语句 语法 try{ // 可能会导致错误的代码 } catch(error){ // 在错误发生时怎么处理 } 可以自定义错误信 ...

  10. pdf2swf 转换时报错。This file is too complex to render- SWF only supports 65536 shapes at once

    在使用swftools转换pdf 到swf的时候报错,有如下说明:if the pdf contains too many images / shapes, pdf2swf will fail wit ...