1       IPMI简述

IPMI提供了很多丰富功能,我使用的功能,说得大白话一点,就是:

1、获取本设备的硬件信息:包括CPU和主板的温度、电压、风扇转速。

  2、在设备A上,通过命令,控制远程设备B,开机、关机、重启。(看到这个有没有一点想做坏事的冲动,哈哈)

IPMI的介绍,基本原理,和必备条件,可参考[1]中说明,很详细畅。

[1]:使用ipmitool实现Linux系统下对服务器的ipmi管理http://www.ibm.com/developerworks/cn/linux/l-ipmi/

1.1     使用的必备条件:

由于IPMI功能与OS及硬件相对独立,只此在任何软件及硬件环境下,只要满足以下三点,就可以使用IPMI提供的众多功能。

BMC芯片 + ipmi模块加载 + ipmitool

1.2     判断IPMI必须条件是否满足的方法:

cat /var/log/messages | grep BMC,查看开机是否有打印found BMC芯片的信息,如果没有说明硬件环境不支持BMC芯片;

lsmod | grep ipmi,查看模块是否加载,加载/lib/modules/2.*.*/kernel/drivers/char/ipmi目录下的相应模块,如果无此目录,安装IPMI内核模块;

ipmitool help,查看用户态工具是否安装。

1.3     两类使用方式:

本地调用:本地环境必须满足以上三点。

远程调用:调用系统,只需要有ipmitool,被调用系统,必须有BMC芯片 + ipmi模块。对于远程调用,被调用系统的BMC芯片只要写入了所需的配置信息,即使系统更换无为IPMI模块的软件系统,配置信息在BMC芯片中也不会被擦除及更改,仍然可以为本机提供被远程调用的功能。

2       IPMI的使用

2.1     ipmitool使用说明:

  ipmitool help;ipmitool Commands help;ipmitool Commands para help

http://linux.die.net/man/1/ipmitool

2.2     获取本地硬件信息:

ipmitool sdr

当然ipmi本地调用还提供了很多丰富功能,我只用过这一个啦,嘿嘿。

2.3     远程调用常用命令(远程开关机):

2.3.1  BMC芯片被远程控制的两个注意点

  物理网口:ipmi依赖物理网口接受ipmi指令,在硬件说明书中一般有说明BMC芯片共享或独占的物理网口具体是哪一个。一般来说与eth0口共享一个物理网口,当然也有可能主板设计为BMC芯片独占一个网口,因此必须保证共享eth0口(或独占的网口的)网络连接,且ipmi的ip与eth0(或独占网口)ip在同一网段。

  通道:BMC芯片虽然提供了很多channel,但好像一个型号的芯片一般只能使用一个channel,一般是channel 1,如果channel 1无法使用,可尝试其它channel,本芯片使用哪个channel我理解应该也是硬件说明书中有规定。

2.3.2  配置IPMI被调用/监控端BMC芯片:

  被控制端需要配置lan信息、user信息

ipmitool lan set 1 ipsrc static #配置IP地址源为手动配置

ipmitool lan set 1 ipaddr 192.168.0.1   #配置IP地址(需与共享网口IP地址同网段)

ipmitool lan set 1 netmask 255.255.255.0    #配置子网掩码

ipmitool lan set 1 defgw ipaddr 192.168.0.100    #配置默认网关(没有网关可以不配)

ipmitool lan set 1 access on   #打开该通道(多次执行不影响管理端管理)

ipmitool lan set 1 access off   #关闭该通道

ipmitool lan set 1 user    #激活该通道的用户(1为通道号)

ipmitool user list 1 #查看channel 1的用户

ipmitool user set name 1 admin     #设置用户名,1为用户ID。

ipmitool user set password 1 111111      #设置密码,1为用户ID。

ipmitool user enabled 1  #激活用户

ipmitool user priv 1 4 1 #设置用户为管理员权限,1为用户ID。

2.3.3  调用/监控端远程执行命令:

ipmitool -I lan -H 192.168.0.100 -U admin -P 111111 power status    #查看电源状态

ipmitool -I lan -H 192.168.0.100 -U admin -P 111111 power off/down             #关机

ipmitool -I lan -H 192.168.0.100 -U admin -P 111111 power on/up           #开机

ipmitool -I lan -H 192.168.0.100 -U admin -P 111111 power reset     #重启

使用IPMI控制/监控Linux服务器的更多相关文章

  1. 监控linux服务器网卡流量

    监控linux服务器网卡流量 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.       欢迎加入:高级运维工程师之路 598432640 前言:众所周知,我们安装zabbix服务器 ...

  2. JMC监控(Windows上远程连接监控Linux服务器的JVM)

    Windows上远程连接监控Linux服务器的JVM:1.Linux服务器上配置:在Tomcat的tomcat-wms/bin/catalina.sh中添加CATALINA_OPTS="-X ...

  3. Prometheus 监控linux服务器

    Prometheus 监控linux服务器 node_exporter:用于*NIX系统监控,使用Go语言编写的收集器. 使用版本 node_exporter 0.17.0 相关文档 使用文档:htt ...

  4. Grafana+Prometheus通过node_exporter监控Linux服务器信息

    Grafana+Prometheus通过node_exporter监控Linux服务器信息 一.Grafana+Prometheus通过node_exporter监控Linux服务器信息 1.1nod ...

  5. 监控linux服务器工具nmon的使用

    做压测时,需要查看服务器中的cpu.内存变化,但由于服务器是linux环境,则需要监控linux服务器的工具,下面用到的工具是nmon. 1.安装nmon.在网上下载nmon安装包,在linux服务器 ...

  6. zabbix通过ipmi传感器监控浪潮服务器的硬件信息

    一:实验对象 操作系统版本:centos7.6 监控对象:通过服务器传感器获取到的所有在使用的硬件信息 zabbix版本: 4.0.14二:zabbix介绍 zabbix适合中小型企业.大型企业的用户 ...

  7. Spotlight 监控Linux服务器的性能

    Spotlight功能:详细的进程跟踪功能远程连接在线的Unix/Linux的调优指南事件日志跟踪配置警报 详细的进程跟踪功能:Spotlight对具体的Unix / Linux的进程长达24小时的历 ...

  8. nmon监控Linux服务器系统资源

    本文转自:http://www.cnblogs.com/hyzhou/archive/2011/12/29/2305860.html 在实际的测试过程中,Loadrunner监控Linux系统资源不太 ...

  9. 通过LR监控Linux服务器性能

    1)设置监控服务器要监控 UNIX 资源,必须配置 rstatd 守护程序.注意,可能已经配置了 rstatd守护程序,因为当计算机收到一个 rstatd 请求时,该计算机上的 inetd 自动激活r ...

随机推荐

  1. python函数式编程,性能,测试,编码规范

    这篇文章主要是对我收集的一些文章的摘要.因为已经有很多比我有才华的人写出了大量关于如何成为优秀Python程序员的好文章. 我的总结主要集中在四个基本题目上:函数式编程,性能,测试,编码规范.如果一个 ...

  2. [leetcode]从中序与后序/前序遍历序列构造二叉树

    从中序与后序遍历序列构造二叉树 根据一棵树的中序遍历与后序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素. 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 po ...

  3. GitHub笔记(三)——分支管理和多人协作

    三.分支管理 0 语句: 查看分支:git branch 创建分支:git branch <name> 切换分支:git checkout <name> 创建+切换分支:git ...

  4. Java中的==符号与equals()的使用(测试两个变量是否相等)

    Java 程序中测试两个变量是否相等有两种方式:一种是利用 == 运算符,另一种是利用equals()方法. 当使用 == 来判断两个变量是否相等时,如果两个变量是基本类型变量,且都是数值类型(不一定 ...

  5. (转)Django配置数据库读写分离

    转:https://blog.csdn.net/Ayhan_huang/article/details/78784486 转:http://www.cnblogs.com/dreamer-fish/p ...

  6. 【quickhybrid】JS端的项目实现

    前言 API实现阶段之JS端的实现,重点描述这个项目的JS端都有些什么内容,是如何实现的. 不同于一般混合框架的只包含JSBridge部分的前端实现,本框架的前端实现包括JSBridge部分.多平台支 ...

  7. 2017秋-软件工程第十二次作业(一)-PSP总结

    [回顾]:回顾开学时的博客并回答相关问题 1.回想一下你曾经对计算机专业的畅想当初你是如何做出选择计算机专业的决定的?经过一个学期,你的看法改变了么,为什么?答:当初的决定是以前的事情,没有改变.经历 ...

  8. Scrum Meeting 11.08

    成员 今日任务 明日计划 用时 徐越       赵庶宏       薄霖       卞忠昊 WebView和JavaScript交互基础 Bitmap(位图)全解析 Part1 3h  武鑫 设计 ...

  9. 团队作业2 <嗨,你的快递!>需求分析与原型设计

    哦,不,是你的快速(*_*) 第一部分 需求分析 1.1 用户调研 1.1.1调研对象:由于我们的系统是校园快递代取业务,面向的是大学生活,所以本次调研范围都是在校大学生(除了师大学生,也包括了外校的 ...

  10. IEEE 802.11 无限局域网

    (1)无线通讯的两个重要特征 ——Hidden node problem 双方虽然听不到对方的讯号,但同时传送给相同的对象导致了碰撞(这个时候双方都不知道发生了碰撞) ——Exposed node p ...