知行志成官方网站

方案背景

对于企业的业务系统来说,是否需要作出改变,主要取决于两个方面: 一是业务的需求变化。这里的需求包含业务功能的需求、支撑更多用户访问量的需求、应用部署运维和升级的需求、业务开发管理的需求等;二是技术的发展变化。即是否有新的技术出现能够解决之前不能解决的问题,或者让业务以更高效的状态运行。

知行志成通过使用容器,可以帮助企业轻松打包应用程序的代码、配置和依赖关系,将其变成易于使用的构建块,从而实现环境一致性、提高运营效率、提升开发人员工作效率和版本控制等诸多目标;同时,可以使应用程序不受部署环境的影响,快速部署,企业能够以更高效、更低成本的方案,完成对传统应用项目的容器化改造。


业务挑战

1.系统基础组件和功能变多

由于互联网的冲击,用户的需求及访问的流量暴增。应用系统需要更多的功能来满足用户日益增长的需求,同时需要增加各种基础组件(如缓存、消息中间件等)来提升用户的访问体验,保证系统的业务连续性。

2.应用开发交付困难

在互联网应用系统中,用户需求的变化是非常迅速的,原先一周一次更新,现在可能要一天一次,甚至一天多次更新,大幅缩短的交付周期给研发部门带来了巨大挑战。

3.系统部署运维与升级复杂

企业应用系统规模越来越庞大,架构越来越复杂,应用的安装、部署和更新也相对更加复杂,运维所投入的人力、物力、财力等成本也随之成倍增加。

4.硬件资源分配调度缓慢

在硬件资源层面,物理机资源调度极其缓慢;即使是使用虚拟机,也需要手工部署应用,不仅耗时长,而且也无法保证开发、测试、生产环境的一致性,难以满足应用快速上线、弹性伸缩等需求。


方案规划

知行志成可以针对各行业用户的业务需求,定制专属的容器化改造解决方案。通常情况下,可分为下列三种。

方案一:单体应用的整体容器化

  • 业务零修改,应用代码和架构不做任何改动。
  • 应用可构建为容器镜像,确保环境的一致性,提升部署效率。
  • 容器对系统资源利用率高,相比虚拟机技术,一个相同配置的主机,往往可以运行更多数量的应用。

方案二:将应用中需频繁升级、对弹性伸缩要求高的组件拆分出来进行容器化改造,无需推翻业务系统原有架构

  • 弹性更灵活: 对弹性要求高的组件容器化。当需要扩展时,只针对该容器扩展,弹性更灵活,且能降低系统资源,不影响其他容器中的应用。
  • 新特性上线更快:将更新频繁的应用容器化。只针对这个容器进行升级,保证业务上线更快、更稳定。

方案三:对所有应用进行全面的微服务架构改造,再单独容器化

  • 拆分为微服务后,可单独增加或缩减每个微服务的实例数量。
  • 各微服务之间解耦,某个微服务的代码开发不影响其他微服务。
  • 通过隔离确保安全: 在传统应用架构中,若应用存在安全漏洞,会获得所有功能的权限。经过改造后,若微服务架构中某个服务被攻击,则只可获得被攻击服务的访问权限,无法入侵其他服务。其它微服务还可以持续正常运行,不受任何影响。


方案架构


应用价值

由于容器采用镜像的方式实现运行环境的标准化,只需要将应用程序及其运行所依赖的环境统一打包到镜像中,即可实现一次封装、到处运行的效果。因此可以屏蔽不同环境下环境配置和安装部署等复杂过程。

  • 提升开发交付效率

容器的标准交付理念,支持更好地与CI/CD文化融合,开发提交代码后,编译、打包、发布、部署等过程都自动完成,提升开发交付的效率,从技术手段上保证项目管理方式和管理理念的有效落地。

  • 部署更新回滚更便捷

使用容器技术,只需简单配置,就可以替代以往大量的部署、更新工作,而且所有的更新都是支持动态滚动更新和回滚操作,能够实现高效地自动化管理。

  • 管理更加简单

私有云、公有云等资源都可以运行容器,使用容器可以帮助企业实现对不同资源的统一管理,且容器的启动速度快,占用资源少,通过容器密度的提升可以更好地利用资源。

  • 生态系统完善

容器技术配套了专业的资源调度编排平台、企业级的镜像仓库、企业级的应用商店等功能,同时日志收集分析、应用监控等功能也应有尽有。


应用场景

  • 大数据&AI

当前市面上大多数的大数据、AI训练和推理等应用均采用容器化方式运行。同时这些应用都需要大量GPU、高性能网络和存储等硬件加速能力,并且均为任务型计算,需要快速申请大量资源,计算任务完成后快速释放。

  • DevOps持续交付

软件开发型企业,希望构建从代码提交到应用部署的DevOps完整流程,提高企业应用迭代效率。DevOps流程一般都是任务型计算,如:企业CI/CD(持续集成/持续发布)流程自动化。

  • 高弹性业务

业务波峰波谷较明显的业务,日常流量稳定,高峰期又需要快速扩展资源,并对成本有一定诉求。可应用于如:电商、在线教育、游戏等行业。


应用客户