当前位置:首页 >  科技 >  IT业界 >  正文

基于KubeSphere容器平台,图菱科技实现图菱科技业务系统容器化

 2022-07-08 16:21  来源: 互联网   我来投稿 撤稿纠错

  【推荐】海外独服/站群服务器/高防

作为一家面向互联网在线模版网站的素材资源供应商,图菱科技为客户提供模版输出以及系统化解决方案。帮助客户输出规范化的设计产品。

迁移平台的云原生之路

早在 2020 年之前,图菱科技 IT 团队规模比较小,开发还要兼职运维测试。发展初期,基本上由业务驱动开发。基于资源方面因素,所以在系统架构上首先是满足功能使用,快速开发推出产品,系统架构建设也是基于某大厂云一步步从单体到多模块,再到微服务做演进。

图菱科技初期业务方向是印刷类商品的私人订制,满足个性化的输出的移动端应用,配套生产的供应的订单管理系统,同时涉及到旅行行业,为旅行社提供定制线路设计的 SaaS 系统,模板海报的输出系统,以及图库等旅行社所需要的素材资源。

业务系统服务 增多,亟需开发流程优化

经过几年发展,业务系统服务开始增多,基础技术架构难以应付业务的快速变化,研发团队也亟需合理的开发流程来支持后续管理。

通过将主要面临困难进行了梳理,大致有以下几点:

第一,开发环境和生产环境不一致:在项目迭代过程中,有时出现开发环境和生产环境配置不一致的问题,导致生产系统和业务问题不一致。

第二,无统一发布管理系统:初期由于各方面管理粗犷,缺乏自动化构建系统,版本功能完后,开发需要专门手动编译,打包上线发布,过程复杂还不好管理。

第三,资源协调:虽然业务系统已经采用 SpringCloud 整体微服务化,但各个服务资源的分配却无法协调。印刷服务在生成印刷文件时需要占用系统资源比普通业务系统高几倍,但又不是实时需要。之前都是专门用一台机器来做,但其实这种不太灵活。所以亟需能自动扩缩容的方案。

开启容器化改造之旅,选中 K ube Sp here

基于上述的痛点,结合自身业务系统,图菱科技准备进行容器化改造。

最开始接触 Kubernetes 时了解到官方提供的管理平台,通过调研和尝试了下后发现它只是管理 Kubernetes 容器的基本信息,并不是简单将业务放上去就能开箱即用,而涉及业务上的日志平台,监控系统,链路最终等基础运维体系还需自己去引入管理。

最后尝试使用一些集成的平台解决方案,其中有青云科技(qingcloud.com,股票代码:688316)推出的开源容器平台KubeSphere,也有Rancher。

经过体验后决定采用 KubeSphere,主要基于以下几点:

第一,Kubernetes 这块全新的知识体系要掌握达到生产落地学习时间成本较高,对于我们应用性企业需要的是能简单上手的产品。

第二,Rancher 侧重于运维管理,学习成本相对较高;KubeSphere 偏向业务应用为中心,更符合图菱科技情况。

第三,Rancher 需要自己部署 Jenkins 等插件;KubeSphere 在一些组件整合上做的较好,比如 DevOps 能做到开箱即用。而发布部署是图菱科技目前最迫切需要的。

最后,KubeSphere 是由国内青云科技推出的产品,使用更符合国人习惯,而且完全开源。

具体改造实践落地

针对已有硬件资源管理,目前图菱科技整个业务基础设施构建在某大厂云上,包括 ECS、数据库和 OSS 存储等。

6 台 ECS 分布如下:ECS-1 ~ ECS-4:业务服务。ECS-5:测试机器。ECS-6:图菱科技内部项目管理,包括 Bug 管理,Git 等。

主要实施步骤如下几步:

首先,搭建镜像仓库在 ECS-6 上,搭建 Harbor 仓库。提供图菱科技业务容器应用的私有镜像管理工具。

其次,构建业务系统镜像 对每个业务服务添加相应配置文件 Dockerfile, 用于平台流水线发布时构建镜像。

第三,准备系统环境。系统环境主要是 Kubernetes 搭建,这里主要考虑存储和网络选型。

存储层面,最开始考虑使用 Ceph,搭建 demo 使用后发现,如果和 Kubernetes 搭建于同一集群环境,对资源还是有一定消耗。基于目前业务设计(基本上没有有状态服务需要涉及)、以及当前业务体量,最终采用相对轻量的 NFS 共享盘方式。

网络层面,Kubernetes 主流的网络插件目前主要有 Calico 和 Flannel,我们参考社区的经验,最终选择了 Calico。

安装层面,KubeSphere 平台是按照官网提供的文档基于 Kubernetes 搭建的。

图菱科技先最小化搭建,然后在使用的过程中再根据需要开启一些所需组件。

KubeSphere 平台在插件安装这块的体验比较好,只需要对配置文件相应做调整就能很容易实现。比如日志平台默认由 Elasticsearch 做存储,但我们已经自建有 Elasticsearch 集群,只需要调整 ks-installer 配置。

整个过程有可能会遇到一些问题,但基本上 KubeSphere 社区上都能找到解决方案。

CI/CD 发布流程也是这次改造的重点。DevOps 项目是 KubeSphere 中的一个可插拔组件,提供了基于 Jenkins 的 CI/CD 流水线,支持自动化工作流,包括 Binary-to-Image (B2I) 和 Source-to-Image (S2I) 等。

KubeSphere DevOps 提供了开箱即用的 CI/CD 流水线,并通过图形化方式降低了学习门槛,我们就直接对官网的示例进行改造,采用配置文件基于流水线 Pipleline 构建和发布。

日志采集这块,KubeSphere 平台提供了 FluentBit Operator,在集群所有节点以 DaemonSet 运行,并统一部署配置了 Fluent Bit,同时查询方式能满足现有业务。

容器化 改造完成, 开发流程显著改善

历时差不多一个月时间完成基本业务系统容器化。图菱科技通过 KubeSphere 不同企业空间下的项目(Namespace)来进行开发、测试与生产环境的隔离以及通过不同角色赋予不同企业空间的权限,做到细粒度的权限管理。

版本上线基于 Kubernetes 的副本以及探针来控制,基本上能在不影响业务情况下做到随时发布。图菱科技基本架构走向自动流程化。

目前,图菱科技在服务网格这块还在探索阶段,服务治理(比如:监控指标,微服务流控)还是处于试用体验阶段。后续随着业务复杂度提升后,图菱科技将加快在 KubeSphere 平台中实现服务治理,做到业务与技术分离。

申请创业报道,分享创业好点子。点击此处,共同探讨创业新机遇!

相关标签
模版制作

相关文章

  • GANSS再燃红色火焰,GS87-D法拉利红侧刻双模版上市

    继2017年陆续发布GS104、GS87法拉利红版机械键盘后,2018年,GANSS(迦斯)再次推出法拉利红配色产品——GS87-D法拉利红侧刻双模版机械键盘——为这一“红色火焰”再添新火种。

  • Rushmail:如何更好设计邮箱群发的模版

    随着智能手机的普及,使用移动客户端查收邮件的使用习惯的客户是越来越多,根据Rushmail邮件群发平台(www.rushmail.com)数据统计分析,在美国有超过88%的移动用户一天内至少查看手机邮箱一次,并且他们用移动设备查看电邮的时间占到了利用移动设备全部上网时间的42%!这个是非常惊人的数字

    标签:
    模版制作
  • Rushmail:邮件营销的模版修改实用技巧

    许多企业在做EDM营销的时候知道邮件的内容是重中之重,为了把邮件内容做得足够吸引客户,尝试了非常多的方法,因此各种各样的邮件模版便大受欢迎。但是并不是随便拿个模版过来,然后替换一下信息就可以发出去了,我们应该掌握一些技巧,通过修改模版让它和我们的产品或者服务更加贴合,同时也可以形成有一定企业风格的邮

    标签:
    模版制作
  • 学习制作wp博客模版的过程感想

    在WP学习模版制作已经有段时间了,在刚开始学习模版制作的时候确时遇到家过很多问题,在这里我想讲一下我制作模版过程中遇到的问题词。

    标签:
    模版制作

热门排行

信息推荐