zoukankan      html  css  js  c++  java
  • zabbix服务器与客户端(Linux+Windows)的搭建

    zabbix监控搭建

    一、搭建LNMP环境(MySQL)

    创建数据库以及授权zabbix账户

    mysql> create database zabbix character set utf8;
    mysql> grant all on zabbix.* to zabbix@'%' identified by 'zabbix123';
    mysql> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix123';
    mysql> flush privileges;
    

      

    修改php的参数

    $ vim /usr/local/php/lib/php.ini 
        max_execution_time = 300
        max_input_time = 300
        date.timezone = Asia/Shanghai
        post_max_size = 28M
    
    
    # 如果不知道php.ini文件的位置
    $ /usr/local/php/bin/php --ini查看php.ini文件所在目录

    修改nginx配置文件

    server {
            listen       80;
            server_name  localhost;
    ​
            root /var/www/html/zabbix;
            index index.php;
    ​
            #charset koi8-r;
    ​
            #access_log  logs/host.access.log  main;
    ​
            location / {
                #root   html;
                #index  index.html index.htm;
                try_files $uri $uri/ /index.php?$args;
            }
    ​
            location ~ .php$ {
                include        fastcgi.conf;
                fastcgi_intercept_errors on;
                fastcgi_buffers 16 16k;
                fastcgi_buffer_size 32k;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            }
    ​
            location ~* .(js|css|png|jpg|jpeg|gif|ico)$ {
                    expires max;
                    log_not_found off;
            }
    ​}
    

      

    二、Zabbix-server搭建(源码3.4.14)

    1.下载源码包
    $ wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.4.14/zabbix-3.4.14.tar.gz
    
    2.创建用户和组
    $ groupadd --system zabbix
    $ useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
    

      

    3.安装依赖
    $ yum -y install mysql-devel libxml2-devel unixODBC-devel  net-snmp-devel OpenIPMI-devel curl-devel  libevent-devel 

      

    4.安装zabbix
    $ tar xf zabbix-3.4.14.tar.gz -C /usr/local/src/
    $ cd /usr/local/src/zabbix-3.4.14/
    $  ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
    $ make && make install
    

      

    5.导入数据库
    $ mysql -p'Qy123123.' zabbix < /usr/local/src/zabbix-3.4.14/database/mysql/schema.sql 
    $ mysql -p'Qy123123.' zabbix < /usr/local/src/zabbix-3.4.14/database/mysql/images.sql 
    $ mysql -p'Qy123123.' zabbix < /usr/local/src/zabbix-3.4.14/database/mysql/data.sql 
     
    6.修改server配置文件
    $ vim /usr/local/zabbix/etc/zabbix_server.conf
        DBName=zabbix
        DBUser=zabbix
        DBPassword=zabbix123
        DBSocket=/tmp/mysql.sock
    

      

    7.启动脚本
    $ cd /usr/local/src/zabbix-3.4.14/misc/init.d/
    $ cp fedora/core/zabbix_* /etc/init.d/
    # 修改 server 端启动脚本
    $ vim /etc/init.d/zabbix_server
    ......
    BASEDIR=/usr/local/zabbix ----- zabbix 安装目录
    BINARY_NAME=zabbix_server ----- zabbix 二进制文件名称(对应 zabbix 安装目录 sbin/ 下的名称)
    .....
    ​
    # 修改 agent 端启动脚本
    $ vim /etc/init.d/zabbix_agentd
    ......
    BASEDIR=/usr/local/zabbix
    BINARY_NAME=zabbix_agentd
    .....
    

      

    8.启动zabbix_server
    $ service zabbix_server start
    $ ss -antp | grep 10051
    

      

    9.拷贝页面
    $ cp -r /usr/local/src/zabbix-3.4.14/frontends/php/* /var/www/html/
    $ chmod 777 /var/www/html/ -R
    10.修改字符
    $ vim /var/www/html/zabbix/include/defines.inc.php
    ···
    # 定义字符路径
    define('ZBX_FONTPATH',                          realpath('fonts')); // where to search for font (GD > 2.0.18)
    # 指定字体名称
    define('ZBX_GRAPH_FONT_NAME',           'simkai'); // font file name
    ···
    define('ZBX_FONT_NAME', 'simkai');
    

      

    中文字符从windows系统中的控制面板的字体导出,然后上传到zabbix服务器上。

    $ cp simkai.ttf /var/www/html/zabbix/fonts
    11.Web界面上安装

    直接访问ip就会显示如下页面

    image

     这一步必须全部OK才行

    image

     

    image

     

     

    登录默认账号:admin 密码:zabbix

    正确登录后,效果如下

     

    三、Zabbix-agent搭建(Windows)

    1.下载zabbix-agent包

    https://www.zabbix.com/downloads/3.4.0/zabbix_agents_3.4.0.win.zip

    2.解压到D盘,并重命名目录为zabbix

     

    查看目录结构

    conf目录存放的是agent的配置文件

    bin目录存放的Windows下32位和64位安装程序

    3.配置zabbix-agent(zabbix_agent.win.conf)
    # 需要创建logs目录存放zabbix_agent的日志
    LogFile=d:zabbixlogszabbix_agentd.log
    ​
    # 指定zabbix-server的ip
    Server=192.168.1.65
    ​
    # 指定server端的ip:interface
    ServerActive=192.168.1.65
    ​
    # 指定主机名
    Hostname=Windows-host-test
    

      

    其中Server和ServerActive都指定zabbix Server的IP地址,不同的是,前者是被动后者是主动。也就是说Server这个配置是用来允许192.168.1.65这个ip来我这取数据。而ServerActive的192.168.1.65的意思是,客户端主动提交数据给他。

     

    4.安装agent
    > D:zabbixinwin64zabbix_agentd.exe -i -c d:zabbixconfzabbix_agentd.win.conf
    

      

    控制台输出如下信息,表示安装成功:

    zabbix_agentd.exe [8288]: service [Zabbix Agent] installed successfully
    zabbix_agentd.exe [8288]: event source [Zabbix Agent] installed successfully
    

      

    5.启动zabbix-agent
    D:zabbixinwin64>zabbix_agentd.exe -c  d:zabbixconfzabbix_agentd.win.conf -s
    6.关闭zabbix
    D:zabbixinwin64>zabbix_agentd.exe -c  d:zabbixconfzabbix_agentd.win.conf -x
     
    7.卸载zabbix
    D:zabbixinwin64>zabbix_agentd.exe -c  d:zabbixconfzabbix_agentd.win.conf -d

     

    四、Zabbix-agent搭建(Linux)

    客户端和服务端保持版本一直,不然可能会导致

    message from IP is missing header. Message ignored.

    1.下载安装agent
    $ wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.4.15/zabbix-3.4.14.tar.gz
    $ tar xf zabbix-3.4.14.tar.gz -C /usr/local/src/
    $ cd /usr/local/src/zabbix-3.4.14/
    $ ./configure  --prefix=/usr/local/zabbix --enable-agent  --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
    $ make && make install
    2.修改配置文件
    $ vim /usr/local/zabbix/etc/zabbix_agentd.conf
    Server=192.168.1.79
    ServerActive=192.168.1.79:10051
    Hostname=ActiveMQ
    

      

    3.创建zabbix用户
    $ groupadd --system zabbix
    $ useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
    

      

    客户端如果没有创建zabbix用户,而是直接用root用户启动zabbix进程,可能会出现服务状态起来,但是端口和进程都无法发现zabbix

    4.启动agent
    $ cp /usr/local/src/zabbix-3.4.14/misc/init.d/fedora/core/zabbix_* /etc/init.d/
    $ vim /etc/init.d/zabbix_agentd 
            # Zabbix-Directory
            BASEDIR=/usr/local/zabbix
    ​
            # Binary File
            BINARY_NAME=zabbix_agentd

      

    5.配置SNMP(server端)
    $ yum -y install net-snmp net-snmp-utils
    $ vim /etc/snmp/snmpd.conf 
    com2sec notConfigUser  192.168.1.79       public
    access  notConfigGroup ""      any       noauth    exact  all none none
    view all    included  .1                               80
    $ ss -anup | grep snmp
    udp   UNCONN  0  0  *:161  *:* users:(("snmpd",pid=7478,fd=6))
    $ systemctl enable snmpd
    $ systemctl restart snmpd
    ​
    #测试snmp协议是否正常
    $ snmpwalk -v 2c -c public 192.168.1.79
    

      

    Zabbix服务端

    #命令行获取客户端的信息
    $ /usr/local/zabbix/bin/zabbix_get -s 192.168.1.37 -k system.cpu.load[all,avg15]
    0.120000

     

    五、报错

    1.配置文件zabbix.conf.php未能创建

    点击Download the configure file,下载配置文件,然后上传到/var/www/html/zabbix/conf/下,文件名为zabbix.conf.php

     

  • 相关阅读:
    常用算法解析-动态规划
    转载-通过ApplicationContext 去获取所有的Bean
    什么是crud?
    new 关键字 和 newInstance() 方法的 区别
    Java反射简单使用--第一次细致阅读底层代码
    动态创建管理定时任务-已完成
    springboot mail整合freemark实现动态生成模板
    20190930开始记录每天学习状态,更新至20200125结束
    hibernate的对象/关系映射结果为空,exists查不到值的问题-20190823
    转载-Java中LinkedList的一些方法—addFirst addFirst getFirst geLast removeFirst removeLast
  • 原文地址:https://www.cnblogs.com/xll970105/p/10225543.html
Copyright © 2011-2022 走看看