当前位置:   article > 正文

OpenBmc开发1:openbmc简介

openbmc

1、OpenBMC简介

     在说OpenBMC之前,先说一下BMC(Baseboard Manager Controller,简称BMC),BMC应用了IPMI架构的智能性,是嵌入在计算机(通常是服务器)主板上的专用的微控制器。它是负责管理系统和管理软件与服务器平台硬件之间的一个接口。

    根据IPMI规范,BMC需要满足如下条件:

  • 具有IMPI命令;
  • 提供BMC访问接口(一般是网口);
  • 提供标准化的看门狗定时器接口和看门狗内部事件产生功能;
  • 提供可被其他主机组件使用的事件接收功能;
  • 提供可通过相应的IPMI必选命令访问的SDR(传感器数据记录)、SEL(系统事件记录)和FRU(现场可替换单元)等功能;

       简而言之,BMC就是服务器主板上一块独立的小板卡,有自己独立的处理器,和控制系统,通过IPMB、LPC(low-pin-count-interface)、SMBus等接口与主机硬件或者主机系统进行通信,并通过网络、串行/Moderm、PCI等接口传向本地主机/远程服务器提供查询和控制等功能。

       OpenBMC是BMC 的Linux发行版,旨在跨越异构系统,包括企业,高性能计算(HPC),电信和云规模数据中心等系统的管理。

       2014年,四名Facebook程序员在一次Facebook 黑客马拉松活动上创建了一个名为OpenBMC的原型开源BMC固件。 

      2015年,IBM与Rackspace合作开发了一个开源BMC固件堆栈,也称为OpenBMC。这些项目仅在名称和概念上相似。

     2018年3月,OpenBMC成为Linux Foundation项目并融合在IBM堆栈上。OpenBMC项目的创始组织是Microsoft、Intel、IBM、Google和Facebook。并且成立了一个技术指导委员会,由五家创始公司的代表来指导该项目。IBM的Brad Bishop当选为技术指导委员会主席。

    2019年4月,ArmHoldings也加入了OpenBMC技术指导委员会,成为了第六名成员。

       OpenBmc使用Yocto Project作为底层构建和发行的框架,并结合OpenEmbedded,systemd以及D-BusOpen等技术来轻松定制管理平台。同时,OpenBMC包含一个用于与固件堆栈进行交互的Web应用程序,并添加了Redfish对硬件管理的支持。它支持常见的主机状态查看和控制、主机固件更新等功能。

2、IPMI简介

       IPMI的全称是Intelligent Platform Management Interface,智能平台管理接口。IPMI规定了很多的东西,BMC是其中最重要的一个部分,此外还有一些”模块“控制器通过IPMB与BMC相连,这些”模块“控制器一般控制特定的设备,有些支持热插拔。可以说目前IPMI是BMC的核心,BMC的远程控制基本都是通过ipmi协议实现。

       IPMB全称Intelligent Platform Management Bus,是一种基于I2C的串行总线,它用于BMC与模块(主板上的子卡)控制器的通信,其上传递的是IPMI命令。

       IMPI接口基于命令/响应机制,可通过网络将机箱、传感器、固件、存储、应用等主机组件的信息进行分类传递,通过软件ID对BIOS、系统管理软件、远程终端等传感器等进行分类管理,在网络、串行/Moderm接口、IPMB(I2C)、KCS、SMIC、SMBus等不同接口上传递都使用统一的格式。

      IPMI1.0于1998年9月16日发布,制定了基本规范。

      IPMI1.5于2001年2月21日发布,允许IPMI系统通过串口,BMC专用的带外网口,或者与主机共享的带内网口(NC-SI)与远程管理系统通讯。

      IPMI2.0于2004年2月12日发布,增加了SOL(serial over LAN)、群组管理系统、身份认证(RAKP+、SHA-1等)、基于OpenSSL/RCMP+的安全增强网络接口、固件防火墙和VLAN支持等。其中,SOL支持将BIOS输出和操作系统终端重定向到与BMC相连的串口,进而通过IPMI与远程系统管理软件连接。同时,IPMI2.0兼容系统通常还提供KVM over IP(基于IP的远程键盘鼠标显示器连接)、远程桌面和页面服务器等功能,尽管这些功能并不属于IPMI协议。

     IPMI2.0修订版1.1于2013年10月1日发布,修订了勘误表,说明和附录,并增加了对IPv6寻址的支持。

     更多信息请参考英特尔IPMI技术资源网站常见IPMI软件开源项目对比

3 Yocto项目简介

        Yocto项目是Linux基金会协作开源项目,其目标是生产工具和流程,使创建Linux发行版的嵌入式和物联网软件独立于嵌入式硬件的底层架构。该项目由Linux基金会于2010年宣布,并于2011年3月与22个组织(包括OpenEmbedded)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/405468
推荐阅读
  

闽ICP备14008679号