如果服务器crash了或者就hang住了,我们不必要跑到机房去按电源键的,因为我们也想“运筹帷幄之中,决胜千里之外”嘛。我们可以用IPMI,它可以让我们远程用一条命令开启(关闭、重启)一台服务器,也可以检查服务器的状态。

IPMI简介:from wikipedia

The Intelligent Platform Management Interface (IPMI) is a standardized computer system interface used by system administrators to manage a computer system and monitor its operation.

The development of this interface specification was led by Intel Corporation and is supported by more than two hundred computer systems vendors.[1]. Dell, Hewlett-Packard, Intel, and NEC Corporation announced IPMI v1.0 on 1998-09-16, v1.5 on 2001-03-01, and v2.0 on 2004-02-14.

The baseboard management controller (BMC) is the intelligence in the IPMI architecture. It is a specialized microcontroller embedded on the motherboard of a computer, generally a server. The BMC manages the interface between system management software and platform hardware.

Different types of sensors built into the computer system report to the BMC on parameters such as temperature, cooling fan speeds, power status, operating system (OS) status, etc.

服务器端IPMI的配置:

我目前测试SNB-EP平台的机器,可以直接在BIOS中设置IPMI即可,都不必到OS中去进行设置了. (尽量将第一个网络接口插上网线,有人说是通过第一个网口来控制的,这个我不确定。)

开启服务器,按F2进入BIOS,选择:Server Management à BMC LAN Configuration  激活IPMI。

可以IP地址,比如改为192.168.111.111,子网掩码:255.255.0.0  (当然也可以设置为dynamic动态获取IP)。

在下面User configuration设置中Enable一些user,将有管理权限的用户enable起来,也可以设置管理密码、修改用户名等工作。

设置好后,就reboot系统,在局域网中另外的系统上ping一下刚才设置的IP 192.168.111.111,看看通不通,如果ping不通,可以试试去将server的电源线拔掉,并按开机安按钮让其放电,然后再重新插上电源线,开机。(我就遇到这样的问题)

对于不能再BIOS中直接enable BMC user的机器,可以先将BMC的IP什么的设好(这时在子网中应该能ping通BMC的IP了),然后到linux操作系统中进行一些额外的设置。

  1. load impi drivers:

modprobe ipmi_msghandler

modprobe ipmi_devintf

modprobe ipmi_si

  1. install ipmitool: maybe use rpm package to install
  2. ipmitool lan print 1   # to find the LAN channel
  3. configure IP address setting:

dynamic:  ipmitool lan set 1 ipsrc dhcp

static :

# ipmitool lan set 1 ipaddr 192.168.111.111

# ipmitool lan set 1 netmask 255.255.0.0

# ipmitool lan set 1 defgw ipaddr 192.168.0.1

  1. Establish an administration account with username and password.

Set BMC to require password authentication for ADMIN access over LAN. For example:

# ipmitool lan set 1 auth ADMIN MD5,PASSWORD

List the account slots on the BMC and identify an unused slot:

# ipmitool channel getaccess 1

Assign the administrator user name and password and enable messaging for the identified slot.

# ipmitool user set name 4 myuser

# ipmitool user set password 4 mypassword

# ipmitool user enable 4

# ipmitool channel setaccess 1 4 callin=off ipmi=on link=on privilege=4

  1. Verify the setup after you complete configuration using the command ipmitool lan print.

# ipmitool lan print 1

# ipmitool channel getaccess 1 4

在客户端的IPMI远程操作:

在远程操作的机器上也需要安装impitool,然后通过一些命令来操作被控制的机器。

# ipmitool -H yourIP -U myuser -P mypassword power status  (查看服务器的电源状态)

# ipmitool -H yourIP -U myuser -P mypassword power reset   (关闭电源并重启机器)

# ipmitool -H yourIP -U myuser -P mypassword power on   (开电源启动机器)

# ipmitool -H yourIP -U myuser -P mypassword power on   (关闭电源)

# ipmitool -H 192.168.12.84 -I lanplus -U test -P 123456 sdr type Temperature (服务器温度)

其他更多功能,可以man ipmitool

一些参考资料:

http://wiki.adamsweet.org/doku.php?id=ipmi_on_linux

http://www.6curl.com/ipmi-config-error/

http://www.ibm.com/developerworks/cn/linux/l-ipmi/index.html

http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/index.jsp?topic=%2Fliaai%2Fipmi%2Fliaaiipmipassword.htm

IPMI设置与使用(远程控制服务器)的更多相关文章

  1. 分享一个小设置-项目启动时服务器指向本地IIS

    背景,在X公司做的一个网站登录时需要域名的支持,就是说浏览器地址栏在localhost+端口号的形式下无法实现登录(必须是xxxx域名的形式), 但是很多时候都会先在线下进行测试,既然本地没有线上的环 ...

  2. 通过设置代理,解决服务器禁止抓取,报“java.io.IOException: Server returned HTTP response code: 403 for URL”错误的方法

    java.io.IOException: Server returned HTTP response code: 403 for URL: http:// 这个是什么异常呢? 当你使用java程序检索 ...

  3. 设置 SSH Key 登录服务器和 Git 服务器

    设置 SSH Key 登录服务器 通过 ssh 登录服务器,一直都是用的账号和密码,今天看到一篇文章说这样不安全,使用 ssh key 的方式登录则是更好的选择,因此,研究实践了一下,并记录在这里. ...

  4. 如何设置Oracle客户端与服务器的字符集一致

    查看 Oracle 服务器字符集 select userenv('language') from dual; 设置Oracle客户端字符集 添加环境变量NLS_LANG 值与服务器的Oracle服务器 ...

  5. sql server service broker中调用存储过程执行跨库操作,不管怎么设置都一直提示 服务器主体 "sa" 无法在当前安全上下文下访问数据库 "dbname"。

    用sql server自带的消息队列service borker,调用存储过程中,执行了一个跨库的操作,先是用了一个用户,权限什么都给够了,但是一直提示 服务器主体 "user" ...

  6. tomcat6~7~8用户设置及一个独立服务器上跑多个tomcat配置JVM设置优化亲测

    tomcat6管理用户 在tomcat `安装根目录`/conf/tomcat-users.xml

  7. RHEL7 -- 使用Chrony设置时间与时钟服务器同步

    Chrony是一个开源的自由软件,它能保持系统时钟与时钟服务器(NTP)同步,让时间保持精确. 它由两个程序组成:chronyd和chronyc. chronyd是一个后台运行的守护进程,用于调整内核 ...

  8. 设置新时间校正服务器NTP SERVER

    时间校正服务器IP : 10.*.*.* 适用系统:windows server 2008/windows 7 net stop w32time net start w32time w32tm /qu ...

  9. 使用ipmitool 命令添加IPMI 界面的SMTP邮件服务器地址

    目前要通过ipmitool工具在IPMI的界面上添加邮件服务器地址,该脚本如下 SMTP.sh #!/bin/bash ipmitool raw 0x32 0x78 0x01 0x01 0x00 0x ...

随机推荐

  1. Eclipse中使用Maven,报错“$MAVEN_HOME”

    1.今天在用eclipse时,执行maven命令,报错,如图"$MAVEN_HOME" 解决方案: 1.点击 windows---preferences,打开preferences ...

  2. python将字符转换为字典

    参考文章Python 如何将字符串转为字典 注意: 使用json的时候一定要注意是loads而不是load 即:user_dict = json.loads(user_info) 注意: 用eval( ...

  3. Jmeter-Transaction Controller(事务控制器)

    generate parent sample:生成父样本 include duration of timer and pre-post processors in generated sample:在 ...

  4. JS 实战1(添加、删除)

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs ...

  5. swift3.0  代码创建经典界面的九宫图--优化篇

    在上一篇只是简单实现了九宫图效果,本章需要形成APP界面九宫图效果 override func viewDidLoad() { super.viewDidLoad() createnine() } / ...

  6. 数据库Job定时任务

    数据库Job再熟悉不过了,因为经常要数据库定时的自动执行一些脚本,或做数据库备份,或做数据的提炼,或做数据库的性能优化,包括重建索引等等的工作.但是,Oracle定时器Job时间的处理上,千变万化,今 ...

  7. nyoj A+B Problem IV

    A+B Problem IV 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 acmj最近发现在使用计算器计算高精度的大数加法时很不方便,于是他想着能不能写个程序把这 ...

  8. FastAdmin 环境变量 env 配置

    FastAdmin 环境变量 env 配置 目前 FastAdmin 支持环境变量 env 配置. 目前支持以下环境变量 app.debug app.trace database.type datab ...

  9. Django 思维导图

  10. hadoop YARN配置参数剖析—MapReduce相关参数

    MapReduce相关配置参数分为两部分,分别是JobHistory Server和应用程序参数,Job History可运行在一个独立节点上,而应用程序参数则可存放在mapred-site.xml中 ...