zoukankan      html  css  js  c++  java
  • zabbix源码安装 令人窒息的操作

    一.简介

    zabbix-server主要分为2部分:

    • zabbix程序 程序根据客户端的监控项,从客户端获取数据并写入到数据库,再根据触发器/动作等配置进行操作。
    • 展示页面 使用php编写,php脚本从数据库获得信息,用httpd或者nginx等网页服务器展示出来。

    根据上述说明,zabbix需要部署在lamp或者lnmp上面,对于php页面来说,用apache好一些。

    二.环境

    [zabbix-server]
        主机名 = host-1
        系统 = centos-7.3
        地址 = 1.1.1.1
        软件 =
            httpd-2.4 80
            mariadb-5.5 3306
            php-fpm-5.4 9000
            zabbix-server-3.4 10051
    
    [zabbix-agent]
        主机名 = host-2
        系统 = centos-7.3
        地址 = 1.1.1.2
        软件 =
            zabbix-agent-3.4 10050 

    三.配置

    配置服务端程序

    操作服务器(host-1)

    1.yum部署lamp

    ♠.安装LAMP和依赖

    yum -y install httpd php php-fpm php-mysql mariadb mariadb-server mariadb-devel
    

    ♠.启动并加入到自启动中

    systemctl restart httpd mariadb php-fpm
    systemctl enable httpd mariadb php-fpm
    

    ♠.创建一个简单的php脚本,测试httpd是否支持php,php是否可以连接mysql,mysql是否已启动

    vim /var/www/html/linkdb.php
    
    <?php
    $db=mysql_connect("localhost","root","");
    if($db){
        echo "ok";
    }else{
        echo  "no";
    }
    ?>
    

     返回ok则正常,返回no则检查数据库是否可以不用密码就登录,如果有默认密码,需要修改php脚本

    curl http://127.0.0.1/linkdb.php
    

     2.安装依赖包

    yum -y install gcc gcc-c++ libevent-devel php-bcmath php-gd php-xml php-mbstring
    

     3.创建账号,为安全起见禁止登录

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

     4.下载源码包

    wget https://shell-auto-install.oss-cn-zhangjiakou.aliyuncs.com/package/zabbix-3.4.1.tar.gz
    tar -xf zabbix-3.4.1.tar.gz
    cd zabbix-3.4.1
    

     5.选择参数,当前只开启了服务端,其余编译参数如下

    ./configure --prefix=/usr/local/zabbix --enable-server --with-mysql
    

     第一行是添加这个参数,需要安装的yum包,第二行是参数名

    net-snmap-devel
    --with-net-snmp
    
    libcurl-devel curl-devel
    --with-libcurl
    
    libxml2-devel
    --with-libxml2
    
    OpenIPMI-devel
    --with-openipmi
    
    unixODBC-devel
    --with-unixodbc
    

     6.编译安装

    make install
    

     7.将php脚本复制到html目录下

    cp -r frontends/php/* /var/www/html/
    

     8.添加所有权限到php脚本,当然这种方式比较危险,具体在zabbix前端页面会说明对哪些脚本要权限,逐个改

    chmod -R 777 /var/www/html
    

     9.登陆mariadb并创建zabbix用户,当前mariadb无密码

    MariaDB [(none)]> create database zabbixdb character set utf8;
    MariaDB [(none)]>grant all on zabbixdb.* to zabbixuser@"localhost" identified by "123456";
    MariaDB [(none)]>quit
    

     10.按顺序导入zabbix自带的数据库

    mysql -uzabbixuser -p123456 zabbixdb < database/mysql/schema.sql
    mysql -uzabbixuser -p123456 zabbixdb < database/mysql/images.sql
    mysql -uzabbixuser -p123456 zabbixdb < database/mysql/data.sql
    

     11.修改php参数,符合zabbix要求

    vim /etc/php.ini
    
    post_max_size = 16M
    max_execution_time = 300
    max_input_time = 300
    date.timezone = Asia/Shanghai
    

     12.重启服务

    systemctl restart httpd php-fpm

    配置服务端网页

    操作服务器(host-1)

    1.访问http://1.1.1.1

     

    2.LDAP是特殊配置,不用管

    3.数据库:zabbixdb 账号:zabbixuser 密码:123456 

    4.地址和端口都默认,Name可以不写或者随便写

    5.确定信息后下一步即可

    6.若遇到这一步,是因为zabbix对/var/www/html/conf/没有权限或者没写写进去。需要手动将文件下载,然后传入到服务器的/var/www/html/conf/zabbix.conf.php中刷新即可

    7.登录,设置为中文。管理员:admin 密码:zabbix

    更改为中文后,update更新

    最下面或提示zabbix-server未启动,下面将启动zabbix服务端

    启动zabbix-server

    操作服务器(host-1)

    1.复制并修改启动脚本,将安装目录替换为设置目录

    cp misc/init.d/fedora/core/zabbix_server /etc/init.d/
    chmod +x /etc/init.d/zabbix_server
    
    vim /etc/init.d/zabbix_server
    
    BASEDIR=/usr/local/zabbix
    

     2.修改配置文件,填写数据库信息,前端页面是告诉php脚本从哪个数据库获得信息展示,这里告诉后端程序将收集的信息写入哪个数据库

    vim /usr/local/zabbix/etc/zabbix_server.conf
    
    DBName=zabbixdb #数据库名
    DBUser=zabbixuser #数据库用户名
    DBPassword=123456 #数据库用户密码
    

     3.启动并检查端口是否正常,因为很多时候显示启动但并没有真正启动

    /etc/init.d/zabbix_server start
    netstat -utnalp | grep :10051
    

     4.查看前端页面,会发现正常了

     

    配置客户端

    操作服务器(host-2)

    1.zabbix客户端可以有版本小差异,服务端3.4版本,客户端3.2版本也可以

    wget https://shell-auto-install.oss-cn-zhangjiakou.aliyuncs.com/package/zabbix-agent-3.4.1-1.el7.x86_64.rpm
    

     2.安装

    yum -y install zabbix-agent-3.4.1-1.el7.x86_64.rpm
    

     3.清空配置后,编写配置,其它参数后面安装文档再加

    > /etc/zabbix/zabbix_agentd.conf
    

     4.当前配置是被动与主动模式都开启,方便后期调节

    vim /etc/zabbix/zabbix_agentd.conf
    
    #指定pid文件位置
    PidFile=/var/run/zabbix/zabbix_agentd.pid
    
    #指定日志文件位置
    LogFile=/var/log/zabbix/zabbix_agentd.log
    
    #设置为被动模式,将开启端口
    StartAgents=3
    
    #当前的主机名,要写正确,否则服务端会不识别
    Hostname=host-2
    
    #服务端的地址,用逗号(,)可以隔开写多个
    Server=1.1.1.1
    
    #服务端的地址,用逗号(,)可以隔开写多个
    ServerActive=1.1.1.1
    
    #自定义的脚本超时时间,
    Timeout=8
    
    #允许自定义脚本
    UnsafeUserParameters=1
    
    #加载其它配置文件
    Include=/etc/zabbix/zabbix_agentd.d/*.conf
    

     5.启动效验

    systemctl start zabbix-agent
    systemctl enable zabbix-agent
    netstat -unltp | grep 10050
    

    四.测试

    操作服务器(host-1)

    1.添加

    2.配置主机信息

    3.添加模板,连接模板后,主机将被模板所带的监控项监控

    4.一般选择Template OS Linux,先点击添加,再添加,不然模板连接不上

    5.等一分钟,ZBX灯亮

    五.附录

    导入其余数据库

    1.postgresql导入
    psql -U username
    psql> create database zabbix;
    psql > q
    cd database/postgresql
    psql -U username zabbix < database/postgresql/schema.sql
    psql -U username zabbix < database/postgresql/images.sql
    psql -U username zabbix < database/postgresql/data.sql
    
    2.oracle导入
    sqlplus zabbix/password@host/ORCL
    sqlplus>@database/oracle/schema.sql
    sqlplus>@database/oracle/images.sql
    sqlplus>@database/oracle/data.sql
    
  • 相关阅读:
    多个tab切换demo
    react添加和删除定时器的地方
    编写C语言的两种方法----Visual Studio/CodeBlocks
    C++学习笔记---引用的本质
    C++学习笔记---指针
    C++学习笔记---数据类型
    博客园皮肤SimpleMemory深色风格皮肤
    SQL DELETE语句如何让表使用别名的方法
    Asp.Net实现局部刷新,ScriptManager和UpdatePanel控件的使用
    由于可能不会将凭据发送到远程计算机,因此将不会进行连接。若要获得协助,请与您的系统管理员联系。(转)
  • 原文地址:https://www.cnblogs.com/charon2/p/10419902.html
Copyright © 2011-2022 走看看