CN108897634A - 一种linux操作***日志容错方法及*** - Google Patents

一种linux操作***日志容错方法及*** Download PDF

Info

Publication number
CN108897634A
CN108897634A CN201810609044.2A CN201810609044A CN108897634A CN 108897634 A CN108897634 A CN 108897634A CN 201810609044 A CN201810609044 A CN 201810609044A CN 108897634 A CN108897634 A CN 108897634A
Authority
CN
China
Prior art keywords
operating system
log
linux operating
nvdimm
fault
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.)
Pending
Application number
CN201810609044.2A
Other languages
English (en)
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201810609044.2A priority Critical patent/CN108897634A/zh
Publication of CN108897634A publication Critical patent/CN108897634A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种linux操作***日志容错方法及***,包括上电启动模块:用于linux操作***上电后,BIOS完成硬件部分的初始化设置,并加载服务器启动内核;日志存储路径更换模块:将用于linux操作***日志保存的NVDIMM物理内存区域保留,并通过页表机制转换为虚拟地址;日志存储路径设定模块:将虚拟地址范围抽象为块设备,并将块设备初始化为具有直写特性的文件***;linux操作***目录使用的介质为NVDIMM,linux操作***产生的日志文件都写入NVDIMM中;数据同步模块:设置定时服务程序,每隔一段时间将NVDIMM中的日志数据同步到磁盘中进行永久保存。

Description

一种linux操作***日志容错方法及***
技术领域
本发明属于***断电数据备存设计技术领域,涉及一种日志容错方法及***,尤其是一种linux操作***日志容错方法及***;能够在完全断电时保存完整的内存数据。
背景技术
如何最大限度提高存储子***的I/O性能,降低存储延迟,一直是服务器行业不断努力的方向。
服务器性能提升的最大瓶颈就是存储I/O,即存储子***的性能。把服务器内部各个关键性能组件的I/O性能列出来,容易发现存储子***的I/O相对于CPU与内存的性能,有着明显的差距。当CPU平台随着CPU自身整合能力的不断提升,对于服务器而言,存储子***进一步性能提升与组件级创新绝对是服务器的厂商必争之地。
近几年,风生水起的闪存技术就是最好的例证,SSD/NVMe等产品的出现,让存储子***的性能有了质的飞跃,但相对于存储平台与CPU/内存平台间仍然巨大的性能“空档”,无疑意味着创新还有很大的创新空间。
在这此期间,借助于传统DRAM内存与NAND闪存的“混合”,新出现的存储组件似乎更值得我们关注,这就是NVDIMM。
NVDIMM的全称是Non-Volatile Dual In-line Memory Module,即非易失性双列内存模组,如果把NV(非易失)去掉,就相当于传统的内存DIMM。而对于易失与非易失的最关键区别就是在***断电后,数据是否会消失,就这个角度而言,传统的硬盘(HDD)就是一个标准的非易失性存储器,但它的性能远不如内存。而现在SSD与NVMe所使用NAND闪存则就是NVRAM的一种,虽然和内存芯片都被称为RAM(Random Access Memory,随机访问存储器),可性能仍然有很大差距,这也正是长期以来非易失与易失型存储器的一个不可调和的矛盾,也因此让服务器性能在很多场合必须妥协,而NVDIMM的出现则在很大程度上消除了这一矛盾,并让永久型内存(Persistent Memory,又称Persistent DRAM)真正开始发扬光大。
Linux操作***产生的日志,都需要以***日志文件的形式保存于磁盘中指定位置,并且要永久性保存,不能关机后就消失,这是因为日志的作用相当于历史操作证据。现有技术中针对Linux操作***的日志容错率低,无法实现在突然断电后,内存数据的完整保存。此为现有技术的不足之处。
因此,针对现有技术中的上述缺陷,提供设计一种linux操作***日志容错方法及***;以解决现有技术中的上述缺陷,是非常有必要的。
发明内容
本发明的目的在于,针对上述现有技术存在的缺陷,提供设计一种linux操作***日志容错方法及***,以解决上述技术问题。
为实现上述目的,本发明给出以下技术方案:
一种linux操作***日志容错方法,其特征在于,包括以下步骤:
S1:硬件初始化的步骤;
linux操作***上电后,BIOS完成硬件部分的初始化设置,并加载服务器启动内核;
S2:更换日志存储路径的步骤;
将用于linux操作***日志保存的NVDIMM物理内存区域保留,并通过页表机制转换为虚拟地址,
S3:设定日志存储路径的步骤;
将虚拟地址范围抽象为块设备,并将块设备初始化为具有直写特性的文件***;linux操作***目录使用的介质为NVDIMM,linux操作***产生的日志文件都写入NVDIMM中;
S4:数据同步的步骤;
设置定时服务程序,每隔一段时间将NVDIMM中的日志数据同步到磁盘中进行永久保存。
作为优选,该linux操作***日志容错方法还包括以下步骤:
S5:linux操作***关闭处理的步骤;
linux操作***关闭时,操作***的日志容错服务最后关闭,即所有使用/var/log目录的服务全部关闭,无法产生新的日志文件,以安全的将NVDIMM中的日志数据全部拷贝到磁盘/var/log.hdd目录中;卸载NVDIMM块设备,将/var/log.hdd目录中的数据拷贝至/var/log目录中。
一种linux操作***日志容错***,其特征在于,它包括:
上电启动模块:用于linux操作***上电后,BIOS完成硬件部分的初始化设置,并加载服务器启动内核;
日志存储路径更换模块:将用于linux操作***日志保存的NVDIMM物理内存区域保留,并通过页表机制转换为虚拟地址;
日志存储路径设定模块:将虚拟地址范围抽象为块设备,并将块设备初始化为具有直写特性的文件***;linux操作***目录使用的介质为NVDIMM,linux操作***产生的日志文件都写入NVDIMM中;
数据同步模块:设置定时服务程序,每隔一段时间将NVDIMM中的日志数据同步到磁盘中进行永久保存。
作为优选,该linux操作***日志容错***还包括有操作***关闭处理模块:操作***的日志容错服务最后关闭,即所有使用/var/log目录的服务全部关闭,无法产生新的日志文件,以安全的将NVDIMM中的日志数据全部拷贝到磁盘/var/log.hdd目录中;卸载NVDIMM块设备,将/var/log.hdd目录中的数据拷贝至/var/log目录中。
本发明的有益效果在于,使用NVDIMM闪存介质,将操作***原本要存放于磁盘的日志,保存到NVDIMM闪存介质上;通过页表转换机制,将NVDIMM所使用的物理内存区域映射为虚拟地址供内核使用;在将虚拟地址范围抽象为块设备并初始化为具有直写特性的文件***。在***断电时,将NVDIMM闪存介质中的***日志存入磁盘相应位置,实现***日志的容错。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。
附图说明
图1是本发明提供的一种linux操作***日志容错方法的流程图。
具体实施方式
下面结合附图并通过具体实施例对本发明进行详细阐述,以下实施例是对本发明的解释,而本发明并不局限于以下实施方式。
实施例1:
如图1所示,本发明提供的一种linux操作***日志容错方法,包括以下步骤:
S1:硬件初始化的步骤;
linux操作***上电后,BIOS完成硬件部分的初始化设置,并加载服务器启动内核;
S2:更换日志存储路径的步骤;
将用于linux操作***日志保存的NVDIMM物理内存区域保留,并通过页表机制转换为虚拟地址,
S3:设定日志存储路径的步骤;
将虚拟地址范围抽象为块设备,并将块设备初始化为具有直写特性的文件***;linux操作***目录使用的介质为NVDIMM,linux操作***产生的日志文件都写入NVDIMM中;
S4:数据同步的步骤;
设置定时服务程序,每隔一段时间将NVDIMM中的日志数据同步到磁盘中进行永久保存。
S5:linux操作***关闭处理的步骤;
linux操作***关闭时,操作***的日志容错服务最后关闭,即所有使用/var/log目录的服务全部关闭,无法产生新的日志文件,以安全的将NVDIMM中的日志数据全部拷贝到磁盘/var/log.hdd目录中;卸载NVDIMM块设备,将/var/log.hdd目录中的数据拷贝至/var/log目录中。
实施例2:
本实施例给出一种linux操作***日志容错***,它包括:
上电启动模块:用于linux操作***上电后,BIOS完成硬件部分的初始化设置,并加载服务器启动内核;
日志存储路径更换模块:将用于linux操作***日志保存的NVDIMM物理内存区域保留,并通过页表机制转换为虚拟地址;
日志存储路径设定模块:将虚拟地址范围抽象为块设备,并将块设备初始化为具有直写特性的文件***;linux操作***目录使用的介质为NVDIMM,linux操作***产生的日志文件都写入NVDIMM中;
数据同步模块:设置定时服务程序,每隔一段时间将NVDIMM中的日志数据同步到磁盘中进行永久保存。
该linux操作***日志容错***还包括有操作***关闭处理模块:操作***的日志容错服务最后关闭,即所有使用/var/log目录的服务全部关闭,无法产生新的日志文件,以安全的将NVDIMM中的日志数据全部拷贝到磁盘/var/log.hdd目录中;卸载NVDIMM块设备,将/var/log.hdd目录中的数据拷贝至/var/log目录中。
以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。

Claims (9)

1.一种linux操作***日志容错方法,其特征在于,包括以下步骤:
S1:硬件初始化的步骤;
S2:更换日志存储路径的步骤;
S3:设定日志存储路径的步骤;
S4:数据同步的步骤。
2.根据权利要求1所述的一种linux操作***日志容错方法,其特征在于,所述步骤S1具体包括:
linux操作***上电后,BIOS完成硬件部分的初始化设置,并加载服务器启动内核。
3.根据权利要求1或2所述的一种linux操作***日志容错方法,其特征在于,所述步骤S2具体包括:
将用于linux操作***日志保存的NVDIMM物理内存区域保留,并通过页表机制转换为虚拟地址。
4.根据权利要求3所述的一种linux操作***日志容错方法,其特征在于,所述步骤S3具体包括:
将虚拟地址范围抽象为块设备,并将块设备初始化为具有直写特性的文件***;linux操作***目录使用的介质为NVDIMM,linux操作***产生的日志文件都写入NVDIMM中。
5.根据权利要求4所述的一种linux操作***日志容错方法,其特征在于,所述步骤S4具体包括:
设置定时服务程序,每隔一段时间将NVDIMM中的日志数据同步到磁盘中进行永久保存。
6.根据权利要求5所述的一种linux操作***日志容错方法,其特征在于,该linux操作***日志容错方法还包括以下步骤:
S5:linux操作***关闭处理的步骤。
7.根据权利要求6所述的一种linux操作***日志容错方法,其特征在于,所述步骤S5具体包括:
linux操作***关闭时,操作***的日志容错服务最后关闭,即所有使用/var/log目录的服务全部关闭,无法产生新的日志文件,以安全的将NVDIMM中的日志数据全部拷贝到磁盘/var/log.hdd目录中;卸载NVDIMM块设备,将/var/log.hdd目录中的数据拷贝至/var/log目录中。
8.一种linux操作***日志容错***,其特征在于,它包括:
上电启动模块:用于linux操作***上电后,BIOS完成硬件部分的初始化设置,并加载服务器启动内核;
日志存储路径更换模块:将用于linux操作***日志保存的NVDIMM物理内存区域保留,并通过页表机制转换为虚拟地址;
日志存储路径设定模块:将虚拟地址范围抽象为块设备,并将块设备初始化为具有直写特性的文件***;linux操作***目录使用的介质为NVDIMM,linux操作***产生的日志文件都写入NVDIMM中;
数据同步模块:设置定时服务程序,每隔一段时间将NVDIMM中的日志数据同步到磁盘中进行永久保存。
9.根据权利要求8所述的一种linux操作***日志容错***,其特征在于,该linux操作***日志容错***还包括有操作***关闭处理模块:操作***的日志容错服务最后关闭,即所有使用/var/log目录的服务全部关闭,无法产生新的日志文件,以安全的将NVDIMM中的日志数据全部拷贝到磁盘/var/log.hdd目录中;卸载NVDIMM块设备,将/var/log.hdd目录中的数据拷贝至/var/log目录中。
CN201810609044.2A 2018-06-13 2018-06-13 一种linux操作***日志容错方法及*** Pending CN108897634A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810609044.2A CN108897634A (zh) 2018-06-13 2018-06-13 一种linux操作***日志容错方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810609044.2A CN108897634A (zh) 2018-06-13 2018-06-13 一种linux操作***日志容错方法及***

Publications (1)

Publication Number Publication Date
CN108897634A true CN108897634A (zh) 2018-11-27

Family

ID=64344798

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810609044.2A Pending CN108897634A (zh) 2018-06-13 2018-06-13 一种linux操作***日志容错方法及***

Country Status (1)

Country Link
CN (1) CN108897634A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11061818B1 (en) 2020-03-16 2021-07-13 International Business Machines Corporation Recovering from write cache failures in servers

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120131253A1 (en) * 2010-11-18 2012-05-24 Mcknight Thomas P Pcie nvram card based on nvdimm
CN105122241A (zh) * 2013-03-15 2015-12-02 亚马逊科技公司 具有数据库引擎和独立分布式存储服务的数据库***
CN106844177A (zh) * 2017-01-23 2017-06-13 联想(北京)有限公司 Linux日志管理方法、装置和***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120131253A1 (en) * 2010-11-18 2012-05-24 Mcknight Thomas P Pcie nvram card based on nvdimm
CN105122241A (zh) * 2013-03-15 2015-12-02 亚马逊科技公司 具有数据库引擎和独立分布式存储服务的数据库***
CN106844177A (zh) * 2017-01-23 2017-06-13 联想(北京)有限公司 Linux日志管理方法、装置和***

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11061818B1 (en) 2020-03-16 2021-07-13 International Business Machines Corporation Recovering from write cache failures in servers

Similar Documents

Publication Publication Date Title
US10162722B2 (en) Virtual machine aware replication method and system
US8812802B2 (en) Capacitor save energy verification
US7865679B2 (en) Power interrupt recovery in a hybrid memory subsystem
US8806165B2 (en) Mass-storage system utilizing auxiliary solid-state storage subsystem
US8555278B2 (en) Method and system for migrating a selected set of virtual machines between volumes
CN105630405B (zh) 一种存储***及采用该存储***的读写方法
US10853264B2 (en) Virtual memory system
US20110016260A1 (en) Managing backup device metadata in a high availability disk subsystem
US20140032959A1 (en) System and Method of Replicating Virtual Machines for Live Migration Between Data Centers
US20110119228A1 (en) Selective file system caching based upon a configurable cache map
US20090031098A1 (en) Variable partitioning in a hybrid memory subsystem
US8607023B1 (en) System-on-chip with dynamic memory module switching
US10735500B2 (en) Application server to NVRAM path
CN104461964A (zh) 一种存储装置
US8954435B2 (en) Method and system for reclaiming storage on a shared storage device or independent of the mount state of a file system
US20110093670A1 (en) System and Method for Enhanced Application Performance with Tiered Storage in an Information Handling System
US11314655B2 (en) Storage device configurable mapping granularity system where data is written without performing read-modify-write operations
US20200042357A1 (en) Os/hypervisor-based persistent memory
US20160364336A1 (en) Sizing a write cache buffer based on emergency data save parameters
CN105786400A (zh) 一种异构混合内存组件、***及存储方法
KR20180013693A (ko) 초과 공급 메모리 장치들을 통합하기 위한 시스템 및 방법
CN108897634A (zh) 一种linux操作***日志容错方法及***
CN105786721A (zh) 一种内存地址映射管理方法及处理器
CN109491837A (zh) 一种非易失性内存储器的日志容错处理方法与装置
US20130024428A1 (en) Method and system for a fast full style system check using multithreaded read ahead

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20181127

RJ01 Rejection of invention patent application after publication