CN115185700B - 一种高集成单进程的容器管理方法 - Google Patents
一种高集成单进程的容器管理方法 Download PDFInfo
- Publication number
- CN115185700B CN115185700B CN202211107196.5A CN202211107196A CN115185700B CN 115185700 B CN115185700 B CN 115185700B CN 202211107196 A CN202211107196 A CN 202211107196A CN 115185700 B CN115185700 B CN 115185700B
- Authority
- CN
- China
- Prior art keywords
- container
- server
- micro
- service
- application system
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000007726 management method Methods 0.000 title claims abstract description 44
- 230000008569 process Effects 0.000 claims abstract description 48
- 230000000903 blocking effect Effects 0.000 claims abstract description 9
- 230000004044 response Effects 0.000 claims abstract description 8
- 230000010354 integration Effects 0.000 claims abstract description 5
- 238000012544 monitoring process Methods 0.000 claims description 25
- 230000008520 organization Effects 0.000 claims description 6
- 238000012423 maintenance Methods 0.000 abstract description 13
- 238000005516 engineering process Methods 0.000 description 17
- 238000013461 design Methods 0.000 description 7
- 238000011161 development Methods 0.000 description 7
- 238000011084 recovery Methods 0.000 description 7
- 238000009434 installation Methods 0.000 description 6
- 238000013475 authorization Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 208000000044 Amnesia Diseases 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/502—Proximity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/508—Monitor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/52—Indexing scheme relating to G06F9/52
- G06F2209/523—Mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种高集成单进程的容器管理方法,包括以下步骤:根据服务器的地理位置将计算资源划分若干区域,每个区域中放置了若干服务器,每个服务器按计算资源容量分解为若干容器,容器中用来部署应用系统的微服务;容器内置编译器,能够把代码加载、编译、运行到容器进程中,使得容器内所有微服务能够在同一个进程运行,所有微服务在同一个进程里可以同时响应多个非阻塞运行的事件,实现高并发的响应,相比多进程的模式把微服务之间的调用效率明显提高;通过把所有底层模块全部集成到容器中和微服务运行在同一个进程,微服务调用大部分底层模块都在同一个进程,提高了调用效率。由于高度集成之后,降低了部署和运维成本。
Description
技术领域
本发明属于容器管理技术领域,具体涉及一种高集成单进程的容器管理方法。
背景技术
开源软件 Docker 作为容器引擎系统,负责创建容器以便隔离进程和资源,管理微服务在容器中的运行。还负责将微服务及其依赖打包到几乎可以在任何服务器上运行的镜像,并提供镜像的仓库管理。
开源软件 Kubernetes 作为容器编排管理系统,是一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。并提供应用服务的管理、发现、访问,以及负载均衡策略计算。实现微服务的可移植、可扩展,以及各种自动化操作。Docker和Kubernetes两套系统共同完成计算资源的容器化运行。
上述容器管理系统为云计算技术的发展推进了一大步,也为云计算的应用系统部署和运维带来了一次革命性的效率提升。但作为第一代容器管理技术,仍然存在其历史的局限性。表现在以下几个方面:
(1) Docker 容器只是一个进程和资源的隔离工具,不能提供微服务代码级别加载、编译、执行的语言环境,而只能实现进程级别的微服务加载。由于微服务之间存在大量耦合调用,相比进程内的代码级调用,跨进程的调用其时间的损耗、CPU和内存的损耗都要超过100倍以上。
(2) Docker 容器未能提供底层技术的调用支持。一部分底层技术现在由Kubernetes 层提供,例如:服务发现、负载均衡、权限认证等;大部分的底层技术则是由第三方中间件提供,例如:消息队列、数据库访问、数据库缓存、分布式事务、链路跟踪等等。也就是说所有这些底层技术模块都运行在其它进程上,然而微服务对底层技术的调用是最频繁的。同理,相比进程内的代码级调用,其时间的损耗、CPU 和内存的损耗都要超过 100倍以上。
(3) Kubernetes 层对微服务的管理是一种网状调用关系的管理。网状调用关系是指每一个前端或者微服务都可以根据业务逻辑调用任何其它微服务的 API 接口。由于每一个微服务独立开发和部署,没有存储其它微服务的端口信息,从而必须通过Kubernetes 的“服务发现”模块去查找被调用微服务的端口,这里存在跨进程调用以及查找算法损耗。另外,被调用的微服务为了高并发的需求可能部署了多个实例,还得调用“负载均衡”模块定位到其中一个微服务,又需要一定的计算损耗。
(4) Kubernetes 未能实现自动灾备。不管 Kubernetes 自身的灾备实现,还是微服务的灾备实现,Kubernetes 都未提供相关技术。
(5) Kubernetes 不能支持边沿端和终端的运行。目前同一个 Kubernetes 集群同时部署到云端和边沿端,还存在很大的技术难度。包括对边沿端微服务的管理部署,边沿端和云端的数据传输,以及边沿端调用云端的服务编排都需要做大量工程改造。Kubernetes 和 Docker 目前都没有对各终端平台的支持,终端和云端使用完全不一样的底层技术,使得前后端分离开发,造成人力成本和沟通成本的增加。
随着数字经济成为国家大战略,国家正在大力推进城市数字化、企业数字化。云计算、大数据、人工智能等技术是支撑数字经济的重要支柱。作为云计算的核心技术:计算资源的容器化管理系统,也被称之为“云计算操作系统”,负责为云计算中运行的所有应用系统提供容器化的运行环境,以及底层技术模块支持。当前的容器管理系统都是 Kubernetes系统和 Docker 系统的组合,也是刚推出不久的第一代产品,功能简单、学习成本高、部署复杂、运行效率低下。
发明内容
本发明的目的是提供高集成单进程的容器管理方法,用以解决现有技术中存在的容器管理系统运行调用效率低的问题。
为了实现上述目的,本发明采用以下技术方案:
一种高集成单进程的容器管理方法,其特征在于,包括以下步骤:
根据服务器的地理位置将计算资源划分若干区域,每个区域中放置了若干服务器,每个服务器按计算资源容量分解为若干容器,容器中用来部署应用系统的微服务;
当用户登录应用系统时,域名系统通过识别用户来源区域,分配对应区域计算资源内的微服务去响应用户的访问;
所述容器设置有代码编译器,所述代码编译器用于提供微服务代码级别的加载、编译及执行的语言环境,还用于提供组件、流程、表格和文件的语言支持,以便让容器内的微服务在同一个进程内运行;编译器提供的运行环境设置有非阻塞事件驱动运行模式,以便所有微服务在同一个进程里可以同时响应多个非阻塞运行的事件,从而实现高并发的响应;
将所有底层模块全部集成到所述容器中并和微服务运行在同一个进程。所述底层模块如消息队列、数据库访问、数据库缓存、分布式事务、链路跟踪等等。
根据上述技术,因为容器内置编译器,能够把代码加载、编译、运行到容器进程中,使得容器内所有微服务能够在同一个进程运行,所有微服务在同一个进程里可以同时响应多个非阻塞运行的事件,实现高并发的响应,相比多进程的模式把微服务之间的调用效率明显提高;通过把所有底层模块全部集成到容器中和微服务运行在同一个进程,微服务调用大部分底层模块都在同一个进程,提高了调用效率。由于高度集成之后,降低了部署和运维成本。
在一种可能的设计中,所述容器配置有多个备份容器,同一个容器的不同备份容器部署到不同的地区,各备份容器内部运行的微服务相同;相同的微服务在运行过程中同步执行相同的指令,并时时保持数据的同步。如此,任何一台备份容器故障,不影响系统的正常运行。整个灾备过程可以由容器管理系统自动完成。
在一种可能的设计中,每个服务器按计算资源容量分解为若干容器的方法包括:根据服务器的相关参数和服务器使用情况信息进行容器化操作以及管理;所述相关参数包括每个服务器的IP地址、区域、容量、操作系统以及使用期限;所述服务器使用情况信息被记录在服务器中。
在一种可能的设计中,所述容器被同时配置在云端、边沿端和/或终端;所述云端、边沿端和终端都运行了相同架构的容器底层模块,且容器内每个微服务都有独立的对象数据库。传统Kubernetes治理的容器只能运行在云端。其中云端和边沿端的容器部署和微服务部署都由容器管理系统的部署工具统一实施,终端的容器则在生成不同终端平台的应用软件时,把该终端平台对应的容器底层系统封装到应用软件中。本申请中因为容器集成了所有底层模块到一个进程,所需资源很少,可以运行在资源较少的边沿端和终端;由于云端、边沿端和终端都运行了相同架构的容器底层模块,且容器内每个微服务都有独立的对象数据库,可以实现三端的开发技术统一、数据高效传输、事件快速响应。
在一种可能的设计中,所述微服务被配置为树形调用关系,每个所述微服务被配置为只和其父级微服务建立调用关系,在微服务部署时自动保存父级微服务的端口信息,以便微服务之间进行直接调用。在高并发场景下,不管微服务部署了多少个实例,其父级微服务只有一个。从而完全不需要服务发现、负载均衡等中间模块,微服务之间全部实现直接调用,提高了调用效率。
在一种可能的设计中,还包括部署容管理系统的方法,部署容管理系统的方法包括:进行服务器的部署,所述服务器包括根服务器,然后在根服务器部署容器,在容器内部署多个系统级应用系统,所述系统级应用系统包括部署系统、监控系统、身份认证系统和用户系统;其中,
部署系统用于组织架构的构建、计算资源的容器化、应用系统的实例化和部署配置;
监控系统用于计算资源和应用系统的监控,对计算资源的容器化部署以及进行应用系统的部署;每个容器中都有监控系统的一个监控点组件(Monitor Point Module),监控该容器及其微服务的工作状态;
身份认证系统用于对不同类型用户的身份认证以及权限管理;所述用户包括职员、个人客户和/或企业客户;每个容器中都有认证子系统的一个认证点组件(Certification Point Module),认证点组件为调用该容器中的微服务接口提供认证服务;
用户系统用于给所述用户提供操作桌面。
容器管理系统负责把计算资源容器化,给云应用系统提供一套部署和运维简单的工具,以及高性能、高可用、高并发、高弹性的运行环境。
在一种可能的设计中,通过提供URL连接给用户,响应于用户打开URL连接的操作,进入所述用户系统对应的操作桌面。
在一种可能的设计中,所述部署系统包括计算资源配置模块和应用系统配置模块,所述计算资源配置模块用于把服务器资源进行区域化以及容器化的操作;应用系统配置模块用于把应用系统中各组件实例化给组织架构,并配置到各计算资源的容器中。
有益效果:
本申请中,因为容器内置编译器,能够把代码加载、编译、运行到容器进程中,使得容器内所有微服务能够在同一个进程运行,所有微服务在同一个进程里可以同时响应多个非阻塞运行的事件,实现高并发的响应,相比多进程的模式把微服务之间的调用效率明显提高;通过把所有底层模块全部集成到容器中和微服务运行在同一个进程,微服务调用大部分底层模块都在同一个进程,提高了调用效率。由于高度集成之后,降低了部署和运维成本;
本申请中,因为容器集成了所有底层模块到一个进程,所需资源很少,可以运行在资源较少的边沿端和终端;由于云端、边沿端和终端都运行了相同架构的容器底层模块,且容器内每个微服务都有独立的对象数据库,可以实现三端的开发技术统一、数据高效传输、事件快速响应;由于云端、边沿端、终端都被容器化并提供统一的技术底层模块,同一个工程师可同时完成一个业务逻辑在三端的所有编码,节省开发成本;
本申请中,容器管理系统实现微服务的树形调用关系,比网状调用关系效率显著提高;容器配置多个备份,实现异地备灾、无缝恢复的功能。
附图说明
图1为实施例中容器化的计算资源构成示意图。
图2为实施例中容器管理系统模块示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将结合附图和实施例或现有技术的描述对本发明作简单地介绍,显而易见地,下面关于附图结构的描述仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在此需要说明的是,对于这些实施例方式的说明用于帮助理解本发明,但并不构成对本发明的限定。
实施例:
本实施例提供了一种高集成单进程的容器管理方法,包括以下步骤:
如图1所示,根据服务器的地理位置将计算资源划分若干区域,每个区域中放置了若干服务器,每个服务器按计算资源容量分解为若干容器,容器中用来部署应用系统的微服务;具体的,图1中示出了职位A组件及对应的界面组件位于区域1中的服务器1中,并单独在服务器1中的容器1中;且该职位A组件书部门1组件相关联,可见,每个职位组件、每个部门组件以及客户组件都对应了独立的容器来进行进程。
当用户登录应用系统时,域名系统通过识别用户来源区域,分配对应区域计算资源内的微服务去响应用户的访问;
所述容器设置有代码编译器,所述代码编译器用于提供微服务代码级别的加载、编译及执行的语言环境,还用于提供组件、流程、表格和文件的语言支持,以便让容器内的微服务在同一个进程内运行;编译器提供的运行环境设置有非阻塞事件驱动运行模式,以便所有微服务在同一个进程里可以同时响应多个非阻塞运行的事件,从而并发的响应;
将所有底层模块全部集成到所述容器中并和微服务运行在同一个进程。容器中所有微服务在同一个进程运行,且底层技术模块也在同一个进程中运行。这种高集成的架构模式,计算资源使用率可成倍提高,可降低运行成本。
在一种可能的实施方式中,所述容器配置有多个备份容器,同一个容器的不同备份容器部署到不同的地区,各备份容器内部运行的微服务相同;相同的微服务在运行过程中同步执行相同的指令,并时时保持数据的同步。
具体的实施时,每个服务器按计算资源容量分解为若干容器的方法包括:根据服务器的相关参数和服务器使用情况信息进行容器化操作以及管理;所述相关参数包括每个服务器的IP地址、区域、容量、操作系统以及使用期限;所述服务器使用情况信息被记录在服务器中。便于容器化操作以及管理。
在一种可能的实施方式中,所述容器被同时配置在云端、边沿端和/或终端;所述云端、边沿端和终端都运行了相同架构的容器底层模块,且容器内每个微服务都有独立的对象数据库。由于云端、边沿端、终端都被容器化并提供统一的技术底层模块,同一个工程师可同时完成一个业务逻辑在三端的所有编码;由于容器中封装了微服务调用的所有底层逻辑,并以图形符号和表达式方式为应用系统的开发提供了一套低代码语言。整个开发过程只需要懂业务逻辑,完全不用关注底层技术逻辑,即可开发任何复杂的应用系统。可提高开发效率。
在一种可能的实施方式中,所述微服务被配置为树形调用关系,每个所述微服务被配置为只和其父级微服务建立调用关系,在微服务部署时自动保存父级微服务的端口信息,以便微服务之间进行直接调用。
在一种可能的实施方式中,还包括部署容器管理系统的方法,部署容器管理系统的方法包括:进行根服务器(Node-0)的部署,然后在根服务器部署container-0容器,在container-0容器内部署多个系统级应用系统,所述系统级应用系统包括部署系统(DeployCloud)、监控系统(Monitor Cloud)、身份认证系统(Certification Cloud)和用户系统(User Cloud);其中,
部署系统用于组织架构的构建、计算资源的容器化、应用系统的实例化和部署配置;
监控系统用于计算资源和应用系统的监控,对计算资源的容器化部署以及进行应用系统的部署;每个容器中都有监控系统的一个监控点组件(Monitor Point Module),监控该容器及其微服务的工作状态;
身份认证系统用于对不同类型用户的身份认证以及权限管理;所述用户包括职员、个人客户和/或企业客户;每个容器中都有认证子系统的一个认证点组件(Certification Point Module),认证点组件为调用该容器中的微服务接口提供认证服务;
用户系统用于给所述用户提供操作桌面。
具体示例的,如图2所示,图中示出了示例的一种容易管理系统的总体架构图,图中根服务器-0(Node-0)、服务器-1(Node-1)为物理服务器,多个容器分别是容器-0-0(Container-0-0)、容器-1-0(Container-1-0)、容器2-0(Container-2-0)。每个容器分别在Node-0、Node-1中有一个备份容器。具体实施时,可以管控更多的服务器,每台服务器可以管控更多的容器。
具体实施时,整个容器管理系统的部署分为以下几个步骤:
第1步:从该系统的原厂获取一个“云操作系统”安装包。在目标服务器运行安装文件,一般可以支持linux和windows两种操作系统。如需要灾备,可以用该安装文件安装到多台服务器上。安装完成后,即完成了根服务器(Node-0)的部署,根服务器内自动部署了container-0容器,container-0容器内自动部署了四个系统级应用系统(Deploy Cloud,Monitor Cloud,Certification Cloud,User Cloud)。系统会提供一个URL连接,用浏览器打开URL,即能进入User Cloud应用系统的职员桌面组件(Clerk Desktop)对应“系统管理员”职员桌面。
第2步:点击系统管理员桌面中“部署工具”。“部署工具”界面是Deploy Cloud应用系统的终端部分。打开部署工具界面后,可以看到“计算资源配置”、“应用系统配置”相关选项。“计算资源配置”负责把服务器资源进行区域化、容器化的操作。“应用系统配置”负责把应用系统中各组件实例化给组织架构,并配置到各计算资源的容器中。
第3步:点击部署工具中“计算资源配置”选项。可以通过计算资源配置添加更多的服务器,并对各服务器实施容器化操作,设置各容器参数。配置完成后点击“交付”按钮,把计算资源配置包发送到“Monitor Cloud”应用系统。
第4步:点击系统管理员桌面中“运维工具”。“运维工具”界面是“Monitor Cloud”应用系统的终端部分。打开运维工具界面后,可以看到“计算资源监控”、“应用系统监控”相关选项。“计算资源监控”负责计算资源的部署、监测和控制。“应用系统监控”负责应用系统的部署、监测和控制。
第5步:点击运维工具中“计算资源监控”选项。计算资源监控的相关页面会显示所有计算资源的当前状态,从Deploy Cloud刚交付的计算资源会显示处于未部署状态。点击相应的部署按钮,即可完成部署操作。整个计算资源部署操作的工作原理如下:
“计算资源监控”页面点击“服务器部署”按钮,Monitor Cloud应用系统的MonitorCenter组件生成一个服务器安装软件包返回给页面,界面提示用户下载该安装软件包。
在目标服务器上运行服务器安装软件包,自动完成对该服务器的部署,并生成相应容器。把当前服务器的状态数据自动上传到Node-0的节点控制器(Node Controller),Node Controller把状态数据返回给Monitor Cloud应用系统的Monitor Center。
打开运维工具界面即可显示刚部署服务器及其容器的运行状态。
计算资源准备就绪后,可以开始安装各种应用系统到计算资源中运行,提供给用户使用。应用系统的部署过程如下:
第1步:从该系统的原厂应用商城里获取一个应用系统安装包客户管理系统(Customer Relationship Management,CRM)。
第2步:点击系统管理员桌面中“部署工具”。
第3步:点击部署工具中“应用系统配置”选项。在应用系统配置页面中会显示所有应用系统的列表。点击“应用系统新增”按钮,提示导入应用系统安装包。应用系统导入完成后,界面显示该应用系统的所有组件。把组件配置到组织架构的对应部门或职位中,再为每个组件配置计算资源的容器。完成所有配置后,工具为该应用系统生成相应的应用系统配置包、应用系统的组件授权包等。点击“交付”按钮,会实现以下操作:
把应用系统配置包发送到“Monitor Cloud”应用系统。
把应用系统的组件授权包发送到“User Cloud”应用系统。
第4步:点击系统管理员桌面中“运维工具”。
第5步:点击运维工具中“应用系统监控”选项。应用系统监控的相关页面会显示所有应用系统及其组件的当前状态,从Deploy Cloud刚交付的应用系统会显示处于未部署状态。点击相应的部署按钮,即可完成部署操作。整个应用系统部署操作的工作原理如下:
“应用系统监控”页面点击“应用系统部署”按钮,Monitor Cloud应用系统的Monitor Center组件开始实施部署过程。
Monitor Center组件向要部署应用系统组件的各容器的容器控制器(ContainerController)发送部署指令。
Container Controller完成组件的新建。
应用系统部署完成后,点击“应用系统运行”按钮,启动应用系统的运行。
运维工具界面即可显示刚部署应用系统及组件的运行状态。
应用系统的运行:
应用系统CRM部署完成后,在User Cloud应用系统的Clerk Desktop和 CustomerDesktop组件对应前端桌面上会显示该应用系统的图标,点击图标,
即能进入对应界面。具体实现的工作原理如下:
部署工具把应用系统CRM的组件授权包发送到User Cloud应用系统。
User Cloud应用系统的User Center组件根据应用系统CRM的组件授权包的权限定义把对应前端界面的URL及应用图标分别分配给相关职位或客户的桌面。
相关职位或客户打开其前端桌面时,可以看到已授权的应用图标。
点击应用图标即能打开其对应URL。
运行URL对应界面时,应用系统CRM的前端组件通过前端容器的远程过程调用(RPC)模块向URL参数中指定的云端组件发送握手指令。
云端容器的RPC收到该握手指令后,把认证信息发送到Certification Cloud应用系统的Certification Point组件,判断是否合法。
如果访问合法,云端容器的RPC向应用系统CRM的云端组件发送握手指令。
应用系统CRM的云端组件返回握手相关信息。
应用系统CRM的前端组件发起其它操作,根据业务逻辑和云端组件完成各种交互。
前端组件和后端组件可以通过容器的模块类模块(Module class)提供的各种接口函数完成所有底层技术的调用操作。Module class模块通过数据库端口模块(DatabasePort)实现所有数据库的操作。Module class模块通过RPC模块完成和其它容器内组件的远程调用。“Module class”模块通过信息队列模块(Message Queue)完成和所有组件之间的异步消息发送和接收。
本发明可用于云计算领域,为各种城市数字化、企业数字化的大型互联网应用提供运行底座,从支撑单台服务器的小型应用到百万台服务器的巨型系统都可以一站式解决。本发明可以同时支持云端、边沿端和终端的容器化,使得同一套应用系统同时运行在以上三端,满足各种业务场景的需求。
本实施例提供的容器是最小的计算资源分隔单元,是为了充分利用服务器的计算资源,并实现分布式弹性部署,用软件方式定义一定容量而隔离的逻辑区域。容器也是一个运行环境,可以加载多个微服务在容器内运行,并为微服务运行提供底层技术的调用。每个容器为一个进程,所有加载的微服务都在容器进程上运行。每个容器都分配了唯一的标识负责寻址,并有一个独立端口,负责和其它容器通讯。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种高集成单进程的容器管理方法,其特征在于,包括以下步骤:
根据服务器的地理位置将计算资源划分若干区域,每个区域中放置了若干服务器,每个服务器按计算资源容量分解为若干容器,容器中用来部署应用系统的微服务;
当用户登录应用系统时,域名系统通过识别用户来源区域,分配对应区域计算资源内的微服务去响应用户的访问;
所述容器设置有代码编译器,所述代码编译器用于提供微服务代码级别的加载、编译及执行的语言环境,还用于提供组件、流程、表格和文件的语言支持,以便让容器内的微服务在同一个进程内运行;编译器提供的运行环境设置有非阻塞事件驱动运行模式,以便所有微服务在同一个进程里同时响应多个非阻塞运行的事件,从而并发的响应;
将所有底层模块全部集成到所述容器中并和微服务运行在同一个进程;
所述容器被同时配置在云端、边沿端和/或终端;所述云端、边沿端和终端都运行了相同架构的容器底层模块,且容器内每个微服务都有独立的对象数据库;
还包括部署容器管理系统的方法,部署容器管理系统的方法包括:进行服务器的部署,所述服务器包括根服务器,然后在根服务器部署容器,在容器内部署多个系统级应用系统,所述系统级应用系统包括部署系统、监控系统、身份认证系统和用户系统;其中,
部署系统用于组织架构的构建、计算资源的容器化、应用系统的实例化和部署配置;
监控系统用于计算资源和应用系统的监控,对计算资源的容器化部署以及进行应用系统的部署;每个容器中都有监控系统的一个监控点组件,监控该容器及其微服务的工作状态;
身份认证系统用于对不同类型用户的身份认证以及权限管理;所述用户包括职员、个人客户和/或企业客户;每个容器中都有认证子系统的一个认证点组件,认证点组件为调用该容器中的微服务接口提供认证服务;
用户系统用于给所述用户提供操作桌面。
2.根据权利要求1所述的高集成单进程的容器管理方法,其特征在于,所述容器配置有多个备份容器,同一个容器的不同备份容器部署到不同的地区,各备份容器内部运行的微服务相同;相同的微服务在运行过程中同步执行相同的指令,并时时保持数据的同步。
3.根据权利要求1所述的高集成单进程的容器管理方法,其特征在于,每个服务器按计算资源容量分解为若干容器的方法包括:根据服务器的相关参数和服务器使用情况信息进行容器化操作以及管理;所述相关参数包括每个服务器的IP地址、区域、容量、操作系统以及使用期限;所述服务器使用情况信息被记录在服务器中。
4.根据权利要求1所述的高集成单进程的容器管理方法,其特征在于,所述微服务被配置为树形调用关系,每个所述微服务被配置为只和其父级微服务建立调用关系,在微服务部署时自动保存父级微服务的端口信息,以便微服务之间进行直接调用。
5.根据权利要求1所述的高集成单进程的容器管理方法,其特征在于,通过提供URL连接给用户,响应于用户打开URL连接的操作,进入所述用户系统对应的操作桌面。
6.根据权利要求1所述的高集成单进程的容器管理方法,其特征在于,所述部署系统包括计算资源配置模块和应用系统配置模块,所述计算资源配置模块用于把服务器资源进行区域化以及容器化的操作;应用系统配置模块用于把应用系统中各组件实例化给组织架构,并配置到各计算资源的容器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211107196.5A CN115185700B (zh) | 2022-09-13 | 2022-09-13 | 一种高集成单进程的容器管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211107196.5A CN115185700B (zh) | 2022-09-13 | 2022-09-13 | 一种高集成单进程的容器管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115185700A CN115185700A (zh) | 2022-10-14 |
CN115185700B true CN115185700B (zh) | 2022-12-20 |
Family
ID=83524284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211107196.5A Active CN115185700B (zh) | 2022-09-13 | 2022-09-13 | 一种高集成单进程的容器管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115185700B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103995748A (zh) * | 2014-05-15 | 2014-08-20 | 乐视致新电子科技(天津)有限公司 | 智能终端的任务处理方法及系统 |
CN110557413A (zh) * | 2018-05-30 | 2019-12-10 | 中国人民财产保险股份有限公司 | 一种业务服务系统及提供业务服务的方法 |
CN110750307A (zh) * | 2019-09-04 | 2020-02-04 | 北京旷视科技有限公司 | 一种微服务架构构建方法及装置 |
CN111970354A (zh) * | 2020-08-13 | 2020-11-20 | 腾讯科技(深圳)有限公司 | 一种边缘计算中的应用管理方法以及相关装置 |
CN113614706A (zh) * | 2019-04-05 | 2021-11-05 | 密米克科技公司 | 分布式边缘云计算的方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4049413A4 (en) * | 2019-10-26 | 2023-07-05 | Mimik Technology Inc. | METHOD AND SYSTEM FOR DISTRIBUTED EDGE CLOUD COMPUTING |
CN112256359A (zh) * | 2020-10-26 | 2021-01-22 | 卫宁健康科技集团股份有限公司 | 微服务合并方法、装置、电子设备及可读存储介质 |
-
2022
- 2022-09-13 CN CN202211107196.5A patent/CN115185700B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103995748A (zh) * | 2014-05-15 | 2014-08-20 | 乐视致新电子科技(天津)有限公司 | 智能终端的任务处理方法及系统 |
CN110557413A (zh) * | 2018-05-30 | 2019-12-10 | 中国人民财产保险股份有限公司 | 一种业务服务系统及提供业务服务的方法 |
CN113614706A (zh) * | 2019-04-05 | 2021-11-05 | 密米克科技公司 | 分布式边缘云计算的方法和系统 |
CN110750307A (zh) * | 2019-09-04 | 2020-02-04 | 北京旷视科技有限公司 | 一种微服务架构构建方法及装置 |
CN111970354A (zh) * | 2020-08-13 | 2020-11-20 | 腾讯科技(深圳)有限公司 | 一种边缘计算中的应用管理方法以及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115185700A (zh) | 2022-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107426034B (zh) | 一种基于云平台的大规模容器调度系统及方法 | |
CN107229520B (zh) | 一种数据中心操作系统 | |
CN102103518B (zh) | 一种在虚拟化环境中管理资源的系统及其实现方法 | |
EP1875664B1 (en) | Apparatus and method for managing a network of intelligent devices | |
US8250570B2 (en) | Automated provisioning framework for internet site servers | |
CN109600269A (zh) | 一种基于dcos的云管理平台 | |
US20090271498A1 (en) | System and method for layered application server processing | |
CA2637749C (en) | Method, system, and program product for deploying a platform dependent application in a grid environment | |
CN106020930A (zh) | 一种基于应用容器的应用管理方法及系统 | |
CN108762900A (zh) | 高频任务调度方法、系统、计算机设备和存储介质 | |
CN112104723A (zh) | 一种多集群的数据处理系统及方法 | |
CN111143054A (zh) | 一种异构国产cpu资源融合管理方法 | |
CN111045652B (zh) | 配电网开发及服务系统 | |
CN113127343B (zh) | 一种基于微服务架构的电网代码测试分析系统 | |
CN112417051A (zh) | 容器编排引擎资源管理方法及装置、可读介质及电子设备 | |
CN113204353B (zh) | 一种大数据平台组件部署方法及装置 | |
Trunov et al. | Legacy applications model integration to support scientific experiment | |
CN116010027A (zh) | 管理任务处理集群的方法、执行任务的方法及容器集群 | |
CN116450300A (zh) | 一种基于容器技术的并行自动化GitOps系统 | |
CN114615268A (zh) | 基于Kubernetes集群的服务网络、监控节点、容器节点及设备 | |
CN113127526A (zh) | 一种基于Kubernetes的分布式数据存储和检索系统 | |
CN114579250B (zh) | 一种构建虚拟集群的方法、装置及存储介质 | |
e Silva et al. | Application execution management on the InteGrade opportunistic grid middleware | |
CN115185700B (zh) | 一种高集成单进程的容器管理方法 | |
US5881227A (en) | Use of daemons in a partitioned massively parallel processing system environment |
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 |