Python之Zabbix

本文介绍了Zabbix API的基本概念,包括其部署、API概述、JSON-RPC协议、结构和执行请求的方式。Zabbix API支持通过编程方式访问和修改配置,以及与第三方软件集成。文章还展示了如何使用Python进行身份验证、检索数据、创建主机等操作。
摘要由CSDN通过智能技术生成

Zabbix api简介

部署zabbix
  • Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案
  • 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题
Zabbix api概述
  • Zabbix API允许你以编程方式检索和修改Zabbix的配置,并提供对历史数据的访问。它广泛用于:
    (1) 创建新的应用程序以使用Zabbix
    (2) 将Zabbix与第三方软件集成
    (3) 自动执行常规任务
JSON-RPC
  • Zabbix API是基于Web的API,作为Web前端的一部分提供。它使用JSON-RPC 2.0协议,这意味着两件事:
  • 该API包含一组独立的方法
  • 客户端和API之间的请求和响应使用JSON格式进行编码
API结构
  • Zabbix API包含许多方法,这些方法都名义上分组为单组的API
  • 每个方法执行一个特定任务。例如,方法host.create 隶属于 host 这个API ,用于创建新主机
  • 历史上,API有时被称为“类”
  • 大多数API至少包含四种方法: get, create,update 和 delete ,分别是检索,创建,更新和删除数据。但是某些API提供一套完全不同的一组方法。
执行请求
  • 设置前端后,你就可以使用远程HTTP请求来调用API。为此,需要向 api_jsonrpc.php 位于前端目录中的文件发送HTTP POST请求。例如,如果你的Zabbix前端安装在 http://company.com/zabbix , 那么用HTTP请求来调用 apiinfo.version 方法就如下面这样:
POST	http://company.com/zabbix/api_jsonrpc.php HTTP/1.1
Content-Type:	application/json-rpc
{"jsonrpc":"2.0","method":"apiinfo.version","id":1,"auth":null,"params":{
}}

请求的 Content-Type 头部必须设置为以下值之一:

  • application/json-rpc
  • application/json
  • application/jsonrequest

使用API

  • 通过zabbix提供的API接口,就可以使用python与其交互了
url = 'http://zabbix_server/api_jsonrpc.php'
headers = {
   'Content-Type': 'application/json-rpc’}
data	= {
   
	'jsonrpc': '2.0',
	'method': 'apiinfo.version',
	'id': 1,
	'auth': None,
	'params':	{
   },
}
r = requests.post(url,headers=headers,data=json.dumps(data))
print(r.json())

工作流程

  • 在访问大多数Zabbix中的任何数据之前,需要登录并获取身份验证令牌
  • 取得令牌后,访问其他数据只要出示该令牌即可,不需要再进行身份验证
  • 通过zabbix api提供的各种方法实现数据的检索、项目的创建等

获取令牌

  • 使用 user.login 方法登录并获取身份验证令牌
{
   
	"jsonrpc":"2.0",
	"method":	"user.login",
	"params":	{
   
		"user":"Admin",
		"password"</
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值