CN111176664A - 一种存储集群设置方法、装置、介质及设备 - Google Patents
一种存储集群设置方法、装置、介质及设备 Download PDFInfo
- Publication number
- CN111176664A CN111176664A CN201911367014.6A CN201911367014A CN111176664A CN 111176664 A CN111176664 A CN 111176664A CN 201911367014 A CN201911367014 A CN 201911367014A CN 111176664 A CN111176664 A CN 111176664A
- Authority
- CN
- China
- Prior art keywords
- service
- storage
- storage cluster
- cluster
- storageclass
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Abstract
本申请涉及容器集群管理领域,一种存储集群设置方法、系统、介质及设备。本申请从镜像库中拉取网络文件系统服务插件镜像,通过配置Yaml文件,利用kubectl命令行启动网络文件系统服务插件provisioner,并定义provisioner相关的作用权限;将定义好作用权限的provisioner相关参数填入StorageClass配置文件;从镜像库中拉取存储服务相关镜像,配置StatefulSet类型的Yaml文件,将StorageClass字段配置为所述创建StorageClass时的名称;拉起存储集群服务;当存储集群服务相关容器均处于运行状态时,对存储集群进行初始化设置。
Description
技术领域
本申请涉及容器集群管理领域,具体而言,涉及一种存储集群设置方法、系统、介质及设备。
背景技术
信息化社会的不断发展带来了经济财富的同时,使得信息爆炸式的增长。随着全球经济的增长,世界各地对IT系统的依赖都在不断的增加,信息的膨胀与增值服务给服务器存储的性能和可靠性带来了巨大的挑战。而高可靠、稳定存储集群的出现为提供不间断服务和故障快速恢复提供了可能性。以分布式存储的高可靠存储集群为例,其采用分布式的系统结构,利用多台存储服务器分担存储负荷。具有高性能、支持分级存储、多副本一致性、容灾和备份、弹性扩展等特点,提高了系统的可靠性、可用性和存取效率,还易于扩展。
传统安装及初始化存储集群通过脚本或者阅读软件的自定义说明来进行。这样存储集群的配置、运行、操作、管理都依赖于当前的运行环境。移植到新的运行环境需要进行新的适配,并且每次应用的版本更新均需要手动式的根据版本说明进行重配置。在大型工程中,靠手动式的配置带来的时间和人力成本花销太大,藉此提出了存储集群容器化技术。
容器化后的存储应用占用资源少、部署快。保证了应用生命周期的环境一致性标准,开发完成后可以通过封装着完整环境和应用的镜像进行迁移,简化了集成、测试和发布的过程。容器没有管理程序的额外开销,与底层共享操作系统,性能更加优良,系统负载更低,在同等条件下可以运行更多的存储应用实例,可以更充分地利用系统资源。同时,容器拥有不错的资源隔离与限制能力,可以精确地对应用分配CPU、内存等资源,保证了各存储之间不会相互影响。每个应用不依赖于当前的环境,由镜像统一创建应用的容器环境,基于容器提供的环境一致性和标准话,可以通过容器管理工具对整个应用的运行环境实现版本控制。
Kubernetes,简称K8s,是一个开源的、用于管理云平台中多个主机上的容器化应用的容器集群管理系统,是一个完备的分布式系统支撑平台,在Docker技术的基础上,为容器化的应用提供部署、资源动态分配、接口发现和周期管理等一系列完整功能,具有大规模容器集群管理的便捷性。在Kubernetes的统一管理界面中,可以对容器化后的应用进行统一管理,包括应用生命周期查询、启停状况、运行状态、部署所在的集群节点等状态都可以通过命令行进行查询获取,避免在管理上的分块查询。
利用K8s进行容器化存储集群的部署为存储集群的管理带来极大的便利。K8s拥有可视化管理界面,可以对容器化后的集群应用进行统一管理,包含了容器的运行状态查询、部署所在节点、集群运行状态监控。这样为管理集群和监控集群状态带来了极大的便捷。K8s部署容器化存储集群以Redis举例,主要有以下步骤如原理图1所示:
1、通过配置静态PersistentVolumes(简称PV)和PersistentVolumeClaim(简称PVC)来部署集群中的存储类型;
2、配置Configmap来定义存储集群中的Master和Slave节点;
3、通过StatefulSet来对集群的节点数量、镜像中的端口映射和变量进行配置;
初始化存储集群中存在一个问题,当工程需要拉取存储集群时,要求存储服务最好是部署在不同的服务器上,确保在应对紧急情况时数据的安全性。现有可行办法在手动部署集群时,可以将PV创建在不同的服务器中来确保数据的安全性,但是其中的PV在确定资源容量后,存储空间是有限的,不会自动扩展;在遇见需要集群扩容的情况下不得不重启服务进行手动扩容。在现有的专利中,与K8s自动化部署PV相关的专利[基于Kubernetes的应用编排部署方法]中有谈及关于K8s自身的PV自动化部署机制,但是并未提到如何通过监控存储容量从而实现自动扩容问题。并且K8s原生集群并不能监控存储节点的容量问题,需要一套监控机制实现对存储集群的容量检测以及自动扩容。在发明[一种基于Kubernetes平台的深度学习任务弹性伸缩系统及方法]中公开了一种基于K8s平台的深度学习任务弹性伸缩系统及方法,其中也包括了数据采集以及数据监控。但是其中的监控是通过采集集群内节点的内存利用率,再根据内存利用率合理计算训练模型的分配,同时专利[一种基于Kubernetes容器资源动态调整的方法]中提到了可通过Kubernetes内置的指标服务器采集容器的实际资源使用,从而根据指标计算容器的分布以上与当前要解决的节点的存储容量监控的问题有一些不相符的地方。
发明内容
本申请提供一种存储集群设置方法、装置、介质及设备,以解决现有技术地址的识别的准确率不高的技术问题。以解决集群部署中的集群的拉取、集群初始化、集群存储容量监控以及动态扩容等问题。
本申请的实施例通过如下方式实现:
一种存储集群设置方法包括:
从镜像库中拉取网络文件系统(NFS)服务插件镜像,配置Yaml文件,定义网络文件系统服务插件的作用域以及相应参数,利用kubectl命令行启动网络文件系统(NFS)服务插件provisioner,并定义provisioner相关的作用权限;
基于启动后的网络文件服务插件provisioner相关参数,创建StorageClass;并将定义好作用权限的网络文件服务插件provisioner参数填入StorageClass配置文件;
基于所述StorageClass配置文件,从镜像库中拉取存储服务相关镜像,配置StatefulSet类型的Yaml文件,将StorageClass字段配置为所述创建StorageClass时的名称;
拉起存储集群服务;
当存储集群服务相关容器均处于运行状态时,对存储集群进行初始化设置。
优选的,所述镜像库中拉取NFS服务插件镜像之前还包括:指定Kubernetes集群中n台主机,将其作为存储节点;并在其中安装网络文件系统(NFS)服务,并指定网络文件系统的存储目录;其中,n大于等于1的正整数。
优选的,在集群拉取并初始化成功后,将集群所在的节点添加对应的数据监控服务,通过设定阈值来判断当前存储集群的容量是否达到上限;若达到上限,通过设定的平台服务实现对应的存储容量的修改从而实现集群容量的自动伸缩。
优选的,所述镜像库指的是Kubernetes集群中原有的镜像库或者是公共镜像库。
优选的,配置Yaml文件流程是:
从镜像库中拉取网络文件系统NFS镜像;
通过填写k8s的deployment格式的Yaml配置文件中的参数生成模板后,通过kubectl命令行使用kubectl apply启动网络文件系统服务插件。
优选的,所述StorageClass配置完成之后,拉取存储集群服务之前,K8s环境下,StorageClass会自动动态配置PV;所述StatefulSet配置完成之后,拉取存储集群服务之前,StatefulSet服务自动创建PVC;所述PVC和PV相互绑定。
优选的,所述存储集群服务是Redis、MySQL、MongoDB或Elasticsearch。
一种存储集群设置装置包括:
provisioner配置模块:用于从镜像库中拉取网络文件系统(NFS)服务插件镜像,配置Yaml文件,定义网络文件系统服务插件的作用域以及相应参数,利用kubectl命令行启动网络文件系统(NFS)服务插件provisioner,并定义provisioner相关的作用权限;
StorageClass配置模块,用于基于启动后的服务插件provisioner相关参数,创建StorageClass;并将定义好作用权限的NFS服务插件provisioner参数填入StorageClass配置文件;
StatefulSet配置模块,用于基于所述StorageClass配置文件,从镜像库中拉取存储服务相关镜像,配置StatefulSet类型的Yaml文件,将StorageClass字段配置为所述创建StorageClass时的名称;
存储集群服务配置,用于拉起存储集群服务;当存储集群服务相关容器均处于运行状态时,对存储集群进行初始化设置。
一种计算机可读存储介质所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的存储集群设置方法的步骤。
一种存储集群设置设备包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述任一项所述的基于Kubernetes的存储集群设置方法的步骤。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的部署集群流程;
图2为本申请实施例提供的各部分相互关系;
图3为本申请实施例提供的本申请中的部署集群流程图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行描述。
请参照图2,在实际工程中,启动一项服务希望能够配置的参数越少越好,最好是可以配置默认的前提下,一键启动;而现有技术中的部署根据资源需要手动创建PV和PVC,并且由于数据安全的需求,需要将PV和PVC部署在不同的集群节点中。在K8s集群中,StatefulSet中配置了相应的PVC模板后会自动创建相应的PVC,但是如果没有对应的PV可以与PVC绑定,则会显示服务集群拉起失败;在自动化部署中,首先需要解决的问题则是在PVC拉起时需要自动创建PV与StatefulSet创建的PVC进行绑定后使集群运行;K8s提供的动态配置PV的机制是StorageClass,通过查询官方文档可以知道,StorageClass需要绑定相应的provisioner。其中provisioner决定了通过StorageClass拉起的动态PV的存储类型。
由于K8s本身支持了GCE、AWS、Cinder、Ceph、NFS等多种存储系统,K8s本身的PV支持RWO(ReadWriteOnce)、ROX(ReadOnlyMany)、RWM(ReadWriteMany)三种模式。同时满足这三种模式的存储系统仅有AzureFile、CephFS、Glusterfs和NFS。本申请即以创建NFS(网络文件系统)类型的provisioner举例,其他不同类型的存储系统亦可复用此原理来对Yaml文件进行配置最后生成服务;本申请除开利用K8s进行自动化集群部署以外,还添加了监控当前集群的存储容量,设置相应的阈值来保证集群的正常使用;自动拉取集群流程如图二所示。
图3是本实施例公开流程图。所述存储集群设置方法应用于各个需要应用场景,具体包括以下步骤
步骤101:从镜像库中拉取网络文件系统(NFS)服务插件镜像,配置Yaml文件,定义网络文件系统服务插件的作用域以及相应参数,利用kubectl命令行启动网络文件系统(NFS)服务插件provisioner,并定义provisioner相关的作用权限;
步骤102:基于启动后的服务插件provisioner相关参数,创建StorageClass;并将定义好作用权限的NFS服务插件provisioner参数填入StorageClass配置文件;
步骤103:基于所述StorageClass配置文件,从镜像库中拉取存储服务相关镜像,配置StatefulSet类型的Yaml文件,将StorageClass字段配置为所述创建StorageClass时的名称;
步骤104:拉起存储集群服务;
步骤105:当存储集群服务相关容器均处于运行状态时,对存储集群进行初始化设置。
其中,配置网络文件系统服务的Yaml文件流程是:
步骤1011:从镜像库中拉取网络文件系统NFS镜像;
步骤1012:通过填写K8s的deployment格式的Yaml配置文件中的参数生成模板后,通过kubectl命令行使用kubectl apply启动网络文件系统服务插件。
应该注意的是:Yaml文件中配置参数包含镜像名称,管理副本数量,下发目标节点名称。通过配置上述参数可以确定启动的服务类型,服务副本,运行服务的节点从而保证服务的可靠性。
比如安装NFS服务插件,镜像名称为NFS:1.0.1,下发节点系统名称为ubuntu-desk,副本数量为6。
其中,配置StatefulSet类型的Yaml文件流程是:
步骤1021:从镜像库中拉取存储集群镜像,如Redis:5.0.5等;
步骤1022:通过填写K8s的StatefulSet格式的Yaml配置文件中的参数生成模板后,通过kubectl命令行使用kubectl apply启动存储集群服务。
为了详述上述实施例公开的一种存储集群设置方法,所述镜像库中拉取NFS服务插件镜像之前还包括:指定Kubernetes集群中n台主机,将其作为存储节点;并在其中安装网络文件系统(NFS)服务,并指定网络文件系统的存储目录;其中,n大于等于1的正整数。
为了详述上述实施例公开的一种存储集群设置方法,所述镜像库指的是Kubernetes集群中原有的镜像库或者是公共镜像库。
为了详述上述实施例公开的一种存储集群设置方法,在集群拉取并初始化成功后,将集群所在的节点添加对应的数据监控服务,通过设定阈值来判断当前存储集群的容量是否达到上限;若达到上限,通过设定的平台服务实现对应的存储容量的修改从而实现集群容量的自动伸缩。
为了详述上述实施例公开的一种存储集群设置方法,所述StorageClass配置完成之后,拉取存储集群服务之前,K8s环境下,StorageClass会自动动态配置PV;所述StatefulSet配置完成之后,拉取存储集群服务之前,StatefulSet服务自动创建PVC;所述PVC和PV相互绑定。
为了详述上述实施例公开的一种存储集群设置方法,所述存储集群服务是Redis、MySQL、MongoDB或Elasticsearch。
为了详述上述实施例公开的一种存储集群设置方法,本申请对应提供存储集群设置装置包括:
provisioner配置模块:用于从镜像库中拉取网络文件系统(NFS)服务插件镜像,配置Yaml文件,定义网络文件系统服务插件的作用域以及相应参数,利用kubectl命令行启动网络文件系统(NFS)服务插件provisioner,并定义provisioner相关的作用权限;
StorageClass配置模块,用于基于启动后的服务插件provisioner相关参数,创建StorageClass;并将定义好作用权限的NFS服务插件provisioner参数填入StorageClass配置文件;
StatefulSet配置模块,用于基于所述StorageClass配置文件,从镜像库中拉取存储服务相关镜像,配置StatefulSet类型的Yaml文件,将StorageClass字段配置为所述创建StorageClass时的名称;
存储集群服务配置,用于拉起存储集群服务;当存储集群服务相关容器均处于运行状态时,对存储集群进行初始化设置。
其中,配置Yaml文件流程是:
从镜像库中拉取网络文件系统NFS镜像;
通过填写K8s的Yaml配置文件中的参数生成模板后,通过kubectl命令行使用kubectl apply启动服务插件。
为了详述上述实施例公开的一种规则配置装置,所述镜像库中拉取NFS服务插件镜像之前还包括:指定Kubernetes集群中n台主机,将其作为存储节点;并在其中安装网络文件系统(NFS)服务,并指定网络文件系统的存储目录;其中,n大于等于1的正整数。
为了详述上述实施例公开的一种规则配置装置,所述镜像库指的是Kubernetes集群中原有的镜像库或者是公共镜像库。
为了详述上述实施例公开的一种规则配置装置,在集群拉取并初始化成功后,将集群所在的节点添加对应的数据监控服务,通过设定阈值来判断当前存储集群的容量是否达到上限;若达到上限,通过设定的平台服务实现对应的存储容量的修改从而实现集群容量的自动伸缩。
为了详述上述实施例公开的一种规则配置装置,所述StorageClass配置完成之后,拉取存储集群服务之前,K8s环境下,StorageClass会自动动态配置PV;所述StatefulSet配置完成之后,拉取存储集群服务之前,StatefulSet服务自动创建PVC;所述PVC和PV相互绑定。
为了详述上述实施例公开的一种规则配置装置,所述存储集群服务是Redis、MYSQL、MongoDB或Elasticsearch。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述存储集群设置的报警方法。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述存储集群设置的报警方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
步骤201:从镜像库中拉取网络文件系统(NFS)服务插件镜像,配置Yaml文件,定义网络文件系统服务插件的作用域以及相应参数,利用kubectl命令行启动网络文件系统(NFS)服务插件provisioner,并定义provisioner相关的作用权限;
步骤202:基于启动后的网络文件系统服务插件provisioner相关参数,创建StorageClass;并将定义好作用权限的NFS服务插件provisioner参数填入StorageClass配置文件;
步骤203:基于所述StorageClass配置文件,从镜像库中拉取存储服务相关镜像,配置StatefulSet类型的Yaml文件,将StorageClass字段配置为所述创建StorageClass时的名称;
步骤204:拉起存储集群服务;
步骤205:当存储集群服务相关容器均处于运行状态时,对存储集群进行初始化设置。
其中,配置网络文件系统服务的Yaml文件流程是:
步骤2011:从镜像库中拉取网络文件系统NFS镜像;
步骤2012:通过填写K8s的deployment格式的Yaml配置文件中的参数生成模板后,通过kubectl命令行使用kubectl apply启动网络文件系统服务插件。
应该注意的是:Yaml文件中配置参数包含镜像名称,管理副本数量,下发目标节点。通过配置上述参数可以确定启动的服务类型,服务副本,运行服务的节点从而保证服务的可靠性。
比如安装NFS服务插件,镜像名称为NFS:1.0.1,下发节点系统名称为ubuntu-desk,副本数量为6。
其中,配置StatefulSet类型的Yaml文件流程是:
步骤2021:从镜像库中拉取存储集群镜像,如Redis:5.0.5等;
步骤2022:通过填写K8s的StatefulSet格式的Yaml配置文件中的参数生成模板后,通过kubectl命令行使用kubectl apply启动存储集群服务。
为了详述上述实施例公开的一种存储集群设置方法,所述镜像库中拉取NFS服务插件镜像之前还包括:指定Kubernetes集群中n台主机,将其作为存储节点;并在其中安装网络文件系统(NFS)服务,并指定网络文件系统的存储目录;其中,n大于等于1的正整数。
为了详述上述实施例公开的一种存储集群设置方法,所述镜像库指的是Kubernetes集群中原有的镜像库或者是公共镜像库。
为了详述上述实施例公开的一种存储集群设置方法,在集群拉取并初始化成功后,将集群所在的节点添加对应的数据监控服务,通过设定阈值来判断当前存储集群的容量是否达到上限;若达到上限,通过设定的平台服务实现对应的存储容量的修改从而实现集群容量的自动伸缩。
为了详述上述实施例公开的一种存储集群设置方法,所述StorageClass配置完成之后,拉取存储集群服务之前,K8s环境下,StorageClass会自动动态配置PV;所述StatefulSet配置完成之后,拉取存储集群服务之前,StatefulSet服务自动创建PVC;所述PVC和PV相互绑定。
为了详述上述实施例公开的一种存储集群设置方法,所述存储集群服务是Redis、MySQL、MongoDB或Elasticsearch。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种存储集群设置方法,其特征在于包括:
从镜像库中拉取网络文件系统服务插件镜像,配置Yaml文件,定义网络文件系统服务插件的作用域以及相应参数,利用kubectl命令行启动网络文件系统服务插件provisioner,并定义provisioner相关的作用权限;
基于启动后的网络文件系统服务插件provisioner相关参数,创建StorageClass;并将定义好作用权限的网络文件系统服务插件provisioner参数填入StorageClass配置文件;
基于所述StorageClass配置文件,从镜像库中拉取存储服务相关镜像,配置StatefulSet类型的Yaml文件,将StorageClass字段配置为所述创建StorageClass时的名称;
拉起存储集群服务;
当存储集群服务相关容器均处于运行状态时,对存储集群进行初始化设置。
2.如权利要求1所述的方法,其特征在于在所述镜像库中拉取网络文件系统服务插件镜像之前还包括:指定Kubernetes集群中n台主机,将其作为存储节点;并在其中安装网络文件系统服务,并指定网络文件系统的存储目录;其中,n大于等于1的正整数。
3.如权利要求1或2所述的方法,其特征在于在集群拉取并初始化成功后,将集群所在的节点添加对应的数据监控服务,通过设定阈值来判断当前存储集群的容量是否达到上限;若达到上限,通过设定的平台服务实现对应的存储容量的修改。
4.如权利要求3所述的方法,其特征在于所述镜像库指的是Kubernetes集群中原有的镜像库或者是公共镜像库。
5.如权利要求1、2或4所述的方法,其特征在于配置Yaml文件流程是:
从镜像库中拉取网络文件系统镜像;
通过填写K8s的deployment格式的Yaml配置文件中的参数生成模板后,通过kubectl命令行使用kubectl apply启动网络文件系统服务插件。
6.如权利要求1所述的方法,其特征在于所述StorageClass配置完成之后,拉取存储集群服务之前,K8s环境下,StorageClass会自动动态配置PV;所述StatefulSet配置完成之后,拉取存储集群服务之前,StatefulSet服务自动创建PVC;所述PVC和PV相互绑定。
7.如权利要求1、2、4或6所述的方法,其特征在于所述存储集群服务是Redis、MySQL、MongoDB或Elasticsearch。
8.一种存储集群设置装置,其特征在于,包括:
provisioner配置模块:用于从镜像库中拉取网络文件系统服务插件镜像,配置Yaml文件,定义网络文件系统服务插件的作用域以及相应参数,利用kubectl命令行启动网络文件系统服务插件provisioner,并定义provisioner相关的作用权限;
StorageClass配置模块,用于基于启动后的服务插件provisioner相关参数,创建StorageClass;并将定义好作用权限的网络文件服务插件provisioner参数填入StorageClass配置文件;
StatefulSet配置模块,用于基于所述StorageClass配置文件,从镜像库中拉取存储服务相关镜像,配置StatefulSet类型的Yaml文件,将StorageClass字段配置为所述创建StorageClass时的名称;
存储集群服务配置,用于拉起存储集群服务;当存储集群服务相关容器均处于运行状态时,对存储集群进行初始化设置。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的存储集群设置方法的步骤。
10.一种存储集群设置设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的基于Kubernetes的存储集群设置方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911367014.6A CN111176664A (zh) | 2019-12-26 | 2019-12-26 | 一种存储集群设置方法、装置、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911367014.6A CN111176664A (zh) | 2019-12-26 | 2019-12-26 | 一种存储集群设置方法、装置、介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111176664A true CN111176664A (zh) | 2020-05-19 |
Family
ID=70655705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911367014.6A Pending CN111176664A (zh) | 2019-12-26 | 2019-12-26 | 一种存储集群设置方法、装置、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111176664A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111338854A (zh) * | 2020-05-25 | 2020-06-26 | 南京云信达科技有限公司 | 基于Kubernetes集群快速恢复数据的方法及系统 |
CN111736955A (zh) * | 2020-06-29 | 2020-10-02 | 苏州浪潮智能科技有限公司 | 一种数据存储方法、装置、设备及可读存储介质 |
CN112039969A (zh) * | 2020-08-26 | 2020-12-04 | 浪潮云信息技术股份公司 | 基于Redis分布式锁开发的AWS S3 URL上传方法 |
CN113239118A (zh) * | 2021-05-31 | 2021-08-10 | 广州宏算信息科技有限公司 | 一种区块链实训系统和方法 |
WO2023155706A1 (zh) * | 2022-02-16 | 2023-08-24 | 华为技术有限公司 | 一种数据存储系统及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170346683A1 (en) * | 2016-05-24 | 2017-11-30 | Futurewei Technologies, Inc. | Automated Generation of Deployment Workflows for Cloud Platforms Based on Logical Stacks |
CN109933312A (zh) * | 2019-03-25 | 2019-06-25 | 南京邮电大学 | 一种有效降低容器化关系型数据库i/o消耗的方法 |
CN109951525A (zh) * | 2019-02-18 | 2019-06-28 | 山东浪潮云信息技术有限公司 | 一种基于容器的云盘挂载系统及方法 |
-
2019
- 2019-12-26 CN CN201911367014.6A patent/CN111176664A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170346683A1 (en) * | 2016-05-24 | 2017-11-30 | Futurewei Technologies, Inc. | Automated Generation of Deployment Workflows for Cloud Platforms Based on Logical Stacks |
CN109951525A (zh) * | 2019-02-18 | 2019-06-28 | 山东浪潮云信息技术有限公司 | 一种基于容器的云盘挂载系统及方法 |
CN109933312A (zh) * | 2019-03-25 | 2019-06-25 | 南京邮电大学 | 一种有效降低容器化关系型数据库i/o消耗的方法 |
Non-Patent Citations (2)
Title |
---|
AMOS_X: "centos7.2 配置NFS文件服务器,远程共享文件", 《HTTPS://BLOG.CSDN.NET/WEIXIN_41004350/ARTICLE/DETAILS/78492351》 * |
AMOS_X: "kubernetes(k8s) 配置nfs动态卷实现StatefulSet的持久化存储", 《HTTPS://BLOG.CSDN.NET/WEIXIN_41004350/ARTICLE/DETAILS/90168631》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111338854A (zh) * | 2020-05-25 | 2020-06-26 | 南京云信达科技有限公司 | 基于Kubernetes集群快速恢复数据的方法及系统 |
CN111736955A (zh) * | 2020-06-29 | 2020-10-02 | 苏州浪潮智能科技有限公司 | 一种数据存储方法、装置、设备及可读存储介质 |
CN111736955B (zh) * | 2020-06-29 | 2023-01-10 | 苏州浪潮智能科技有限公司 | 一种数据存储方法、装置、设备及可读存储介质 |
CN112039969A (zh) * | 2020-08-26 | 2020-12-04 | 浪潮云信息技术股份公司 | 基于Redis分布式锁开发的AWS S3 URL上传方法 |
CN112039969B (zh) * | 2020-08-26 | 2022-04-08 | 浪潮云信息技术股份公司 | 基于Redis分布式锁开发的AWS S3 URL上传方法 |
CN113239118A (zh) * | 2021-05-31 | 2021-08-10 | 广州宏算信息科技有限公司 | 一种区块链实训系统和方法 |
WO2023155706A1 (zh) * | 2022-02-16 | 2023-08-24 | 华为技术有限公司 | 一种数据存储系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111176664A (zh) | 一种存储集群设置方法、装置、介质及设备 | |
CN111522628B (zh) | 一种基于OpenStack的Kubernetes集群搭建部署方法、架构及存储介质 | |
CN108809722B (zh) | 一种部署Kubernetes集群的方法、装置和存储介质 | |
CN111290834B (zh) | 一种基于云管理平台实现业务高可用的方法、装置及设备 | |
CN112269640B (zh) | 一种实现容器云组件的生命周期管理的方法 | |
CN110012088B (zh) | 一种基于Kubernets的Redis主从集群自动化部署方案 | |
CN111209011A (zh) | 一种跨平台的容器云自动化部署系统 | |
CN112667362B (zh) | Kubernetes上部署Kubernetes虚拟机集群的方法与系统 | |
CN109165206B (zh) | 基于容器的hdfs高可用实现方法 | |
CN107294750B (zh) | 一种云集群能自识别的分布配置管理方法和装置 | |
CN105704188A (zh) | 应用与服务的部署方法和装置 | |
CN115827008B (zh) | 一种基于云原生平台Kubernetes的云原生大数据组件管理系统 | |
CN111984274A (zh) | 一种一键自动化部署etcd集群的方法及装置 | |
CN111857735A (zh) | 一种基于Rook部署Ceph的Crush创建方法及系统 | |
CN113204353A (zh) | 一种大数据平台组件部署方法及装置 | |
CN114625535A (zh) | 多Kubernetes集群的业务部署方法及装置 | |
CN112000567A (zh) | 一种基于云平台的调控软件测试服务方法 | |
CN114565502A (zh) | Gpu资源管理方法、调度方法、装置、电子设备及存储介质 | |
CN112882794B (zh) | pod扩容方法、装置、节点及存储介质 | |
CN115632944B (zh) | 一种节点配置方法、装置、设备、可读存储介质及服务器 | |
CN110162312B (zh) | 一种基于IML的BeeGFS配置方法与装置 | |
WO2023160418A1 (zh) | 资源处理方法及资源调度方法 | |
CN112306640A (zh) | 容器分配方法及其装置、设备、介质 | |
CN116107694A (zh) | k8s子集群的部署方法、装置及存储介质 | |
CN115480785A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200519 |