基于Docker容器的智能航保云平台架构设计

2020-12-23 06:53张璞
航海 2020年6期
关键词:云平台

摘要:智能航保是现代化航海的重要内容和必然趋势,航海保障部门也一直致力于智能航保的研究和建设工作。本文介绍了智能航保的发展背景,分析了利用传统开发模式和云平台部署智能航保会存在的问题,引入Docker容器技术,提出基于Docker容器技术的智能航保云平台的架构设计。

关键词:Docker;智能航保;云平台

0  引 言

自从国际海事组织(IMO)提出e-航海发展战略以来,智能化理论和技术逐渐渗透到航海领域。根据交通运输部等七部门联合发表的《智能航运发展指导意见》,作为五大要素之一的智能航保也需要深入研究智能航运下的用户需求,构建完善的智能航保体系,而智能航保的建设离不开信息大数据的支持和服务,航保云平台是智能航保建设的主战场[1]。由于智能航保建设的长期性,云平台建设可采用重点先行建设、其余分步建设、后期迭代升级的原则,但传统的开发模式和云平台存在如部署不方便、配置复杂、升级效率低、资源利用率低、运行能力差等问题,因此,引入基于Docker容器技术的智能航保云平台架构设计。Docker容器是开源的虚拟化技术,具有部署灵活、配置简化、迭代效率高、性能损耗低、集成度高等优点,适用于智能航保的长期性建设。

1 智能航保发展背景

2006年国际海事组织(IMO)首次提出e-航海的概念,揭开了数字化航海时代的序幕,E航海迅速发展成为各海洋国家的战略目标。在国际海事组织(IMO)、国际航标协会(IALA)、国际海道测量组织(IHO)和国际电信联盟(ITU)的共同推动下,航海逐渐走向信息化、网络化和自动化,利用先进技术实现船岸间智能导助航信息服务成为e-航海的核心目标。随着e-航海战略的不断深入和科学技术的发展,陆续衍生出智慧海事、智慧港口、智能船舶等概念。2019年,交通运输部、中央网信办、国家发展改革委、教育部、科技部、工业和信息化部、财政部联合发布《智能航运发展指导意见》,为智能航运未来30年发展指明方向。智能航运是传统航运要素与高新技术深度融合形成的现代航运新业态,包括智能船舶、智能港口、智能航保、智能航运服务和智能航运监管五方面基本要素。“智能航保”是智能化航行支撑服务保障系统的简称,作为智能航运的重要组成部分,智能航保旨在通过智能化手段进一步提升航海保障水平,在整个智能航运体系中起到重要支撑作用。智能航保是利用智能传感器、物联网、互联网、大数据、云计算、人工智能等技术,使船舶导航、通信传输、数据处理等系统和信息服务平台充分智能化,既能为船舶自主航行提供技术支撑、服务和保障,也能对获取的信息进行整合、交换和分析,为智能监管提供辅助支持,为打造平台化航运服务提供手段。

2  航保业务平台建设现状及问题

目前,航保多数应用系统采用浏览器/服务器的结构模式,不同的业务运行在不同的物理服务器之上,这种架构模式存在诸多缺点:(1)资源浪费。航保的大部分应用与业务系统消耗的资源很少,而一台服务器上只运行一种业务造成了资源的浪费,利用率不高。(2)成本高。运行一种业务,相应地就要准备物理服务器,然后安装适用的操作系统,安装各种系统环境的依赖,再安装业务程序,部署过程缓慢,成本也很高。(3)更新升级困难。服务器若要更新升级,运行在其上的业务就需要迁移并重新部署,并且更新升级后的服务器未必有效支持业务运行。(4)扩展性低。对服务器进行资源扩展也是非常麻烦,同样需要重新部署。因此,最近几年,航保也逐渐引入虚拟化技术来解决传统物理服务器应用遇到的问题。虚拟化技术是通过运行在物理服务器与操作系统之间的中间层,进行资源的虚拟化,加载所有客户端的操作系统,实现了在一台服务器上同时运行多个操作系统。利用虚拟化技术,我们可以很容易的进行资源扩展而无须考虑物理服务器,但是这种虚拟化技术仍具有局限性:(1)部署困难。业务的运行需要依靠代码、运行环境、配置等,增加新的业务仍需要部署新的应用环境,无法将应用及其依赖打包作为整体进行管理。(2)资源有效利用率低。每一台虚拟机都具有完整的操作系统,在不同的虚拟机上部署不同的应用,但虚拟机开销很高,操作系统本身消耗资源很多,造成资源的有效利用率很低。(3)负载均衡和运行监控能力差。在实际运行中,不同的应用服务对硬件和内存的需求是变化的,因此需要动态调整资源分配;并且运行過程需要监控机制,需要有灵活的容错备份和异常处理机制。

智能航保的建设要重点考虑系统的扩展性、开放性,保证各项服务、业务之间松耦合,避免建设过程中耦合过于严重,智能航保云平台是建设的核心,平台上需要不断加入新的服务或者应用来丰富智能航保的功能,需要后期不断的维护和更新,良好的扩展性可以保障新集成的服务不会影响整体架构和正常运行。

3  Docker容器

3.1  Docker容器简介

Docker是一个开源的应用容器引擎,提供轻量化的虚拟化解决方案,被称为软件行业的集装箱技术,Docker技术可以让开发者将应用及其依赖一起打包放到可移植的容器中,包括开发环境和运行应用的环境变量、组件等,这个容器就是完整的交付环境,实现“一次封装,到处运行”[2]。与当前应用广泛的传统的虚拟化技术相比,Docker容器技术具有突出的性能:(1)灵活性高。伸缩性强,扩展性强,扩展或更新应用时只需要加载相应的容器,最大化地利用现有资源。(2)集成度高。应用及其依赖以类似集装箱的形式打包交付,不受宿主操作系统版本及环境变量的影响,应用系统可以方便地进行迁移和扩展。(3)启动快,性能高。管理操作,如启动、停止、重启等操作,可以实现秒级甚至毫秒级,应用系统运行时的性能得到大幅提升。(4)资源利用率高。与传统的虚拟技术相比,Docker不包含操作系统内核,更加轻量化,降低了虚拟机的性能损耗[3]。Docker技术作为一种充分挖掘计算平台能力的轻量化虚拟技术,近年来得到许多大企业的支持和应用,网易、华为、腾讯等大型企业都已经大规模地部署Docker。

3.2 Docker的系统架构(见图1)

传统的虚拟化技术与Docker容器技术的架构对比如图1所示[4]。Docker容器技术与传统的物理服务器及虚拟化工作方式不同,虚拟化技术是在主机上制备操作系统,在操作系统上再安装并部署相应的配置和业务应用,而Docker更为简洁化、轻量化,它没有物理主机的模拟,通过各实例共享主机的操作系统,在Docker容器中是不包含操作系统的,因此,将应用运行在Docker容器上,配置可以简化,将运行环境、代码及相关配置文件打包到容器里,实现了开发环境、业务环境与本地环境的统一,降低了开发部署的难度,且一台机器上可以运行多个容器,共享操作系统内核,而每个容器中的应用都是孤立进程。Docker的组成包含三个主要部分:(1)镜像。镜像可看作是容器的源代码,提供容器运行时所用的程序、库、配置参数等。(2)容器。容器是Docker的运行单元,通过镜像启动应用或系统,是镜像运行时的实体。(3)仓库。仓库是存放镜像的地方,保存用户构建的镜像,有公有和私有仓库两种。

Docker虽然具有众多优势,但是在实际运维中存在部署和管理不能自动化、监控能力差、无法自动伸缩扩展等问题,因此,在平台架构中需引入相应的容器集群调度管理系统。本架构引入Kubernetes,提供跨主机集群的自动部署、扩展和管理容器的功能,实现云平台应用组件的自动化管理和容器集群的负载均衡、运行监测和管理调度。

4 基于Docker容器的智能航保云平台架构

利用Docker容器技术建设航保云平台,可搭建一致性强、便于使用的开发运行环境。基于Docker容器的云平台架构灵活便捷,能与开发环境无缝集成;扩展性强,能快速扩展应用和环境;可移植性强,无差别地移植到测试和应用环境中,可有效实现在e-航海背景下全球统一的、标准化的智能航保服务。

基于Docker容器的智能航保云平台总体架构图如图2所示,自下而上包括物理层、数据层、容器层、支撑层和应用层。 物理层包括所有的硬件设备,如服务器、网络设备、存储设备等,为平台的运行提供物理环境支撑;数据层负责提供数据资源,是航保云平台的大数据中心,数据层的数据信息包括海上空间信息、航标、AIS,重要水域的航行规则、管理信息、服务资源等船舶进出港常用信息,也可与外部涉海机构建立信息共享机制,获取港口调度、海况信息、灾害天气、环保信息等外部数据,建立互联互通的数据共享平台;容器层实现了基于Docker容器和Kubernetes的容器管理,提供自动化的容器构建与调度、负载均衡、运行监控等服务,完成轻量

级的应用系统部署和运维;支撑层利用航标数据汇聚、数据融合、数据管理、信息服务、运维管理、平台门户等构建云平台软件体系,为应用层提供数据管理能力、接口服务能力以及信息分析能力;应用层是向用户提供各种应用服务的支持,如航海保障综合服务、港口信息服务、海上安全信息服务、海图服务、通航环境信息服务、高精度导航定位服务等,利用支撑层的数据服务和接口服务,提供不同领域的应用方式[5]

5  总 结

智能航保是e-航海经过多年发展之后呈现的新形态,是未来的发展方向。智能航保通过先进技术和智能化手段,開发一批具有示范意义的航海保障数字服务和应用平台,全面促进中国航海保障服务能力进一步提升。本文介绍了智能航保的发展背景,结合传统开发模式和云平台部署智能航保会存在的问题,引入Docker容器技术,提出基于Docker容器技术的智能航保云平台的架构设计,可实现在E航海背景下全球统一的、标准化的智能航保服务。

参考文献

[1] 交通运输部等.智能航运发展指导意见[A].2019

[2] 金琦.初识DOCKER容器技术[J].中国信息技术教育,2019(Z3):105-109.

[3] 刘庆芳,赵李东,庞超.基于Docker容器的中国邮政网络学院架构研究[J].邮政研究,2018,34(06):42-44.

[4] 管文超. 基于Docker的智慧消防云平台构建及其典型应用的研究[D].华东理工大学,2018.

[5] 沈凤娇,曾珍,程蕾.基于Docker容器的智慧城市时空信息云平台架构设计研究[J].城市勘测,2020(02):31-35.

作者简介

张璞,女,硕士研究生,工程师,从事无线电航标管理,(E-mail)dlhbczp@163.com, 15042482671

猜你喜欢
云平台
“云平台+大数据”在高校档案管理中的应用研究
企业云平台建设研究