IPMI是智能型平台管理接口(Intelligent Platform Management Interface)的缩写,是管理基于 Intel结构的企业系统中所使用的外围设备采用的一种工业标准,该标准由Intel,HP,DELL和SuperMicro等公司制定。用户可以利用IPMI监视服务器的物理健康特征,如温度、电压、风扇工作状态、电源状态等。

在我们生产环境的物理服务器中,绝大部分都采用了DELL与SuperMicro,都选购了 “DRAC 远程控制卡” 来支持IPMI,并分配了特定的网络段IP给每台服务器。这样,平时我们远程修改BIOS启动项,重启服务器,连接本地终端等操作就都可以通过IPMI来实现了。

以下,是我们生产环境中的实际应用场景:

环境介绍:
机器类型:DELL/SuperMicro
IPMI支持:已安装 “DRAC 远程控制卡” 并已通过BIOS配置好IP地址
机器列表:
管理机 idc1-admin1
服务器 idc1-server1, DRAC远程地址 idc1-server1-remote
OS: CentOS 6.6 x86_64 Minimal

具体配置:
1. 配置管理主机idc1-admin1
[root@idc1-admin1 ~]# yum install OpenIPMI ipmitool
[root@idc1-admin1 ~]# /etc/init.d/ipmi start
[root@idc1-admin1 ~]# lsmod | grep ipmi_devintf || insmod /lib/modules/`uname -r`/kernel/drivers/char/ipmi/ipmi_devintf.ko
[root@idc1-admin1 ~]# /etc/init.d/ipmi restart

2. IPMI功能 之 远程修改BIOS启动项为网络启动
[root@idc1-admin1 ~]# ipmitool -I lanplus -H idc1-server1-remote -U ADMIN -P ADMIN chassis bootdev pxe

Set Boot Device to pxe

3. IPMI功能 之 远程重启服务器
[root@idc1-admin1 ~]# ipmitool -I lanplus -H idc1-server1-remote -U ADMIN -P ADMIN power reset

Chassis Power Control: Reset

[root@idc1-admin1 ~]# ipmitool -I lanplus -H idc1-server1-remote -U ADMIN -P ADMIN power status

Chassis Power is on

4. 通过Cobbler网络自动好安装服务器idc1-server1

5. 登陆刚刚安装完成的服务器idc1-server1,启用IPMI Console支持
5.1. 安装所需软件

[root@aikaiyuan ~]# yum install OpenIPMI ipmitool
[root@aikaiyuan ~]# /etc/init.d/ipmi start
[root@aikaiyuan ~]# lsmod | grep ipmi_devintf || insmod /lib/modules/`uname -r`/kernel/drivers/char/ipmi/ipmi_devintf.ko
[root@aikaiyuan ~]# /etc/init.d/ipmi restart

5.2 配置grub启动参数
[root@idc1-server1 ~]# vi /boot/grub/grub.conf

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/mapper/mylvm-root
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
serial --unit=1 --speed=115200
terminal --timeout=2 console
title CentOS (2.6.32-504.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=/dev/mapper/mylvm-root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 rd_LVM_LV=mylvm/root KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet rd_NO_DM rd_LVM_LV=mylvm/swap rhgb quiet console=tty1 console=ttyS1,115200
initrd /initramfs-2.6.32-504.el6.x86_64.img

注:在上面的配置文件中,新增了以下配置用于支持IPMI Console:
第14行:serial --unit=1 --speed=115200
第15行:terminal --timeout=2 console
第18行末尾:console=tty1 console=ttyS1,115200

5.3. 重启服务器使参数生效
[root@idc1-server1 ~]# reboot

6. 待服务器启动成功后,在管理机上调用IPMI console
[root@idc1-admin1 ~]# ipmitool -I lanplus -H idc1-server1-remote -U ADMIN -P ADMIN sol activate

Use ~~. to exit from console
[SOL Session operational. Use ~? for help]
CentOS release 6.6 (Final)
Kernel 2.6.32-504.el6.x86_64 on an x86_64 idc1-server1-remote login:

在这个界面上,就可以登陆并操作本地终端了,我们通常在无法通过SSH登陆服务器时使用。

7. 厂商通常还提供了一套Web界面来支持IPMI的相关操作,登陆URL为http://idc1-server1-remote。
如下图所示的SuperMicro:

8. IPMI还提供了丰富的功能可用于对硬件进行监控,如风扇转速,硬盘等,以后我会对这方面的内容再进行一些总结

ipmitool基本使用

2012年12月02日       teddy.sun       运维笔记->系统管理       ipmitool

Linux的ipmitool工具可以方便地在Linux命令行下操作服务器的带外。
总结如下:
1.查看IPMI版本

ipmitool -V

2.重置ipmi卡

ipmitool mc reset cold

3.登录 ipmi console

ipmitool -I lanplus -H IPADDR -U USERNAME -P PASSWORD -e ^ sol activate

4.带外重启机器

ipmitool -I lanplus -H IPADDR -U USERNAME -P PASSWORD power reset

5.带外设置下次从pxe启动

ipmitool -I lanplus -H IPADDR -U USERNAME -P PASSWORD chassis bootdev pxe 

6.清空IPMI SEL

ipmitool sel clear

7获得ipmi的channel

for i in {1..14}; do ipmitool lan print $i 2>/dev/null | grep -q ^Set && echo $i; done

常见问题:
1. 遇到ipmitool去连接服务器的sol时,报错Info: SOL payload already active on another session 怎么办?
可以使用sol deactivate的来强制踢掉其他的session,具体方式:

ipmitool -I lanplus -H IPADDR -U USERNAME -P PASSWORD sol deactivate

PMI中sol的使用

 

ipmitool -I lanplus -H IPADDR -U USERNAME -P PASSWORD power reset的更多相关文章

  1. ipmitool -I lanplus -H 10.1.81.90 -U admin -P admin mc reset cold

    ipmitool -I lanplus -H 10.1.81.90 -U admin -P admin mc reset cold

  2. 问题:docker pull 用户登陆tricky,Error response from daemon: unauthorized: incorrect username or password

    问题描述: PS C:\WINDOWS\system32> docker pull rabbitmqUsing default tag: latest Please login prior to ...

  3. javaWEB小练习:在数据库中查找相同的username和password

    /*练习题: * 在Mysql数据库中创建一个person数据表,添加三个字段,id,user,password,并录入几条记录 * *练习题:定义一个login.html,里面定义了两个请求字段:u ...

  4. 解决git Push时请求username和password,而不是ssh-key验证

    转载自:https://blog.lowstz.org/posts/2011/11/23/why-git-push-require-username-password-github/ 之前开始用git ...

  5. 大型票务系统中username和password的安全性问题

    讨论请移步至:http://www.zhiliaotech.com/ideajam/idea/detail/307 相关文章: <今天你买到票了吗?--从铁道部12306.cn站点漫谈电子商务站 ...

  6. 最终结算“Git Windowsclient保存username与password”问题

    Git - How to use netrc file on windows - Stack Overflow 这就是正确答案,我们已经验证过了,以下具体描写叙述一下解决方法: 1. 在Windows ...

  7. redmine忘记username和password

    环境: Ubuntu 13.10 bitnami-redmine-2.5.1-1-linux-x64-installer.run 用bitnami安装完redmine以后,有是否忘记了username ...

  8. ubuntu下一个rootusername入口mysql,如何查看username和password,如何改变rootpassword

    mysql -u root -p 按Enter键,提示时输入密码access denied......ues password YES/NO错误. 第一步: 然后,你需要输入/etc/mysql夹.然 ...

  9. 给新手--安装tomcat后username和password设置以及项目怎么部署在tomcatserver上

    安装后tomcatserver后.登陆首先就是让输入username和password.但是我们在安装tomcat的过程中好像没有让设置username和password,这时候可能有人就抓狂了.还有 ...

随机推荐

  1. Recoil 的使用

    通过简单的计数器应用来展示其使用.先来看没有 Recoil 时如何实现. 首先创建示例项目 $ yarn create react-app recoil-app --template typescri ...

  2. 原来Java的发家史是这么回事

    java的诞生: 1991 年Sun公司成立了一个计算机开发小组,由James Gosling等人开发一款希望用于控制嵌入在有线电视交换盒.PDA等的微处理器的计算机语言,本来他们想直接扩展C++,后 ...

  3. 【软件推荐】利用Stylus修改网页显示字体

    Windows下,字体的显示总是让人抓狂.抗锯齿效果让汉字显得粗细不均,甚至无法对齐的情况. 为了改善网页的显示效果,可以利用Stylus进行字体的替换 Stylus可以在Google的商店下载,由于 ...

  4. C语言-字符串函数的实现(五)之strstr

    C语言中的字符串函数有如下这些 获取字符串长度 strlen 长度不受限制的字符串函数 strcpy strcat strcmp 长度受限制的字符串函数 strncpy strncat strncmp ...

  5. 实现Web请求后端Api的Demo,实现是通过JQuery的AJAX实现后端请求,以及对请求到的数据的解析处理,实现登录功能

    本篇实现Web请求后端Api的Demo,实现是通过JQuery的AJAX实现后端请求,以及对请求到的数据的解析处理,实现登录功能需求描述:1. 请求后端Api接口地址2. 根据返回信息进行判断处理前端 ...

  6. aws EKS

    登陆aws账号 1)找到eks 相关的项目,并进入 2)填写集群的名称,然后下一步 3)集群设置页面,添加集群服务角色 (aws eks cluster role) 4)继续集群配置 5)集群创建完成 ...

  7. CAP 5.0 版本发布通告

    前言 今天,我们很高兴宣布 CAP 发布 5.0 版本正式版.同时我们也很高兴的告诉你 CAP 已经有越来越多的用户并且变得越来越流行. 在 5.0 版本中,我们主要致力于更好的支持 .NET 5 以 ...

  8. BLDC有感FOC算法理论及其STM32软硬件实现

    位置传感器:旋转编码器          MCU:STM32F405RGT6          功率MOS驱动芯片:DRV8301 全文均假设在无弱磁控制的情况下 FOC算法理论 首先,我们要知道FO ...

  9. Docker 实践搭建php环境

    docker 安装 使用官方提供的安装脚本,安装最新版的Docker curl -sSL https://get.docker.com/ | sh 安装完成后,通过如下命令启动Docker的守护进程, ...

  10. 【Redis过期Key监听】

    https://blog.csdn.net/wlddhj/article/details/89881055