今天和DELL官网要了一份关于服务器IDRAC 版本7/8 的API开发文档,花了一天的时间,进行了翻译,不一定全部准确,但对于英语不好的人会有所帮助。也不用重复造轮子了。
下载链接:
DELL IDRAC7/8 硬件监控client模块
1 #!/opt/python3/bin/python3 2 #Author: zhaoyong 3 ''' 4 本模块用于DELL 服务器IDARC API接口,只用于检测硬件状态,检测硬件包括如下: 5 < CPU, 内存, 磁盘, 电源, 风扇, raid卡> 6 注意:只支持IDRAC版本7和版本8 7 注意:只提取URL:/redfish/v1/Systems/System.Embedded.1 下的信息 8 ''' 9 import requests, json 10 11 12 class idrac_api(object): 13 ''' 14 DELL powerEdge服务器IDRAC 7/8 API 硬件监控客户端接口 15 ''' 16 17 def __init__(self, ip, username, passwd): 18 self.__ip = ip 19 self.__username = username 20 self.__passwd = passwd 21 # 服务器连接tokin对象 22 self.__s_tokin = '' 23 # 第一次访问提取的元数据,字典格式 24 self.__meta_data_dict = '' 25 26 def conn(self): 27 ''' 28 连接服务器 29 :return: 30 ''' 31 # SSL验证会提示警告,这里进行关闭警告信息的提示 32 requests.packages.urllib3.disable_warnings() 33 # 初始化一个session连接 34 c = requests.Session() 35 c.timeout = 60 36 # 设置验证信息 37 c.auth = (self.__username, self.__passwd) 38 # 关闭SSL验证 39 c.verify = False 40 # 连接IDRAC并进行身份验证和原始数据的提取 41 auth_url = 'https://%s/redfish/v1/Systems/System.Embedded.1' % (self.__ip) 42 try: 43 conn_status = c.get(auth_url) 44 # 如果连接成功,将session对象赋予self.__s_tokin,获取的元数据赋予self.__meta_data_dict,否则报错 45 if