金融行业的PaaS参考架构如下图所示,所有平台类软件服务都可以被放到PaaS里,容器服务本身既是PaaS的一类服务,也是其它PaaS服务所依赖的基础资源。

 

金融产品架构师 架构金融是什么意思_数据库

PaaS里的容器服务直接面对业务系统,允许业务应用以容器的方式开发和部署,容器服务本身也要依赖底层的IaaS提供基础的资源。中间件主要包括消息中间件、Java中间件,消息中间件可以以资源池的方式存在并提供服务,比如Kafka集群。Java中间件是Java程序依赖的运行时环境,可以直接打成容器镜像,以容器镜像的方式提供运行时环境。数据库服务包含传统的商用数据库(如Oracle、DB2)、开源数据库(MySQL)和新兴的分布式数据库。传统的数据库主要依赖IaaS提供基础环境、依赖自动化工具实现软件的快速安装配置。部分数据库产品(如MySQL)也可以考虑容器化,使用容器镜像部署。大数据服务本身都是集群化、池化的,只需要做好多租户鉴权和服务自助化即可。DevOps主要是打造开发、测试、部署流水线,将自动化和可视化贯穿整个流水线,提升开发、上线的效率和质量。服务治理主要是管理服务之间的调用关系、同时起到对服务间流量进行控制的作用。通过服务治理,可以清晰地看到服务之间的依赖关系、流量状况,并根据流量监控看到服务状况和质量,还可以在出现问题的时候及时发现导致问题的服务,并对服务做降级处理。

和IaaS一样,PaaS也需要和现有的运营支撑系统深度融合,同时引导相关系统和工具升级改造,使其更适配于PaaS环境。比如传统的业务监控主体都是一个个主机,监控代理程序都装在主机中,监控的维度也是以主机为维度,告警信息里也都要包含主机信息(如主机名和IP地址)。但是在容器环境里,容器的名字和IP地址是会随着容器漂移而变化的,这样监控的主体就不能是容器本身,而是应该从容器资源使用的角度来监控。对一个应用来说,容器化改造后就形成了多个微服务,每个微服务后面挂着一个或多个副本。对于应用管理员来说,它需要关心的监控指标包括各服务的副本状态、副本里容器的状态、服务的可用性、各容器的资源使用情况等。这些指标应该汇总到一起,以应用的维度对外呈现,并对接告警平台。