CN111694641A - 用于容器应用的存储管理方法和系统 - Google Patents

用于容器应用的存储管理方法和系统 Download PDF

Info

Publication number
CN111694641A
CN111694641A CN202010546097.1A CN202010546097A CN111694641A CN 111694641 A CN111694641 A CN 111694641A CN 202010546097 A CN202010546097 A CN 202010546097A CN 111694641 A CN111694641 A CN 111694641A
Authority
CN
China
Prior art keywords
storage volume
node
container
storage
local persistent
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
CN202010546097.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.)
Cetc Kehuayun Information Technology Co ltd
Original Assignee
Cetc Kehuayun 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 Cetc Kehuayun Information Technology Co ltd filed Critical Cetc Kehuayun Information Technology Co ltd
Priority to CN202010546097.1A priority Critical patent/CN111694641A/zh
Publication of CN111694641A publication Critical patent/CN111694641A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • 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/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • 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/45562Creating, deleting, cloning virtual machine instances
    • 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/45583Memory management, e.g. access or allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种用于容器应用的存储管理方法,包括:配置本地持久化存储卷与当前可用的容器资源各节点块设备的对应关系;在调度声明使用存储卷的容器应用实例时,通过动态配对算法优化选择能够满足配对条件的存储卷,将应用实例调度至存储卷所在目标节点,并将目标存储卷挂载至应用实例。对本地持久化存储卷的配置内容包括:存储卷的节点信息、容量大小和挂载点。在对本地持久化存储卷配置后,调用API组件对分布式数据存储时,通过调度器组件对各节点块设备进行调度。

Description

用于容器应用的存储管理方法和系统
技术领域
本发明属于软件开发与部署技术领域,特别涉及一种用于容器应用的存储管理方法和系统。
背景技术
目前,由于容器化应用频繁重建的灵活特性,大多数场景下为容器化应用提供的本地存储皆为临时性存储,例如:本地临时目录。当容器化应用只能使用本地临时存储进行临时文件存储、日志存储等时,此种方式存在如下缺点:
1.应用不能够获取本地存储的剩余可用量;
2.应用对于本地存储的可用性得不到保障;
3.应用有可能因所在节点的本地存储资源不足原因被驱逐出节点。
发明内容
本发明提供了一种用于容器应用的存储管理方法和系统,目的是解决容器应用无法高效实用本地存储资源的问题。
本发明实施例之一,一种用于容器应用的存储管理方法,该方法包括以下步骤:
配置本地持久化存储卷与当前可用的容器资源各节点块设备的对应关系;
在调度声明使用存储卷的容器应用实例时,通过动态配对算法优化选择能够满足配对条件的存储卷,将应用实例调度至存储卷所在目标节点,并将目标存储卷挂载至应用实例。
进一步的,对本地持久化存储卷的配置内容包括:存储卷的节点信息、容量大小和挂载点。
本发明提供了一种基于本地化持久存储卷的最优化容器应用存储管理策略,很好适应了容器化应用频繁重建带来的存储要求。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1根据本发明实施例之一的最优化容器应用存储管理方法示意图。
具体实施方式
根据一个或者多个实施例,一种,用于容器应用的存储管理方法,主要包括以下步骤:
抽象描述本地持久化存储卷;
抽象描述容器化应用与本地持久化存储卷关系;
基于应用与本地持久化存储卷关系的自动化部署调度策略。
根据一个或者多个实施例,如图1所示,一种统一定义本地节点块设备存储为本地持久化存储卷,并动态调度容器应用实例至目标节点关联存储卷的管理方法。
首先,在容器资源管理系统中,定义本地持久化存储卷对象与当前可用的各资源节点块设备的对应关系,如:存储卷的节点信息、容量大小、挂载点等。
然后,在调度声明使用存储卷的容器应用实例时,通过动态配对算法优化选择能够满足配对条件的存储卷,将应用实例调度至存储卷所在目标节点,并将目标存储卷挂载至应用实例。
优选的,在对本地持久化存储卷配置后,调用API组件对分布式数据存储时,通过调度器组件对各节点块设备进行调度。
4.根据权利要求1所述的用于容器应用的存储管理方法,其特征在于,采用SSD磁盘作为本地持久存储卷。
本实施例实现的技术方案包括:如何统一抽象描述本地持久化存储卷;如何抽象描述容器化应用与本地持久化存储卷关系;如何通过应用的自动化部署实现应用实例与持久化存储卷的依赖调度策略。
采用本发明实施例带来的技术效果包括:
·性能提升:对于采用SSD磁盘的本地持久存储卷,能够提供更好的操纵性能,更适合数据库应用、分布式应用等;
·成本降低:对于裸金属设备,为达到更高性能,本地持久化存储卷往往比分布式存储等其他持久化存储方案成本更低。
根据一个或者多个实施例,对于抽象描述本地持久化存储卷的步骤,采用现有软件中YAML格式文本对本地持久化存储进行统一定义,并使用分布式数据存储系统对其进行具有可靠性的存储。
YAML格式示例如下:
#YAML
Type:PersistentVolume
Name:pv1
Capacity:5Gi
Local:
Path:/mnt/disks/vol1#本地卷位置。
对于抽象描述容器化应用与本地持久化存储卷关系的步骤,采用目前软件中YAML格式文本对应用与本地持久化存储卷关系进行统一定义,并使用分布式数据存储系统对其进行具有可靠性存储。
YAML格式示例如下:
#YAML
Type:Container
Name:App1
Image:nginx
VolumeMounts:
·MountPath:”/usr/share/nginx/html”
Name:pv1。
对于基于应用与本地持久化存储卷关系的自动化部署调度策略,调度策略的实现方式为通过一组规则为每一个未调度的应用选择一个具有适合存储卷的节点。主要包含两个方面,过滤节点和节点打分。
·过滤节点(Filters):用一组规则过滤掉不符合要求的节点。如:是否包含存储卷、存储卷大小是否匹配、节点剩余资源是否能够满足要求。
·节点打分(Weighting):对上一步筛选出的符合要求的主机打分,如:
节点剩余的CPU、内存、存储容器量。而后选择出打分最高的节点。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (7)

1.一种用于容器应用的存储管理方法,其特征在于,该方法包括以下步骤:
配置本地持久化存储卷与当前可用的容器资源各节点块设备的对应关系;
在调度声明使用存储卷的容器应用实例时,通过动态配对算法优化选择能够满足配对条件的存储卷,将应用实例调度至存储卷所在目标节点,并将目标存储卷挂载至应用实例。
2.根据权利要求1所述的用于容器应用的存储管理方法,其特征在于,对本地持久化存储卷的配置内容包括:存储卷的节点信息、容量大小和挂载点。
3.根据权利要求2所述的用于容器应用的存储管理方法,其特征在于,在对本地持久化存储卷配置后,调用API组件对分布式数据存储时,通过调度器组件对各节点块设备进行调度。
4.根据权利要求1所述的用于容器应用的存储管理方法,其特征在于,采用SSD磁盘作为本地持久存储卷。
5.根据权利要求1所述的用于容器应用的存储管理方法,其特征在于,
采用YAML格式文本对本地持久化存储进行统一定义,并使用分布式数据存储系统进行存储;
采用YAML格式文本对容器应用与本地持久化存储卷关系进行统一定义,并使用分布式数据存储系统对容器应用进行存储。
6.根据权利要求1所述的用于容器应用的存储管理方法,其特征在于,所述调度使用的调度策略为,
通过一组规则为每一个未调度的应用选择一个具有适合存储卷的节点,具体包括,过滤节点和节点打分,
所述过滤节点是指:用一组规则过滤掉不符合要求的节点,是否符合要求要考虑的因素包括:是否包含存储卷、存储卷大小是否匹配、节点剩余资源是否能够满足要求;
所述节点打分是指:对筛选出的符合要求的节点主机打分,打分考虑的因素包括:节点剩余的CPU、内存、存储容器量,然后选择出打分最高的节点作为所述的具有适合存储卷的节点。
7.一种用于容器应用的存储管理系统,其特征在于,所述的管理系统包括本地持久化存储卷、节点块设备和容器应用,对于容器应用的存储管理方法是:
配置本地持久化存储卷与当前可用的容器资源各节点块设备的对应关系;
在调度声明使用存储卷的容器应用实例时,通过动态配对算法优化选择能够满足配对条件的存储卷,将应用实例调度至存储卷所在目标节点,并将目标存储卷挂载至应用实例。
CN202010546097.1A 2020-06-16 2020-06-16 用于容器应用的存储管理方法和系统 Pending CN111694641A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010546097.1A CN111694641A (zh) 2020-06-16 2020-06-16 用于容器应用的存储管理方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010546097.1A CN111694641A (zh) 2020-06-16 2020-06-16 用于容器应用的存储管理方法和系统

Publications (1)

Publication Number Publication Date
CN111694641A true CN111694641A (zh) 2020-09-22

Family

ID=72481155

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010546097.1A Pending CN111694641A (zh) 2020-06-16 2020-06-16 用于容器应用的存储管理方法和系统

Country Status (1)

Country Link
CN (1) CN111694641A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113296711A (zh) * 2021-06-11 2021-08-24 中国科学技术大学 一种数据库场景中优化分布式存储延迟的方法
CN113821328A (zh) * 2021-11-23 2021-12-21 江苏苏宁银行股份有限公司 一种容器集群的调度方法、装置、电子设备和存储介质
CN114281263A (zh) * 2021-12-27 2022-04-05 深圳市名竹科技有限公司 容器集群管理系统的存储资源处理方法、系统和设备

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160117107A1 (en) * 2014-10-22 2016-04-28 Mayank Ahuja High Performance Hadoop with New Generation Instances
CN105657057A (zh) * 2012-12-31 2016-06-08 华为技术有限公司 一种计算存储融合的集群系统
US20180267785A1 (en) * 2017-03-17 2018-09-20 Verizon Patent And Licensing Inc. Persistent data storage for a microservices application
CN108958976A (zh) * 2018-07-02 2018-12-07 山东汇贸电子口岸有限公司 一种pv快照备份恢复分布式数据库数据方法和系统
US20190188079A1 (en) * 2017-12-11 2019-06-20 Fungible, Inc. Durable block storage in data center access nodes with inline erasure coding
CN110058922A (zh) * 2019-03-19 2019-07-26 华为技术有限公司 一种提取机器学习任务的元数据的方法、装置
CN110119308A (zh) * 2018-02-07 2019-08-13 北京第一视角科技有限公司 管理大规模容器应用的系统
CN110362384A (zh) * 2019-07-16 2019-10-22 北京奇艺世纪科技有限公司 一种资源分配方法、装置、电子设备及存储介质
US20200034240A1 (en) * 2018-07-30 2020-01-30 EMC IP Holding Company LLC Network block device based continuous replication for kubernetes container management systems
CN110780822A (zh) * 2019-10-28 2020-02-11 浪潮云信息技术有限公司 一种管理容器云本地存储系统及实现方法
CN110851082A (zh) * 2019-11-08 2020-02-28 浪潮云信息技术有限公司 一种容器对接光纤网络存储的方法
CN111221620A (zh) * 2018-11-27 2020-06-02 华为技术有限公司 存储方法、装置及存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105657057A (zh) * 2012-12-31 2016-06-08 华为技术有限公司 一种计算存储融合的集群系统
US20160117107A1 (en) * 2014-10-22 2016-04-28 Mayank Ahuja High Performance Hadoop with New Generation Instances
US20180267785A1 (en) * 2017-03-17 2018-09-20 Verizon Patent And Licensing Inc. Persistent data storage for a microservices application
US20190188079A1 (en) * 2017-12-11 2019-06-20 Fungible, Inc. Durable block storage in data center access nodes with inline erasure coding
CN110119308A (zh) * 2018-02-07 2019-08-13 北京第一视角科技有限公司 管理大规模容器应用的系统
CN108958976A (zh) * 2018-07-02 2018-12-07 山东汇贸电子口岸有限公司 一种pv快照备份恢复分布式数据库数据方法和系统
US20200034240A1 (en) * 2018-07-30 2020-01-30 EMC IP Holding Company LLC Network block device based continuous replication for kubernetes container management systems
CN111221620A (zh) * 2018-11-27 2020-06-02 华为技术有限公司 存储方法、装置及存储介质
CN110058922A (zh) * 2019-03-19 2019-07-26 华为技术有限公司 一种提取机器学习任务的元数据的方法、装置
CN110362384A (zh) * 2019-07-16 2019-10-22 北京奇艺世纪科技有限公司 一种资源分配方法、装置、电子设备及存储介质
CN110780822A (zh) * 2019-10-28 2020-02-11 浪潮云信息技术有限公司 一种管理容器云本地存储系统及实现方法
CN110851082A (zh) * 2019-11-08 2020-02-28 浪潮云信息技术有限公司 一种容器对接光纤网络存储的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李亚康;齐法制;王彦明;齐孟尧;: "基于OpenStack的中国散裂中子源计算环境概述" *
王勇;田博;王端;: "云存储的多维离线调度算法" *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113296711A (zh) * 2021-06-11 2021-08-24 中国科学技术大学 一种数据库场景中优化分布式存储延迟的方法
CN113821328A (zh) * 2021-11-23 2021-12-21 江苏苏宁银行股份有限公司 一种容器集群的调度方法、装置、电子设备和存储介质
CN114281263A (zh) * 2021-12-27 2022-04-05 深圳市名竹科技有限公司 容器集群管理系统的存储资源处理方法、系统和设备
CN114281263B (zh) * 2021-12-27 2024-03-29 深圳市名竹科技有限公司 容器集群管理系统的存储资源处理方法、系统和设备

Similar Documents

Publication Publication Date Title
CN111694641A (zh) 用于容器应用的存储管理方法和系统
CN110663019B (zh) 用于叠瓦式磁记录(smr)的文件系统
US8126914B2 (en) Selecting a resource manager to satisfy a service request
US9361034B2 (en) Transferring storage resources between snapshot storage pools and volume storage pools in a distributed network
US5687372A (en) Customer information control system and method in a loosely coupled parallel processing environment
US9501473B1 (en) Workflow process with temporary storage resource reservation
EP3739845A1 (en) Resource scheduling method, apparatus, device and system
US20080077682A1 (en) Service level mapping method
US7305537B1 (en) Method and system for I/O scheduler activations
US20060136525A1 (en) Method, computer program product and mass storage device for dynamically managing a mass storage device
US10701154B2 (en) Sharding over multi-link data channels
US20100100700A1 (en) Adaptively preventing out of memory conditions
US5682507A (en) Plurality of servers having identical customer information control procedure functions using temporary storage file of a predetermined server for centrally storing temporary data records
CN113032099B (zh) 云计算节点、文件管理方法及装置
US20070198697A1 (en) Method of refactoring methods within an application
US20170344297A1 (en) Memory attribution and control
CN115408100A (zh) 容器集群调度的方法、装置、设备及存储介质
US8443369B1 (en) Method and system for dynamically selecting a best resource from each resource collection based on resources dependencies, prior selections and statistics to implement an allocation policy
US5790868A (en) Customer information control system and method with transaction serialization control functions in a loosely coupled parallel processing environment
CA2498477C (en) Memory management system and method for a mobile device
CN113010265A (zh) Pod的调度方法、调度器、存储插件及系统
US10592469B1 (en) Converting files between thinly and thickly provisioned states
US5630133A (en) Customer information control system and method with API start and cancel transaction functions in a loosely coupled parallel processing environment
US10776173B1 (en) Local placement of resource instances in a distributed system
CN110673935A (zh) 一种基于Kubernetes系统的作业调度方法、设备以及存储介质

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