美文网首页资源
【Zabbix】CentOS7源码安装Zabbix-3.2.6

【Zabbix】CentOS7源码安装Zabbix-3.2.6

作者: Bogon | 来源:发表于2018-07-09 00:11 被阅读36次

    一、Zabbix简介

    Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

    Zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

    Zabbix由2部分构成,zabbix server与可选组件zabbix agent。

    Zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,可以运行在众多平台上。

    二、基础组件安装

    zabbix的安装需要LAMP环境

    #yum -y  install epel-release

    #yum -y  install gcc  gcc-c++

    # yum  -y  install php php-gd php-mysql php-bcmath php-mbstring php-xml curl curl-devel net-snmp  net-snmp-devel perl-DBI

    # yum -y  install   httpd

    # yum -y  install  mariadb  mariadb-server

    二、创建程序运行用户,zabbix默认以zabbix用户运行

    #groupadd  -r zabbix

    #useradd   -g  zabbix  -r zabbix

    注:  -r, --system   创建一个系统账户-g, --gid GROU 新账户主组的名称或 ID

    四、数据库配置

    #systemctl start mariadb.service

    #systemctl enable mariadb.service

    # mysql -u root -p

    Enter password:                                               ##输入MySQL密码,默认为空

    MariaDB [(none)]> create database zabbix character set utf8;

                                                                              ##创建数据库zabbix,并且数据库编码使用utf8

    MariaDB [(none)]> insert into mysql.user(Host,User,Password)     values('localhost','zabbix',password('zabbix'));      

                                                                              ##新建账户zabbix,密码zabbix

    MariaDB [(none)]>  flush privileges;                  ##刷新系统授权

    MariaDB [(none)]> grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'zabbix';

    MariaDB [(none)]> grant all on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';

                                                                                 ##允许账户能从本机连接至数据库zabbix

    MariaDB [(none)]>  flush privileges;

    MariaDB [(none)]>  exit

    设置数据库密码,根据提示一步步完成

    # mysql_install_db

    五、zabbix的安装和配置

    ①下载并进行编译安装

    # wget   https://managedway.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.6/zabbix-3.2.6.tar.gz

    # tar -zxvfzabbix-3.2.6.tar.gz

    # cd zabbix-3.2.6

    # ./configure --with-mysql=/usr/bin/mysql_config --with-net-snmp  \

    --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/usr/local/zabbix

    --prefix----> 指定zabbix安装目录

    --enable-server----> 支持zabbix服务器

    --enable-agent----> 支持zabbix代理

    --enable-proxy----> 支持zabbix代理服务器

    --with-libcurl----> 使用curl包

    --with-net-snmp----> 使用net-snmp软件包,选择性地指定路径NET-SNMP配置

    --with-mysql=/usr/bin/mysql_config---->使用MySQL客户端库可以选择指定路径mysql_config

    注:如出现configure: error: MySQL library not found错误,是因为缺少mariadb-devel该软件包,yum -y  install mariadb-devel进行安装!

    # make

    # make install

    ②导入数据库

    # mysql  -u root  -p

    MariaDB [(none)]> use zabbix;

    MariaDB [zabbix]> source  /root/zabbix-3.2.6/database/mysql/schema.sql

    MariaDB [zabbix]> source  /root/zabbix-3.2.6/database/mysql/data.sql

    MariaDB [zabbix]> source  /root/zabbix-3.2.6/database/mysql/images.sql

    MariaDB [zabbix]> quit

    注:导入请按以上顺序导入,否则会出现错误情况!

    ③添加服务器对应的端口(可省略)

    [root@localhost ~]# cat /etc/services | grep zabbix

    zabbix-agent    10050/tcp               # Zabbix Agent      //客户端

    zabbix-agent    10050/udp               # Zabbix Agent

    zabbix-trapper  10051/tcp               # Zabbix Trapper    //服务端

    zabbix-trapper  10051/udp               # Zabbix Trapper

    ④拷贝相关的配置文件到/etc下并进行相关配置修改

    [root@localhost ~]# mkdir -p  /etc/zabbix

    [root@localhost ~]# cp -r zabbix-3.2.6/conf/*  /etc/zabbix/

    [root@localhost ~]# ln -s  /usr/local/zabbix/etc /etc/zabbix/

    [root@localhost ~]# chown  -R zabbix:zabbix  /etc/zabbix

    [root@localhost ~]# ln -s /usr/local/zabbix/bin/*  /usr/bin/

    [root@localhost ~]# ln -s /usr/local/zabbix/sbin/*  /usr/sbin/

    a).修改zabbix_server.conf

    [root@localhost ~]# vim  /etc/zabbix/zabbix_server.conf

    修改后如下:

    [root@localhost ~]# cat  /etc/zabbix/zabbix_server.conf|grep -n ^[^#]

    LogFile=/tmp/zabbix_server.log                          ##日志文件地址

    DBHost=localhost                                               ##数据库主机

    DBName=zabbix                                                 ##数据库名

    DBUser=zabbix                                                   ##数据库用户名

    DBPassword=zabbix                                           ##数据库密码

    ListenIP=127.0.0.1,192.168.1.107                      ##数据库IP地址

    AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

                                                                                 ##zabbix运行脚本存放目录

    b).修改zabbix_agentd.conf

    [root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf

    修改后如下:

    [root@localhost ~]# cat  /etc/zabbix/zabbix_agentd.conf|grep -n ^[^#]

    PidFile=/tmp/zabbix_agentd.pid                   ##进程PID

    LogFile=/tmp/zabbix_agentd.log                  ##日志保存位置

    EnableRemoteCommands=1                       ##允许执行远程命令

    Server=127.0.0.1,192.168.1.107                   ##agent端的ip

    ServerActive=127.0.0.1,192.168.1.107

    Hostname=Zabbix server                                           ##在web端添加监控主机时,必须与zabbix创建的hostname相同

    Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/   ##添加在定义Key时,存放的位置

    UnsafeUserParameters=1                                           ##启动自定义key

    六、修改PHP相关参数

    # vim /etc/php.ini

    max_execution_time = 300

    max_input_time = 300

    memory_limit = 128M

    upload_max_filesize = 2M

    date.timezone = Asia/Shanghai

    post_max_size = 28M

    七、配置web站点

    # cd zabbix-3.2.6/

    # cp -r   frontends/php      /var/www/html/zabbix

    # chown -R apache:apache/var/www/html/zabbix

    ②修改httpd.conf的参数

    # vim /etc/httpd/conf/httpd.conf

      DirectoryIndex index.htmlindex.php

    ③关闭SELinux:

    方法一:

    # sed-i  "s/SELINUX=enforcing/SELINUX=disabled/"    /etc/selinux/config

    #setenforce 0

    a、临时关闭(不用重启机器):

    # setenforce 0                       ##设置SELinux 成为permissive模式  (关闭SELinux)

    # setenforce 1                       ##设置SELinux 成为enforcing模式     (开启SELinux)

    注意:不关闭selinux,数据监控正在进行,监控页面却显示:

    Zabbix server is runningNolocalhost:10051

    方法二:

    b、修改配置文件需要重启机器:

    # vim /etc/selinux/config

    将SELINUX=enforcing 改为SELINUX=disabled

    需重启机器

    八、安装web界面

    #systemctl start httpd.service

    #systemctl enable  httpd.service

    在浏览器中输入http://127.0.0.1/zabbix;进入zabbix的web配置页面

    在浏览器中输入http://192.168.1.107/zabbix;进入zabbix的web配置页面

    如全部OK,NEXT

    配置MySQL数据库信息,并点击“Test connection”按键,如OK,NEXT

    默认,直接NEXT

    默认,直接NEXT=====》出现错误,提示Fail(忘截图了)

    Configuration file"/var/www/html/zabbix/conf/zabbix.conf.php"

    created: Fail

    Unable to create the configuration file.Please install it manually, or fix permissions on the conf directory.

    Press the "Download configuration file" button, download the configuration file and save it as"/var/www/html/zabbix/conf/zabbix.conf.php"When done, press the "Retry" button

    按提示点击“Download configuration file”按钮,并将下载的zabbix.conf.php保存到

    /var/www/html/zabbix/conf/下,注意修改此文件的权限(默认是 root)

    # chown  apache:apache   /var/www/html/zabbix/conf/zabbix.conf.php

    点击“Retry”按钮重试

    显示OK,点击“Finish”按钮完成安装操作。

    Zabbix的默认账号为admin,密码为zabbix。

    zabbix默认是英文版,更改语言======》Profile

    在Language中选择zh_CN,点击Update

    更改为汉语

    九、添加开机启动脚本

    # cd zabbix-3.2.6/

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

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

    修改脚本的默认设置,指定相关路径以及配置文件:

    此步相当重要,不然会出现zabbi_server起不来的现象,查看日志显示

    [Z3001] connection to database 'zabbix' failed: [1045] Access denied for user 'zabbix'@'localhost' (using password: NO)

    # vim  /etc/init.d/zabbix_server

    21 ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"31daemon $ZABBIX_BIN   -c /etc/zabbix/zabbix_server.conf

    #vim  /etc/init.d/zabbix_agentd21 ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"

    31  daemon $ZABBIX_BIN   -c /etc/zabbix/zabbix_agentd.conf

    # chmod    +x    /etc/init.d/zabbix_server

    # chmod    +x   /etc/init.d/zabbix_agentd

    #chkconfig  --add  zabbix_server

    #chkconfig  --add  zabbix_agentd

    # chkconfig  zabbix_server on

    # chkconfig   zabbix_agentd on

    十、启动服务,查看监听端口

    # service  zabbix_server start

    # service  zabbix_agentd  start

    # ss -tln

    LISTEN      0      128                                                *:10050                                                       *:*

    LISTEN      0      128                                               192.168.1.107:10051                                    *:*

    LISTEN      0      128                                               127.0.0.1:10051                                             *:*

    至此,zabbix server和 server端的agetd 的安装完成了,添加模板,enable 本机监控!

    ######################################

    安装Zabbix agent

    一、基础组件安装

    #yum -y  install gcc  gcc-c++

    注:如果agent端服务器没网,可以编译好后拷贝过去

    二、创建程序运行用户,zabbix默认以zabbix用户运行

    #groupadd  -r zabbix

    #useradd   -g zabbix  -r zabbix

    注:  -r, --system   创建一个系统账户-g, --gid GROU 新账户主组的名称或 ID

    二、zabbix的安装和配置

    ①下载并进行编译安装

    # wgethttps://managedway.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.6/zabbix-3.2.6.tar.gz

    # tar -zxvfzabbix-3.2.6.tar.gz

    #cdzabbix-3.2.6

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

    # make

    # make  install

    三、修改配置文件

    [root@localhost ~]# vim/usr/local/zabbix/etc/zabbix_agentd.conf

    修改后如下:

    [root@localhost ~]# cat/usr/local/zabbix/etc/zabbix_agentd.conf|grep -n ^[^#]

    11:PidFile=/tmp/zabbix_agentd.pid                   ##进程PID

    21:LogFile=/tmp/zabbix_agentd.log                 ##日志保存位置

    59:EnableRemoteCommands=1                      ##允许执行远程命令

    81:Server=192.168.1.107##Zabbix server端的ip

    122:ServerActive=192.168.1.107

    133:Hostname=Zabbix agent                             ##在web端添加监控主机时,必须与zabbix创建的hostname相同

    252:Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/   ##添加在定义Key时,存放的位置

    265:UnsafeUserParameters=1                             ##启动自定义key

    四、添加开机启动脚本

    #cd  zabbix-3.2.6

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

    #chmod  +x   /etc/init.d/zabbix_agentd

    #vim   /etc/init.d/zabbix_agentd

    22         BASEDIR=/usr/local/zabbix

    38 # No need to edit the things below

    ## Remote host端agent启动脚本和Zabbixserverd端agent启动脚本稍有不同,无需指定配置文件

    #chkconfig --add zabbix_agentd

    #chkconfig zabbix_agentd  on

    五、启动服务,查看监听端口

    #service  zabbix_agentd  start

    #service  zabbix_agentd   status

    # netstat  -pantu | grep zabbix_agentd

    tcp        0      0 0.0.0.0:100500.0.0.0:*               LISTEN      4946/zabbix_agentd

    防火墙设置

    如果是防火墙设置,大家根据实际情况,放行相关端口!

    在 server 端:

    开放zabbix端口10050 and 10051.

    firewall-cmd   --permanent    --add-port=10050/tcp

    firewall-cmd  --permanent    --add-port=10051/tcp

    重启firewall

    systemctl restart firewalld

    在agent 断开放 10050  10051端口:

    # firewall-cmd  --zone=public  --add-port=10051/tcp  --permanent

    # firewall-cmd  --zone=public  --add-port=10051/tcp  --permanent

    重启防火墙

    # firewall-cmd --reload# iptables -A INPUT -p tcp  --dport 10050 -m state --state NEW,ESTABLISHED  -j ACCEPT

    # iptables -A INPUT -p tcp  --dport 10051 -m state --state NEW,ESTABLISHED  -j ACCEPT

    相关文章

      网友评论

      • MLee_love:是在启动zabbix_server的时候报的错
        是在修改这里
        # vim  /etc/init.d/zabbix_server

        21 ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"31daemon $ZABBIX_BIN   -c /etc/zabbix/zabbix_server.conf

        #vim  /etc/init.d/zabbix_agentd21 ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"

        31  daemon $ZABBIX_BIN   -c /etc/zabbix/zabbix_agentd.conf
      • MLee_love:楼主您好,我按照你的步骤安装的时候提示/usr/local/sbin/zabbix_server: No such file or directory 但是我已经cp过去了,这个是啥原因遇到过吗?

      本文标题:【Zabbix】CentOS7源码安装Zabbix-3.2.6

      本文链接:https://www.haomeiwen.com/subject/lbmruftx.html