【技术实现步骤摘要】
一种基于容器发布平台的信息实时同步方法及装置
[0001]本申请实施例涉及容器
,尤其涉及一种基于容器发布平台的信息实时同步方法及装置。
技术介绍
[0002]K8S(kubernetes)是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。K8S重新定义了应用程序的部署、扩展、管理方式,随着K8S快速发展并逐步成熟,越来越多的人投入容器技术的怀抱。由于让每个开发者都熟练掌握K8S各种操作命令是不太现实的,所以通用的发布平台应运而生。
[0003]在平台发布之后,用户关心的是程序是否正常运行。程序在K8S中对应的概念即为POD,POD为K8S能够创建和部署的最小单元。为准确掌握POD的运行状态,对POD信息的详情进行展示是必不可少的,然而具体如何进行展示,各发布平台存在差异性。现有的方法是实时查询K8S集群中的POD运行状态,或者定时将POD信息同步到数据库,根据数据库中的POD信息查询POD运行状态。实时查询的方式得到的结果准确但整体查询速度慢,数据库信息同步后查询的方式速度快但时效性差,无法实时获取POD的运行状态。
技术实现思路
[0004]本申请实施例提供一种基于容器发布平台的信息实时同步方法及装置,在提高容器单元信息的查询速度时,也可保证获取到的容器单元信息具有较高的时效性。
[0005]在第一方面,本申请实施例提供了一种基于容器发布平台的信息实时同步方法,包括:
[0006]通过监测进程接收容器管理平台中集群发送的容器单 ...
【技术保护点】
【技术特征摘要】
1.一种基于容器发布平台的信息实时同步方法,其特征在于,包括:通过监测进程接收容器管理平台中集群发送的容器单元变化事件,获取所述容器单元变化事件中的容器单元信息,并根据所述容器单元信息对应更新数据库中存储的容器单元信息;通过轮询进程查询所述集群中的最后一次发布的容器单元信息和所述数据库中对应的容器单元信息是否一致,在两者信息不一致时,根据所述最后一次发布的容器单元信息对应更新数据库中存储的容器单元信息。2.根据权利要求1所述的方法,其特征在于,所述通过监测进程接收容器管理平台中集群发送的容器单元变化事件,包括:通过监测进程注册容器管理平台中所有集群的容器单元变化事件,当监测到所述集群的容器单元状态发生变化时,接收所述集群发送的容器单元变化事件。3.根据权利要求2所述的方法,其特征在于,所述容器单元信息包括发布标识、容器单元名称、完成状态和版本号,所述根据所述容器单元信息对应更新数据库中存储的容器单元信息包括:基于所述发布标识,查询所述集群最后一次发布的容器单元信息,并查询所述最后一次发布的容器单元信息的完成状态是否为完成,若所述完成状态为完成,则根据所述发布标识和容器单元名称,查询数据库是否记录有对应的容器单元信息;若数据库没有记录对应的容器单元信息,则将所述最后一次发布的容器单元信息记录到数据库中,若所述数据库记录有对应的容器单元信息,则比较所述最后一次发布的容器单元信息的版本号和数据库中容器单元信息的版本号;若所述最后一次发布的容器单元信息的版本号大于数据库中容器单元信息的版本号,则查询数据库中的容器单元信息与所述最后一次发布的容器单元信息是否一致,若两者信息不一致,记录所述最后一次发布的容器单元信息到数据库中。4.根据权利要求3所述的方法,其特征在于,所述通过轮询进程查询所述集群中的最后一次发布的容器单元信息和所述数据库中对应的容器单元信息是否一致,在两者信息不一致时,根据所述最后一次发布的容器单元信息对应更新数据库中存储的容器单元信息包括:根据所述发布标识将所述集群中的容器单元信息进行分组,通过轮询进程查询每个分组最后一次发布的容器单元信息;比较所述最后一次发布的容器单元信息的版本号和数据库中容器单元信息的版本号,若所述最后一次发布的容器单元信息的版本号大于所述数据库中容器单元信息的版本号,则从所述集群中获取对应的容器单元信息;根据所述最后一次发布的容器单元信息的发布标识和容器单元名称,查询数据库中是否记录有对应的容器单元信息,若数据库没有记录对应的容器单元信息,则将所述最后一次发布的容器单元信息记录到数据库中;若数据库记录有所述最后一次发布的容器单元信息,则查询所述最后一次发布的容器单元信息与数据库中的容器单元信息是否一致,若两者信息不一致,则将所述最后一次发布的容器单元信息记录到数据库中。5.根据权利要求4所述的方法,其特征在于,所述容器单元信息还包括工作状态;
对应的,在所述查询所述容器单元信息与数据库中对应的容器单元信息...
【专利技术属性】
技术研发人员:徐津,李涛,
申请(专利权)人:百果园技术新加坡有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。