您的位置:首页 > 其它

大云制造 | 大云PaaS平台v3.1发布 - 功能全面升级,与客户共创价值

2021-02-02 00:04 639 查看

友情提示:全文4000多文字,预计阅读时间12分钟

大云PaaS平台产品简介

大云PaaS产品(BC-PaaS)是基于Kubernetes、Docker等开源云计算技术开发的一款集应用开发、测试、容器编排和自动化运维为一体的产品。主要功能有:应用编排、K8S集群管理、镜像服务、中间件管理、CICD、运维管理等,提供MySQL、MQ、Redis、MongoDB、BES、Tomcat、Nginx以及Hadoop等中间件服务和大数据服务;支持SpringCloud、Dubbo、Istio微服务框架。自商用以来,在北京、广东、重庆、山东、湖南、内蒙、江西等多个省公司广泛应用。


图(1)BC-PaaS 功能架构图


在最新发布的BC-PaaS v3.1版本中,发布了很多新功能,如全新的应用模型、应用红黑榜、在线制作镜像、镜像层分析、压测工具、应用跨集群容灾双活、集群一键部署、一键自检,以及6款中间件。


表(1) BC-PaaS v3.1新增功能


下面就让我们从应用开发者和运维人员的角度来了解一下这些功能吧。


一、

应用开发者角度

大家好~我是开发人员小S~接下来由我来介绍一下BC-PaaS平台的使用日常~

 

我今天的工作内容是开发一个Java应用并部署到PaaS平台上。开发过程中,我需要使用到Redis服务,这个时候我就可以从BC-PaaS平台上的中间件市场中创建一个Redis服务来,不用自己搭建中间件环境并进行维护,节省了我们开发的时间和成本,非常方便。


图(1.1)BC-Redis服务


注:用户在运行应用时,往往需要用到各种中间件,例如MySQL、MQ、Redis。BC-PaaS v3.1进一步丰富了中间件市场,新增了BC-Redis、BC-MQ、MongoDB、宝兰德BES、Tomcat、Nginx等。用户可以方便的创建并使用中间件服务,有效解决了用户搭建中间件环境耗时、维护成本高等问题。BC-PaaS 平台深度集成了BC-Redis和BC-MQ产品,提供和移动云完全一致的用户体验。除此以外,BC-Redis在PaaS平台上还为用户提供独立的监控和告警功能,进一步提升产品的运维能力,优化用户的使用体验。


开发工作完成之后,我可以通过两种方式将我的Java应用部署到BC-PaaS平台上。


1、通过CICD的流水线来构建我的镜像,并部署到BC-PaaS平台。值得一提的是平台支持将应用部署到容器、物理机或者虚拟机中,很好的解决我们开发人员环境不同的底层资源适配问题。除此之外,流水线还支持代码的编译、单元测试、安全扫描等工作,非常方便~


图(1.2)CICD典型工作流


2、通过镜像服务的创建镜像功能,可以从我本地的源码包、二进制包构建出我的镜像,并且提供镜像层分析功能,便于我们开发人员后续对镜像进行优化。


注:从应用程序代码到生成Docker镜像,再到上传镜像,是一个比较繁琐的过程。程序员通常要做编译打包、编写dockerfile、生成镜像、手动上传。其中,编写dockerfile也是一个技术活,没有相当的经验,很难做出一个满足Best Practice的镜像,例如镜像size较大、分层不合理、有安全漏洞等。因此,我们开发了“在线制作镜像”功能。用户只需提供程序包或二进制包,在平台上选择基础镜像,由平台引导用户填写docker镜像需要的参数,生成dockerfile,最终生成docker镜像,并对其做镜像层扫描,最后存放在镜像仓库中。


图(1.3)在线制作镜像


镜像层分析功能为用户展示每层的docker镜像内容,指出每个镜像层中发生的变化,估计“镜像效率”,用户可根据分析结果优化镜像,例如减少镜像大小。对于应用方直接上传的镜像,平台管理员可以方便的查看这些镜像是否占用了太多空间。

图(1.4)镜像层分析


今天我选择第二种方式来进行我的应用部署。


接下来,在BC-PaaS平台的编排-应用-创建应用,选择我构建出来的镜像,将我的应用部署到平台上。平台抽象出了应用-微服务-工作负载这样的应用模型,为我创建、管理微服务和应用提供了便利。


注:全新的应用模型:随着微服务理念的推广与实践,单个应用被拆分成若干个更易于开发和维护的微服务。作为容器、微服务编排事实标准的Kubernetes,提供了pod、deployment、statefulset、service、pvc、configmap、ingress等一系列概念来满足微服务开发、运行的要求。这么多抽象而复杂的概念给应用开发者提出了挑战。因此,BC-PaaS产品在K8S各种资源对象的基础上,提出了更易于理解、使用的应用模型,更好的为用户提供应用的全生命周期管理。


图(1.5)应用-微服务-工作负载逻辑关系图


新模型的基本概念如下:

  • 应用

    应用可以理解为提供完整业务逻辑的微服务组。一个应用中可以包含多个微服务。多个微服务编排后可对外提供服务。

  • 微服务

    微服务是一个对外提供单一服务的模块。通常只包含一个子功能。一个微服务可以由一个或多个工作负载(deployment)、配置集(configmap)、存储卷(pvc)等组成。用户在创建微服务时,可以把这些资源一起创建出来。

  • 工作负载

    工作负载是真正承载业务的实体,是一组Pod实例的集合,对应于K8S的deployment、statefulset等概念。通过这样的分层、组合,用户可以在BC-PaaS平台上方便的创建、管理微服务和应用。

由于这个应用很重要,我在创建应用的时候还开启了平台提供的容灾双活功能,可以将应用部署到两个集群中,以保障一个集群故障时业务的可靠性。


图(1.6)双活应用


注:根据对系统的保护程度,容灾系统可分为数据级别与业务级别容灾。数据层容灾是业务层容灾的基础,业务层容灾是数据层容灾的终极目标。容灾建设应以数据容灾为根本,以业务连续性为目标,最终实现灾难发生时业务的平稳过渡。

BC-PaaS产品支持管理平台的容灾和无状态应用的双活,适用于为核心业务或需要高可靠保障的业务。即使有一个集群出现故障,双活集群会无缝接收用户业务流,保障业务不中断。为实现双活容灾的功能,将建设主数据中心及双活数据中心,每个数据中心将包括1套管理集群、N个业务集群、N个镜像仓库等。每个数据中心的业务集群与镜像仓库都必须确保为1对1的映射关系。

图(1.7)双活示意图


应用部署完成,在BC-PaaS平台能够运行使用,我的开发工作就告一段落了~

而其实我的应用的“生命”才刚刚开始。PaaS平台为了让我能了解应用运行情况,还提供了应用监控、告警管理和Skywalking等一系列丰富的运维管理功能。

首先我可以在应用模块查看我的应用监控。除了通用的应用监控指标外,平台还提供了丰富的Java应用监控指标,包括Jvm堆内存、Jvm线程数等指标。其次,告警中心里,我可以针对我的Java应用创建告警规则,并且可以通过邮件和微信的方式接收平台的告警信息,使我能够及时了解应用的告警情况。


注:邮件、微信告警:BC-PaaS平台的告警模块支持用户针对集群、节点、应用等设置自定义告警规则,若满足告警规则,会触发告警发送,用户可通过平台界面设置邮件和微信两种告警通知方式,方便用户及时接收到平台的告警信息,并采取相应措施。


图(1.8)邮件和微信告警


二、

运维人员角度

大家好,我是负责运维的老A。下面由我给大家介绍BC-PaaS平台给咱运维管理人员带来的切实便利。

首先,我登陆BC-PaaS产品平台,会在概览页了解到当前项目下的CPU、内存资源使用量、应用/微服务/容器的数量和运行情况,以及告警和操作日志等信息,对项目的基本情况一目了然。


图(2.1)BC-PaaS概览


今天我的工作之一是要在PaaS平台上部署一个新集群。工作很简单,只要把机器信息批量导入平台,做好节点规划,就可以一键部署啦。


注:BC-PaaS平台支持集群可视化一键部署,无需再自行搭建Docker和Kubernetes,真正实现开箱即用。同时,针对物理机、虚拟机资源均可部署BC-PaaS容器集群,具有通用的是适配性。


图(2.2)集群部署过程


看,部署过程也是一目了然哦,每一步都可以看到实时进度,出错了可以单步继续。


图(2.3)集群部署详情


部署请看这里哦:


在等待部署结果的过程中,我来给系统做个体检吧,看看今天的集群够不够健康~

在PaaS平台的集群管理中,有个“集群巡检”功能,可以选择要体检的项目,比如节点的网络情况、负载情况、平台组件运行状态;也可以选择做一系列的业务拨测,比如创建应用、创建镜像、创建负载均衡器、通过负载均衡器访问应用等。同时,还可以配置定时巡检策略,比如每天0:00做一个巡检,还能保存巡检报告。


注:巡检生产环境,是运维人员每日的例行功课。通常需要编写一大堆脚本,非常繁琐。BC-PaaS平台推出的健康巡检功能,可以自动化的完成k8s节点、平台组件、平台业务的检查。


图(2.4)健康检查


除了日常巡检,我还会关注下集群的资源利用情况,看看哪些应用的资源不够了,或者利用率太低。这些情况可以在BC-PaaS平台的概览页或者监控页看到。特别是概览页上的应用资源利用率红黑榜,可以清楚地看到CPU和内存的排行榜:

图(2.5)应用红黑榜


注:用户往往也关心哪些应用的资源使用率比较低,经常会做一些数据统计。对此,BC-PaaS推出了应用、微服务的资源使用率红黑榜功能。用户可以直观的查看应用、微服务的CPU、内存资源使用率情况的排行,方便用户进行更合理的资源分配。


大家知道我们运维人员最头痛的事是什么吗?那就是生产环境出了性能问题又找不到问题原因了~~性能分析是高级技能,一般人还真不会。所以啊,通常情况下,应用上线之前都要求做压力测试。只有满足性能指标了,才允许上线。BC-PaaS v3.1上推出了压测工具,可以对应用做压测,并提供了分析功能。使用起来主要分为两步:


1、构建压测场景,设定场景名、压测时长、最大并发数以及串联链路等相关配置信息。然后开始压测。


注:压测服务可以模拟现网用户的高流量并发、突发等不同应用场景,根据用户的性能测试规模按需自定义创建压测场景,支持有序串行和并行编排压测API,提供参数化(如思考时间、集合点和条件跳转)等高级配置,全方位便捷自定义HTTP请求,最大程度地还原服务器压力承受情况。

图(2.6)创建压测场景


2、完成后,可查看压测报告,进而进行应用性能分析


注:为用户提供专业的性能测试报告,包括起始/最大并发量、API总请求数、平均TPS、请求成功率、平均响应时间等多维度统计。压测结果也为评估应用所需资源提供了依据。

图(2.7)压测报告


三、

总结

作为云能力中心自主研发的云计算PaaS层产品,BC-PaaS v3.1版本从客户实际需求出发,提供了大量功能,欢迎大家使用并提出宝贵意见。我们也将持续更新,为用户提供功能更丰富、更全面、更好用的产品!


-End:)


往期精选

1、大云制造 | 移动云E-RocketMQ正式发布上线

2、【大云制造】为云而生 - 大云BEK内核

3、【大云制造】公有云解决方案4.0(云网络篇)——云上组网,互联互通


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐