zabbix主机item过多导致无法删除

问题:zabbix上突然发现有台服务器的item监控项通过自动发现规则创建了5w多个监控项。

解决思路
1.在web界面将host删除,结果无法删除,点击删除后无反应
2.在web界面先将模板取消并清理,结果发现取消后,item还是存在,无法删除。
3.通过脚本使用api删除host,结果发现请求超时,无法从api将主机删除。
4.通过数据库直接将host删除,但是考虑到数据库会继续保存5w个item,强迫症患者坚决不允许。

于是怀疑是不是由于item有5w多个,倒是zabbix数据库里面无法处理过来。
然后产生如下思路:
1.通过web界面每次删除1000个,手动删除。--自动化运维表示这么做太low
2.通过api接口删除特定主机item,这个可以有,开干!!!
Python脚本
思路为,获取hostid,根据hostid获取所有的itemid,然后调取api删除所有itemid
网上看了很多资料,全部都是如何创建item的,没有批量删除的,于是自己写一个
环境:能联通zabbix_server的主机,python3环境
执行命令pip install zabbix_api
脚本如下:
#-*- coding:utf8 -*-
import json,sys,argparse
from zabbix_api import ZabbixAPI
server = "http://xxx.xxx.xxx.xxx/zabbix"
username = "Admin"
password = "zabbix"
zapi = ZabbixAPI(server=server, path="", log_level=0)
zapi.login(username, password)
#解析参数
def get_args():
    parser = argparse.ArgumentParser()
    parser.add_argument("-H", "--host", help="host name")
    args = parser.parse_args()    
    if not args.host:
        args.host = raw_input('host: ')
    return args
#根据hostname查询hostid  
def get_host_id(host):
    get_host_id = zapi.host.get(
        {
            "output": "hostid",
            "filter": {
                "host":host.split(",")
            }
        }
)
    host_id = []
    host_id.append([I['hostid'] for I in get_host_id])
    return host_id[0]
 #查询host中所有item存入item_id列表中   
def get_host_item(hosts_id):
    get_item_id = zapi.item.get(
        {
            "output": ["itemid","key_"],
            "hostids": hosts_id,
#            "filter": {
#                "host":host.split(",")
            }
    )
    item_id = []
    item_id.append([I['itemid'] for I in get_item_id])   
    return item_id[0]
#删除host
def delete_host(hosts_id):
    hosts_delete = zapi.host.delete(hosts_id)
    return "host delete success!"
#删除host中item
def delete_host_item(itemid):
    hosts_delete = zapi.item.delete(itemid)
    return "host_item "+itemid[0]+" delete success!"
    
if __name__ == "__main__":
    args = get_args()   
    host_id = get_host_id(args.host)
    item_id = get_host_item(host_id)
    #此处的for循环是将列表中所有元素全部单个定义为新的列表,然后调取api删除,因为一次5w个item的列表,api请求会超时。
    for i in range(len(item_id)):
        itemid = []
        itemid.append(item_id[i])
        print(delete_host_item(itemid))
    print(delete_host(hosts_id))
重要!!!首先在web界面将template去掉,unlink即可。
执行方式:python zabbix_del.py --host='test_host' &
放在后台自己执行了一个小时删除完了。

参考文章:https://www.zabbix.com/documentation/3.4/zh/manual/api/reference/item/delete

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,172评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,346评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,788评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,299评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,409评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,467评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,476评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,262评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,699评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,994评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,167评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,827评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,499评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,149评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,387评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,028评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,055评论 2 352

推荐阅读更多精彩内容

  • Zabbix简介 Zabbix官方网站Zabbix中文文档 本文系统环境是CentOS7x86_64, Zabbi...
    Zhang21阅读 7,978评论 0 37
  • 一、API简介 Zabbix API是在1.8版本中开始引进并且已经被广泛应用。所有的Zabbix移动客户端都是基...
    撸大师阅读 12,724评论 5 10
  • 一.zabbix介绍 (1)zabbix:zabbix是一款基于web开发的分布式监控系统以及企业级的网络监控的开...
    楠人帮阅读 553评论 0 1
  • 当人们讨论创业方面的话题时,通常会想起像史蒂夫·乔布斯和埃隆·马斯克这样伟大的企业家,却很少有人谈论发展中国家的小...
    Ryw在路上阅读 590评论 0 0
  • 问过自己,我为什么要选择,做这些事情呢? 前些日子,刷屏的是一位来自上海的大叔,看年龄应该这样称呼。可是,照片让人...
    大麦茶的故事阅读 155评论 0 0