基于混合云架构的国家城市供水全过程监管平台
0 引言
近年来,城市饮用水安全面临的形势日益严峻,迫切需要加强对供水全流程的监管。但现有的管理手段和机制与供水安全保障要求严重不相适应,具体表现在:我国供水行业的产业集中度偏低,传统的管理手段难以对众多市场主体实现有效监管;供水安全监管涉及海量信息,传统的管理手段难以实现对相关信息的收集、甄别、评估及挖掘。数据库中的数据并没有得到科学的分析以及充分的挖掘,信息壁垒和数据孤岛现象突出。
1 国家、省、市三级城市供水全过程监管平台
在上述情况下,迫切需要能够基于国家、省、市不同层级供水监管需求,按照信息共享、业务协同、运行高效、总体安全的原则,通过混合云架构,以重点保障资源集约共享、业务协同和安全可用的需求为基础,实现国家、省、市三级城市供水全过程“智能感知、广泛互联、深度融合、业务协同、决策科学、服务主动”的要求,实现城市供水资源集约共享、业务协同和安全可用
(1)国家级平台定位。国家级平台主要包括3个方面:一是为国家供水主管部门开展水质数据上报、供水规范化检查、水质督察等监管业务提供技术支持,协助完成专项业务下达、过程管理、成果汇总与分析等工作;二是为供水行业发展提供支持,协助开展行业资源整合与共享、质控考核等工作;三是服务公众参与供水安全保障,支持全国城市水质信息公开情况查询。
(2)省级平台定位。省级平台主要为省级供水主管部门开展的水质数据上报、供水规范化检查、水质督察等专业业务提供技术支持,协助完成省级专项业务下达、过程管理、成果汇总与分析等工作,实现省级供水监管业务的信息化管理。
(3)市级平台定位。市级平台主要包括2个方面:一是为国家、省级开展供水监管专业业务提供业务数据支撑;二是支持城市供水管理,实现对城市供水水质的监测、评估和预警。
城市供水全过程监管平台采用集中部署与分布部署相结合的云构架,通过统一的用户体系、不同的权限设置,实现国家、省、市三级平台管理体系,国家、省、市三级信息资源互通互联,不同业务系统之间的互通互联;省级平台节点和市级平台节点均可根据自身实际需求,采用集中部署或分布模式二者之一。
独立部署的省级平台或市级平台和集中部署的国家级平台形成混合云架构,见图1。
独立部署的省级市级节点,是省级或市级供水主管部门利用自有或租用的基础设施自建的私有云,安全性更高,并且可自定义某些功能以满足特定业务需求。在混合云架构的城市供水全过程监管平台中,对最终用户来说,采用集中部署模式的优点是敏捷和灵活,在平台使用初期,很快把业务开展起来;而对于分布式部署来讲,所有的资源都在自己的管控之下,安全隐私保护和性能方面可以做得更好。
2 混合云实现的技术路径
混合云模式的构建,需要平台将各独立部署节点的本地数据(可视为私有云)与国家集中部署节点(可视为公有云)资源池高速连接,最终实现私有云环境与公有云环境资源池之间数据迁移和数据通信等功能,而实现这些功能的关键,在于云和云之间高稳定性的数据传输能力,也就是“云网融合”能力
在网络连通层面,目前,VPN和专线是比较通用的两种网络连接方式;在应用层面,要求平台在API接口、开发工具、操作界面等各方面都保持一致,形成统一的代码体系,便于规模化开展,形成规模效应。具体来说需要实现如下要求:
(1)要实现快速互联。公有云和私有云能够快速连接在一起,让数据在混合的环境里流转起来。
(2)要实现统一管理。在混合云框架中,要实现公有云和私有云的有效对接。不同环境、不同云架构里的应用可以统一管理,以保障业务连续性。
(3)要能按需配置。能够异构环境里完成业务系统的搭建、服务的部署等工作,并且能够自动化,业务应用将更容易地在多云环境中部署、运行、管理,乃至调度。混合云需要提供跨异构环境的应用部署、应用的发布、版本管理和管控。
省级或市级供水主管单位面临公有云和私有云之间二选一的问题,并非是成本的抉择,而是对统一架构和服务的考虑。公有云要求云平台具备无限扩展和自动运维的能力,私有云要求云平台能够最小规模软件化交付,当城市供水主管单位产生混合云的需求时,平台需要实现公有云和私有云之间的无缝连接,面向应用要交付统一的平台功能与运行环境,面向运维人员要交付统一的使用体验。
3 城市供水全过程监管平台混合云架构
传统非云环境下,应用系统一般采用多层架构,主要包括前端会话层、中间业务逻辑层(可细化为多层)、后端数据存储层。采用混合云架构的平台,应增加如下考虑:(1)位置独立:应用架构适应动态变更、灵活扩展的云环境,并包括无状态组件。一般需要将前端会话层设计为完全无状态化,使用户业务请求的流向和处理对用户完全透明。(2)可扩展:应用可按需动态调整资源,并在云间迁移。(3)故障:应用架构对突发故障的应用策略和机制,需实现业务的灾难恢复。(4)其他:可管理性、通过重载消息队列的方式实现应用状态的重新同步,避免应用状态保存在内存中,用共享的数据代替等。
基于上述考虑,城市供水全过程监管平台采用微服务架构进行架构支撑(见图2):(1)在Web接入层,使用Nginx实现负载均衡。(2)在应用层,将应用功能改造为微服务,通过云平台实现微服务的治理,包括服务发布、服务监控和服务访问路由。(3)在数据存储方面,将数据库做成分布式数据库,将关联不复杂的数据向非结构化数据、内存数据库(Redis)做迁移,采用MongoDB做城市供水基础信息的存储管理,实现模块化分布式改造,在此之上,做分布式数据库的数据路由和集中访问管理。
国家城市供水全过程监管平台采用统一的云管理平台实现多云部署的资源管理、运营管理、配置管理、监控管理,并实现不同节点之间的数据同步
(1)资源管理。实现私有云和公有云相关资源的统一视图和资源监控功能,并实现混合云资源的部署调度。资源管理系统负责管理分布式部署的省级或市级节点的硬件资源,主要包括虚机管理、存储管理、网络管理、资源与应用关联管理。虚机管理记录被配置的节点占用的虚拟化服务器的情况;存储管理记录被配置节点的存储配置情况;网络管理记录被配置节点的网络配置情况;资源与应用关联管理记录应急资源与应用(各个功能模块的微服务)关联的关系。
(2)运营管理。主要包括服务目录管理、发布管理和用户管理:(1)城市供水全过程监管平台是基于微服务架构进行搭建的,主体功能都被打包为微服务,服务目录将打包为微服务的功能以目录形式进行发布,主要包括通知公告、水质上报、水质督查、规范化考核、实时监控、监测预警、资源信息、城市供水基础信息;(2)发布管理:发布管理可以将微服务进行跨云发布、灰度发布,通过web实时控制台实现云发布。发布系统可以实时抓取应用启动日志,通过web控制台显示应用发布的步骤及日志;(3)用户管理:包括统一的用户中心、权限控制和自动化运维。其中,统一用户中心可以对接第三方用户系统;权限控制包括控制系统权限、定制系统菜单、分配用户权限;通过运维策略,实现自动化运维。
(3)配置管理。各个分布式部署的省级或市级节点,通过配置中心实现配置文件检查更新服务、配置文件下载服务;在国家级平台的中心节点,实现配置维护、全局变量维护和日志查询的功能。支持在线模式和离线模式的双重配置管理,在线模式中引入轻量级客户端,可采用restful+json轻量级接口通信。客户端无法连接服务器自动切换离线模式;支持配置回滚和配置灰度发布。
(4)监控管理。实现对各个分布式节点的业务监控、数据库监控、日志监控、基础组件监控。云监控系统实现跨云、多项目多环境同时监控。(1)业务监控:实现对通知公告数量、水质日报的上报数量、在线监测点的状态等业务进行监控;(2)数据库监控:监控慢SQL执行状况、监控IOPS、扫描自增字段;(3)日志监控:监控URL请求量、请求大小、请求耗时、应用系统异常堆栈日志;(4)基础组件监控:监控缓存、MQ运行状态。
(5)数据同步。由于城市供水全过程监管平台中,在水质上报、水质督查等模块中存在国家级节点、省级节点、市级节点之间的数据交互问题,因此通过数据库管理模块和数据交互服务模块实现混合云架构下的数据同步问题。(1)数据库管理:通过云数据库管理平台,提供多云、多环境统一管理,通过数据库网关可实现各种类型、多种环境下数据库的无侵入的性能、状态、拓扑等信息采集、计算和分析;(2)数据交互服务:实现多种数据源之间数据交互的数据流服务,通过实时数据订阅及数据实时同步等多种数据传输能力实现数据交互。
4 结语
由于国家、省、市不同层级、不同区域的供水主管单位在供水监管的业务上既有同质的业务需求,也依据层级职责和各地的情况不同有个性化的要求,在这样一个背景下,通过基于混合云架构的国家城市供水全过程监管平台满足上述的业务场景。通过具有资源管理、运营管理、配置管理、监控管理和数据同步管理能力的统一多云管理平台,实现公有云(国家集中部署平台)和私有云(分布式部署平台)的合作和各自平台的延伸管理,从而实现不同云之间的互通。混合云技术仍在飞速发展,其技术架构还有待进一步成熟完善,其在城市供水监管领域的进一步落地部署、实施和实现城市供水监管的价值管理仍有待进一步研究。
作者图片

参考文献
[1]牛晗,韩超,张志果.城市供水全过程监管平台整合及业务化平台顶层设计概要[J].给水排水,2018,54(11):108-112.