技术说明
Kubernetes是一种容器编排的工具,可作为基础设施搭建应用体系。而搭建的应用体系所包含的应用与应用数据之间处于割裂的状态,无法对应用和应用数据进行统一的管理;同时,应用与应用数据之间还需要搭建通信网络以实现通信,因此通过数据库迁移以实现应用和应用数据的统一成为了一种迫切需求。
在数据库迁移过程中,一般通过分布式数据库的方式以实现容错。所谓“容错”技术是指保证系统在某些组成部分出现故障或差错时仍能正常工作的技术,也就是组件可以删除而系统应该继续按照预期运行。分布式数据库以一主多从的方式对外提供服务,数据库自身提供的主从复制功能可以实现数据的多处备份。而对于一主多从所形成的多个数据库需要同时对多个服务器(即,单独的数据库所在的独立的服务器)进行管理和维护。同时,在多个服务器协同工作时,还会出现其他一些分布式数据库的问题,例如断网或者脑裂等。因此,需要对多个服务器、数据库、以及数据复制的逻辑以一种简单一致的方式协调运行的逻辑相融合。
本技术方案通过在Kubernetes中引用PDB对象,实现了Pod集群的高可用能力,保证了Pod集群中Pod数量位于阈值范围以内,扩展了Kubernetes管理数据库容器的能力。同时,通过在Statefulset对象与PDB对象之间引用关系的建立,防止Statefulset对象的随意删除,避免了环境控制对象混乱导致的一系列问题,例如,产生大量遗留资源及残留文件等问题,并有效地防止了分布式数据库系统中资源的浪费。进一步提升了数据库的容器化,固化了繁琐的分布式数据库维护操作步骤,降低了运维人员对分布式数据库维护技能的需求。通过管理代理对Pod监控,以得到每个Pod的状态信息,不需要对外部系统进行依赖,从而降低减少了对分布式数据库系统执行维护作业所导致的出错的概率。
★专利申请号/公开号:CN202211472755.2
开发团队
·带队负责人姓名:李瑞友
李瑞友,安超云技术架构专家。拥有多年公有云和私有云公司从业经历,做过运维、数据库和大客户服务,目前专注于云原生领域。
·隶属机构:安超云
安超云是数字技术基础架构提供商,聚集了国内外顶尖的云计算专家和资深工程师,融合了世界先进技术和研发经验,致力于为政企客户打造高性能、高可用、高效率、全面适配及易于安装运维的IT基础设施平台,可面向所有应用提供全方位云服务,实现数字化转型和业务创新。
相关评价
数据库容器化后,部署一套高可用集群加备份监控,只需要用时1~2分钟,标准化的系统管理,部署环境统一,配置文件统一,系统化的操作降低人为失误和重复劳动,资源使用集中管理,有效利用服务器资源。在Kubernetes上运行数据库有明显的优势:部署简单,整个堆栈由同一个编排工具管理,自动修复,以及自动重新部署失败的容器,从而提高可用性。
——某互联网行业用户
该技术一方面解决了数据库维护和管理所存在的需要依赖外部系统、性能不足、通用性不足的缺陷。另一方面,解决了数据库集群扩容缩容时,需要手动调整资源配置、手动调整数据库参数配置,从而耗费用户大量精力和时间的技术问题。帮助我们提高运维效率,减少资源浪费,提高资源利用率。
——某互联网行业用户
相关标签: