跳转至

Zabbix API/Stream

通过调用 Zabbix API/Stream 方式采集 Zabbix 监控数据

安装配置

Zabbix 支持两种方式上报数据

  • Zabbix API:版本要求 ≥ 5.0
  • Zabbix Stream:版本要求 ≥ 6.4

观测云 支持两种方式采集 Zabbix 监控数据

  • DataKit
  • DataFlux Function

DataKit 方式

配置 pythond 配置文件

进入 DataKit 的配置文件目录 conf.d,进入 samples 目录,复制 pythond.conf.samplepythond.conf, 修改如下配置

[[inputs.pythond]]
# Python input name
name = 'zabbix_collect'  # required

# System environments to run Python
#envs = ['LD_LIBRARY_PATH=/path/to/lib:$LD_LIBRARY_PATH',]
evns = ['ZABBIX_HOST=http://127.0.0.1/zabbix', 'ZABBIX_USER=Admin', 'ZABBIX_PASSWD=zabbix', 'ZABBIX_VERSION=7.0', 'COLLECT_TYPE=api']

# Python path(recomment abstract Python path)
cmd = "python3" # required. python3 is recommended.

# Python scripts relative path
dirs = ["zabbix"]
  • 其中 ZABBIX_HOSTZABBIX_USERZABBIX_PASSWDZABBIX_VERSION 填写实际 Zabbix 的地址用户名、密码、版本、类型
  • 如果COLLECT_TYPE 填写 api,后续会调用 Zabbix API 获取数据,否则填写 stream,会调用 Zabbix Stream 获取数据。
  • 版本要求,Zabbix 只有 6.4 以上版本才可以使用 stream 方式。

复制脚本

进入 DataKit 目录,进入 pythond 目录,创建zabbix目录,点击下方链接下载脚本到zabbix目录下

wget https://static.guance.com/integrations/zabbix/zabbix-collector.py

目录格式如下:

conf.d/
├── pythond.conf
pythond/
└── zabbix/
  └── zabbix-collector.py

调整完成后重启 DataKit 。

DataFlux Function 方式

安装 Func

推荐开通 观测云集成 - 扩展 - 托管版 Func: 一切前置条件都自动安装好, 请继续脚本安装

如果自行部署 Func 参考自行部署 Func

Zabbix API 方式获取指标

  1. 登陆Func 控制台,点击【脚本市场】,进入观测云脚本市场,搜索:integration_zabbix

  2. 点击【安装】后,输入相应的参数:

  3. zabbix host
  4. zabbix user
  5. zabbix password
  6. zabbix version

  7. 点击【部署启动脚本】,系统会自动创建 Startup 脚本集,并自动配置相应的启动脚本。

  8. 开启后可以在「管理 / 自动触发配置」里看到对应的自动触发配置。点击【执行】,即可立即执行一次,无需等待定期时间。稍等片刻,可以查看执行任务记录以及对应日志。

Zabbix Stream 方式获取指标

Zabbix Stream 方式获取指标,需要给 Zabbix 服务端配置一个可以执行的 stream url,当前使用 Function 创建 API 方式来生成这个 url。

  1. 登陆 Func 控制台,点击【脚本市场】,进入观测云脚本市场,搜索:integration_zabbix_stream,点击安装;

  2. 创建 API ,登陆 func,点击 管理 -> 同步API (建议使用异步 API)-> 新建, 执行一栏选择刚导入脚本中的Zabbix Receiver方法,在参数指定中配置采集任务相关的配置,需要指定以下参数信息:

  3. zabbix_host
  4. zabbix_user
  5. zabbix_passwd
  6. zabbix_version 为实际的值
  7. base64 为 Zabbix 入参,此处填 INPUT_BY_CALLER
    {
      "configs": {
        "zabbix_host": "<your-zabbix-host>",
        "zabbix_user": "<your-zabbix-user>",
        "zabbix_passwd": "<your-zabbix-password>",
        "zabbix_version": "7.0",
        "base64": "INPUT_BY_CALLER"
      }
    }
    
  8. 创建 Zabbix 连接器

    登陆 Zabbix, 点击 管理 -> 常规 -> 连接器,点击创建连接器,URL 处输入上一步创建的 url,信息类型选择数字和浮点数,点击添加;

  9. 修改zabbix_server.conf, 修改 StartConnectors10,保存并重启 zabbix-server 服务.

toml StartConnectors=10

文档评价

文档内容是否对您有帮助? ×