CN106446275A - 一种支持文件系统扩容的容器实现方法 - Google Patents
一种支持文件系统扩容的容器实现方法 Download PDFInfo
- Publication number
- CN106446275A CN106446275A CN201610920110.9A CN201610920110A CN106446275A CN 106446275 A CN106446275 A CN 106446275A CN 201610920110 A CN201610920110 A CN 201610920110A CN 106446275 A CN106446275 A CN 106446275A
- Authority
- CN
- China
- Prior art keywords
- container
- file
- mirror image
- disk
- dilatation
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/119—Details of migration of file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及云计算技术领域,特别是一种支持文件系统扩容的容器实现方法。本发明首先创建块设备并映射到容器节点,然后格式化所述块设备,接着挂载所述块设备到容器目录,最后向所述容器目录注入系统并启动容器。本发明创建的容器可以在后续使用过程中动态的对文件系统进行扩容,并且也能很方便的对容器进行迁移;可以用于为应用程序提供隔离运行空间的容器。
Description
技术领域
本发明涉及云计算技术领域,特别是一种支持文件系统扩容的容器实现方法。
背景技术
云计算的不断发展,带动了底层虚拟化技术的不断革新,从系统层面的虚拟机到应用层面的容器技术。容器为应用程序提供了隔离的运行空间:每个容器内都包含一个独享的完整用户环境空间,并且一个容器内的变动不会影响其他容器的运行环境。容器技术使多个应用程序共用同一个节点操作系统,相对虚拟机技术来说节省了节点对各个虚拟机操作系统的资源支出,各家云平台厂商纷纷投入对容器的支持。
LXC
LXC为Linux Container的简写,是常用的一种容器技术,属于内核虚拟化技术。其实现方法通常是在容器节点的本地文件系统上创建一个目录并将容器镜像注入到此目录中,然后直接利用此目录启动容器。
这种直接利用节点本地目录创建容器的方法简单可行,但是存在如下不足:
1、不能进行容器扩容。容器直接创建在节点的本地目录上,占用的是本节点文件系统的磁盘空间,随着容器文件系统的不断增大,后续使用会受到节点磁盘空间的大小限制。
2、容器很难迁移。由于容器直接在节点的本地目录上面运行,当需要将容器迁移到其他节点时,只能采取将整个目录拷贝到远程节点的方法来实现,这中迁移方法时间长,并且很难保证迁移后的可运行行。
发明内容
本发明解决的技术问题在于提出了一种支持文件系统扩容的容器实现方法,创建的容器可以在后续使用过程中动态的对文件系统进行扩容,并且也能很方便的对容器进行迁移。
本发明解决上述技术问题的技术方案是:
所述的方法包括创建块设备并映射到容器节点,格式化所述块设备,挂载所述块设备到容器目录,向所述容器目录注入系统并启动容器。
所述的扩容是指增大容器镜像所在块设备的磁盘空间和磁盘中注入的文件系统;首先对容器块设备进行扩容,然后对容器文件系统进行扩容。
所述的块设备可以是本地存储形式的磁盘文件或磁盘分区,也可以是集中存储形式的LVM卷,也可以是分布式存储形式的RBD卷;
所述的磁盘文件包括RAW磁盘文件和QCOW2格式文件。
所述的格式化块设备是指向块设备注入指定格式的文件系统。
所述的向容器目录注入系统并启动容器进一步包括:
在所示容器目录中安装容器镜像;
配置容器镜像;
创建容器配置文件,并指定容器镜像目录;
利用所述容器配置文件启动容器。
所述的向容器目录注入系统并启动容器进一步包括:
在所示容器目录中安装容器镜像;
配置容器镜像;
创建容器配置文件,并指定容器镜像目录;
利用所述容器配置文件启动容器。
所述的容器镜像是指运行一个容器所必须的最小系统;
所述的配置容器镜像包括修改镜像密码,修改镜像目录权限,生成最小化磁盘挂载文件,生成初始化脚本;
所示的容器配置文件是LIBVIRT使用的XML格式文件,或者是各容器技术本身支持的格式文件。
所示的容器配置文件可以是LIBVIRT使用的XML格式文件,也可以是各容器技术本身支持的格式文件,如LXC使用的CONF格式文件。
本发明方案的有益效果如下:
1、本发明提供一种支持文件系统扩容的容器实现方法,保证了创建的容器可以在后续使用过程中动态的对文件系统进行扩容。
2、本发明的方法同时很好的对容器的迁移进行支持,利用块设备的存储方式保证了迁移过程的时效性,避免了通过远程拷贝容器目录所引起的时间长,维护效果差等问题。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明的容器创建流程图;
图2为本发明的容器扩容流程图。
具体实施方式
请参见图1、2,为本发明实施例所提供的一种支持文件系统扩容的容器实现方法流程图。下面分别对其各个流程具体实现进行描述。
本实施例以RBD卷作为容器块设备存储,以LXC容器技术为例进行说明。
首先创建RBD卷并映射到容器节点:
1、创建rbd卷
#rbd create volumes/lxc_rbd1--size 20000
volumes池名
software_base卷名
100000卷大小,单位是MB
2、将RBD卷映射到本地节点
#rbd map volumes/lxc_rbd1
执行上述命令后会返回一个映射的物理路径,如/dev/rbd/rbd87
然后在本地容器节点上对映射后的块设备进行格式化,由于容器采用的是linux系统,这里格式化程ext4文件格式,具体如下:
#mkfs.ext4/dev/rbd/rbd87
接着挂载容器块设备到容器目录
1、创建一个容器目录
#mkdir/container/lxc/disk/lxc_volume
2、挂载块设备到容器目录
#mount/dev/rbd/rbd87/container/lxc/disk/lxc_volume
最后向容器目录注入系统并启动容器
#cd/container/lxc/disk/lxc_volume
#yum-y install--installroot=/container/lxc/disk/lxc_volume dhclientopenssh-server passwd rsyslog vim-minimal vixie-cron wget which yum
#chroot/container/lxc/disk/lxc_volume
执行如下命令后登录容器,并继续执行命令修改镜像密码、修改目录权限等。
创建容器配置文件并启动容器,配置文件如下:
#vi testc.conf
lxc.utsname=testc
lxc.rootfs=/container/lxc/disk/lxc_volume
lxc.network.type=veth
lxc.network.flags=up
lxc.network.link=brBE7C3FF4
lxc.network.hwaddr=fa:16:3e:84:c1:c6
执行如下命令启动容器:
启动容器
#lxc-start-n testc-f testc.conf-d
启动网络
#lxc-attach-n testc--dhclient eth0
最后当需要对容器文件系统进行扩容时,采用如下方法:
1、扩容块设备
#rbd resize-size 30000 volumes/lxc_rbd1
2、扩容文件系统
#resize2fs/container/lxc/disk/lxc_volume
以上描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出实质性创造所获得的方案,都属于本发明保护的范围。
Claims (9)
1.一种支持文件系统扩容的容器实现方法,其特征在于,所述的方法包括创建块设备并映射到容器节点,格式化所述块设备,挂载所述块设备到容器目录,向所述容器目录注入系统并启动容器。
2.根据权利要求1所述的支持文件系统扩容的容器实现方法,其特征在于,所述的扩容是指增大容器镜像所在块设备的磁盘空间和磁盘中注入的文件系统;首先对容器块设备进行扩容,然后对容器文件系统进行扩容。
3.根据权利要求1所述的支持文件系统扩容的容器实现方法,其特征在于,所述的块设备可以是本地存储形式的磁盘文件或磁盘分区,也可以是集中存储形式的LVM卷,也可以是分布式存储形式的RBD卷;
所述的磁盘文件包括RAW磁盘文件和QCOW2格式文件。
4.根据权利要求2所述的支持文件系统扩容的容器实现方法,其特征在于,所述的块设备可以是本地存储形式的磁盘文件或磁盘分区,也可以是集中存储形式的LVM卷,也可以是分布式存储形式的RBD卷;
所述的磁盘文件包括RAW磁盘文件和QCOW2格式文件。
5.根据权利要求1至4任一项所述的支持文件系统扩容的容器实现方法,其特征在于,所述的格式化块设备是指向块设备注入指定格式的文件系统。
6.根据权利要求1至4任一项所述的支持文件系统扩容的容器实现方法,其特征在于,所述的向容器目录注入系统并启动容器进一步包括:
在所示容器目录中安装容器镜像;
配置容器镜像;
创建容器配置文件,并指定容器镜像目录;
利用所述容器配置文件启动容器。
7.根据权利要求5所述的支持文件系统扩容的容器实现方法,其特征在于,所述的向容器目录注入系统并启动容器进一步包括:
在所示容器目录中安装容器镜像;
配置容器镜像;
创建容器配置文件,并指定容器镜像目录;
利用所述容器配置文件启动容器。
8.根据权利要求6所述的方法,其特征在于,
所述的容器镜像是指运行一个容器所必须的最小系统;
所述的配置容器镜像包括修改镜像密码,修改镜像目录权限,生成最小化磁盘挂载文件,生成初始化脚本;
所示的容器配置文件是LIBVIRT使用的XML格式文件,或者是各容器技术本身支持的格式文件。
9.根据权利要求7所述的方法,其特征在于,
所述的容器镜像是指运行一个容器所必须的最小系统;
所述的配置容器镜像包括修改镜像密码,修改镜像目录权限,生成最小化磁盘挂载文件,生成初始化脚本;
所示的容器配置文件是LIBVIRT使用的XML格式文件,或者是各容器技术本身支持的格式文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610920110.9A CN106446275A (zh) | 2016-10-21 | 2016-10-21 | 一种支持文件系统扩容的容器实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610920110.9A CN106446275A (zh) | 2016-10-21 | 2016-10-21 | 一种支持文件系统扩容的容器实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106446275A true CN106446275A (zh) | 2017-02-22 |
Family
ID=58176576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610920110.9A Pending CN106446275A (zh) | 2016-10-21 | 2016-10-21 | 一种支持文件系统扩容的容器实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106446275A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193506A (zh) * | 2017-06-22 | 2017-09-22 | 山东超越数控电子有限公司 | 一种中标麒麟系统根分区扩容的实现方法 |
CN107590033A (zh) * | 2017-09-07 | 2018-01-16 | 网宿科技股份有限公司 | 一种创建docker容器的方法、装置和系统 |
CN107632783A (zh) * | 2017-09-14 | 2018-01-26 | 快云信息科技有限公司 | 将分布式存储系统接入容器的方法、装置、可读存储介质 |
CN107729020A (zh) * | 2017-10-11 | 2018-02-23 | 北京航空航天大学 | 一种实现大规模容器快速部署的方法 |
CN107728947A (zh) * | 2017-10-13 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种容器冷迁移方法与系统 |
CN107885461A (zh) * | 2017-10-19 | 2018-04-06 | 北京京东尚科信息技术有限公司 | 一种数据本地存储方法和装置 |
CN108710621A (zh) * | 2018-03-12 | 2018-10-26 | 广东睿江云计算股份有限公司 | 一种基于ceph实现MySQL数据库水平扩展的方法 |
CN109189334A (zh) * | 2018-08-16 | 2019-01-11 | 北京京东尚科信息技术有限公司 | 一种区块链网络服务平台及其扩容方法、存储介质 |
CN109634522A (zh) * | 2018-12-10 | 2019-04-16 | 北京百悟科技有限公司 | 一种资源管理的方法、装置及计算机存储介质 |
CN110276194A (zh) * | 2019-06-21 | 2019-09-24 | 联想(北京)有限公司 | 信息处理方法、信息处理装置和电子设备 |
CN110780822A (zh) * | 2019-10-28 | 2020-02-11 | 浪潮云信息技术有限公司 | 一种管理容器云本地存储系统及实现方法 |
CN111913665A (zh) * | 2020-07-30 | 2020-11-10 | 星辰天合(北京)数据科技有限公司 | 存储卷的挂载方法及装置、电子设备 |
CN113835625A (zh) * | 2021-08-30 | 2021-12-24 | 广东浪潮智慧计算技术有限公司 | 一种基于子路径的数据存储方法、装置、设备及存储介质 |
CN114968092A (zh) * | 2022-04-28 | 2022-08-30 | 江苏安超云软件有限公司 | 容器平台下基于qcow2技术的存储空间动态供应的方法及应用 |
CN116560804A (zh) * | 2023-07-10 | 2023-08-08 | 中国人民解放军国防科技大学 | 一种使用多个容器镜像共同运行容器的方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102681899A (zh) * | 2011-03-14 | 2012-09-19 | 金剑 | 云计算服务平台的虚拟计算资源动态管理系统 |
US20140012955A1 (en) * | 2011-03-31 | 2014-01-09 | Sony Corporation | Communication System, Communication Device, And Communication Method |
CN103713952A (zh) * | 2013-12-17 | 2014-04-09 | 创新科存储技术(深圳)有限公司 | 一种基于ufs的虚拟磁盘分布式存储方法 |
CN103765371A (zh) * | 2011-08-26 | 2014-04-30 | 威睿公司 | 导出作为存储对象的逻辑卷的数据存储系统 |
CN104769555A (zh) * | 2012-06-18 | 2015-07-08 | 艾克特菲欧有限公司 | 增强型数据管理虚拟化系统 |
-
2016
- 2016-10-21 CN CN201610920110.9A patent/CN106446275A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102681899A (zh) * | 2011-03-14 | 2012-09-19 | 金剑 | 云计算服务平台的虚拟计算资源动态管理系统 |
US20140012955A1 (en) * | 2011-03-31 | 2014-01-09 | Sony Corporation | Communication System, Communication Device, And Communication Method |
CN103765371A (zh) * | 2011-08-26 | 2014-04-30 | 威睿公司 | 导出作为存储对象的逻辑卷的数据存储系统 |
CN104769555A (zh) * | 2012-06-18 | 2015-07-08 | 艾克特菲欧有限公司 | 增强型数据管理虚拟化系统 |
CN103713952A (zh) * | 2013-12-17 | 2014-04-09 | 创新科存储技术(深圳)有限公司 | 一种基于ufs的虚拟磁盘分布式存储方法 |
Non-Patent Citations (2)
Title |
---|
、SOURCE: "LXC直接读写宿主机块设备", 《新浪博客》 * |
忱康: "扩展逻辑卷", 《CSDN》 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193506A (zh) * | 2017-06-22 | 2017-09-22 | 山东超越数控电子有限公司 | 一种中标麒麟系统根分区扩容的实现方法 |
CN107590033A (zh) * | 2017-09-07 | 2018-01-16 | 网宿科技股份有限公司 | 一种创建docker容器的方法、装置和系统 |
CN107632783B (zh) * | 2017-09-14 | 2020-07-03 | 快云信息科技有限公司 | 将分布式存储系统接入容器的方法、装置、可读存储介质 |
CN107632783A (zh) * | 2017-09-14 | 2018-01-26 | 快云信息科技有限公司 | 将分布式存储系统接入容器的方法、装置、可读存储介质 |
CN107729020A (zh) * | 2017-10-11 | 2018-02-23 | 北京航空航天大学 | 一种实现大规模容器快速部署的方法 |
CN107728947A (zh) * | 2017-10-13 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种容器冷迁移方法与系统 |
CN107885461A (zh) * | 2017-10-19 | 2018-04-06 | 北京京东尚科信息技术有限公司 | 一种数据本地存储方法和装置 |
CN108710621A (zh) * | 2018-03-12 | 2018-10-26 | 广东睿江云计算股份有限公司 | 一种基于ceph实现MySQL数据库水平扩展的方法 |
CN109189334A (zh) * | 2018-08-16 | 2019-01-11 | 北京京东尚科信息技术有限公司 | 一种区块链网络服务平台及其扩容方法、存储介质 |
CN109634522A (zh) * | 2018-12-10 | 2019-04-16 | 北京百悟科技有限公司 | 一种资源管理的方法、装置及计算机存储介质 |
CN110276194A (zh) * | 2019-06-21 | 2019-09-24 | 联想(北京)有限公司 | 信息处理方法、信息处理装置和电子设备 |
CN110780822A (zh) * | 2019-10-28 | 2020-02-11 | 浪潮云信息技术有限公司 | 一种管理容器云本地存储系统及实现方法 |
CN110780822B (zh) * | 2019-10-28 | 2023-09-19 | 浪潮云信息技术股份公司 | 一种管理容器云本地存储系统及实现方法 |
CN111913665A (zh) * | 2020-07-30 | 2020-11-10 | 星辰天合(北京)数据科技有限公司 | 存储卷的挂载方法及装置、电子设备 |
CN111913665B (zh) * | 2020-07-30 | 2023-11-24 | 北京星辰天合科技股份有限公司 | 存储卷的挂载方法及装置、电子设备 |
CN113835625A (zh) * | 2021-08-30 | 2021-12-24 | 广东浪潮智慧计算技术有限公司 | 一种基于子路径的数据存储方法、装置、设备及存储介质 |
CN113835625B (zh) * | 2021-08-30 | 2024-02-09 | 广东浪潮智慧计算技术有限公司 | 一种基于子路径的数据存储方法、装置、设备及存储介质 |
CN114968092A (zh) * | 2022-04-28 | 2022-08-30 | 江苏安超云软件有限公司 | 容器平台下基于qcow2技术的存储空间动态供应的方法及应用 |
CN114968092B (zh) * | 2022-04-28 | 2023-10-17 | 安超云软件有限公司 | 容器平台下基于qcow2技术的存储空间动态供应的方法及应用 |
CN116560804A (zh) * | 2023-07-10 | 2023-08-08 | 中国人民解放军国防科技大学 | 一种使用多个容器镜像共同运行容器的方法和装置 |
CN116560804B (zh) * | 2023-07-10 | 2023-09-05 | 中国人民解放军国防科技大学 | 一种使用多个容器镜像共同运行容器的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106446275A (zh) | 一种支持文件系统扩容的容器实现方法 | |
CN105426227B (zh) | 向云迁移私有构架服务 | |
CN109885316B (zh) | 基于kubernetes的hdfs-hbase部署方法及装置 | |
CN109062655A (zh) | 一种容器化云平台及服务器 | |
CN105119952B (zh) | 云平台下自动弹性地分配资源的方法和系统 | |
CN110727653B (zh) | 多项目负载均衡方法和装置 | |
CN106850621A (zh) | 一种基于容器云技术快速搭建Hadoop集群的方法 | |
CN107329799A (zh) | 一种融合Docker容器与KVM虚拟化技术的系统 | |
CN107534571A (zh) | 管理虚拟网络功能 | |
CN106095530A (zh) | 一种多Android系统的容器自动创建及其启动方法 | |
EP3274831A1 (en) | Application container for live migration of mobile applications | |
CN101493781A (zh) | 一种虚拟机系统及其启动方法 | |
CN104951694A (zh) | 一种管理虚拟机的隔离方法及装置 | |
CN103064724A (zh) | 虚拟机构建方法及装置 | |
CN109800055A (zh) | 容器调度编排方法和系统 | |
CN105094964A (zh) | 虚拟机迁移方法及系统 | |
CN106445515A (zh) | 一种基于容器的PaaS云的实现方法 | |
CN104318091B (zh) | 一种基于虚拟化计算机系统的小卫星地面测试方法 | |
CN106201527A (zh) | 一种基于逻辑分区的应用程序容器架构 | |
CN111124430A (zh) | 一种混合架构的微服务部署方法和装置 | |
JP2015180991A (ja) | 画像形成装置、画像形成装置の制御方法およびプログラム | |
CN104503825A (zh) | 一种基于kvm混合式设备虚拟化方法 | |
CN103473113B (zh) | 一种通用的虚拟机收养方法 | |
CN114691050B (zh) | 基于kubernetes的云原生存储方法、装置、设备及介质 | |
CN102789392A (zh) | 一种电力系统分布式平台构建方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20170222 |