CN111488320A - 一种清理Kubernetes中业务应用程序日志的方法 - Google Patents

一种清理Kubernetes中业务应用程序日志的方法 Download PDF

Info

Publication number
CN111488320A
CN111488320A CN202010303334.1A CN202010303334A CN111488320A CN 111488320 A CN111488320 A CN 111488320A CN 202010303334 A CN202010303334 A CN 202010303334A CN 111488320 A CN111488320 A CN 111488320A
Authority
CN
China
Prior art keywords
log
directory
file
program
total capacity
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
CN202010303334.1A
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.)
Shanghai Sixun Information Technology Co ltd
Original Assignee
Shanghai Sixun 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 Shanghai Sixun Information Technology Co ltd filed Critical Shanghai Sixun Information Technology Co ltd
Priority to CN202010303334.1A priority Critical patent/CN111488320A/zh
Publication of CN111488320A publication Critical patent/CN111488320A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • G06F16/1815Journaling file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1737Details of further file system functions for reducing power consumption or coping with limited storage space, e.g. in mobile devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种清理Kubernetes中业务应用程序日志的方法,所述方法包括:在Kubernetes集群的每一个节点都部署清空日志程序;设置清空日志程序的扫描日志目录为宿主机的日志存储目录;设置清空日志程序的执行规则,其中,所述执行规则至少包括:定时规则、日志目录总容量阈值、单日志文件大小阈值;在所述定时规则触发时,分别统计日志目录总容量和日志目录下的每个文件容量大小;根据所述日志目录总容量阈值,对日志目录下的文件进行处理;根据单日志文件大小阈值,对日志文件进行处理。发明提供了Kubernetes集群针对业务应用的统一清理日志的方法,日志清理的应用只需部署一次,方便快捷;在原应用迁移到容器的过程中,不需要因为日志问题而修改程序。

Description

一种清理Kubernetes中业务应用程序日志的方法
技术领域
本发明涉及日志处理技术领域,尤其涉及一种清理Kubernetes中业务应用程序日志的方法。
背景技术
kubernetes是一个开源的,管理云平台中多个主机上的容器化的应用,很多企业容器化改造过程中选用kubernetes,其中有的大量应用需要迁移到kubernetes中,应用会输出日志,有的应用会自己管理应用日志,比如分割并清理日志,但是仍有很多应用没有做到自清理日志的功能,部分应用不能继续改造日志的情况下(比如时间太久没有开发人员维护,当前版本不能快速及时迭代出新版本),当这些应用部署到kubernetes中以pod的形式存在,随着应用日志文件的增大,此pod占用的磁盘空间就会越来越大,会使得应用所在服务器的磁盘空间被占满,此时可以手动删除pod并重建pod来解决问题,但是需要人为操作,也有很大的可能导致业务中断。
发明内容
本发明的目的在于克服现有技术之缺陷,提供了一种清理Kubernetes中业务应用程序日志的方法,本发明的应用程序以DaemonSet的方式部署于Kubernetes,定时扫描指定日志目录下所有日志文件,根据单日志大小的阈值来判断是否置空超过阈值的日志文件,也同时支持根据日志目录总容量的阈值来判断是否置空日志目录下的所有日志文件。
本发明是这样实现的:
本发明提供一种清理Kubernetes中业务应用程序日志的方法,所述方法包括:
在Kubernetes集群的每一个节点都部署清空日志程序;
设置清空日志程序的扫描日志目录为宿主机的日志存储目录;
设置清空日志程序的执行规则,其中,所述执行规则至少包括:定时规则、日志目录总容量阈值、单日志文件大小阈值;
在所述定时规则触发时,分别统计日志目录总容量和日志目录下的每个文件容量大小;
根据所述日志目录总容量阈值,对日志目录下的文件进行处理;
根据单日志文件大小阈值,对日志文件进行处理。
一种实现方式中,所述根据所述日志目录总容量阈值,对日志目录下的文件进行处理的步骤,包括:
扫描日志目录下每一个文件及其子文件夹中的文件;
计算所扫描到的文件的大小总和;
与所述日志目录总容量阈值做比较;
在所述总和大于所述日志目录总容量阈值,则将该目录下文件内容置空。
一种实现方式中,所述根据单日志文件大小阈值,对日志文件进行处理的步骤,包括:
扫描日志目录每一个文件;
判断所扫描的文件大小是否超过所述单日志文件大小阈值;
如果是,则对所扫描的文件进行置空处理。
一种实现方式中,所述设置清空日志程序的扫描日志目录为宿主机的日志存储目录的步骤,包括:
确定多个目标应用程序,其中,所述目标应用程序所产生的日志存储于宿主机的日志存储目录下;
设置清空日志程序的扫描日志目录为宿主机的日志存储目录。
应用本发明的清理Kubernetes中业务应用程序日志的方法,具有以下有益效果:
(1)本发明的应用程序以DaemonSet的方式部署于Kubernetes,定时扫描指定日志目录下所有日志文件,根据单日志大小的阈值来判断是否置空超过阈值的日志文件,也同时支持根据日志目录总容量的阈值来判断是否置空日志目录下的所有日志文件。
(2)发明提供了Kubernetes集群针对业务应用的统一清理日志的方法,日志清理的应用只需部署一次,方便快捷;在原应用迁移到容器的过程中,不需要因为日志问题而修改程序。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的清理Kubernetes中业务应用程序日志的方法的一种流程示意图;
图2为本发明实施例提供的清理Kubernetes中业务应用程序日志的方法一种具体应用示意图。
图3为本发明实施例提供的清理Kubernetes中业务应用程序日志的方法的另一种流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
参见图1,本发明实施例提供一种清理Kubernetes中业务应用程序日志的方法,所述方法包括:
S101,在Kubernetes集群的每一个节点都部署清空日志程序。
如图2所示,Kubernetes集群包含多个k8s-node节点,具体的,每一个节点可以有不同的ID或者设置不同的名称。
S102,设置清空日志程序的扫描日志目录为宿主机的日志存储目录。
如图2所示,清空日志程序为empty-log程序,如图2所示,empty-log程序设置于empty-log-pod中,在my-pod1中,通过app1-container与宿主机连接,将app1所产生的日志进行日志目录挂载,例如挂载在/data/logs/app1/app.log内;又例如,在my-pod2中,通过app2-container与宿主机连接,将app2所产生的日志进行日志目录挂载,例如挂载在/data/logs/app2/app.log内。那么app1和app2所产生的日志就会分别存储在/data/logs/app1/app.log和/data/logs/app2/app.log中。
S103,设置清空日志程序的执行规则,其中,所述执行规则至少包括:定时规则、日志目录总容量阈值、单日志文件大小阈值。
本发明实施例中,为了进行自动执行日志管理,例如日志清空的程序,设计执行规则,在达到所要执行的条件时则可以自动启动执行。
定时规则是确定什么时候自动启动程序,例如,固定的时间规则,或者是别的规则。
S104,在所述定时规则触发时,分别统计日志目录总容量和日志目录下的每个文件容量大小。
因此,在规则触发时,分别对宿主机的目录的/data/logs进行扫描,例如,分别扫描其子文件的/data/logs/app1/app.log和/data/logs/app2/app.log的文件总量。
S105,根据所述日志目录总容量阈值,对日志目录下的文件进行处理。
S106,根据单日志文件大小阈值,对日志文件进行处理。
示例性的,如图3所示,日志目录清理步骤:扫描/data/logs目录下每一个文件,与所有子文件夹的文件,然后计算所有文件的大小总和,并与目录阈值做比较,如总值和大于目录阈值,则将所有此目录下文件内容置空。
单日志文件清理步骤:扫描/data/logs目录每一个文件,判断文件大小是否超过文件大小阈值,如超过则进行置空
一种实现方式中,所述根据所述日志目录总容量阈值,对日志目录下的文件进行处理的步骤,包括:
扫描日志目录下每一个文件及其子文件夹中的文件;
计算所扫描到的文件的大小总和;
与所述日志目录总容量阈值做比较;
在所述总和大于所述日志目录总容量阈值,则将该目录下文件内容置空。
一种实现方式中,所述根据单日志文件大小阈值,对日志文件进行处理的步骤,包括:
扫描日志目录每一个文件;
判断所扫描的文件大小是否超过所述单日志文件大小阈值;
如果是,则对所扫描的文件进行置空处理。
一种实现方式中,所述设置清空日志程序的扫描日志目录为宿主机的日志存储目录的步骤,包括:
确定多个目标应用程序,其中,所述目标应用程序所产生的日志存储于宿主机的日志存储目录下;
设置清空日志程序的扫描日志目录为宿主机的日志存储目录。
上述实施例仅例示性说明发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (4)

1.一种清理Kubernetes中业务应用程序日志的方法,其特征在于,所述方法包括:
在Kubernetes集群的每一个节点都部署清空日志程序;
设置清空日志程序的扫描日志目录为宿主机的日志存储目录;
设置清空日志程序的执行规则,其中,所述执行规则至少包括:定时规则、日志目录总容量阈值、单日志文件大小阈值;
在所述定时规则触发时,分别统计日志目录总容量和日志目录下的每个文件容量大小;
根据所述日志目录总容量阈值,对日志目录下的文件进行处理;
根据单日志文件大小阈值,对日志文件进行处理。
2.根据权利要求1所述的清理Kubernetes中业务应用程序日志的方法,其特征在于,所述根据所述日志目录总容量阈值,对日志目录下的文件进行处理的步骤,包括:
扫描日志目录下每一个文件及其子文件夹中的文件;
计算所扫描到的文件的大小总和;
与所述日志目录总容量阈值做比较;
在所述总和大于所述日志目录总容量阈值,则将该目录下文件内容置空。
3.根据权利要求1或2所述的清理Kubernetes中业务应用程序日志的方法,其特征在于,所述根据单日志文件大小阈值,对日志文件进行处理的步骤,包括:
扫描日志目录每一个文件;
判断所扫描的文件大小是否超过所述单日志文件大小阈值;
如果是,则对所扫描的文件进行置空处理。
4.根据权利要求3所述的清理Kubernetes中业务应用程序日志的方法,其特征在于,所述设置清空日志程序的扫描日志目录为宿主机的日志存储目录的步骤,包括:
确定多个目标应用程序,其中,所述目标应用程序所产生的日志存储于宿主机的日志存储目录下;
设置清空日志程序的扫描日志目录为宿主机的日志存储目录。
CN202010303334.1A 2020-04-17 2020-04-17 一种清理Kubernetes中业务应用程序日志的方法 Pending CN111488320A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010303334.1A CN111488320A (zh) 2020-04-17 2020-04-17 一种清理Kubernetes中业务应用程序日志的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010303334.1A CN111488320A (zh) 2020-04-17 2020-04-17 一种清理Kubernetes中业务应用程序日志的方法

Publications (1)

Publication Number Publication Date
CN111488320A true CN111488320A (zh) 2020-08-04

Family

ID=71797895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010303334.1A Pending CN111488320A (zh) 2020-04-17 2020-04-17 一种清理Kubernetes中业务应用程序日志的方法

Country Status (1)

Country Link
CN (1) CN111488320A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112527746A (zh) * 2020-12-18 2021-03-19 平安科技(深圳)有限公司 日志存储方法、装置、设备及存储介质
CN112905537A (zh) * 2021-02-20 2021-06-04 北京百度网讯科技有限公司 文件处理方法、装置、电子设备和存储介质
CN113485965A (zh) * 2021-06-22 2021-10-08 西安震有信通科技有限公司 基于文件大小动态清理日志文件方法、装置、服务器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101677445A (zh) * 2008-09-16 2010-03-24 中兴通讯股份有限公司 一种业务系统日志文件的清理方法及系统
US20130073532A1 (en) * 2011-09-21 2013-03-21 International Business Machines Corporation Coordination of event logging operations and log management
CN105827522A (zh) * 2015-11-10 2016-08-03 广东亿迅科技有限公司 处理日志文件的网关设备
CN108121783A (zh) * 2017-12-19 2018-06-05 深圳创维数字技术有限公司 一种存储数据的自动清理方法、装置、计算机和存储介质
US20200065199A1 (en) * 2018-08-25 2020-02-27 Panzura, Inc. Journaling data received in a cloud-based distributed computing environment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101677445A (zh) * 2008-09-16 2010-03-24 中兴通讯股份有限公司 一种业务系统日志文件的清理方法及系统
US20130073532A1 (en) * 2011-09-21 2013-03-21 International Business Machines Corporation Coordination of event logging operations and log management
CN105827522A (zh) * 2015-11-10 2016-08-03 广东亿迅科技有限公司 处理日志文件的网关设备
CN108121783A (zh) * 2017-12-19 2018-06-05 深圳创维数字技术有限公司 一种存储数据的自动清理方法、装置、计算机和存储介质
US20200065199A1 (en) * 2018-08-25 2020-02-27 Panzura, Inc. Journaling data received in a cloud-based distributed computing environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈建娟;刘行行;: "基于Kubernetes的分布式ELK日志分析系统" *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112527746A (zh) * 2020-12-18 2021-03-19 平安科技(深圳)有限公司 日志存储方法、装置、设备及存储介质
CN112905537A (zh) * 2021-02-20 2021-06-04 北京百度网讯科技有限公司 文件处理方法、装置、电子设备和存储介质
CN112905537B (zh) * 2021-02-20 2022-09-02 北京百度网讯科技有限公司 文件处理方法、装置、电子设备和存储介质
CN113485965A (zh) * 2021-06-22 2021-10-08 西安震有信通科技有限公司 基于文件大小动态清理日志文件方法、装置、服务器

Similar Documents

Publication Publication Date Title
CN111488320A (zh) 一种清理Kubernetes中业务应用程序日志的方法
EP2288975B1 (en) Method for optimizing cleaning of maps in flashcopy cascades containing incremental maps
US20180314706A1 (en) Iterative object scanning for information lifecycle management
US11120147B2 (en) Operating system garbage-collection with integrated clearing of sensitive data
CN104536792A (zh) 清除应用程序残留文件的方法及装置
CN108810055B (zh) 一种大文件传输方法及装置
CN109634638B (zh) 一种集群软件升级方法、装置、设备及介质
US20190303035A1 (en) Copying garbage collector for geographically distributed data storage environment
CN113360462B (zh) 一种文件处理方法、装置、设备及可读存储介质
CN111240892A (zh) 数据备份方法及装置
CN109756533B (zh) 一种镜像加速方法、装置及服务器
CN114706658A (zh) 一种容器镜像数据处理方法、装置、设备及介质
CN116450287A (zh) 业务容器存储容量的管理方法、装置、设备及可读介质
CN109491881B (zh) 一种收集日志的方法、装置、设备及可读存储介质
CN113608838A (zh) 应用镜像文件的部署方法、装置、计算机设备和存储介质
CN106557500B (zh) 一种卸载残留文件的清理方法、装置及终端
CN111984196B (zh) 一种文件迁移方法、装置、设备及可读存储介质
CN111651443A (zh) 一种数据管理方法、装置、电子设备及存储介质
CN110941597A (zh) 解压缩文件的清理方法、装置、计算设备及计算机存储介质
CN112463181B (zh) 多云场景下的软件制品分发方法、装置、设备和存储介质
JP2021077374A (ja) 情報ライフサイクル管理のための同期オブジェクト配置
CN112269763A (zh) 一种文件聚合方法及相关装置
CN112000626B (zh) 一种文件服务器文件处理方法及系统
CN112559115A (zh) 一种容器镜像的删除方法、装置及设备
CN115292051B (zh) 一种gpu资源pod的热迁移方法、装置及应用

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