CN104572421A - 一种不依赖于sol的带外获取和记录服务器串口日志的方法 - Google Patents

一种不依赖于sol的带外获取和记录服务器串口日志的方法 Download PDF

Info

Publication number
CN104572421A
CN104572421A CN201510054824.1A CN201510054824A CN104572421A CN 104572421 A CN104572421 A CN 104572421A CN 201510054824 A CN201510054824 A CN 201510054824A CN 104572421 A CN104572421 A CN 104572421A
Authority
CN
China
Prior art keywords
sol
serial ports
function
file
log
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510054824.1A
Other languages
English (en)
Other versions
CN104572421B (zh
Inventor
王兴隆
班华堂
刘宝阳
李道童
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201510054824.1A priority Critical patent/CN104572421B/zh
Publication of CN104572421A publication Critical patent/CN104572421A/zh
Application granted granted Critical
Publication of CN104572421B publication Critical patent/CN104572421B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供一种不依赖于SOL的带外获取和记录服务器串口日志的方法,是启动日志记录进程,建立BMC UART设备文件描述符,用于直接读取串口获取日志信息;建立并打开用于在SOL打开时存储日志信息的消息队列,将该消息队列放置在SOL获取系统串口日志的逻辑,保证SOL读取系统消息能实时存储在该队列中;检测状态切换进程分配的文件描述符,由于SOL默认为关闭,所以BMC启动后默认把串口设备描述符作为默认分配的文件描述符;实时读取已分配的描述,待有数据时记录数据到指定的文件;检测文件大小是否已经超出阈值,阈值可根据需求设定,文件大小超过阈值时,进行日志循环存储预处理,保证文件不超过阈值,并保证最新的消息不会丢失。

Description

一种不依赖于SOL的带外获取和记录服务器串口日志的方法
技术领域
本发明涉及到服务器监控管理领域,用于带外获取并记录服务器输出到系统串口的日志信息,便于对BIOS启动过程或系统下故障发生时进行故障分析和定位。具体地说是一种不依赖于SOL的带外获取和记录服务器串口日志的方法。
背景技术
服务器日志信息(包括系统启动日志、服务器操作日志等)是系统故障分析和定位、系统操作日志查询的利器,而通过带外获取服务器日志信息越来越受到服务器管理员的重视。
目前BMC普遍配备SOL(Serial On Lan)功能,远程主机通过IPMI协议打开SOL功能,将系统串口信息通过BMC重定向到远程主机终端上。此方法获取串口信息有几个缺点:其一,需要通过IPMI协议打开SOL功能,不打开SOL功能将无法获得日志信息;其二,过度依赖于网络,即必须在网络通畅的情况下才能打开SOL功能,网络异常的情况下无法获取日志消息。
针对SOL以上的缺点,我们设计出此发明,该发明不依赖于SOL功能、不依赖于网络,并且不影响SOL功能本身;能够在服务器上电、BMC启动后直接进行系统串口信息的抓取和存储,记录的日志信息以文件的形式保存在Flash等非易失设备中,永不丢失。在可用性和可靠性方面远高于单纯的SOL功能。
发明内容
本发明的目的是提供一种不依赖于SOL的带外获取和记录服务器串口日志的方法。
本发明的目的是按以下方式实现的: (1)启动日志记录进程,建立BMC UART设备文件描述符,用于直接读取串口获取日志信息;建立并打开用于在SOL打开时存储日志信息的消息队列,将该消息队列放置在SOL获取系统串口日志的逻辑,保证SOL读取系统消息能实时存储在该队列中;
检测状态切换进程分配的文件描述符,由于SOL默认为关闭,所以BMC启动后默认把串口设备描述符作为默认分配的文件描述符;实时读取已分配的描述,待有数据时记录数据到指定的文件(该文件须挂载在非易失设备下);
检测文件大小是否已经超出阈值,阈值可根据需求设定,文件大小超过阈值时,进行日志循环存储预处理,保证文件不超过阈值,并保证最新的消息不会丢失。
(2)启动状态切换进程,进行系统串口初始化设置,包括波特率、停止位等信息;BMC内部连接系统串口到BMC UART设备;默认分配BMC UART设备文件描述符给“日志记录进程”;BMC默认进入SOL功能关闭状态。
初始化后,状态切换进程进入消息等待中,通过在BMC以下状态改变的地方放置状态触发接口可进入到相应状态,并执行相应的处理程序:
SOL功能关闭状态:在SOL功能关闭时被触发,此时要授权串口描述符给日志记录进程,日志记录进程通过读取串口设备直接获取串口日志;
SOL功能开启状态:在SOL功能打开时被触发,进入该状态后,授权日志记录进程从消息队列中间接通过SOL获取串口消息,以避免与sol进程同时读取系统串口;
服务器开机状态:在检测到服务器开机后被触发,主要在该状态下进行串口重配置,避免串口配置被意外更改;
服务器关机状态:暂停本发明功能;
本发明功能开启:通过此状态,用户可以通过IPMI协议开启该功能;
本发明功能关闭:通过此状态,用户可以通过IPMI协议关闭该功能;
本发明的有益效果是:在不依赖于SOL和网络的情况下,基于BMC带外获取系统串口日志信息,存储于非易失设备中进行永久保存。
本发明主要特征有如下几点:
1、服务器必须搭配BMC监控管理芯片,服务器系统串口与BMC UART接口连接;
2、服务器串口日志记录功能不依赖于BMC SOL功能,区别于依赖于SOL功能的日志记录;
3、服务器串口日志记录功能不依赖于网络;
4、服务器开机即可记录串口日志,避免日志丢失;
5、可通过IPMI命令灵活关闭开启该功能;
6、记录的日志保存在非易失设备中,避免日志丢失;
7、日志采取循环存储,保证最新的日志不丢失。
附图说明
图1是日志记录进程流程路;
图2是状态切换进程流程图。
具体实施方式
参照说明书附图对本发明的方法作以下详细地说明。
从硬件上来说,服务器必须搭配BMC监控管理芯片,系统串口与BMC UART接口连接。
从软件上来说,编写BMC FW代码,启动两个进程分别用于记录日志和各种状态切换。
(1)首先需要说明一点:SOL功能同样是通过读取系统串口获取日志信息,如果本发明在SOL打开的情况下继续读取系统串口,由于系统串口设备缓存中的数据会在读取一次后丢弃,所以两个进程同时读取该设备势必造成每个进程获取的信息都不完整。为了解决这个难题,我们会检测SOL状态,在SOL打开的情况下本发明不会从串口中直接读取数据,而会在SOL读取串口时,将其读取的数据实时备份到一个消息队列里,从该队列里获取相应的信息。
(2)日志记录进程,用于将系统串口日志记录到文本文件中,需要在此进程中做到以下几点:
打开已连接到系统串口的BMC串口设备,用于在SOL未打开的情况下直接读取串口获取日志信息;
建立一个消息队列,用于在SOL功能打开的情况下实时保存日志信息;
检测上述打开的两个文件描述符,从已分配(命令切换进程负责描述符的切换)的文件描述符中读取数据,也就是说根据SOL功能是否打开来确定是从系统串口中直接读取还是从消息队列里获取日志,然后保存到已挂载到Flash的文本文件;
检测文件大小,超过阈值前进行循环存储预处理,保证文件大小不至于过大,并保证最新的日志信息不会丢失。
(3)状态切换进程,用于本发明各状态间的切换,状态包括:SOL功能开启、SOL功能关闭、服务器开机、服务器关机、本发明功能开启、本发明功能关闭等,各状态间没有复杂的逻辑关系,可进行相互跳转,实现起来非常方便:
SOL功能关闭状态:需要在检测到SOL功能关闭的情况下分配串口描述符给日志记录进程,授权日志记录进程直接获取串口日志;
SOL功能开启状态:需要在检测到SOL功能开启后,分配消息队列描述符给日志记录进程,授权日志记录进程从消息队列获取日志信息,以避免与SOL同时读取系统串口;
服务器开机状态:检测到系统开机后进入该状态,主要在该状态下进行串口重配置,避免串口配置被意外更改;
服务器关机状态:暂停本发明功能;
本发明功能开启:通过此状态开启日志记录功能,用户可以通过IPMI协议进入此状态;
本发明功能关闭:通过此状态关闭日志记录功能,用户可以通过IPMI协议进入此状态。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。

Claims (5)

1.一种不依赖于SOL的带外获取和记录服务器串口日志的方法, 其特征在于包括如下步骤和内容:
(1)启动日志记录进程,建立BMC UART设备文件描述符,用于直接读取串口获取日志信息;建立并打开用于在SOL打开时存储日志信息的消息队列,将该消息队列放置在SOL获取系统串口日志的逻辑,保证SOL读取系统消息能实时存储在该队列中;
检测状态切换进程分配的文件描述符,由于SOL默认为关闭,所以BMC启动后默认把串口设备描述符作为默认分配的文件描述符;实时读取已分配的描述,待有数据时记录数据到指定的文件,该文件须挂载在非易失设备下;
检测文件大小是否已经超出阈值,阈值可根据需求设定,文件大小超过阈值时,进行日志循环存储预处理,保证文件不超过阈值,并保证最新的消息不会丢失;
(2)启动状态切换进程,进行系统串口初始化设置,包括波特率、停止位等信息;BMC内部连接系统串口到BMC UART设备;默认分配BMC UART设备文件描述符给“日志记录进程”;BMC默认进入SOL功能关闭状态;
初始化后,状态切换进程进入消息等待中,通过在BMC以下状态改变的地方放置状态触发接口可进入到相应状态,并执行相应的处理程序。
2.根据权利要求1所述的方法,其特征在于,SOL功能关闭状态:是在SOL功能关闭时被触发,此时要授权串口描述符给日志记录进程,日志记录进程通过读取串口设备直接获取串口日志。
3.根据权利要求1所述的方法,其特征在于,SOL功能开启状态:是在SOL功能打开时被触发,进入该状态后,授权日志记录进程从消息队列中间接通过SOL获取串口消息,以避免与sol进程同时读取系统串口。
4.根据权利要求1所述的方法,其特征在于,服务器开机状态:是在检测到服务器开机后被触发,主要在该状态下进行串口重配置,避免串口配置被意外更改;服务器关机状态:暂停SOL功能。
5.根据权利要求1所述的方法,其特征在于,功能开启:是通过此状态,用户通过IPMI协议开启该功能;功能关闭:是通过此状态,用户通过IPMI协议关闭该功能。
CN201510054824.1A 2015-02-03 2015-02-03 一种不依赖于sol的带外获取和记录服务器串口日志的方法 Active CN104572421B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510054824.1A CN104572421B (zh) 2015-02-03 2015-02-03 一种不依赖于sol的带外获取和记录服务器串口日志的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510054824.1A CN104572421B (zh) 2015-02-03 2015-02-03 一种不依赖于sol的带外获取和记录服务器串口日志的方法

Publications (2)

Publication Number Publication Date
CN104572421A true CN104572421A (zh) 2015-04-29
CN104572421B CN104572421B (zh) 2018-06-05

Family

ID=53088555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510054824.1A Active CN104572421B (zh) 2015-02-03 2015-02-03 一种不依赖于sol的带外获取和记录服务器串口日志的方法

Country Status (1)

Country Link
CN (1) CN104572421B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105117252A (zh) * 2015-08-25 2015-12-02 浪潮电子信息产业股份有限公司 一种通过bmc保存服务器启动信息的方法
CN106598803A (zh) * 2016-04-29 2017-04-26 福建先创通信有限公司 一种可远程监测主机系统运行的方法
CN108763131A (zh) * 2018-05-18 2018-11-06 郑州云海信息技术有限公司 一种易插拔的单uart口连接器
CN109254900A (zh) * 2018-08-29 2019-01-22 浪潮电子信息产业股份有限公司 一种应用于服务器的日志读取装置及服务器
CN110413491A (zh) * 2019-08-09 2019-11-05 安徽康海时代科技股份有限公司 串口服务器控制方法和系统
CN111092759A (zh) * 2019-12-13 2020-05-01 苏州浪潮智能科技有限公司 一种jbod带外管理系统中日志管理的方法、设备及介质
CN112015600A (zh) * 2019-05-28 2020-12-01 阿里巴巴集团控股有限公司 日志信息处理系统、日志信息处理方法及装置和交换机

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070118641A1 (en) * 2005-11-22 2007-05-24 Dell Products L.P. Securing serial console redirection via serial-over-LAN (SOL)
US7779390B1 (en) * 2000-04-21 2010-08-17 Oracle America, Inc. Thread-safe remote debugger
CN102281254A (zh) * 2010-06-10 2011-12-14 鸿富锦精密工业(深圳)有限公司 服务器串口设计系统及方法
CN103838624A (zh) * 2013-12-16 2014-06-04 浪潮电子信息产业股份有限公司 一种基于Linux消息队列的日志处理方法
CN103905566A (zh) * 2014-04-22 2014-07-02 浪潮电子信息产业股份有限公司 一种服务器启动信息远程查看及导出方法
CN104268068A (zh) * 2014-09-24 2015-01-07 浪潮电子信息产业股份有限公司 一种服务器日志信息的获取方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7779390B1 (en) * 2000-04-21 2010-08-17 Oracle America, Inc. Thread-safe remote debugger
US20070118641A1 (en) * 2005-11-22 2007-05-24 Dell Products L.P. Securing serial console redirection via serial-over-LAN (SOL)
CN102281254A (zh) * 2010-06-10 2011-12-14 鸿富锦精密工业(深圳)有限公司 服务器串口设计系统及方法
CN103838624A (zh) * 2013-12-16 2014-06-04 浪潮电子信息产业股份有限公司 一种基于Linux消息队列的日志处理方法
CN103905566A (zh) * 2014-04-22 2014-07-02 浪潮电子信息产业股份有限公司 一种服务器启动信息远程查看及导出方法
CN104268068A (zh) * 2014-09-24 2015-01-07 浪潮电子信息产业股份有限公司 一种服务器日志信息的获取方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A.ZAWADA等: "ATCA CARRIER BOARD WITH IPMI SUPERVISORY CIRCUIT", 《2008 15TH INTERNATIONAL CONFERENCE ON MIXED DESIGN OF INTEGRATE CIRCUITE AND SYSTEMS》 *
RAGHUNATH RAJACHANDRASEKAR等: "Monitoring and Predicting Hardware Failures in HPC Clusters with FTB-IPMI", 《2012 IEEE 26TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS & PHD FORUM》 *
童燕: "基于IPMI的智能平台管理系统的实现", 《中国优秀硕士论文全文数据库 信息科技辑》 *
陈颖: "Linux日志型文件系统的研究及其性能优化", 《中国优秀硕士论文全文数据库 信息科技辑》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105117252A (zh) * 2015-08-25 2015-12-02 浪潮电子信息产业股份有限公司 一种通过bmc保存服务器启动信息的方法
CN106598803A (zh) * 2016-04-29 2017-04-26 福建先创通信有限公司 一种可远程监测主机系统运行的方法
CN108763131A (zh) * 2018-05-18 2018-11-06 郑州云海信息技术有限公司 一种易插拔的单uart口连接器
CN109254900A (zh) * 2018-08-29 2019-01-22 浪潮电子信息产业股份有限公司 一种应用于服务器的日志读取装置及服务器
CN112015600A (zh) * 2019-05-28 2020-12-01 阿里巴巴集团控股有限公司 日志信息处理系统、日志信息处理方法及装置和交换机
CN110413491A (zh) * 2019-08-09 2019-11-05 安徽康海时代科技股份有限公司 串口服务器控制方法和系统
CN111092759A (zh) * 2019-12-13 2020-05-01 苏州浪潮智能科技有限公司 一种jbod带外管理系统中日志管理的方法、设备及介质

Also Published As

Publication number Publication date
CN104572421B (zh) 2018-06-05

Similar Documents

Publication Publication Date Title
CN104572421A (zh) 一种不依赖于sol的带外获取和记录服务器串口日志的方法
US8261349B2 (en) Router for preventing port scans and method utilizing the same
CN202795383U (zh) 一种保护数据的设备和系统
CN108171088A (zh) 一种基于bmc的服务器硬件可信性保护方法及装置
CN102624699A (zh) 一种保护数据的方法和系统
CN106789842B (zh) 一种用于电力移动巡检终端的安全开发中间件和管控方法
CN103973715B (zh) 一种云计算安全系统和方法
CN108259226A (zh) 利用管理网络进行安全配置和平台管理
CN106713061B (zh) 监测攻击报文的方法、系统及装置
CN111027066A (zh) 一种kvm平台下杀毒软件客户端轻代理实现方法及系统
CN103164789A (zh) 一种带安全校验的debug电路结构及其实现方法
CN102752289A (zh) 一种用于用电信息采集系统的主站
CN107995033B (zh) 一种onu配置文件升级方法及装置
CN103825910A (zh) 获取上网认证信息的方法和装置
CN112822146A (zh) 网络连接的监控方法、装置、系统和计算机可读存储介质
CN107370798A (zh) 一种大数据安全云存储系统
CN102104864A (zh) 一种实现终端锁网锁卡功能的方法及终端
CN109657490A (zh) 一种办公文件透明加解密方法及系统
CN109831521A (zh) 缓存实例管理方法、装置、计算机设备和存储介质
CN113325940A (zh) 智能设备的功耗管控方法、系统、终端及存储介质
CN112580016A (zh) 一种工控防火墙的登录权限配置方法及装置
CN111262782B (zh) 一种报文处理方法、装置及设备
CN113708939B (zh) 集装箱锁控制方法、装置、集装箱锁和存储介质
CN109756397A (zh) 一种硬件共享方法、系统及相关设备
CN115664738A (zh) 通信方法、装置、电子设备及计算机存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant