范文帮毕业论文内容页

医院行政系统容器化部署与监控方案

2021-07-14 13:15:01毕业论文

摘要:医院行政系统繁多复杂,在部署与运维时常存在硬件资源、环境兼容等问题。基于上述问题,本文提出基于Docker容器化的子系统部署方案与监控方案,旨在便捷、快速、准确地部署与运维,同时可实时监控容器运行情况。

关键词:Docker;监控;医院行政系统;容器化

1引言

医院行政系统主要为医院工作人员提高工作效率,实现医院行政工作的流程化、规范化与信息化。其主要由OA、医务管理系统、护理管理系统、后勤管理系统等子系统组成。由于子系统繁多复杂,使得系统上线及运维时需要耗费较多精力、时间进行部署应用,并解决部署过程中遇到的各种硬件资源、环境兼容等问题。因此,本文提出医院行政系统容器化部署方案,并根据该部署方案提出相应的容器监控方案,旨在便捷、快速、准确地部署与维护应用,同时可实时监控容器运行情况。

2相关概念与技术

2.1Docker容器化技术

当一台物理机部署并运行的应用服务越多,应用服务之间的依赖、文件分布等组成复杂凌乱的关系。长期如此,会使得这台物理机难以管理。容器化的部署方式出现,可以较好地解决这些问题。Docker技术可以看成一个个装着应用服务程序的抽屉,支持开发者将应用程序以及相应的依赖包打包到一个可移植的轻量级镜像中,做到与其它应用的资源、进程、依赖等内容相互隔离、互不影响[1]。无论是传统的虚拟化技术还是Docker技术,都可提高对服务器硬件资源的利用率,屏蔽服务器硬件资源差异。相比之下,Docker具有更轻量、更快速的特点,更适合于高性能、超大规模的宿主机部署、搭建隔离的运行环境、测试环境[2]。因此,本文采用Docker容器化技术进行系统的部署设计。

2.2容器化监控技术

目前主流的容器化监控方案是利用cAdvisor、Grafana、Prometheus这三款开源组件。cAdvisor是Google公司开发的便于用户了解运行中容器的资源使用情况和性能特征的开源工具,以守护进程的方式收集、聚合、处理、导出运行中的容器信息[3]。Grafana是可视化、开源的度量分析工具,可将采集的数据可视化展示,具有展示方式灵活多样、数据源配置丰富等特点[4]。Prometheus是开源的系统服务监视系统与时间序列数据库,具有易运维、高效存储策略、多维数据模型等特点[5]。这三款开源组件所组成的监控方案不仅可以监控WEB应用服务器资源使用情况、数据库应用服务器资源使用情况,还可以监控Kubernetes、Docker等使用情况[6]。因此,本文将利用这三款开源组件实现容器的资源与性能监控。

3医院行政系统部署方案

针对目前医院行政系统的现有应用、现有硬件资源,结合系统数量与实际部署服务器数量存在多对一的现状及应用上线部署或更新运维时存在的问题,基于上述的概念与技术介绍,利用Docker构建医院行政系统部署架构,如图1所示。通过该容器化部署架构,可以看出该架构分成三部分。基础硬件部分主要由主机、存储、网络等部分构成,是容器化部署方案的硬件构成,支持Docker运行的必需物理资源。容器服务部分主要由Docker镜像、容器管理平台等内容构成。该部分主要是利用基础硬件资源为应用层提供服务。应用层主要由医院行政信息系统构成,如移动办公系统服务、OA、医务管理系统服务、护理管理系统服务等系统及其相关的数据库。同时,它还包括反向代理服务、缓存服务器等通用服务系统。当用户进行系统访问时,先经过Nginx容器进行负载均衡并反向代理至相应的系统服务。正常情况下,由主数据库容器以及主缓存服务容器提供服务。当主数据库或主缓存服务异常时,由备数据库容器或备缓存服务容器提供服务。当发现主数据库容器或主缓存服务容器异常时,可通过容器镜像迅速拉取并重建容器,并达到最终快速启动主服务的目的。

4容器部署监控方案

医院行政系统容器化部署后,容器的运行状态、资源使用情况等实时运行情况仍需得到监控。基于上述的概念与技术介绍,利用cAdvisor、Prometheus、Grafana三者结合实现容器化的运维监控方案。在监控服务器与被监控服务器上搭建cAdvisor、Prometheus、Grafana三者运行时所需要的环境与组件。然后,利用cAdvisor进行容器数据采集,Prometheus收集数据,同时作为数据源为Grafana提供数据资源,形成如图2所示的容器运行情况监控UI,实现容器实时运行情况的监控。

5结论

本文针对医院行政系统传统应用部署方式中存在的问题,提出医院行政系统容器化部署与监控方案。相比传统物理机或Vmware虚拟机部署方案,该方案不仅可以使应用安装部署变得便捷、简单、快速,实现部署环境隔离,而且还可以动态地对资源进行扩展与收缩。使用Grafana、Prometheus与cAdvisor相结合的容器监控方案,可直观、清晰、准确地了解容器的运行状态与资源使用情况,较好地辅助系统管理员进行系统管理与运维。

参考文献

[1]LiuX,Zhi-YongHU.DesignandimplementationofWebclusterbasedonDockercontainer.ElectronicDesignEngineering,2016(8):117-119

[2]钟云杰.基于B/S架构和容器化技术的智能家居控制系统研究[硕士学位论文].青岛大学,青岛,2018

[3]仇臣.Docker容器的性能监控和日志服务的设计与实现[硕士学位论文].浙江大学,杭州,2016

[4]Grafana官网.

[5]Prometheus官网.

[6]马永,吴跃,何李囡,程航.基于Prometheus的基础软硬件全链路监控设计和实现.电子技术与软件工程,2019(24):39-40

作者:陈锦莹 陈洪雷 单位:福建省妇产医院福建省妇幼保健院

猜你喜欢