APP下载

微服务中的Docker技术应用

2021-06-16龚方生

电子技术与软件工程 2021年4期
关键词:容器集群运维

龚方生

(广州涉外经济职业技术学院 广东省广州市 510540)

在计算网络技术的不断发展和普及下,软件体系架构在信息系统的整体设计中愈发重要,传统单体架构设计模式具有耦合度高、业务模块复用性差等问题,无法满足现代用户的使用需求,为了从根本上解决以上问题,现提出一种微服务架构,该架构通过使用Docker 技术,不仅可以实现对信息系统业务功能的科学划分,还能保证服务功能的全面性和便捷性,为提高信息系统的负载均衡性能发挥出重要作用。因此,为了进一步提高微服务架构设计水平,如何将Docker 技术科学应用于微服务中是相关人员必须思考和解决的问题。

1 Docker技术概述

Docker 技术作为一种轻量级容器引擎,具有开源性、隔离性等特征,通关利用该技术,可以采用容器形式,实现对独立虚拟网络空间的创建和使用,该网络空间主要由处理器、内存、硬盘等组成,此时,用户通过利用Docker 服务器镜像,可以采用打包移植的方式,将应用程序存储到系统镜像中,从而形成一个新型、先进的容器,通过将该容器安装和部署到任意含有Docker 服务器的机器上,可以实现对网络协议的有效共享和利用,为提高网络协议的交互效率和效果打下坚实的基础。近年来,随着微服务应用系统的不断增多,Docker 技术被广泛地应用于微服务应用系统部署中,确保微服务应用系统能够可靠、稳定、安全地运行。

2 Docker技术在微服务中的应用

2.1 自动化运维平台

自动化运维平台核心功能设计示意图如图1 所示,从图中可以看出,该平台主要由以下几个部分组成,分别是系统资源管理功能、系统安装部署管理功能、系统配置管理功能和系统监控管理功能。其中,系统资源管理功能主要是指通过采用统一化管理方式,对云平台软硬件资源进行集中化管理,以实现对云计算资源、存储资源和网络资源的科学分配和充分利用;系统安装部署管理功能主要是指根据实际运维需求[1],采用自动化控制的方式,实现对相关操作系统的安装和升级以及系统开发环境的自动化构建和部署。系统配置管理功能主要是指采用统一化管理方式,对系统所有配置文件进行全面管理,同时,还要对本地资源和远程资源进行统一化配置和管理。系统监控管理功能主要是指实时监控多态服务器运行状态[2],并做好对微服务容器可靠性和安全性的有效检验,为其他平台提供相关参数数据,实现相关信息数据的有效共享,以达到提高信息数据利用率的目的。

图1:自动化运维平台核心功能设计示意图

图2:微服务架构设计示意图

在云计算技术的应用背景下,自动化运维平台可以在最短时间内实现对多个服务器的部署,服务器部署主要包含以下几个环节:系统搭建和安装、系统环境参数配置、系统软件性能检测等。传统服务器部署方式,无法满足高效快捷的处理需求,而Docker 技术出现和应用可以保证服务器部署的便捷性和高效性,从而有效地弥补传统服务器部署方式的缺陷。自动化运维平台在具体的运用中,通过利用Docker 技术,对多个应用服务器进行部署,不仅可以实现系统参数信息的一次性配置,还能完成对多个服务器的统一化、集中化部署,极大地提高服务器部署的效率和效果。同时,通过利用自动化运维平台[3],还能针对服务器蓄电池组部署需求变化,对部署步骤进行相应的调整和优化,确保在业务较多的情况下,也能采用容器管理的方式,实现对计算机资源的充分利用,为进一步提高微服务的运维效率和效果打下坚实的基础。自动化运维平台通过利用Docker 技术,可以实施监控和管理应用系统实际运行状态,同时,还能促进保IT 开发、技术运营和系统质量的协调发展,使得开发人员与运营人员进行有效地合作,打破两者之间的界限[4],同时,在Docker 技术的应用背景下,当信息系统部署操作范围缩小时,该系统性能会不断增强,从而为用户带来良好的使用体验。

2.2 负载均衡

在云计算背景下,分布式系统在实际的运行中,很容易出现负载均衡问题,而Docker 技术出现和应用可以很好地解决这一问题。在Docker 技术的应用背景下,根据微服务运维需求,采用多节点部署的方式,完成对大量重复调用的业务功能的统一化简化和处理,同时,还要借助微服务的服务注册功能,实现对微服务节点的集中化、统一化管理[5],一旦某一容器被重复调用时,可以借助微服务应用程序,采用调整节点的方式,尽可能选出负载较小的应用程序,为实现对系统负载均衡问题的有效解决创造良好的条件。

2.3 容器云

最近几年,随着容器云技术的不断发展和普及,云计算服务模型种类中不断增加,目前,云计算模型主要包含以下几种,分别是基础设施服务、平台服务、软件服务。容器云主要是指通过采用虚拟化处理方式,对应用程序内部信息数据以及程序资源的统一化部署和管理,从而提高系统相关资源信息部署的高效性和便捷性[6],为进一步提高系统的运行性能打下坚实的基础。此外,系统作为Docker 容器的重要组成部分,其运行性能直接影响了Docker 容器的可靠性和安全性,为了进一步提高Docker 容器的使用性能,需要借助集群编排管理工具,对容器集群进行统一化维护和管理,确保容器集群始终处于良好的运行状态。此外,为了进一步提高微服务架构的设计水平,还要借助容器云,对各个微服务的部署问题进行有效地分析和解决,为实现对微服务架构的科学设计,实现微服务的科学划分打下坚实的基础。

3 Docker技术在微服务中应用案例

3.1 微服务架构设计

微服务架构设计示意图如图2 所示,从图中可以看出,微服务架构主要包含五个层次,分别是云平台层、应用层、接入层、服务层和容器层。其中,云平台层的位于微服务架构的最底层,主要为微服务提供虚拟化资源或者硬软件资源[7],这些资源主要包含计算资源、网络资源以及存储资源等。容器层处于云平台的上方,主要为微服务提供安全、可靠的运行环境,通过利用该运行环境可以实现相关事务的虚拟化处理。容器作为一种基本单元,在系统管理中发挥出重要作用。通过利用容器层,可以实现对容器集群的实时监控、调度以及弹性伸缩和编排,为镜像存储提供重要的依据和参考。服务层主要以下功能组成的[8],例如:服务注册功能、目标分析服务功能、情报管理服务功能等。接入层在具体的运用中,主要向外部应用提供相应的服务请求,确保系统负载的均衡性和稳定性。应用层处于微服务架构的最顶层,很好地反映了实际业务的典型应用。

3.2 作战筹划微服务系统分解

图3:容器集群架构图

对于作战筹划微服务系统而言,其作战筹划主要是指通过对预先设计和筹划作战活动,确保作战活动能够正常、稳定、有序地开展,参与作战筹划的人员主要由指挥员、情报员和通信员组成,其中,指挥员主要根据对上级命令传达的命令,对战场情况进行综合分析,并向各级军官传达作战命令,各级军官根据接收到的作战命令,制定和完善作战方案,并将制定好的作战方案上传到指挥员,由指挥员对其进行审批。现根据这一作战筹划流程,设计以下几种类型的微服务,以实现对作战筹划微服务系统的科学分解。

(1)利用微服务的服务注册中心功能,完成对微服务的科学注册。

(2)借助监控面板功能,对微服务进行可视化、自动化监控。

(3)利用系统入口,实现对系统运行状态的实时监控。

(4)根据作战需求,完成岁管理服务方案的科学制定。

(5)借助作战力量,提高管理服务水平,并绘制出敌方作战力量列表,以达到知彼解,百战不殆的目的。

3.3 微服务部署

3.3.1 容器集群框架

通过利用Docker 技术,可以采用容器化封装的方式,完成对微服务的科学封住,并提高微服务应用隔离效果。通常情况下,容器的启动速度远远超过了虚拟机的启动速度,同时,还有效地节约了资源,避免出现大量资源消耗问题。目前,作战筹划微服务系统主要以中标麒麟服务器应用为主,通过部署和搭建操作系统[9],可以实现对Docker 容器集群的快速搭建和应用,使得容器成为微服务可靠、稳定运行的重要载体。容器集群架构图如图3 所示。从图中可以看出,该集群架构在具体的搭建和设计中,主要采用了多种新型、先进的技术,通过利用存储工具,完成对服务器自动化注册,同时,还为Docker 容器集群运行提供了安全、良好的运行环境就,为提高网络覆盖范围,高效调度镜像管理和容器提供有力的保障。同时,在可视化工具的应用背景下,运维人员可以实时监控Docker容器集群,为有效地检测和维护该集群的运行状态,提高该集群的运行性能产生积极的影响。此外,通过利用具kubernetes 容器集群工具,可以实现对Docker 容器集群的自动化、智能化调度和管理,以达到有效提高该集群的弹性伸缩性能的目的。

3.3.2 容器化封装

Docker 镜像作为容器的重要组成部分,通过利用Dockerfile 文件,可以将微服务与其相关运行环境进行有效地封装,使其封装为一个Docker 镜像,并将该镜像存储于仓库中,便于其他人员的查看和调用。同时,为了保证容器化封装的科学性和合理性,还要重视对运行环境变量的科学设置,并借助容器启动入口,完成对Docker 镜像的科学搭建。

3.4 系统验证

系统验证主要体现在以下两个方面:

(1)异常自恢复功能验证。当微服务数量与设定值相一致时,一旦某个微服务容器组出现运行异常时,微服务控制器会在第一时间内自动启用另一个微服务容器组,使得微服务数量与设定值保持一致,由此可见,系统异常恢复功能稳定可靠。

(2)弹性伸缩性功能验证。当系统内部设置了HPA 服务时,一旦微服务容器所消耗的资源超过了已设定的阀值,系统会自动启用弹性伸缩功能,从而增加微服务容器数量,以满足资源使用需求。为了更好地验证系统弹性伸缩功能,相关人员要设置好微服务部署数量以及CPU 内存指标,然后,采用负载模拟的方式,对微服务容器组进行处理,结果发现:所有微服务容器组出现不断扩展现象,这说明系统具有较强的弹性伸缩功能。

4 结束语

综上所述,微服务架构凭借着自身高准确性、强灵活性等特征被广泛地应用于云计算系统、分布式应用系统中,并取得了良好的应用效果,而Docker 技术在信息系统的设计开发中发挥出重要作用,不仅实现了对应用系统的科学设计和部署,还实现了计算机资源的快速共享,提高了计算机资源的利用率,确保应用系统具有耦合度地、业务模块可复用性高等特征,为进一步提高应用系统的运行性能提供重要的技术支持。

猜你喜欢

容器集群运维
Different Containers不同的容器
难以置信的事情
海上小型无人机集群的反制装备需求与应对之策研究
运维技术研发决策中ITSS运维成熟度模型应用初探
一种无人机集群发射回收装置的控制系统设计
Python与Spark集群在收费数据分析中的应用
基于ITIL的运维管理创新实践浅析