基于api批量添加agent主机

批量添加agent主机

使用说明:

  • 可修改web界面登录的账户密码
  • 可修改server的ip地址
  • 可修改agent的ip地址
  • 修改主机名
  • 可修改主机关联的主机群
  • 可修改主机绑定的模板
#!/bin/bash

#指定agent主机的ip地址
for i in {1..20} ;do
	a[$i]=2.2.2.$i
	IP="${a[*]}" 
done

#获取token令牌
auth_id=$(curl -s -X POST -H 'Content-Type:application/json' -d '
{
	"jsonrpc": "2.0",
	"method": "user.login",
	"params": {
		"user": "Admin",	#zabbix-web登录账号
		"password": "zabbix"	#密码
	   },
	"id": 1
}' http://2.2.2.42/api_jsonrpc.php | python3 -m json.tool|awk -F'"' '/result/{print $4}')

for node_ip in ${IP};do
curl -s -X POST -H 'Content-Type:application/json' -d '
 {
	 "jsonrpc": "2.0",
	 "method": "host.create",
	 "params": {
		  "host": "'${node_ip}'",  #对应hostname定义
		  "name": "hj-linux_'${node_ip}'",  #自定义显示的主机名
		  "interfaces": [
			 {
					 "type": 1,
				  "main": 1,
				  "useip": 1, 
				  "ip": "'${node_ip}'",  #ip地址 
				  "dns": "",
				  "port": "10050"
			  }
		  ],
		  "groups": [
			  {
				  "groupid": "1"  #加在哪个主机群
			  }
		  ],
		  "templates": [
			  {
				  "templateid": "10276"   #模板id号
			  }
		  ]
	 },
	 "auth": "'${auth_id}'",   #取出来token令牌
	 "id": 1
 }' http://2.2.2.42/api_jsonrpc.php | python3 -m json.tool 
done
posted @ 2022-02-20 13:50  suyanhj  阅读(34)  评论(0编辑  收藏  举报