CN111488322A - 文件系统服务方法、装置以及服务端设备 - Google Patents

文件系统服务方法、装置以及服务端设备 Download PDF

Info

Publication number
CN111488322A
CN111488322A CN202010272034.1A CN202010272034A CN111488322A CN 111488322 A CN111488322 A CN 111488322A CN 202010272034 A CN202010272034 A CN 202010272034A CN 111488322 A CN111488322 A CN 111488322A
Authority
CN
China
Prior art keywords
file system
system service
resource
heterogeneous platform
rbd
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
CN202010272034.1A
Other languages
English (en)
Other versions
CN111488322B (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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202010272034.1A priority Critical patent/CN111488322B/zh
Publication of CN111488322A publication Critical patent/CN111488322A/zh
Application granted granted Critical
Publication of CN111488322B publication Critical patent/CN111488322B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/182Distributed 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/13File access structures, e.g. distributed indices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供了一种文件系统服务方法、装置以及服务端设备,涉及系统服务技术领域,缓解了对文件系统服务的配额管理效率较低的技术问题。该方法包括:响应于新增目标文件系统服务的任务,建立与所述目标文件系统服务对应的异构平台共享文件系统服务;基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署,以在所述容器编排引擎的环境下提供新增的所述目标文件系统服务。

Description

文件系统服务方法、装置以及服务端设备
技术领域
本申请涉及系统服务技术领域,尤其是涉及一种文件系统服务方法、装置以及服务端设备。
背景技术
系统服务(system services)是指执行指定系统功能的程序、例程或进程,以便支持其他程序,尤其是底层接近硬件的程序。系统服务是一种应用程序类型,其在后台运行。服务应用程序通常可以在本地和通过网络为用户提供一些功能,例如客户端应用程序、服务器应用程序、全球广域网(World Wide Web,WEB)服务器、数据库服务器以及其他基于服务器的应用程序。
文件系统服务也属于系统服务,其中,文件系统是指操作系统用于明确存储设备或分区上的文件的方法和数据结构,也可以理解为,在存储设备上组织文件。从系统的角度来讲,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。
目前,对于现有的文件系统服务,通常是将文件系统服务对应的网络文件系统直接部署于容器编排引擎上来提供文件存储,该方法对文件系统服务的配额管理效率较低。
发明内容
本发明的目的在于提供一种文件系统服务方法、装置以及服务端设备,以缓解对文件系统服务的配额管理效率较低的技术问题。
第一方面,本申请实施例提供了一种文件系统服务方法,通过容器编排引擎管理多个用于封装所述文件系统的容器,多个所述容器通过块设备服务(RADOS block device,RBD)块存储的方式形成分布式文件系统(Ceph)集群;所述方法包括:
响应于新增目标文件系统服务的任务,建立与所述目标文件系统服务对应的异构平台共享文件系统服务;
基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署,以在所述容器编排引擎的环境下提供新增的所述目标文件系统服务。
在一个可能的实现中,基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署的步骤,包括:
基于所述Ceph集群中的RBD块建立RBD类型的持久化数据卷的使用声明(Persistent Volume Claims,PVC)资源;
将所述RBD类型的PVC资源挂载至所述异构平台共享文件系统服务的容器组(Pod)控制器;
建立储存有所述异构平台共享文件系统服务的持久化数据卷(PersistentVolumes,PV)资源,将所述PV资源与所述PVC资源进行绑定。
在一个可能的实现中,所述Pod控制器为所述异构平台共享文件系统服务的单副本的Pod的控制器。
在一个可能的实现中,在将所述RBD类型的PVC资源挂载至所述异构平台共享文件系统服务的Pod控制器的步骤后,还包括:
利用所述RBD类型的PVC资源对所述异构平台共享文件系统服务的数据目录进行持久化存储。
在一个可能的实现中,在将所述RBD类型的PVC资源挂载至所述异构平台共享文件系统服务的Pod控制器的步骤后,还包括:
建立与所述异构平台共享文件系统服务相对应的微服务,以在所述容器编排引擎的环境下针对所述异构平台共享文件系统服务提供访问进程。
在一个可能的实现中,建立储存有所述异构平台共享文件系统服务的PV资源的步骤,包括:
基于所述异构平台共享文件系统服务建立PV资源,并将所述微服务的服务网际协议(Internet Protocol,简称IP)作为所述PV资源中储存的所述异构平台共享文件系统服务的IP属性。
在一个可能的实现中,所述方法还包括:
响应于针对所述容器编排引擎的环境下原有的文件系统服务的扩容任务,对所述原有的文件系统服务对应的所述PV资源和所述PVC资源的存储量进行扩容。
在一个可能的实现中,响应于针对所述容器编排引擎的环境下原有的文件系统服务的扩容任务,对所述原有的文件系统服务对应的所述PV资源和所述PVC资源的存储量进行扩容的步骤,包括:
响应于针对所述容器编排引擎的环境下原有的文件系统服务的扩容任务,确定所述扩容任务的扩容量;
根据所述扩容量分别更新所述原有的文件系统服务对应的所述PV资源和所述PVC资源的存储量。
在一个可能的实现中,所述方法还包括:
响应于针对所述容器编排引擎的环境下的所述目标文件系统服务的扩容任务,对所述目标文件系统服务对应的所述PV资源和所述PVC资源的存储量进行扩容。
在一个可能的实现中,响应于针对所述容器编排引擎的环境下的所述目标文件系统服务的扩容任务,对所述目标文件系统服务对应的所述PV资源和所述PVC资源的存储量进行扩容的步骤,包括:
响应于针对所述容器编排引擎的环境下所述目标文件系统服务的扩容任务,确定所述扩容任务的扩容量;
根据所述扩容量分别更新所述目标文件系统服务对应的所述PV资源和所述PVC资源的存储量。
在一个可能的实现中,所述方法还包括:
针对所述容器编排引擎的环境中的每个租户建立命名空间,以将所述租户的服务在所述容器编排引擎的环境下的相关资源,建立在所述命名空间下。
在一个可能的实现中,基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署的步骤之前,所述方法还包括:
建立所述Ceph集群,所述Ceph集群中所述文件系统的存储方式为RBD块存储;
将所述Ceph集群作为所述容器编排引擎的环境下所述文件系统的储存架构基础。
第二方面,提供了一种文件系统服务装置,通过容器编排引擎管理多个用于封装所述文件系统的容器,多个所述容器通过RBD块存储的方式形成Ceph集群;所述装置包括:
建立模块,用于响应于新增目标文件系统服务的任务,建立与所述目标文件系统服务对应的异构平台共享文件系统服务;
部署模块,用于基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署,以在所述容器编排引擎的环境下提供新增的所述目标文件系统服务。
第三方面,本申请实施例又提供了一种服务端设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的第一方面所述方法。
第四方面,本申请实施例又提供了一种计算机可读存储介质,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行上述的第一方面所述方法。
本申请实施例带来了以下有益效果:
本申请实施例提供的一种文件系统服务方法、装置以及服务端设备,通过容器编排引擎管理多个用于封装文件系统的容器,多个容器通过RBD块存储的方式形成Ceph集群,能够响应于新增目标文件系统服务的任务,建立与目标文件系统服务对应的异构平台共享文件系统服务,然后,基于Ceph集群中的RBD块对异构平台共享文件系统服务进行部署,以在容器编排引擎的环境下提供新增的目标文件系统服务,本方案区别于现有的将网络文件系统直接部署在Kubernetes上提供文件存储的方法,而是通过Ceph集群中RBD块储存的方式,提高了对文件系统服务的配额管理能力和扩容能力,同时通过异构平台共享文件系统服务还能够保证文件系统多读写的能力,从而达到了在保证文件系统多读写的同时还能够具备较高的配额管理以及扩容的能力。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的文件系统服务方法的流程示意图;
图2为本申请实施例提供的文件系统服务方法的另一流程示意图;
图3为本申请实施例提供的一种文件系统服务装置的结构示意图;
图4为示出了本申请实施例所提供的一种服务端设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
容器技术基于namespace、cgroup、UnioNFS底层技术对进程进行封装隔离,属于操作系统层面的虚拟化技术。使得容器技术比虚拟机技术更为轻便、快捷。Docker最为最主流的容器引擎,结合Dockerfile的设计使得容器充分展现了标准化跨平台能力。
需要说明的是,Kubernetes是开源的分布式的容器编排管理平台,目的是降低计算、网络和存储资源编排的复杂度,使运维人员和开发人员专注于以容器为载体的应用程序。Kubernetes具备完善的集群管理能力,包括应用的快速部署,快速扩容缩容,跨主机调度,安全防护和准入机制,多租户资源隔离,透明的服务注册和服务发现机制,负载均衡、故障发现以及修复能力,多维度的资源配额管理能力。越来越多的企业、组织已经基于Kubernetes打造自身的云计算平台。
目前,在Kubernetes v1.17版本中支持多读写的文件系统包括:AzureFile、CephFS、Glusterfs、Quobyte、NFS。现有为Kubernetes提供文件系统提供高可用服务的方案分为以下几类:
公有云方案:AzureFile
开源方案:CephFS、GlusterFS、NFS。其中开源方案基于部署在服务器和Kubernetes的两种方案。为做区分:CephFS on Kubernetes、GlusterFS on Kubernetes、NFS on Kubernetes,作为部署在Kubernetes的方案。
另外,通常会采用多集群的方式去应对Kubernetes下的文件系统存储场景:MultiCephFS、Multi GlusterFS、Multi NFS。
在云计算场景下文件系统服务通常需要具备这些能力和因素:1、数据可靠性;2、快速部署、升级;3、文件系统服务的高可用;4、多租户隔离;5、租户配额管理;6、文件系统的扩容;7、文件系统的轻量级;8、成本因素。
针对这些需要具备的能力,上述现有方案存在如下问题:
公有云方案:方案实现是屏蔽的,我们只能使用云厂商提供的服务,费用成本比较大。
CephFS、GlusterFS:集群复杂度高,部署、升级复杂度高,无法进行多租户隔离,文件系统的配额管理,文件数量的增加导致出现性能瓶颈,配额管理功能比较弱。
具体各个方案的缺点或不足可以如下表所示:
Figure BDA0002443249180000071
Figure BDA0002443249180000081
因此,现有的文件系统服务无法在保证文件系统多读写的同时再具备较高的配额管理以及扩容的能力。
基于此,本申请实施例提供了一种文件系统服务方法、装置以及服务端设备,通过该方法可以缓解对文件系统服务的配额管理效率较低的技术问题,而且,能够在保证文件系统多读写的同时还具备较高的配额管理以及扩容的能力。
下面结合附图对本发明实施例进行进一步地介绍。
图1为本申请实施例提供的一种文件系统服务方法的流程示意图。通过容器编排引擎管理多个用于封装该文件系统的容器,多个容器通过RBD块存储的方式形成Ceph集群。如图1所示,该方法包括:
步骤S110,响应于新增目标文件系统服务的任务,建立与目标文件系统服务对应的异构平台共享文件系统服务。
其中,新增目标文件系统服务的任务可以包括多种情况的新增服务任务,例如,为租户新增文件系统服务的任务。
本申请实施例中的容器编排引擎可以为各种不同版本的容器编排管理平台,例如,Kubernetes,其为一个管理跨主机容器应用的开源系统,提供了应用的部署、维护以及扩容缩容的基本机制。
步骤S120,基于Ceph集群中的RBD块对异构平台共享文件系统服务进行部署,以在容器编排引擎的环境下提供新增的目标文件系统服务。
其中,异构平台共享文件系统服务可以为各种不同版本的文件系统服务,例如,网络文件系统(Network File System,NFS)。
需要说明的是,Ceph集群是一种高可用高可靠的集群,通过在服务器(server)上部署Ceph集群,能够为Kubernetes集群提供RBD块存储的能力,可以将其作为Kubernetes的StorageClass的供应方。其中,Storage Classes为管理员提供了一种方法来描述他们提供的存储的类。
在实际应用中,可以将Ceph存储作为基础底层,保证了文件存储服务数据的可靠性以及系统的稳定性。Ceph集群中的RBD块具备配额管理功能以及扩容功能,NFS(异构平台共享文件系统服务)具备多读写的功能,本申请实施例提供的方法能够将这两者相结合,实现了基于Ceph的RBD的NFS服务,保障了文件系统的轻量级,同时达到配额管理能力、扩容能力以及多读写能力。使本申请实施例提供的文件系统服务方法区别于NFS直接部署在Kubernetes上提供文件存储的方法,本申请实施例是基于RBD实现了具备RBD的配额管理,存储扩容等功能。而且,区别于直接使用RBD提供存储的仅能够被单副本、单服务进行挂载而没有文件系统多读写的特性,本申请实施例提供的方法实现了多副本、多服务进行挂载文件系统多读写的特性。再者,还能够区别于直接在服务器搭建NFS服务,本申请实施例具备Kubernetes服务快速部署,高可用等优势。
通过使用NFS即使用了其提供的全部存储,弥补了现有的NFS并不具备配额能力的缺点,通过采用对NFS底层的扩容实现基于Kubernetes文件系统服务上的NFS扩容,弥补了现有的Kubernetes并不具备NFS层扩容能力的缺点。本申请实施例提供的方法中,底层基于NFS server,而NFS server采用Kubernetes部署,使数据盘挂载了Ceph RBD,从而保证了数据的多读写、快速部署、升级、可靠性及文件系统服务的高可用性,同时具备多租户隔离能力、配额管理以及扩容的能力,以尽可能共享物理资源降低文件系统服务成本。
本申请实施例中,通过Ceph集群中RBD块储存的方式,提高了对文件系统服务的配额管理能力和扩容能力,同时通过异构平台共享文件系统服务还能够保证文件系统多读写的能力,从而达到了在保证文件系统多读写的同时还能够具备配额管理以及扩容的能力。
下面对上述步骤进行详细介绍。
在一些实施例中,可以建立RBD类型的PVC资源,将其结合于异构平台共享文件系统服务,以实现多读写的功能。作为一个示例,上述步骤S120可以包括如下步骤:
步骤a),基于Ceph集群中的RBD块建立RBD类型的PVC资源;
步骤b),将RBD类型的PVC资源挂载至异构平台共享文件系统服务的Pod控制器;
步骤c),建立储存有异构平台共享文件系统服务的PV资源,将PV资源与PVC资源进行绑定。
其中,PVC资源可以为Kubernetes场景的文件系统资源,能够提供给租户的应用进行挂载。通过创建PVC资源,适配Kubernetes场景,为应用提供PVC。如图2所示,采用配置RBD的Storage Class创建PVC资源,使基于RBD的PVC能够提供配额管理的能力。通过将PVC资源绑定储存有异构平台共享文件系统服务的PV资源。
在上述步骤b)中,实现了在Kubernetes上部署NFS server的Deployment,其中,Deployment是一种Pod的控制器,用户部署、管理Pod实例的生命周期。Pod是可以创建和管理Kubernetes计算的最小可部署单元,由一个或者多个容器组成,同时也是Kubernetes调度的基本粒度。
本申请实施例中,利用Kubernetes通用的存储使用方法,由于PVC基于NFS的多读写特性,因此能够实现租户应用的多挂载,提高应用挂载使用率。
基于上述步骤b),Pod控制器为异构平台共享文件系统服务的单副本的Pod的控制器。
通过创建NFS server(异构平台共享文件系统服务)的单副本Deployment,以在Kubernetes上部署NFS server的单副本Deployment,能够使Ceph集群的RBD块与异构平台共享文件系统服务更有效的结合,以同时充分达到二者的优势。
基于上述步骤b),可以利用RBD类型的PVC资源使文件系统服务的数据目录能够持久化存储。作为一个示例,在步骤b)之后,该方法还可以包括以下步骤:
步骤d),利用RBD类型的PVC资源对异构平台共享文件系统服务的数据目录进行持久化存储。
通过NFS server的单副本Deployment挂载至步骤a)创建的PVC,使得数据目录使用RBD类型的PVC进行持久化,以提供给租户多读写的持久化数据卷PVC。
基于上述步骤b),可以基于异构平台共享文件系统服务对外提供服务。作为一个示例,在步骤b)之后,该方法还可以包括以下步骤:
步骤e),建立与异构平台共享文件系统服务相对应的微服务,以在容器编排引擎的环境下针对异构平台共享文件系统服务提供访问进程。
其中,微服务(service,Svc)是一种将运行在Pod上的应用程序公开为网络服务的抽象方法。如图2所示,通过创建与步骤b)的异构平台共享文件系统服务的Pod控制器相关联的Svc,以对外提供Svc,能够实现NFS服务在Kubernetes集群的可访问。
基于上述步骤e),可以利用服务IP将PV资源与PVC资源进行绑定。作为一个示例,上述步骤c)可以包括如下步骤:
步骤f),基于异构平台共享文件系统服务建立PV资源,并将微服务的服务IP作为PV资源中储存的异构平台共享文件系统服务的IP属性。
示例性的,如图2所示,创建的PV资源的插件类型为NFS,NFS地址为步骤e)中微服务的服务IP(cluster IP)。其中,PV资源实际存储为上述在Kubernetes上创建的NFS服务。
通过在Kubernetes上部署NFS server,实现了提供PV资源,通过将基于NFSserver对应Svc的cluster IP作为PV资源中NFS的IP属性,能够区别于现有方法中的在Kubernetes上搭建NFS server,使本申请实施例提供的方法能够将该NFS server进一步作为Kubernetes(容器编排引擎)的存储底层。
在一些实施例中,可以执行对原有的文件系统服务的扩容。作为一个示例,该方法还可以包括以下步骤:
步骤g),响应于针对容器编排引擎的环境下原有的文件系统服务的扩容任务,对原有的文件系统服务对应的PV资源和PVC资源的存储量进行扩容。
如图2所示,如果Kubernetes环境下原有的文件系统服务需要扩容,可以通过分别更新PVC、PV的存储大小,来实现文件系统的扩容功能。由于基于底层的RBD,实现了PV为NFS类型也具备了扩容、配额的能力。相比于现有的NFS方案,本申请实施例提供的方法能够具备文件系统的扩容能力。
通过修改原有的文件系统服务的PVC和PV的存储大小,能够针对文件系统进行扩容,再通过基于底层的RBD,实现了PV为NFS类型的也具备了扩容。
在实际应用中,上述步骤g)可以包括如下步骤:
步骤h),响应于针对容器编排引擎的环境下原有的文件系统服务的扩容任务,确定扩容任务的扩容量;
步骤i),根据扩容量分别更新原有的文件系统服务对应的PV资源和PVC资源的存储量。
通过先确定扩容任务的扩容量再按照扩容量对PV资源和PVC资源的存储量进行扩容,能够使最终达到的扩容量的大小更加精确。
在一些实施例中,还可以执行对新增的目标文件系统服务的扩容。作为一个示例,该方法还可以包括以下步骤:
步骤j),响应于针对容器编排引擎的环境下的目标文件系统服务的扩容任务,对目标文件系统服务对应的PV资源和PVC资源的存储量进行扩容。
如果Kubernetes环境下新增的目标文件系统服务需要扩容,可以通过分别更新PVC、PV的存储大小,来实现文件系统的扩容功能。由于基于底层的RBD,实现了PV为NFS类型也具备了扩容、配额的能力。相比于现有的NFS方案,本申请实施例提供的方法能够具备文件系统的扩容能力。
通过修改新增的目标文件系统服务的PVC和PV的存储大小,能够针对文件系统进行扩容,再通过基于底层的RBD,实现了PV为NFS类型的也具备了扩容。
在实际应用中,上述步骤j)可以包括如下步骤:
步骤k),响应于针对容器编排引擎的环境下目标文件系统服务的扩容任务,确定扩容任务的扩容量;
步骤m),根据扩容量分别更新目标文件系统服务对应的PV资源和PVC资源的存储量。
通过先确定扩容任务的扩容量再按照扩容量对PV资源和PVC资源的存储量进行扩容,能够使最终达到的扩容量的大小更加精确。
在一些实施例中,可以基于每个租户建立针对于该租户的命名空间。作为一个示例,该方法还可以包括以下步骤:
步骤n),针对容器编排引擎的环境中的每个租户建立命名空间,以将租户的服务在容器编排引擎的环境下的相关资源,建立在命名空间下。
示例性的,如图2所示,在Kubernetes上可以为每一个租户创建独立的命名空间(namespace),后续文件系统服务相关Kubernetes资源都可以创建在该namespace下。
在一些实施例中,可以建立RBD块存储方式的Ceph集群,将该Ceph集群与容器编排引擎相结合。作为一个示例,在步骤S120之前,该方法还可以包括以下步骤:
步骤o),建立Ceph集群,Ceph集群中文件系统的存储方式为RBD块存储;
步骤p),将Ceph集群作为容器编排引擎的环境下文件系统的储存架构基础。
如图2所示,可以在服务器上部署高可用高可靠的Ceph集群,为Kubernetes集群提供块存储RBD支持。其中,Ceph集群是作为基础底层,保证了文件存储服务数据的可靠性,以及系统的稳定性。再者,通过搭建高可用的Ceph集群,能够更有效的提供RBD块存储能力。
图3提供了一种文件系统服务装置的结构示意图。通过容器编排引擎管理多个用于封装文件系统的容器,多个容器通过RBD块存储的方式形成Ceph集群。如图3所示,文件系统服务装置300包括:
第一建立模块301,用于响应于新增目标文件系统服务的任务,建立与目标文件系统服务对应的异构平台共享文件系统服务;
部署模块302,用于基于Ceph集群中的RBD块对异构平台共享文件系统服务进行部署,以在容器编排引擎的环境下提供新增的目标文件系统服务。
在一些实施例中,部署模块302具体用于:
基于Ceph集群中的RBD块建立RBD类型的PVC资源;
将RBD类型的PVC资源挂载至异构平台共享文件系统服务的Pod控制器;
建立储存有异构平台共享文件系统服务的PV资源,将PV资源与PVC资源进行绑定。
在一些实施例中,Pod控制器为异构平台共享文件系统服务的单副本的Pod的控制器。
在一些实施例中,部署模块302还用于:
利用RBD类型的PVC资源对异构平台共享文件系统服务的数据目录进行持久化存储。
在一些实施例中,部署模块302还用于:
建立与异构平台共享文件系统服务相对应的微服务,以在容器编排引擎的环境下针对异构平台共享文件系统服务提供访问进程。
在一些实施例中,在一些实施例中,部署模块302具体用于:
基于异构平台共享文件系统服务建立PV资源,并将微服务的服务IP作为PV资源中储存的异构平台共享文件系统服务的IP属性。
在一些实施例中,该装置还包括:
扩容模块,用于响应于针对容器编排引擎的环境下原有的文件系统服务的扩容任务,对原有的文件系统服务对应的PV资源和PVC资源的存储量进行扩容。
在一些实施例中,扩容模块具体用于:
响应于针对容器编排引擎的环境下原有的文件系统服务的扩容任务,确定扩容任务的扩容量;
根据扩容量分别更新原有的文件系统服务对应的PV资源和PVC资源的存储量。
在一些实施例中,扩容模块还用于:
响应于针对容器编排引擎的环境下的目标文件系统服务的扩容任务,对目标文件系统服务对应的PV资源和PVC资源的存储量进行扩容。
在一些实施例中,扩容模块具体用于:
响应于针对容器编排引擎的环境下目标文件系统服务的扩容任务,确定扩容任务的扩容量;
根据扩容量分别更新目标文件系统服务对应的PV资源和PVC资源的存储量。
在一些实施例中,该装置还包括:
第二建立模块,用于针对容器编排引擎的环境中的每个租户建立命名空间,以将租户的服务在容器编排引擎的环境下的相关资源,建立在命名空间下。
在一些实施例中,该装置还包括:
第三建立模块,用于建立Ceph集群,Ceph集群中文件系统的存储方式为RBD块存储;并将Ceph集群作为容器编排引擎的环境下文件系统的储存架构基础。
本申请实施例提供的文件系统服务装置,与上述实施例提供的文件系统服务方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
如图4所示,本申请实施例提供的一种服务端设备400,包括:处理器401、存储器402和总线,所述存储器402存储有所述处理器401可执行的机器可读指令,当文件系统服务运行时,所述处理器401与所述存储器402之间通过总线通信,所述处理器401执行所述机器可读指令,以执行如上述文件系统服务方法的步骤。
具体地,上述存储器402和处理器401能够为通用的存储器和处理器,这里不做具体限定,当处理器401运行存储器402存储的计算机程序时,能够执行上述文件系统服务方法。
处理器401可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器401中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器401可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processing,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器402,处理器401读取存储器402中的信息,结合其硬件完成上述方法的步骤。
对应于上述文件系统服务方法,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行上述文件系统服务方法的步骤。
本申请实施例所提供的文件系统服务装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
又例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述文件系统服务方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (15)

1.一种文件系统服务方法,其特征在于,通过容器编排引擎管理多个用于封装所述文件系统的容器,多个所述容器通过RBD块存储的方式形成Ceph集群;所述方法包括:
响应于新增目标文件系统服务的任务,建立与所述目标文件系统服务对应的异构平台共享文件系统服务;
基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署,以在所述容器编排引擎的环境下提供新增的所述目标文件系统服务。
2.根据权利要求1所述的方法,其特征在于,基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署的步骤,包括:
基于所述Ceph集群中的RBD块建立RBD类型的PVC资源;
将所述RBD类型的PVC资源挂载至所述异构平台共享文件系统服务的Pod控制器;
建立储存有所述异构平台共享文件系统服务的PV资源,将所述PV资源与所述PVC资源进行绑定。
3.根据权利要求2所述的方法,其特征在于,所述Pod控制器为所述异构平台共享文件系统服务的单副本的Pod的控制器。
4.根据权利要求2所述的方法,其特征在于,在将所述RBD类型的PVC资源挂载至所述异构平台共享文件系统服务的Pod控制器的步骤后,还包括:
利用所述RBD类型的PVC资源对所述异构平台共享文件系统服务的数据目录进行持久化存储。
5.根据权利要求2所述的方法,其特征在于,在将所述RBD类型的PVC资源挂载至所述异构平台共享文件系统服务的Pod控制器的步骤后,还包括:
建立与所述异构平台共享文件系统服务相对应的微服务,以在所述容器编排引擎的环境下针对所述异构平台共享文件系统服务提供访问进程。
6.根据权利要求5所述的方法,其特征在于,建立储存有所述异构平台共享文件系统服务的PV资源的步骤,包括:
基于所述异构平台共享文件系统服务建立PV资源,并将所述微服务的服务IP作为所述PV资源中储存的所述异构平台共享文件系统服务的IP属性。
7.根据权利要求2至6任一项所述的方法,其特征在于,所述方法还包括:
响应于针对所述容器编排引擎的环境下原有的文件系统服务的扩容任务,对所述原有的文件系统服务对应的所述PV资源和所述PVC资源的存储量进行扩容。
8.根据权利要求7所述的方法,其特征在于,响应于针对所述容器编排引擎的环境下原有的文件系统服务的扩容任务,对所述原有的文件系统服务对应的所述PV资源和所述PVC资源的存储量进行扩容的步骤,包括:
响应于针对所述容器编排引擎的环境下原有的文件系统服务的扩容任务,确定所述扩容任务的扩容量;
根据所述扩容量分别更新所述原有的文件系统服务对应的所述PV资源和所述PVC资源的存储量。
9.根据权利要求2至6任一项所述的方法,其特征在于,所述方法还包括:
响应于针对所述容器编排引擎的环境下的所述目标文件系统服务的扩容任务,对所述目标文件系统服务对应的所述PV资源和所述PVC资源的存储量进行扩容。
10.根据权利要求9所述的方法,其特征在于,响应于针对所述容器编排引擎的环境下的所述目标文件系统服务的扩容任务,对所述目标文件系统服务对应的所述PV资源和所述PVC资源的存储量进行扩容的步骤,包括:
响应于针对所述容器编排引擎的环境下所述目标文件系统服务的扩容任务,确定所述扩容任务的扩容量;
根据所述扩容量分别更新所述目标文件系统服务对应的所述PV资源和所述PVC资源的存储量。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
针对所述容器编排引擎的环境中的每个租户建立命名空间,以将所述租户的服务在所述容器编排引擎的环境下的相关资源,建立在所述命名空间下。
12.根据权利要求1所述的方法,其特征在于,基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署的步骤之前,所述方法还包括:
建立所述Ceph集群,所述Ceph集群中所述文件系统的存储方式为RBD块存储;
将所述Ceph集群作为所述容器编排引擎的环境下所述文件系统的储存架构基础。
13.一种文件系统服务装置,其特征在于,通过容器编排引擎管理多个用于封装所述文件系统的容器,多个所述容器通过RBD块存储的方式形成Ceph集群;所述装置包括:
建立模块,用于响应于新增目标文件系统服务的任务,建立与所述目标文件系统服务对应的异构平台共享文件系统服务;
部署模块,用于基于所述Ceph集群中的RBD块对所述异构平台共享文件系统服务进行部署,以在所述容器编排引擎的环境下提供新增的所述目标文件系统服务。
14.一种服务端设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至12任一项所述的方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可运行指令,所述计算机可运行指令在被处理器调用和运行时,所述计算机可运行指令促使所述处理器运行所述权利要求1至12任一项所述的方法。
CN202010272034.1A 2020-04-08 2020-04-08 文件系统服务方法、装置以及服务端设备 Active CN111488322B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010272034.1A CN111488322B (zh) 2020-04-08 2020-04-08 文件系统服务方法、装置以及服务端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010272034.1A CN111488322B (zh) 2020-04-08 2020-04-08 文件系统服务方法、装置以及服务端设备

Publications (2)

Publication Number Publication Date
CN111488322A true CN111488322A (zh) 2020-08-04
CN111488322B CN111488322B (zh) 2023-05-12

Family

ID=71791785

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010272034.1A Active CN111488322B (zh) 2020-04-08 2020-04-08 文件系统服务方法、装置以及服务端设备

Country Status (1)

Country Link
CN (1) CN111488322B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111966471A (zh) * 2020-10-21 2020-11-20 北京首都在线科技股份有限公司 访问方法、装置、电子设备及计算机存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103561101A (zh) * 2013-11-06 2014-02-05 中国联合网络通信集团有限公司 一种网络文件系统
US20160080489A1 (en) * 2014-09-17 2016-03-17 Dh2I Company Coordinated and high availability storage access
CN107070972A (zh) * 2016-12-30 2017-08-18 中国银联股份有限公司 一种分布式文件处理方法及装置
CN107547654A (zh) * 2017-09-12 2018-01-05 郑州云海信息技术有限公司 一种分布式对象存储集群、部署、服务方法及系统
CN109951525A (zh) * 2019-02-18 2019-06-28 山东浪潮云信息技术有限公司 一种基于容器的云盘挂载系统及方法
CN110198329A (zh) * 2018-03-26 2019-09-03 腾讯科技(深圳)有限公司 数据库部署方法、装置、系统、电子设备及可读介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103561101A (zh) * 2013-11-06 2014-02-05 中国联合网络通信集团有限公司 一种网络文件系统
US20160080489A1 (en) * 2014-09-17 2016-03-17 Dh2I Company Coordinated and high availability storage access
CN107070972A (zh) * 2016-12-30 2017-08-18 中国银联股份有限公司 一种分布式文件处理方法及装置
CN107547654A (zh) * 2017-09-12 2018-01-05 郑州云海信息技术有限公司 一种分布式对象存储集群、部署、服务方法及系统
CN110198329A (zh) * 2018-03-26 2019-09-03 腾讯科技(深圳)有限公司 数据库部署方法、装置、系统、电子设备及可读介质
CN109951525A (zh) * 2019-02-18 2019-06-28 山东浪潮云信息技术有限公司 一种基于容器的云盘挂载系统及方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111966471A (zh) * 2020-10-21 2020-11-20 北京首都在线科技股份有限公司 访问方法、装置、电子设备及计算机存储介质
CN111966471B (zh) * 2020-10-21 2022-03-08 北京首都在线科技股份有限公司 访问方法、装置、电子设备及计算机存储介质

Also Published As

Publication number Publication date
CN111488322B (zh) 2023-05-12

Similar Documents

Publication Publication Date Title
US11329885B2 (en) Cluster creation using self-aware, self-joining cluster nodes
US10528366B2 (en) Facilitating multi-inheritance within a single inheritance container-based environment
US11405300B2 (en) Methods and systems to adjust resources and monitoring configuration of objects in a distributed computing system
KR102001190B1 (ko) 트랜잭셔널 미들웨어 머신 환경에서 어플리케이션 컴포넌트들의 자동 디플로이먼트/언디플로이먼트를 지원하기 위한 시스템 및 방법
US11093148B1 (en) Accelerated volumes
US10649861B1 (en) Operational recovery of serverless applications in a cloud-based compute services platform
CN113296792B (zh) 存储方法、装置、设备、存储介质和系统
CN111930473B (zh) 在容器云上部署图像识别服务的方法与设备
US8813076B2 (en) Virtual machine updates
US10235473B2 (en) Methods and systems to allocate logical disk costs to virtual machines in a virtual data center
US20190340057A1 (en) Methods and systems to compound alerts in a distributed computing system
US10230594B2 (en) Intelligently managing pattern contents across multiple racks based on workload and human interaction usage patterns
CN111488322A (zh) 文件系统服务方法、装置以及服务端设备
US9229753B2 (en) Autonomic customization of properties of a virtual appliance in a computer system
CN115048060B (zh) 一种存储管理方法、装置、电子设备及存储介质
CN115016862A (zh) 基于Kubernetes集群的软件启动方法、装置、服务器及存储介质
US10860433B1 (en) Directional consistency in capture and recovery of cloud-native applications
US20160217064A1 (en) Performing dynamic data generation and verification for functional validation of data manipulation programs
US11561787B2 (en) Application invocation on specified operating system version
US11843517B1 (en) Satellite virtual private cloud network environments
US20230409716A1 (en) Shared library customization
US10831571B2 (en) Communicating between systems using a coupling facility list structure
CN115016893A (zh) 一种基于Kubernetes的区块链部署方法和装置
CN117453339A (zh) 分布式架构管理系统、微服务平台、设备和存储介质
CN116483508A (zh) 一种基于容器的离线、简易部署方法及装置

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
GR01 Patent grant
GR01 Patent grant