【金山文档】 副本-zabbix 安装及 Zabbix 的 Web 页面的详解_南巷清风 - CSDN 博客_zabbix 前端
https://kdocs.cn/l/ciQFolYBby7U
#!/usr/bin/env python
#coding=utf-8
#导入模块,urllib2是一个模拟浏览器HTTP方法的模块
import json
import urllib2
import sys
from urllib2 import Request, urlopen, URLError, HTTPError
#url and url header
#zabbix的api 地址,用户名,密码,这里修改为自己实际的参数
zabbix_url="http://127.0.0.1/zabbix/api_jsonrpc.php"
zabbix_header = {"Content-Type":"application/json"}
zabbix_user = "Admin"
zabbix_pass = "zabbix"
auth_code = ""
#auth user and password
#用户认证信息的部分,最终的目的是得到一个SESSIONID
#这里是生成一个json格式的数据,用户名和密码
auth_data = json.dumps(
{
"jsonrpc":"2.0",
"method":"user.login",
"params":
{
"user":zabbix_user,
"password":zabbix_pass
},
"id":0
})
# create request object
request = urllib2.Request(zabbix_url,auth_data)
for key in zabbix_header:
request.add_header(key,zabbix_header[key])
#auth and get authid
try:
result = urllib2.urlopen(request)
#对于出错新的处理
except HTTPError, e:
print 'The server couldn\'t fulfill the request, Error code: ', e.code
except URLError, e:
print 'We failed to reach a server.Reason: ', e.reason
else:
response=json.loads(result.read())
result.close()
#判断SESSIONID是否在返回的数据中
if 'result' in response:
auth_code=response['result']
else:
print response['error']['data']
# request json
json_data={
"method":"host.get",
"params":{
"output": "extend",
}
}
json_base={
"jsonrpc":"2.0",
"auth":auth_code,
"id":1
}
json_data.update(json_base)
#用得到的SESSIONID去通过验证,获取主机的信息(用http.get方法)
if len(auth_code) == 0:
sys.exit(1)
if len(auth_code) != 0:
get_host_data = json.dumps(json_data)
# create request object
request = urllib2.Request(zabbix_url,get_host_data)
for key in zabbix_header:
request.add_header(key,zabbix_header[key])
# get host list
try:
result = urllib2.urlopen(request)
except URLError as e:
if hasattr(e, 'reason'):
print 'We failed to reach a server.'
print 'Reason: ', e.reason
elif hasattr(e, 'code'):
print 'The server could not fulfill the request.'
print 'Error code: ', e.code
else:
response = json.loads(result.read())
result.close()
#将所有的主机信息显示出来
print response['result'][0]
#显示主机的个数
#print "Number Of Hosts: ", len(response['result'])
wcx@ubuntu:/usr/local/src$ dpkg -L zabbix-server-mysql
/.
/etc
/etc/init.d
/etc/init.d/zabbix-server
/etc/logrotate.d
/etc/logrotate.d/zabbix-server-mysql
/etc/sudoers.d
/etc/zabbix
/etc/zabbix/alert.d
/etc/zabbix/zabbix_server.conf.d
/lib
/lib/systemd
/lib/systemd/system
/lib/systemd/system/zabbix-server.service
/usr
/usr/bin
/usr/bin/zabbix_get
/usr/lib
/usr/lib/tmpfiles.d
/usr/lib/tmpfiles.d/zabbix-server.conf
/usr/sbin
/usr/sbin/zabbix_server
/usr/share
/usr/share/doc
/usr/share/doc/zabbix-server-mysql
/usr/share/doc/zabbix-server-mysql/NEWS.Debian.gz
/usr/share/doc/zabbix-server-mysql/README.Debian
/usr/share/doc/zabbix-server-mysql/changelog.Debian.gz
/usr/share/doc/zabbix-server-mysql/copyright
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/zabbix_get.1.gz
还是没有,create.sql.gz
这是刚才重新安装了
可以在文件夹看一下,是存在的
11,好像要下载包,并放到zabbix-server-mysql目录下面
https://blog.csdn.net/weixin_33875564/article/details/91835294
https://www.zabbix.com/cn/download?zabbix=4.0&os_distribution=ubuntu&os_version=18.04_bionic&db=mysql&ws=apache
vim /etc/zabbix/zabbix_server.conf
ListenPort=10051
zabbix+apache的安装学习
https://www.cnblogs.com/bruce-newbe/p/14029114.html
zabbix安装及Zabbix的Web页面的详解
https://blog.csdn.net/weixin_42152604/article/details/83177909
版权声明:本文为m0_51634541原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。