CN112099917A - 调控系统容器化应用运行管理方法、系统、设备及介质 - Google Patents

调控系统容器化应用运行管理方法、系统、设备及介质 Download PDF

Info

Publication number
CN112099917A
CN112099917A CN202010937194.3A CN202010937194A CN112099917A CN 112099917 A CN112099917 A CN 112099917A CN 202010937194 A CN202010937194 A CN 202010937194A CN 112099917 A CN112099917 A CN 112099917A
Authority
CN
China
Prior art keywords
regulation
control system
container
application
containerized
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.)
Granted
Application number
CN202010937194.3A
Other languages
English (en)
Other versions
CN112099917B (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.)
China Electric Power Research Institute Co Ltd CEPRI
State Grid Shanghai Electric Power Co Ltd
Original Assignee
China Electric Power Research Institute Co Ltd CEPRI
State Grid Shanghai Electric Power 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 China Electric Power Research Institute Co Ltd CEPRI, State Grid Shanghai Electric Power Co Ltd filed Critical China Electric Power Research Institute Co Ltd CEPRI
Priority to CN202010937194.3A priority Critical patent/CN112099917B/zh
Publication of CN112099917A publication Critical patent/CN112099917A/zh
Application granted granted Critical
Publication of CN112099917B publication Critical patent/CN112099917B/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
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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
    • 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
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

本发明属于调控系统领域,涉及一种调控系统容器化应用运行管理方法、系统、设备及介质,该调控系统容器化应用运行管理方法包括以下步骤:根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群;通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。通过利用容器化技术,解决了虚拟机部署的方式在应用的部署方面的成本高,灵活性不足的问题,容器化的调控系统应用与底层设施、机器文件系统解耦,能在不同云、不同版本操作系统间进行迁移,提升调控云应用部署的灵活性,提升部署效率,降低部署成本。

Description

调控系统容器化应用运行管理方法、系统、设备及介质
技术领域
本发明属于调控系统领域,涉及一种调控系统容器化应用运行管理方法、系统、设备及介质。
背景技术
调控系统作为新一代调度控制系统的支撑平台,其是基于云计算理念设计,面向电网调控业务的服务平台,体现硬件资源虚拟化(共享与动态调配)、数据标准化和应用服务化的特点。调控系统管理功能,能够统一实时采集调控系统各层的状态信息,同时对调控系统的运行状态进行监视和告警,实现对调控系统运行状态的集中管理,及调控系统运行信息的可视化和精细化展示。
新一代调度控制系统由烟囱式的架构向基于共享服务的架构转变,但是,目前的虚拟机部署的方式在应用的部署方面的成本高,如每部署一个应用就需要一台虚拟机的维护,且受部署环境影响大,灵活性不足,为现场运维带来挑战。
发明内容
本发明的目的在于克服上述现有技术中,目前的虚拟机部署的方式在应用的部署方面的成本高,灵活性不足的缺点,提供一种调控系统容器化应用运行管理方法、系统、设备及介质。
为达到上述目的,本发明采用以下技术方案予以实现:
本发明第一方面,一种调控系统容器化应用运行管理方法,包括以下步骤:
根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群;
通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。
本发明调控系统容器化应用运行管理方法进一步的改进在于:
所述根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像的具体方法为:
根据调控系统应用的运行程序及对应的操作系统环境,创建Dockerfile文件,基于Dockerfile文件在Docker引擎中构建调控系统应用的容器镜像。
所述容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用的具体方法为:
容器管理集群根据调控系统应用的硬件需求和功能分类,在容器管理集群内选择满足硬件需求且同一功能分类的节点,并在这些节点上创建容器组,基于调控系统应用的容器镜像,在容器组内创建容器化的调控系统应用;所述节点为调控系统服务器内的计算机,所述计算机包括虚拟机和物理机。
所述在容器管理集群内选择满足硬件需求且同一功能分类的节点的具体方法为:
将容器管理集群内的每个节点均预设硬件配置标签及功能分类标签,根据调控系统应用的硬件需求和功能分类,确定调控系统应用的硬件配置标签和功能分类标签,通过预设的标签选择器,在容器管理集群内的所有节点中选择硬件配置标签及功能分类标签与调控系统应用的硬件配置标签和功能分类标签一致的节点。
所述容器组设置预设数量个,通过容器管理集群监控容器组的当前数量,当容器组的当前数量小于预设数量时,逐个创建容器组至容器组的当前数量等于预设数量;当容器组的当前数量大于预设数量时,逐个删除容器组至容器组的当前数量等于预设数量;所述容器组的当前数量为运行状态正常的容器组的当前数量。
还包括:当调控系统应用进行版本更新时,建立更新版本的调控系统应用的容器镜像,并发送至容器管理集群;容器管理集群将当前版本的调控系统应用的容器镜像记录为历史版本并存储;删除运行当前版本的容器化的调控系统应用的容器组,基于更新版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用,完成调控系统应用的版本更新;
当调控系统应用进行版本回退时,容器管理集群将当前版本的调控系统应用的容器镜像记录为历史版本并存储;删除运行当前版本的容器化的调控系统应用的容器组,基于回退指定历史版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用,完成调控系统应用的版本回退。
所述删除运行当前版本的容器化的调控系统应用的容器组的具体做法为:逐个删除运行当前版本的容器化的调控系统应用的容器组至全部删除;
所述基于更新版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用的具体做法为:每删除一个运行当前版本的容器化的调控系统应用的容器组,创建一个容器组,并基于更新版本的调控系统应用的容器镜像,在该容器组内部创建容器化的调控系统应用。
本发明第二方面,一种调控系统容器化应用运行管理系统,包括:
容器镜像生成模块,用于根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群;以及
容器镜像运行模块,用于通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。
本发明第三方面,一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现上述调控系统容器化应用运行管理方法的步骤。
本发明第四方面,一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现上述调控系统容器化应用运行管理方法的步骤。
与现有技术相比,本发明具有以下有益效果:
本发明调控系统容器化应用运行管理方法,通过利用容器化技术,构建调控系统应用的容器镜像,进而基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用,容器化的调控系统应用的实现,每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会相互影响,能区分计算资源。相对于虚拟机,容器能快速部署,由于容器与底层设施、机器文件系统解耦的,所以能在不同云、不同版本操作系统间进行迁移,具有较好的灵活性,容器不需要单独设置操作系统,多个容器可以部署在同一个虚拟机或物理机上,极大的降低部署成本。并且,容器占用资源少、部署快,每个应用可以被打包成一个容器镜像,每个应用与容器间成一对一关系也使容器有更大优势,每个应用不需要与其余的应用堆栈组合,也不依赖于生产环境基础结构,这使得从研发到测试、生产能提供一致环境,实现应用的快速构建、敏捷交付和方便运维,类似地,也使得容器比虚拟机轻量、更“透明”,这更便于监控和管理,更好的利用资源,降低部署成本。同时,基于容器管理集群的集中运行,有效降低部署的难度,提升部署的效率,一个容器故障停机,另外一个容器能够立刻启动以替补停机的容器,保证应用不停机的连续运行。
附图说明
图1为本发明实施例的调控系统架构示意图;
图2为本发明实施例的调控系统容器化应用运行管理方法流程框图;
图3为本发明实施例的调控系统容器化应用运行管理方法细节流程框图;
图4为本发明实施例的kubernetes集群部署的具体流程框图;
图5为本发明实施例的定向运行流程示意框图;
图6为本发明实施例的容器组部署示意框图;
图7为本发明实施例的调控系统容器化应用运行管理系统结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面结合附图对本发明做进一步详细描述:
参见图1,示出了本发明各实施例涉及的调控系统架构,包括IaaS层(基础设施层)、PaaS层(平台层)和SaaS层(软件层)。
IaaS(Infrastructure as a Service,基础设施即服务),是指把IT基础设施作为一种服务通过网络对外提供,用户不用自己构建一个数据中心,而是通过租用的方式,从Iaas服务提供商获得计算机基础设施服务。PaaS(Platform-as-a-Service,平台即服务),是把服务器平台作为一种服务提供的商业模式,将服务器平台或者开发环境作为服务进行提供。SaaS(Software-as-a-Service,软件即服务),是即通过网络提供软件服务,SaaS平台供应商将应用软件统一部署在自己的服务器上,可以根据工作实际需求,通过互联网获得Saas平台供应商提供的服务。
针对电力调度控制系统建立的调控系统来说,其中,PaaS层和SaaS层均以Web应用的形式提供调控系统的各个功能组件,PaaS层应用包括数据模型平台、数据交换平台、运行数据平台、实时数据平台、公共资源管理、大数据平台、模型中心及源数据端等八类平台型应用;SaaS层应用包括主题概况、仿真控制、电网模型、基础模型、高级应用及特色应用等六类业务型应用,每个类型下包括多个微服务化应用。而IaaS层则是将电力调度系统中的IT基础设施,如服务器等作为基础设施服务提供给调控系统,供调控系统使用。
参见图2,本发明一个实施例中,提供一种调控系统容器化应用运行管理方法,通过利用容器技术实现调控系统上各类应用合理的运行管理,保证资源的合理高效利用,同时,降低搭建研发环境的复杂度,降低系统升级成本,提供测试的准确性,从而有效地提升系统研发的效率。具体的,该调控系统容器化应用运行管理方法包括以下步骤。
S1:根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群。
具体的,本实施例中,基于Docker引擎实现调控系统应用的容器镜像的构建。其中,Docker引擎是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器完全使用沙箱机制,相互之间不会有任何接口。
Docker引擎包括三大组件,容器镜像、容器及镜像仓库。容器镜像用来创建Docker容器,一个容器镜像可以包含一个完整的操作系统环境和用户需要的其它应用程序,docker的容器镜像是只可读的,一个容器镜像可以创建多个容器。容器是镜像创建的实例,它可以被启动、开始、停止、删除,每个容器都是相互隔离的、保证安全的平台。镜像仓库是集中存放容器镜像的场所,镜像仓库中包含了多个容器镜像,每个容器镜像设置有不同的标签(tag)用以区分。
本实施例中,参见图3,提前分析调控系统应用的操作系统环境,然后根据调控系统应用的运行程序及对应的操作系统环境,按照Docker引擎的要求,创建Dockerfile文件,Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建容器镜像的其中一层,因此每一条指令的内容,就是描述容器镜像的每层应该如何构建;然后基于Dockerfile文件在Docker引擎中构建调控系统应用的容器镜像。
构建完容器镜像后,将调控系统应用的发送至基于调控系统服务器的容器管理集群,同时,也可以选择将容器镜像存储在镜像仓库中或不存储。由于调控系统内部的应用数量较多,单独进行人工部署浪费时间较多,因此,本实施例中,利用容器管理集群实现容器镜像的部署,可以大大节约部署花费的时间。
S2:通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。
其中,容器管理集群是指容器的集群管理平台,具有多个运行的节点,可以分为控制节点和工作节点,控制节点用于容器的集群管理,利用容器镜像将容器化的应用部署在工作节点,其中,这里的节点是指集群中的计算机,可以是虚拟机也可以是物理机,控制节点上也可以进行容器化的应用的部署。其中,容器管理集群可以选用kubernetes集群,简称K8s,是用8代替8个字符“ubernete”而成的缩写,是一个开源的,用于管理系统中多个主机上的容器化的应用。
具体的,容器管理集群根据调控系统应用的硬件需求和功能分类,在容器管理集群内选择满足硬件需求且同一功能分类的节点,并在这些节点上创建容器组,基于调控系统应用的容器镜像,在容器组内创建容器化的调控系统应用,这里的基于调控系统服务器的容器管理集群,即是指将调控系统服务器作为容器管理集群的节点,给容器管理集群提供部署的基础。参见图4,kubernetes集群部署的具体流程,将调控系统应用的容器镜像放置在容器组内,基于容器管理集群的控制器即控制节点管理容器组,监控容器组的创建过程,运行状态等信息,在容器组内形成容器化的调控系统应用实现暴露应用,然后生成对外的服务接口实现通讯,完成对外发布应用,并进行应用运行的日志管理及状态监控。
本实施例中,不同于常规的均匀分配的全自动运行,为了更好地对资源进行管理,根据调控系统应用的硬件需求和功能分类,将调控系统应用部署在满足硬件需求且同一功能分类的节点,实现调控系统应用的定向运行。
为了实现这一定向运行,首先要从容器管理集群的众多节点中找到满足硬件需求且同一功能分类的节点,本实施例中,采用如下方式实现:将容器管理集群内的每个节点均预设硬件配置标签及功能分类标签,参见图5,在硬件配置方面,部分节点配置了SSD(SolidState Disk,固态硬盘),部分节点配置了大容量内存条,那么将配置了SSD的节点的硬件配置标签设置为Disk:SSD,如节点A和节点B,将配置了大容量内存条的节点的硬件配置标签设置为空,如节点C和节点D;在功能分类方面,部分节点用于部署PaaS层应用,部分节点用于部署SaaS层应用,那么将用于部署PaaS层应用的节点的功能分类标签设置为App:PaaS,如节点A和节点D,将于部署SaaS层应用的节点的功能分类标签设置为D,App:SaaS,如如节点B和节点C。然后根据调控系统应用的硬件需求和功能分类,比如:应用A是SaaS层应用,硬件配置需求为大容量内存条,那么其预设的标签选择器为App:SaaS;应用B是PaaS层应用,硬件配置需求为SSD,那么其预设的标签选择器为App:PaaS和Disk:SSD。
确定调控系统应用的硬件配置标签和功能分类标签,通过预设的标签选择器,在容器管理集群内的所有节点中选择硬件配置标签及功能分类标签与调控系统应用的硬件配置标签和功能分类标签一致的节点,如应用A可以部署在节点B和节点C,应用B可以部署在节点A。
若调控系统应用预设的标签选择器有两个或以上数量的标签,将筛选拥有全部相同标签的节点进行调控系统应用的部署,若无符合要求的节点,则持续等待直到符合要求的节点被创建,在容器管理集群内创建节点是创建描述一个具体节点的API对象。
本发明调控系统容器化应用运行管理方法,通过利用容器化技术,构建调控系统应用的容器镜像,进而基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用,容器化的调控系统应用的实现,每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会相互影响,能区分计算资源。相对于虚拟机,容器能快速部署,由于容器与底层设施、机器文件系统解耦的,所以能在不同云、不同版本操作系统间进行迁移,具有较好的灵活性。并且,容器占用资源少、部署快,每个应用可以被打包成一个容器镜像,每个应用与容器间成一对一关系也使容器有更大优势,每个应用不需要与其余的应用堆栈组合,也不依赖于生产环境基础结构,这使得从研发到测试、生产能提供一致环境,实现应用的快速构建、敏捷交付和方便运维,类似地,也使得容器比虚拟机轻量、更“透明”,这更便于监控和管理,更好的利用资源,降低部署成本。同时,基于容器管理集群的集中运行,降低部署的难度,提升部署的效率,一个容器故障停机,另外一个容器能够立刻启动以替补停机的容器,保证应用不停机的连续运行。
本发明再一个实施例中,提供一种调控系统容器化应用运行管理方法,与图2所示实施例提供的调控系统容器化应用运行管理方法的区别在于,本实施例调控系统容器化应用运行管理方法中,容器组设置预设数量个,所述预设数量可以在容器管理集群进行部署时指定,同时,通过容器管理集群监控容器组的当前数量,当容器组的当前数量小于预设数量时,逐个创建容器组至容器组的当前数量等于预设数量;当容器组的当前数量大于预设数量时,逐个删除容器组至容器组的当前数量等于预设数量;所述容器组的当前数量为运行状态正常的容器组的当前数量。
参见图6,应用A设置了两个版本,每个版本均设置了两个容器组,用于来均衡应用A的负载,应用B同样设置了两个版本,每个版本均设置了一个容器组。当部分或全部容器组意外停止或被删除时,容器管理集群检测到容器组的当前数量非理想状态,立刻创建新的容器组以满足应用需求,解决意外退出的应用需运维人员手动重启的运维需求。同时,基于在部署时指定预设数量的容器组,实现应用的扩缩容功能,当流量增加时,增加容器组的数量,应用服务的负载均衡在不同的容器组,以满足系统性能需求。
本发明再一个实施例中,提供一种调控系统容器化应用运行管理方法,与图2所示实施例提供的调控系统容器化应用运行管理方法的区别在于,本实施例中,还至少包括版本更新步骤和版本回退步骤。
具体的,版本更新步骤包括:当调控系统应用进行版本更新时,建立更新版本的调控系统应用的容器镜像,并发送至容器管理集群;容器管理集群将当前版本的调控系统应用的容器镜像记录为历史版本并存储,删除运行当前版本的容器化的调控系统应用的容器组;基于更新版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用,可以直接在原先的节点内进行容器化的调控系统应用的部署,完成调控系统应用的版本更新。将调控系统应用版本的升级转换为调控系统应用的容器镜像的更换,相较于现有人工登录重新配置的方式,可快速实现版本的升级。
版本回退步骤包括:当调控系统应用进行版本回退时,容器管理集群将当前版本的调控系统应用的容器镜像记录为历史版本并存储,删除运行当前版本的容器化的调控系统应用的容器组。由于各版本的调控系统应用的容器镜像均被存储在容器管理集群内,在进行版本回退时,只需要指定版本回退至那个历史版本,然后容器管理集群基于该指定的历史版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用,完成调控系统应用的版本回退,极大的提升版本回退速度。
本发明再一个实施例中,提供一种调控系统容器化应用运行管理方法,与上一实施例提供的调控系统容器化应用运行管理方法的区别在于,本实施例中,实时滚动升级策略,以实现在更新过程中应用服务不停机。
具体的,基于上一实施例的版本更新步骤,其中,删除运行当前版本的容器化的调控系统应用的容器组时,逐个删除运行当前版本的容器化的调控系统应用的容器组至全部删除,这里需要容器组的数量在两个及以上;然后在基于更新版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用时,对应上述的删除过程,每删除一个运行当前版本的容器化的调控系统应用的容器组,就创建一个新的容器组,这个容器组可以直接创建在删除容器组的节点,然后基于更新版本的调控系统应用的容器镜像,在该容器组内部创建容器化的调控系统应用,类似的,也可以先进行容器组的创建后删除。
比如,原本应用服务将流量负载均衡到4个旧版本的容器组上,更新完容器镜像的版本后,随机选择一个旧版本的容器组将其删除,然后根据新的镜像版本创建一个新的容器组,新容器组内创建新版本的容器化的调控系统应用,或者,先根据新的镜像版本创建一个新的容器组,新容器组内创建新版本的容器化的调控系统应用,然后随机选择一个旧版本的容器组将其删除;新容器组拥有唯一的新的IP,然后应用服务将流量负载均衡到3个旧版本的容器组上及1个新版本的容器组内,重复上述操作,至创建了4个新版本的容器组也删除了4个旧版本的容器组,完成更新,整个过程中,应用服务不受影响。
下述为本发明的装置实施例,可以用于执行本发明方法实施例。对于装置实施例中未纰漏的细节,请参照本发明方法实施例。
餐巾图7,本发明再一个实施例中,提供了一种调控系统容器化应用运行管理系统,能够用于进行上述各实施例中调控系统容器化应用运行管理方法的操作,具体的,该调控系统容器化应用运行管理系统包括容器镜像生成模块及容器镜像运行模块。
其中,容器镜像生成模块用于根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群;容器镜像运行模块用于通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。
通过容器镜像生成模块生成调控系统应用的容器镜像,通过容器镜像运行模块实现调控系统应用的容器镜像的自动运行,在调控系统服务器内部署容器化的调控系统应用,容器化的调控系统应用的实现,每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会相互影响,能区分计算资源。相对于虚拟机,容器能快速部署,由于容器与底层设施、机器文件系统解耦的,所以能在不同云、不同版本操作系统间进行迁移,具有较好的灵活性。并且,容器占用资源少、部署快,每个应用可以被打包成一个容器镜像,每个应用与容器间成一对一关系也使容器有更大优势,每个应用不需要与其余的应用堆栈组合,也不依赖于生产环境基础结构,这使得从研发到测试、生产能提供一致环境,实现应用的快速构建、敏捷交付和方便运维,类似地,也使得容器比虚拟机轻量、更“透明”,这更便于监控和管理,更好的利用资源,降低部署成本。
本发明再一个实施例中,提供一种终端设备,该终端设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor、DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于调控系统容器化应用运行管理方法的操作,包括:根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群;通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。
再一个实施例中,本发明还提供了一种计算机可读存储介质(Memory),所述计算机可读存储介质是终端电力二次设备中的记忆电力二次设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括终端电力二次设备中的内置存储介质,当然也可以包括终端电力二次设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。
可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关调控系统容器化应用运行管理方法的相应步骤;计算机可读存储介质中的一条或一条以上指令由处理器加载并执行如下步骤:根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群;通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、电力二次设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理电力二次设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理电力二次设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理电力二次设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理电力二次设备上,使得在计算机或其他可编程电力二次设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程电力二次设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (10)

1.一种调控系统容器化应用运行管理方法,其特征在于,包括以下步骤:
根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群;
通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。
2.根据权利要求1所述的调控系统容器化应用运行管理方法,其特征在于,所述根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像的具体方法为:
根据调控系统应用的运行程序及对应的操作系统环境,创建Dockerfile文件,基于Dockerfile文件在Docker引擎中构建调控系统应用的容器镜像。
3.根据权利要求1所述的调控系统容器化应用运行管理方法,其特征在于,所述容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用的具体方法为:
容器管理集群根据调控系统应用的硬件需求和功能分类,在容器管理集群内选择满足硬件需求且同一功能分类的节点,并在这些节点上创建容器组,基于调控系统应用的容器镜像,在容器组内创建容器化的调控系统应用;所述节点为调控系统服务器内的计算机,所述计算机包括虚拟机和物理机。
4.根据权利要求3所述的调控系统容器化应用运行管理方法,其特征在于,所述在容器管理集群内选择满足硬件需求且同一功能分类的节点的具体方法为:
将容器管理集群内的每个节点均预设硬件配置标签及功能分类标签,根据调控系统应用的硬件需求和功能分类,确定调控系统应用的硬件配置标签和功能分类标签,通过预设的标签选择器,在容器管理集群内的所有节点中选择硬件配置标签及功能分类标签与调控系统应用的硬件配置标签和功能分类标签一致的节点。
5.根据权利要求3所述的调控系统容器化应用运行管理方法,其特征在于,所述容器组设置预设数量个,通过容器管理集群监控容器组的当前数量,当容器组的当前数量小于预设数量时,逐个创建容器组至容器组的当前数量等于预设数量;当容器组的当前数量大于预设数量时,逐个删除容器组至容器组的当前数量等于预设数量;所述容器组的当前数量为运行状态正常的容器组的当前数量。
6.根据权利要求3所述的调控系统容器化应用运行管理方法,其特征在于,还包括:
当调控系统应用进行版本更新时,建立更新版本的调控系统应用的容器镜像,并发送至容器管理集群;容器管理集群将当前版本的调控系统应用的容器镜像记录为历史版本并存储;删除运行当前版本的容器化的调控系统应用的容器组,基于更新版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用,完成调控系统应用的版本更新;
当调控系统应用进行版本回退时,容器管理集群将当前版本的调控系统应用的容器镜像记录为历史版本并存储;删除运行当前版本的容器化的调控系统应用的容器组,基于回退指定历史版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用,完成调控系统应用的版本回退。
7.根据权利要求6所述的调控系统容器化应用运行管理方法,其特征在于,所述删除运行当前版本的容器化的调控系统应用的容器组的具体做法为:逐个删除运行当前版本的容器化的调控系统应用的容器组至全部删除;
所述基于更新版本的调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用的具体做法为:每删除一个运行当前版本的容器化的调控系统应用的容器组,创建一个容器组,并基于更新版本的调控系统应用的容器镜像,在该容器组内部创建容器化的调控系统应用。
8.一种调控系统容器化应用运行管理系统,其特征在于,包括:
容器镜像生成模块,用于根据调控系统应用的运行程序及对应的操作系统环境,构建调控系统应用的容器镜像,并发送至基于调控系统服务器的容器管理集群;以及
容器镜像运行模块,用于通过容器管理集群基于调控系统应用的容器镜像,在调控系统服务器内部署容器化的调控系统应用。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现权利要求1至7任一项所述调控系统容器化应用运行管理方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至7任一项所述调控系统容器化应用运行管理方法的步骤。
CN202010937194.3A 2020-09-08 2020-09-08 调控系统容器化应用运行管理方法、系统、设备及介质 Active CN112099917B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010937194.3A CN112099917B (zh) 2020-09-08 2020-09-08 调控系统容器化应用运行管理方法、系统、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010937194.3A CN112099917B (zh) 2020-09-08 2020-09-08 调控系统容器化应用运行管理方法、系统、设备及介质

Publications (2)

Publication Number Publication Date
CN112099917A true CN112099917A (zh) 2020-12-18
CN112099917B CN112099917B (zh) 2022-02-11

Family

ID=73751784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010937194.3A Active CN112099917B (zh) 2020-09-08 2020-09-08 调控系统容器化应用运行管理方法、系统、设备及介质

Country Status (1)

Country Link
CN (1) CN112099917B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113342458A (zh) * 2021-04-29 2021-09-03 之江实验室 一种基于容器云的云边协同海量设备和业务批量控制方法
CN113722066A (zh) * 2021-08-23 2021-11-30 中国电力科学研究院有限公司 一种电网细粒度容器化服务管控系统及方法
CN113791864A (zh) * 2021-09-08 2021-12-14 国电南瑞科技股份有限公司 一种基于容器和微服务化功能的监控系统及其构建方法
CN114880000A (zh) * 2022-07-05 2022-08-09 深圳市信润富联数字科技有限公司 工控机远程运维方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8548909B1 (en) * 2002-05-17 2013-10-01 Citicorp Development Center, Inc. Method and system for building an internet portal
CN107766126A (zh) * 2017-11-15 2018-03-06 腾讯科技(深圳)有限公司 容器镜像的构建方法、系统、装置及存储介质
CN108415795A (zh) * 2018-02-12 2018-08-17 人和未来生物科技(长沙)有限公司 一种容器Dockerfile、容器镜像快速生成方法及系统
CN109189464A (zh) * 2018-07-11 2019-01-11 高新兴科技集团股份有限公司 一种版本管理的方法和设备
CN109743192A (zh) * 2018-12-04 2019-05-10 新华三云计算技术有限公司 一种容器集群配置管理方法及装置
CN111221624A (zh) * 2019-12-31 2020-06-02 中国电力科学研究院有限公司 一种针对基于Docker容器技术的调控云平台的容器管理方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8548909B1 (en) * 2002-05-17 2013-10-01 Citicorp Development Center, Inc. Method and system for building an internet portal
CN107766126A (zh) * 2017-11-15 2018-03-06 腾讯科技(深圳)有限公司 容器镜像的构建方法、系统、装置及存储介质
CN108415795A (zh) * 2018-02-12 2018-08-17 人和未来生物科技(长沙)有限公司 一种容器Dockerfile、容器镜像快速生成方法及系统
CN109189464A (zh) * 2018-07-11 2019-01-11 高新兴科技集团股份有限公司 一种版本管理的方法和设备
CN109743192A (zh) * 2018-12-04 2019-05-10 新华三云计算技术有限公司 一种容器集群配置管理方法及装置
CN111221624A (zh) * 2019-12-31 2020-06-02 中国电力科学研究院有限公司 一种针对基于Docker容器技术的调控云平台的容器管理方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
张丽敏,等;: "微服务环境下容器编排可视化实践研究", 《计算机工程与科学》 *
杨清波,等;: "基于容器的调控云PaaS平台的设计与实现", 《电网技术》 *
耿朋,等;: "面向Dockerfile的容器镜像构建工具", 《计算机系统应用》 *
郭智超: "基于Jenkins与Docker的云平台服务自动部署策略的研究", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑(月刊)》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113342458A (zh) * 2021-04-29 2021-09-03 之江实验室 一种基于容器云的云边协同海量设备和业务批量控制方法
CN113722066A (zh) * 2021-08-23 2021-11-30 中国电力科学研究院有限公司 一种电网细粒度容器化服务管控系统及方法
CN113791864A (zh) * 2021-09-08 2021-12-14 国电南瑞科技股份有限公司 一种基于容器和微服务化功能的监控系统及其构建方法
CN113791864B (zh) * 2021-09-08 2024-03-26 国电南瑞科技股份有限公司 一种基于容器和微服务化功能的监控系统及其构建方法
CN114880000A (zh) * 2022-07-05 2022-08-09 深圳市信润富联数字科技有限公司 工控机远程运维方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN112099917B (zh) 2022-02-11

Similar Documents

Publication Publication Date Title
CN112099917B (zh) 调控系统容器化应用运行管理方法、系统、设备及介质
Al-Dhuraibi et al. Autonomic vertical elasticity of docker containers with elasticdocker
EP3270289B1 (en) Container-based multi-tenant computing infrastructure
US10303450B2 (en) Systems and methods for a policy-driven orchestration of deployment of distributed applications
US8862933B2 (en) Apparatus, systems and methods for deployment and management of distributed computing systems and applications
US11537809B2 (en) Dynamic container grouping
JP6658882B2 (ja) 制御装置、vnf配置先選択方法及びプログラム
US11508021B2 (en) Processes and systems that determine sustainability of a virtual infrastructure of a distributed computing system
CN102246152B (zh) 保存程序执行状态
US9591094B2 (en) Caching of machine images
CN110661842B (zh) 一种资源的调度管理方法、电子设备和存储介质
Svorobej et al. Orchestration from the Cloud to the Edge
US11740921B2 (en) Coordinated container scheduling for improved resource allocation in virtual computing environment
CN113918276A (zh) 一种基于容器的sdn控制器部署方法、设备及介质
CN113553140A (zh) 资源调度方法、设备及系统
CN109960579B (zh) 一种调整业务容器的方法及装置
Lingayat et al. Integration of linux containers in openstack: An introspection
CN111988160A (zh) 一种虚拟化网络功能的部署方法和装置
CN105827744A (zh) 云存储平台的数据处理方法
US10572412B1 (en) Interruptible computing instance prioritization
Ferdaus Multi-objective virtual machine management in cloud data centers
CN114615268A (zh) 基于Kubernetes集群的服务网络、监控节点、容器节点及设备
CN114579250A (zh) 一种构建虚拟集群的方法、装置及存储介质
Chen et al. Architecture Design of Enterprise Information System Based on Docker and DevOps Technology
Beranek et al. Framework for Management of Multi-tenant Cloud Environments

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant