企业私有云容器技术的高可用性研究
2021-10-18何莉孙雅妮王海沛
何莉 孙雅妮 王海沛
摘要:云计算技术的成熟,使得人们已经进入了云计算3.0时代,以云原生和重构业务为主要特征的云计算时代更聚焦于应用的云化和敏捷开发,主要的代表技术容器技术使得云计算的3.0时代成为新一代互联网的发展趋势。该文重点研究了容器技术Docker技术的镜像管理中心Harbor的后台存储的高可用性,使得Harbor的后台存储更加的高效敏捷和安全。
关键词:容器技术;Harbor;高可用性
中图分类号:TP393 文献标识码:A
文章编号:1009-3044(2021)26-0125-02
开放科学(资源服务)标识码(OSID):
1背景与国内外研究现状
2020年,突发性的疫情助推了云计算技术的普及与应用,并将云计算技术已经纳入新基建当中,云计算时代已经深刻影响了我们生活、工作和学习的方方面面,所谓初闻不识云计算,再闻已是云中人。
后疫情时代下,我们已身为云中人,已经离不开云计算。同样在云化时代下,各类企业也纷纷上云,所谓的云计算到底是什么呢?
云计算是在虚拟化技术的发展基础之上发展而来的,通过虚拟化的技术成就为云服务的一种模式,以云服务模式为代表的实现模式可以分为传统的虚拟化技术解决方案的云服务,主要的技术代表有闭源的VMware VSphere虚拟化解决方案、微软的hyper-V虚拟化解决方案,开源的有XEN、KVM虚拟化技术解决方案,但是基于这些传统的主流虚拟化解决方案,是以VM(虚拟机)为单位给用户进行交付的,资源开销比较大,启动速度方面存在瓶颈问题,针对这些问题,以容器技术为后起之秀的云计算解决方案便诞生了,容器云技术的主要代表Docker技术的出现,使得容器技术在云计算架构领域了出现了新的新鲜血液,并将容器技术的出现纳入云原生层面。
Docker 技术以其轻便、快速的特性,可以使得上层的应用快速迭代。DOCKER的核心要素主要包括镜像、容器和仓库[1]。镜像的本质为分层的文件系统,可以理解为运行环境和程序综合打包后的结果,容器就是运行中的镜像,仓库是存储镜像的地方,主要分为私有仓库和公有仓库。
镜像管理是DOCKER容器技术应用的开发和运行的首要要素,虽然DOCKER官方网站已经提供了公有镜像仓库的管理,但是从安全和效率等方面衡量,部署基于私有容器云化环境的Registry是势在必行的,而私有仓库的Harbor解决方案是主流的容器云私有仓库解决方案。
Harbor私有容器云解决方案是由虚拟化界的赫赫有名公司VMware公司研发的,是一项开源的企业级Docker Registry项目,其宗旨是帮助用户迅速部署一个企业级的Docker Registry服务项目。它以Docker公司开源的Registry为基础,提供了管理UI、基于角色的访问控制(Role Based Access Control)、AD/LDAP集成以及审计日志(Audit Logging)等满足企业用户需求等相关功能。
Harbor私有容器云的解决方案的主要优势有:基于角色控制、基于镜像的复制策略、支持LDAP/AD,提供与外部系统集成等优势。Harbor的实现主要有六大模块构成,Harbor架构如图1所示。
Ceph是一种具有高性能和可扩展性强等显著性特征的统一性分布式存储系统,备受行业界的青睐[2]。存储对象、块存储和文件系统是Ceph同时提供的三种功能,可以满足不同生产场景下的需求,同时也方便后期工程师的操作、运维与管理。
Ceph作为开源领域的优秀软件定义存储之一,有着成熟的社区支持、开源界的大佬推广和企业打磨、优化和管理维护等,使得软件定义存储的Ceph方案由“网红”走向了“明星”级别的存储方案产品,基于Ceph的种种优势,助推了Ceph在互联网界的应用。
Ceph的和核心组件中,LIBRADOS和RADOSGW提供对象存储,RBD主要提供块存储,CEPH FS提供文件系统,RADOSGW,RBD和CEPH FS均需调用IBRADOS接口[3],最后都以对象的形式存储于RADOS里[4]。
Ceph集群中定义了四种角色,分别是Monitors角色、Managers角色、Ceph OSD角色和MDS角色。Monitor角色,监控维护Ceph集群的运行状况,向客户端发送最新的Crush map;Managers角色跟踪运行状况和集群当前的状态;OSD角色,维护节点上的对象,响应客户端的请求,与其他OSD节点保持同步;MDS角色,提供文件的Metadata,提供工程应用接口的CephFS[5]。
本项目基于容器技术私有仓库Harbor在企业实际的应用场景中出现的问题:基于Harbor自身所提供的数据同步问题,实现比较难,实时性有待考证并且基于单节点的Harbor部署由于存储和运行日志的增加,系统的存储空间在递减继而趋向于饱和等等相关瓶颈问题,本项目提出将多Harbor的服务以共享后端存储的方式进行数据卷的映射,具体的实现将通过开源的Ceph分布式存储方案进行解决。可以提高企业镜像管理中心Harbor后端存储的高效性、安全性和可扩展性等,方便后期的操作管理与运维,达到Harbor运行的稳定性、安全性和可扩展性等。
以Ceph为基础企业构建数据私密程度较高的企业云分布式存储系统,借助Ceph存储的优势为Docker的镜像的存储与管理提供安全有效的空间,实现Harbor的后端数据存储的分离。
2本项目研究的主要内容和实现的目标
本项目选择linux的CentOS7的版本作为整个模拟仿真实验的操作系统平台,在该平台上进行docker Harbor私有仓库集群部署和分布式文件系统Ceph集群部署,实现Ceph作为Harbor底层分布式存储调用,實现Harbor的数据存储的分离,继而提高企业私有仓库Harbor集群的高可用性和稳定性。