zoukankan      html  css  js  c++  java
  • ubuntn18 docker zabbix+grafana安装和使用

    ubuntu docker inflxudb(安装 使用 备份 还原 以及python编码) telegraf Grafana 我采用telegraf采集数据, 本文计划采用zabbix来才采集数据,仍然用grafana来展示数据(为了节约资源我把telegraf先停掉)

    sudo systemctl enable --now telegraf #添加到开机启动
    sudo systemctl disable --now telegraf #从开机启动移除
    systemctl status telegraf #查看telegraf状态

    zabbix

    模块介绍

    Zabbix Server:负责接收agent发送的报告信息的核心组件,所有配置,统计数据及操作数据均由其组织进行.

    Zabbix Agent:部署在被监控主机上,负责收集本地数据发往Server端或Proxy端.

    Database Storage:用户存储所有配置信息,以及存储由Zabbix Server收集到的数据.

    Web Interface: Zabbix的GUI接口,通常与Server运行在同一台主机上

    Zabbix Proxy:常用于分布监控环境中,代理Server收集部分被监控的监控数据并统一发往Server端.

    原理介绍

    Agentd安装在被监控的主机上,Agent负责定期收集客户端本地各项数据,并发送至Zabbix Server端,Zabbix Server收到数据,将数据存储到数据库中,用户基于Zabbix WEB可以看到数据在前端展现图像.

    当Zabbix监控某个具体的项目,改项目会设置一个触发器阈值,当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件、微信、短信)、发送命令(SHELL命令、Reboot、Restart、Install等).

    环境安装

    zabbix需要zabbix-server、zabbix-agent、mysql.
    其中mysql已经在本机安装了,在dockercompose文件中
    写上对应的host、user、pwd即可.

    在mysql中创建zabbix数据库,为了后期储存数据使用.

    使用docker安zabbix装,docker-compose.yaml文件如下:

    version: '2'
    services:
      zabbix-server-service:
        image: monitoringartist/zabbix-xxl:3.2.6
        container_name: zabbix-server-service
        restart: always
        ports:
          - "9999:80"
        environment:
          - ZS_DBHost=192.168.100.3
          - ZS_DBUser=root
          - ZS_DBPassword=root
      zabbix-agent-a:
        image: zabbix/zabbix-agent:ubuntu-3.2.6
        links: 
          - zabbix-server-service:zabbixserverhost
        container_name: zabbix-agent-a
        restart: always
        depends_on:
          - zabbix-server-service
        environment:
          - ZBX_HOSTNAME=zabbix-agent-service-a
          - ZBX_SERVER_HOST=zabbixserverhost
      zabbix-agent-b:
        image: zabbix/zabbix-agent:ubuntu-3.2.6
        links: 
          - zabbix-server-service:zabbixserverhost
        container_name: zabbix-agent-b
        restart: always
        depends_on:
          - zabbix-server-service
        environment:
          - ZBX_HOSTNAME=zabbix-agent-service-b
          - ZBX_SERVER_HOST=zabbixserverhost

    启动命令: docker-compose up -d

     

    查看日志命令: docker logs -f zabbix-server-service

    若果mysql是8.0  zabbix 是3.*的版本可能会有如下错误 syntax to use near 'identified by 'root'':

     

    网上说下载最新版本也是扯淡,建议用mysql5.7 就能解决了

     

    在这个过程中千万不要重启容器 当看到如下图就表示服务已经启动了

     

    大概启动后1到2分钟登录zabbix web地址,http://192.169.100.3:9999,出现如下页面说明安装成功.

     

    默认账号:Admin,密码:zabbix,登录后出现如下页面.

    配置

    修改语言

    默认的语言是英文的,点击头像后展示修改语言选项,选择中文并且更新即可.

     

    zabbix-agent配置

    之前配置两个zabbix-agent-a和zabbix-agent-b,所以要添加两个zabbix-agent来采集数据并发送给zabbix-server.

    在配置,选择主机,创建主机.

     

    配置zabbix-agent需要其容器内的ip地址,可以通过
    docker exec -it zabbix-agent-b ip addr命令查看.

     

    在创建页面填写其ip和选择群组,点击保存即可.

     

    此时添加了两台zabbix-agent.

     

    另外还需要给zabbix-agent配置监控模版,在模版中选择Template OS Linux并且添加即可.(这里要点击添加按钮)

     

    配置模版完成后,在主机列表中ZBX显示绿色说明添加完成.

     

    添加监控数据

    在首页仪表盘上,选择常用的图形.,在创建页面选择zabbix-agent-server-b主机和cpu jumps监控项.

     

    监控数据可以控制缩放比例和时间段.

     

    grafana

    简介

    grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示.

    配置

    安装grafana

    可以使用grafana展示zabbix的数据,制作图表展示.

    使用docker启动grafana.

    docker run -d --name=grafana2 -p 3000:3000 -v /var/lib/grafana:/var/lib/grafana grafana/grafana:3.0.4
    启动镜像完成后,等大概1到2分钟,在浏览器访问:http://192.168.100.3:300  admin默认账号和密码都是.

    安装zabbix插件

    安装zabbix插件,进入grafana容器执行如下命令

    docker exec -it grafana /bin/bash #进入容器
    grafana-cli plugins install alexanderzobnin-zabbix-app
    docker restart grafana #重启容器
    在插件中的app中,出现zabbix说明zabbix插件安装成功.

     

     

    这里需要启动该插件

     

    zabbix数据源
    在Data Sources中新增一个数据源.

    数据源配置:type=Zabbix、url、Zabbix的账号、Zabbix的密码.

    url格式为:http://192.168.100.3:9999/api_jsonrpc.php

     

    然后点击

     

    grafana面板

    在Dashboards中新建一个面板.

    把Panel data source数据源改成zabbix数据源. 可用内存设置面板中参数如下:

    Group=Linux servers (这个参数在zabbix设置过)   

    Host=zabbix-agent-service-a   

     Application=Memory

    Item=Available memory

     

    grafana使用模版

    https://grafana.com/grafana/dashboards中提供很多第三方模版 Servers Linux这个模版

    下载模版的json文件.

     

    配置模版信息.

    我不知道为什么必须要把Zabbix数据源设置为default,不然选择不了)最终在一个面板中展示了当前cpu、内存等,相对原始的数据展示更加直观.

    参考:

    https://testerhome.com/topics/18364

    https://www.lengyuewusheng.com/2018/03/18/00032_influxdb-telegraf-Grafana%E7%9B%91%E6%8E%A7%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88%E4%B8%8Ezabbix%E7%9B%91%E6%8E%A7%E7%9A%84%E5%AF%B9%E6%AF%94/

  • 相关阅读:
    HGOI 20200724
    HGOI 20200722
    [USACO Open08]牛的邻居Cow Neighborhoods解题报告
    [USACO Jan07]考试Schul解题报告
    [CF 249D]Donkey and Start解题报告
    [CF 321D]Ciel and Flipboard解题报告
    [CF 294D]Shaass and Painter Robot解题报告
    [CF 297E]Mystic Carvings解题报告
    [CF 306E]Levko and Game题解翻译
    [CF 316F3]Suns and Rays解题报告
  • 原文地址:https://www.cnblogs.com/majiang/p/11230417.html
Copyright © 2011-2022 走看看