zoukankan      html  css  js  c++  java
  • 编译安装zabbix3.2

    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

    
    
    1 tar zxvf libmcrypt-2.5.8.tar.gz 
    2 
    3 cd libmcrypt-2.5.8
    4 
    5 ./configure
    6 
    7 make
    8 
    9 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进程服务的配置文件
    1 # cd php-5.6.28
    2 
    3 # cp php.ini-production /etc/php.ini
    4 
    5 # cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
    6 
    7 # cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
    8 
    9 # 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这个地址,如下进行安装:

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

    如果创建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;


  • 相关阅读:
    java降序排列
    冒泡排序-java
    redis-并发竞争问题
    超卖问题
    算法-题目汇总-6
    算法-题目汇总-4
    算法-题目汇总-1
    算法-二分查找-1
    算法-bst-平衡搜索二叉树-1
    算法-位运算-1
  • 原文地址:https://www.cnblogs.com/meiling12/p/6120954.html
Copyright © 2011-2022 走看看