CN107423112B - 一种Docker容器状态实时同步方法 - Google Patents

一种Docker容器状态实时同步方法 Download PDF

Info

Publication number
CN107423112B
CN107423112B CN201710509706.4A CN201710509706A CN107423112B CN 107423112 B CN107423112 B CN 107423112B CN 201710509706 A CN201710509706 A CN 201710509706A CN 107423112 B CN107423112 B CN 107423112B
Authority
CN
China
Prior art keywords
container
database
state
management platform
etcd
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.)
Active
Application number
CN201710509706.4A
Other languages
English (en)
Other versions
CN107423112A (zh
Inventor
王德奎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN201710509706.4A priority Critical patent/CN107423112B/zh
Publication of CN107423112A publication Critical patent/CN107423112A/zh
Application granted granted Critical
Publication of CN107423112B publication Critical patent/CN107423112B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种Docker容器状态实时同步方法,包括以下步骤:搭建容器管理平台;创建容器,在Etcd数据库保存容器信息,并设置容器TTL超时时间;在容器所在宿主机部署容器监控组件,容器监控组件将监控数据周期上报到容器管理平台;当容器管理平台接收到监控数据时,更新Etcd数据库中相应容器TTL超时时间;容器管理平台监听Etcd数据库,当监听到容器信息被删除时,容器管理平台判断平台数据库中该容器状态是否为停止状态,若非停止状态,则将其更新为停止。本方法能处理Docker宿主机关机、Docker进程停止异常场景下的容器状态更新。

Description

一种Docker容器状态实时同步方法
技术领域
本发明涉及云计算容器管理领域,具体涉及一种Docker容器状态实时同步方法。
背景技术
容器的管理和使用是云计算的下一个阶段,容器由于其轻量、易迁移、易启动等优点,逐渐被各大云计算平台采用,并以服务的方式提供给开发者使用。容器可能会由于其内部运行的进程异常,导致容器关机或者重启,此时,容器管理平台需要能够实时监控到容器的状态变化,并给出相应的告警信息,Docker(开源容器引擎)提供了处理Docker事件的接口,但不能处理全部的异常情况,例如Docker宿主机关机、Docker进程停止等。
发明内容
为解决上述问题,提出了一种Docker容器状态实时同步方法。
本发明的技术方案是:一种Docker容器状态实时同步方法,包括以下步骤:
搭建容器管理平台,容器管理平台包括平台数据库;
创建容器,在Etcd数据库保存容器信息,并设置容器TTL超时时间;
在容器所在宿主机部署容器监控组件,容器监控组件将监控数据周期上报到容器管理平台;
当容器管理平台接收到监控数据时,将监控数据保存到平台数据库,并查看平台数据库中相应容器状态是否为运行中,若相应容器状态为非运行,则将其状态更新为运行中,同时更新Etcd数据库中相应容器TTL超时时间;
容器管理平台监听Etcd数据库,当监听到容器信息被删除时,容器管理平台判断平台数据库中该容器状态是否为停止状态,若非停止状态,则将其更新为停止。
进一步地,还包括步骤:当容器管理平台启动时,将平台数据库中处于运行态的容器信息保存到Etcd数据库,并设置容器TTL超时时间。
进一步地,Etcd数据库容器信息被删除是指当容器管理平台在超过容器TTL超时时间后仍未收到监控数据,则Etcd数据库中相应容器信息被删除。
进一步地,还包括步骤:当容器管理平台删除容器时,同时删除Etcd书库内相应容器信息。
进一步地,容器管理平台监听Etcd数据库是指利用Etcd数据库的Watch机制监听Etcd数据库的指定目录。
进一步地,Etcd数据库为3.0以上版本的Etcd数据库。
进一步地,容器TTL超时时间为2分钟。
本发明提供的Docker容器状态实时同步方法,采用Etcd 的Key超时机制、Watch机制,同时配置容器监控信息的周期上报,实现容器状态的实时更新,与Docker原生接口提供的功能相比,除能够处理Docker容器正常关闭、启动的状态更新外,还能够处理Docker宿主机关机、Docker进程停止异常场景下的容器状态更新,在生产环境下,这两种状态是非常重要的异常场景。
附图说明
图1本发明具体实施例流程示意图。
具体实施方式
下面结合附图并通过具体实施例对本发明进行详细阐述,以下实施例是对本发明的解释,而本发明并不局限于以下实施方式。
如图1所示,本实施例提供的Docker容器状态实时同步方法,在Etcd数据库保存容器信息,并为该信息设置TTL超时时间(Time To Live,存活时间),容器管理平台在收到容器的监控数据时,会刷新该信息的TTL超时时间,保证容器信息不会因为TTL到期而被删除;当容器关机、宿主机关机或Docker进程停止时,容器管理平台无法收到该容器的监控信息,Etcd数据库保存的容器信息由于TTL超时,会被自动删除,容器管理平台利用Etcd数据库的Watch机制监控到该容器信息被删除的信息后,会将平台数据库中的容器状态进行更新。容器由关机状态变为启动状态时,采用相同的流程处理。
具体包括以下步骤:
搭建容器管理平台,容器管理平台包括平台数据库;
创建容器,在Etcd数据库保存容器信息,并设置容器TTL超时时间;
在容器所在宿主机部署容器监控组件,容器监控组件将监控数据周期上报到容器管理平台;
当容器管理平台接收到监控数据时,将监控数据保存到平台数据库,并查看平台数据库中相应容器状态是否为运行中,若相应容器状态为非运行,则将其状态更新为运行中,同时更新Etcd数据库中相应容器TTL超时时间,保证容器信息不会因为TTL到期而被删除;
容器管理平台监听Etcd数据库,当监听到容器信息被删除时,容器管理平台判断平台数据库中该容器状态是否为停止状态,若非停止状态,则将其更新为停止。
其中Etcd数据库容器信息被删除是指当容器管理平台在超过容器TTL超时时间后仍未收到监控数据,则Etcd数据库中相应容器信息被删除。容器管理平台利用Etcd数据库的Watch机制监听Etcd数据库的指定目录,从而获得Etcd数据库内容器信息。
本实施例还包括步骤:当容器管理平台启动时,将平台数据库中处于运行态的容器信息保存到Etcd数据库,并设置容器TTL超时时间。当容器管理平台删除容器时,同时删除Etcd书库内相应容器信息。
本实施例中,Etcd数据库可以使用3.0以上版本的Etcd数据库,容器TTL超时时间可设置为2分钟。
以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。

Claims (5)

1.一种Docker容器状态实时同步方法,其特征在于,包括以下步骤:
搭建容器管理平台,容器管理平台包括平台数据库;
创建容器,在Etcd数据库保存容器信息,并设置容器TTL超时时间;
在容器所在宿主机部署容器监控组件,容器监控组件将监控数据周期上报到容器管理平台;
当容器管理平台接收到监控数据时,将监控数据保存到平台数据库,并查看平台数据库中相应容器状态是否为运行中,若相应容器状态为非运行,则将其状态更新为运行中,同时更新Etcd数据库中相应容器TTL超时时间;
容器管理平台监听Etcd数据库,当监听到容器信息被删除时,容器管理平台判断平台数据库中该容器状态是否为停止状态,若非停止状态,则将其更新为停止;
该方法还包括步骤:当容器管理平台启动时,将平台数据库中处于运行态的容器信息保存到Etcd数据库,并设置容器TTL超时时间;
Etcd数据库容器信息被删除是指当容器管理平台在超过容器TTL超时时间后仍未收到监控数据,则Etcd数据库中相应容器信息被删除。
2.根据权利要求1所述的Docker容器状态实时同步方法,其特征在于,还包括步骤:当容器管理平台删除容器时,同时删除Etcd书库内相应容器信息。
3.根据权利要求1或2所述的Docker容器状态实时同步方法,其特征在于,容器管理平台监听Etcd数据库是指利用Etcd数据库的Watch机制监听Etcd数据库的指定目录。
4.根据权利要求1或2所述的Docker容器状态实时同步方法,其特征在于,Etcd数据库为3.0以上版本的Etcd数据库。
5.根据权利要求1或2所述的Docker容器状态实时同步方法,其特征在于,容器TTL超时时间为2分钟。
CN201710509706.4A 2017-06-28 2017-06-28 一种Docker容器状态实时同步方法 Active CN107423112B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710509706.4A CN107423112B (zh) 2017-06-28 2017-06-28 一种Docker容器状态实时同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710509706.4A CN107423112B (zh) 2017-06-28 2017-06-28 一种Docker容器状态实时同步方法

Publications (2)

Publication Number Publication Date
CN107423112A CN107423112A (zh) 2017-12-01
CN107423112B true CN107423112B (zh) 2020-06-26

Family

ID=60426718

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710509706.4A Active CN107423112B (zh) 2017-06-28 2017-06-28 一种Docker容器状态实时同步方法

Country Status (1)

Country Link
CN (1) CN107423112B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10210024B2 (en) * 2016-08-23 2019-02-19 Samsung Electronics Co., Ltd. Intelligent controller for containerized applications
CN109086119A (zh) * 2018-07-30 2018-12-25 南京卓盛云信息科技有限公司 一种快速检测容器运行状态的方法
CN109992415B (zh) * 2019-03-15 2023-07-14 上海拍拍贷金融信息服务有限公司 一种容器调度方法及调度系统
CN112199247B (zh) * 2019-07-08 2022-07-01 中国移动通信集团浙江有限公司 一种无业务状态下Docker容器进程活性的检查方法及装置
CN111324423B (zh) * 2020-03-03 2022-03-04 腾讯科技(深圳)有限公司 容器内进程的监控方法、装置、存储介质和计算机设备
CN112068935A (zh) * 2020-09-15 2020-12-11 北京值得买科技股份有限公司 kubernetes程序部署监控方法、装置以及设备
CN112817613A (zh) * 2021-02-04 2021-05-18 咪咕音乐有限公司 插件数据的删除方法、服务器、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899126A (zh) * 2015-06-12 2015-09-09 北京奇虎科技有限公司 对宿主机中容器进行本地实时监控的方法、装置及系统
CN105245373A (zh) * 2015-10-12 2016-01-13 天津市普迅电力信息技术有限公司 一种容器云平台系统的搭建及运行方法
CN106020930A (zh) * 2016-05-13 2016-10-12 深圳市中润四方信息技术有限公司 一种基于应用容器的应用管理方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9449441B2 (en) * 2014-04-03 2016-09-20 Stephen S. Hartmann Body tracking and identification system and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899126A (zh) * 2015-06-12 2015-09-09 北京奇虎科技有限公司 对宿主机中容器进行本地实时监控的方法、装置及系统
CN105245373A (zh) * 2015-10-12 2016-01-13 天津市普迅电力信息技术有限公司 一种容器云平台系统的搭建及运行方法
CN106020930A (zh) * 2016-05-13 2016-10-12 深圳市中润四方信息技术有限公司 一种基于应用容器的应用管理方法及系统

Also Published As

Publication number Publication date
CN107423112A (zh) 2017-12-01

Similar Documents

Publication Publication Date Title
CN107423112B (zh) 一种Docker容器状态实时同步方法
US10901956B2 (en) Indexing of linked data
US11314779B1 (en) Managing timestamps in a sequential update stream recording changes to a database partition
EP3019976B1 (en) Dynamic migration script management
US10379963B2 (en) Methods and apparatus for managing a large-scale environment of copy data management appliances
CN102142024B (zh) 在分布式数据库中使用递增捕捉来进行逻辑数据备份和回退
CN101038591A (zh) 数据库同步方法及系统
DE112016002365T5 (de) System und Verfahren zur automatischen cloudbasierten Volldatensicherung und Wiederherstellung auf mobilen Geräten
CN106657167B (zh) 管理服务器、服务器集群、以及管理方法
US20140156598A1 (en) Replication control using eventually consistent meta-data
CN111225064A (zh) Ceph集群部署方法、系统、设备和计算机可读存储介质
CN102937909A (zh) 一种部署和更新Linux系统的方法
CN114490677A (zh) 数据分析系统中的数据同步
CN106325909A (zh) 对私有云系统中的多个镜像进行更新的方法和系统
CN108614877B (zh) 基于令牌桶的数据复制过程的监控方法及系统
US11341100B2 (en) System and method for eliminating full rescan synchronizations on service restarts
CN109634930B (zh) 清理日志的方法及装置、存储介质、电子装置
CN103970620A (zh) 一种准连续性数据复制方法及装置
WO2016183735A1 (zh) 一种同步虚拟网络功能vnf状态的方法、装置和设备
US10915309B2 (en) Technical configuration delta-driven update and decoupling
CN103207789A (zh) 应用服务器常量值动态更新方法及系统
CN106649625B (zh) 文件同步的方法和系统
CN117240711B (zh) 一种集群管理工具配置文件自动更新方法、装置及设备
CN108574659B (zh) 云系统应用更新的方法和装置
US10862958B1 (en) Flexible associativity in multitenant clustered environments

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200522

Address after: Building S01, Inspur Science Park, No. 1036, Inspur Road, high tech Zone, Jinan City, Shandong Province, 250000

Applicant after: Tidal Cloud Information Technology Co.,Ltd.

Address before: 450000 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601

Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: Building S01, Inspur Science Park, No. 1036, Inspur Road, high tech Zone, Jinan City, Shandong Province, 250000

Patentee after: Inspur cloud Information Technology Co., Ltd

Address before: Building S01, Inspur Science Park, No. 1036, Inspur Road, high tech Zone, Jinan City, Shandong Province, 250000

Patentee before: Tidal Cloud Information Technology Co.,Ltd.

CP01 Change in the name or title of a patent holder