IPMI开源库pyghmi基本使用

简介:Pyghmi是一个纯Python(主要是IPMI)服务器管理库。IPMI(Intelligent Platform Management Interface,智能平台管理接口)是一种开放的标准,旨在帮助系统管理员在本地和远程管理服务器系统。而IPMITool就是一个基于IPMI接口的应用程序,它允许管理员执行各种IPMI系统管理功能。使用IPMITool,我们可以进行许多管理任务,比如查询硬件状态信息(如CPU温度、电源状态、风扇转速等)、重启系统、查看系统日志等。而且,IPMITool的另一个强大之处在于,它可以从操作系统层面直接查询和设置BIOS参数,无需进入BIOS界面,大大方便了管理员的工作。

历史攻略:

国产浪潮服务器:风扇免手动调节脚本

Python:requests + BMC 获取和设置服务器风速

Python:requests + bmc开机、关机、优雅重启、强制重启

从入门到精通:IPMITool 的详尽指南

案例源码:

# -*- coding: utf-8 -*-
# time: 2024/03/23 11:36
# file: ipmi_demo.py
# 公众号: 玩转测试开发
from pyghmi.ipmi import command# BMC的IP地址、用户名和密码
bmc_ip = '10.11.12.13'
username = 'admin'
password = 'admin'# 建立IPMI连接
ipmi_conn = command.Command(bmc_ip, username, password)# # case1 - 获取所有传感器数据
# sensor_data = ipmi_conn.get_sensor_data()
#
# for sensor in sensor_data:
#     print(sensor)# case2 - 获取
print(ipmi_conn.get_power())  # 获取电源状态
print(ipmi_conn.get_system_configuration())  # 获取系统配置
print(ipmi_conn.get_hostname())  # 获取host名称
print(ipmi_conn.get_health())  # 获取健康状态
print(ipmi_conn._get_power_state())# case3 - 电源操作
"""
* on
* off -- Request system turn off without waiting for OS to shutdown
* shutdown -- Have system request OS proper shutdown
* reset -- Request system reset without waiting for OS
* boot -- If system is off, then 'on', else 'reset'
"""
print(ipmi_conn.set_power("on"))  # return {'pendingpowerstate': 'on'}
# print(ipmi_conn.set_power("off"))  # return {'pendingpowerstate': 'off'}
# print(ipmi_conn.set_power("shutdown"))
# print(ipmi_conn.set_power("reset"))
# print(ipmi_conn.set_power("boot"))

运行结果:

图片

结论:pyghmi可以更优雅的进行BMC带外管理,并且获取相关传感器数据更直观便捷,优先推荐开源模块的形式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/766155.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探索Garnet:微软开源的高性能分布式缓存存储系统

微软研究院近期宣布推出一款名为Garnet的创新开源分布式缓存存储系统,致力于解决现代应用程序在处理大规模数据时对于高吞吐量、低延迟及卓越可扩展性的严苛要求。这款基于C# .NET 8.0构建的新型系统,充分利用了现代硬件能力,为应用程序开发人…

2024年【通信安全员ABC证】新版试题及通信安全员ABC证模拟考试

题库来源:安全生产模拟考试一点通公众号小程序 通信安全员ABC证新版试题根据新通信安全员ABC证考试大纲要求,安全生产模拟考试一点通将通信安全员ABC证模拟考试试题进行汇编,组成一套通信安全员ABC证全真模拟考试试题,学员可通过…

C++初阶---类和对象

目录 1. 类的引入 2. 类的定义 4. 类的访问限定符及封装 4.1 访问限定符 4.2 封装 5. 类的作用域 6.类的实例化 7.类对象模型 8. this指针 8.1 this指针的引出 8.2 this指针的特性 8.3 C语言和C实现栈的对比 9.类的六个默认成员函数 10,构造函数 10.1…

新能源汽车BMS应用设计

新能源汽车BMS应用设计 电池管理系统(BMS) 概述 电池管理系统(BMS)为一套保护动力电池使用安全的控制系统,时刻监控电池的使用状态,通过必要措施缓解电池组的不一致性,为新能源车辆的使用安全…

LeetCode热题Hot100-两数之和

充分意识到Coding能力的重要性,重启算法刷题之旅。 没想到这么简单的题目都写的磕磕绊绊。 一刷只写自己的解,二刷再看有没有其他更巧妙的方法~ 题目: 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目…

Prometheus+Grafana 监控Tongweb嵌入式(by lqw)

文章目录 1.思路2.部署准备3.Grafana仪表盘json文件下载4.tw嵌入式jar包本地引入依赖并测试运行5.运行jmx_prometheus_javaagent-0.19.0.jar形式获取监控数据(方法一)6.使用Actuator 获取监听数据(方法二)7.Prometheus部署8.Prome…

代码随想录day29(2)二叉树:将有序数组转换为二叉搜索树(leetcode108)

题目要求:将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。 思路:思路比较简单,如果目标是平衡二叉树,我们每次只需要取数组的中间元素作为根节点,分成左右两个子树,再递归地进行…

B站python爬虫课程笔记(Q16-19结束)

下面是学习的网址: ​​​​​​【Python爬虫】 目录 16、捕捉异常try&except语句的一些问题 1)一些常见的异常类型 2)try&except的使用 17、测试Bug的一些问题 1)assert断定函数的使用 2)unittest单元…

SqlServer 数据库创建到指定目录

Sql 代码 CREATE DATABASE [StudentDB] CONTAINMENT NONE ON PRIMARY ( NAME NStudentDB, FILENAME ND:\Demo\DBs\StudentDB.mdf , SIZE 8192KB , MAXSIZE UNLIMITED, FILEGROWTH 65536KB ) LOG ON ( NAME NStudentDB_log, FILENAME NG:\Demo\DBs\StudentDB_log.ld…

fs-extra 抱错解决 TypeError: Cannot read property ‘native‘ of undefined

原来的写法,直接在最上面 import fs from fs-extra;在函数中,使用到的地方引入,修改为动态的 const fs await import("fs-extra");结果成功不抱错

学生综合考评管理系统|jsp+ Mysql+Java+ (可运行源码+数据库+设计文档)

本项目包含可运行源码数据库LW,文末可获取本项目的所有资料。 推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 2024年56套包含java,…

微服务鉴权的几种实现方案

1.Token 1.1 Token透传(不推荐) 刚开始接触微服务时网上给的方案大都数是通过透传Token做鉴权,但我认为这种方式不是很妥当。接着往下看: 这种方式通过透传Token使得各微服务都能获取到当前登录人信息,在代码编写上确…

RK3568平台 网络唤醒

一.什么是网络唤醒 网络唤醒(Wake-on-LAN,WOL)是一种计算机局域网唤醒技术,使局域网内处于关机或休眠状态的计算机,将状态转换成引导(Boot Loader)或运行状态。无线唤醒(Wake-on-Wireless-LAN,WoWLAN)作为 WOL 的补充技术&#x…

SpringBoot整合MyBatisPlus实现增删改查

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉🍎个人主页:Leo的博客 💞当前专栏: 循序渐进学SpringBoot ✨特色专栏: MySQL学习 🥭本文内容:SpringBoot整合MyBatisPlus实现增删改查 📚个人知识库: Leo知识库,欢迎大家…

React——组件通讯

组件通讯介绍 组件中的状态是私有的,组件的状态只能在组件内部使用,无法直接在组件外使用,但是我们在日常开发中,通常会把相似、功能完整的应用才分成组件(工厂模式)利于我们的开发,而不同组件直…

【QT入门】 Qt实现自定义信号

往期回顾: 【QT入门】图片查看软件(优化)-CSDN博客 【QT入门】 lambda表达式(函数)详解-CSDN博客 【QT入门】 Qt槽函数五种常用写法介绍-CSDN博客 【QT入门】 Qt实现自定义信号 一、为什么需要自定义信号 比如说现在一个小需求,我们想要实现跨ui通信&a…

Day 6. 二叉数:满二叉树、完全二叉树

顺序表、链式表、栈、队列:线性——一对一的结构 树形结构(一对多) 叶子节点(终端结点):只有前驱没有后继结点 度 深度(树的度):树中各节点度的最大值 广度&#x…

优化选址问题 | 基于鹈鹕算法求解基站选址问题含Matlab源码

目录 问题代码问题 鹈鹕算法(Pelican Optimization Algorithm, POA)是一种相对较新的启发式优化算法,模拟了鹈鹕鸟觅食的行为。这种算法通常用于解决复杂的优化问题,如函数优化、路径规划、调度问题等。基站选址问题通常是一个复杂的优化问题,需要考虑覆盖范围、干扰、成…

Java中的this关键字的内存图

在Java中,this关键字用于引用当前对象。它可以在实例方法和构造方法中使用,表示对当前对象的引用。 要理解this关键字的内存图,我们需要了解Java中对象的内存分配方式。当创建一个对象时,Java会在堆内存中分配一块内存空间来存储…

阿里云ECS服务器u1通用算力型CPU性能如何?

阿里云服务器u1是通用算力型云服务器,CPU采用2.5 GHz主频的Intel(R) Xeon(R) Platinum处理器,通用算力型u1云服务器不适用于游戏和高频交易等需要极致性能的应用场景及对业务性能一致性有强诉求的应用场景(比如业务HA场景主备机需要性能一致)&#xff0c…