应用容器化迁移与云原生的探索|商派运维团队

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 云原生化使得应用增益良多,实践和探索云原生是未来很长一段时间需要走的路线,云原生究其本质,凡是能够提高云上资源利用率和应用交付效率的行为或方式都是云原生。

文:商派运维团队 朱士杰

前言:

回顾过往,商派ShopeX的基础架构体系,从最早的IDC(大量采买硬件来搭建我们的服务),再到云计算(虚拟化上云),在这两次变革中,我们的服务效率、费用成本和质量都上了一个新的台阶。但在业务场景大爆发的潮流中,我们也遇到了许多需要解决的问题,如:
● 交付新环境的时间比较长
● 应用日常发布更新比较繁琐
● 大促紧急扩容的能力不足
● 底层的云资源无法有效利用

经过大量的实践与经验积累,商派ShopeX正式步入了云原生的架构体系,通过容器+K8S+devops的管理方法,不断提升商派的基础架构的稳定性、扩展性、高效性、安全性。

                             
                            #   什么是云原生

AI 代码解读

云原生的由来

云原生(Cloud Native)由来已久,其本质就是说应用程序从设计之初即考虑到云的环境,原生为云而设计,在云 上以最佳姿态运行,充分利用和发挥云平台的弹性+分布式优势。
我们现在说的云原生最核心的技术就是Kubernetes,以至于后面云原生可以真正落地。Google从2000年就开始使用了容器(linux容器)系统,其内部一直使用容器化编排引擎(Borg),Kubernetes也由此而来。
2014年Google开源了Kubernetes。

2015年Google主导成立的云原生计算基金会(CNCF),并把Kubernetes作为初创项目贡献给了CNCF。

云原生的探索

● 解决应用环境标准化的问题

 容器化是指将软件代码和所需的所有组件(例如库、框架和其他依赖项)打包在一起,让它们隔离在自己的“容器”中。
 这样,容器内的软件或应用就可以在任何环境和任何基础架构上一致地移动和运行,不受该环境或基础架构的操作系统影响。容器就像是一个气泡(或者是应用周围的计算环境),把应用和周围环境隔离开来。它相当于是一个功能全面、便于移植的计算环境。
 将应用打包装入可在平台和基础架构之间移动的容器后,只用把该容器移动到某个位置,应用就能在那里成功运行使用,因为容器中包含了成功运行应用所需的一切。
AI 代码解读

1639998875847-b1ad1b50-f7f3-4b4d-9ebe-c9511a632b7a.png

● Kubernetes自动化的特性

  Kubernetes 是用于自动部署,扩展和管理容器化应用程序的开源系统。官方初始定义就是企业级应用,而他天生就高可用架构,我们可以通过同一份配置立即启动一个一模一样的环境,从而提高应用开发和部署的效率,而其本身就具有自动化上线,自动化扩容,自我修复的特性。
  
AI 代码解读

1640142643985-a2bc031e-a62b-49b8-afec-9e35e55010eb.png

应用容器化迁移过程

迁移思维导图

1639986816254-bb7b2f85-c00a-4ae9-bcf3-fcf90522dc64.png

k8s容器化迁移

1639986893184-971bb3ae-0780-4c54-9f59-717394e5105c.png

解决的问题

● 容器化之后新环境无需重复部署
容器化打包之后,应用本身部署的环境已经被容器本身取代,所以新开应用是无需重复部署环境的,和之前部署环境1-2天(加测试问题排查等)相比容器标准化之后,大大降低了部署时间。

● 大促扩容效率提速

WechatIMG612.png

2021双11 商派业务中台 其中一个服务 从20个实例扩容到100个实例全部启动仅用了8分钟

● 应用日常发布快
单应用一周发布频率超过30次,只需负责项目研发负责上线工作,大大降低了上线成本。

● 底层的云资源利用率提高
一般没有容器化之前,非容器化应用的服务器cpu水位利用率大概不到百分之10,容器化之后在相同的资源cpu水位提升百分之100,资源没有饱和的情况下可以部署更多的应用。

总结

云原生化使得应用增益良多,实践和探索云原生是未来很长一段时间需要走的路线,云原生究其本质,凡是能够提高云上资源利用率和应用交付效率的行为或方式都是云原生。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
数据库运维:mysql 数据库迁移方法-mysqldump
本文介绍了MySQL数据库迁移的方法与技巧,重点探讨了数据量大小对迁移方式的影响。对于10GB以下的小型数据库,推荐使用mysqldump进行逻辑导出和source导入;10GB以上可考虑mydumper与myloader工具;100GB以上则建议物理迁移。文中还提供了统计数据库及表空间大小的SQL语句,并讲解了如何使用mysqldump导出存储过程、函数和数据结构。通过结合实际应用场景选择合适的工具与方法,可实现高效的数据迁移。
260 1
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
177 13
云原生技术在现代企业中的应用与挑战####
本文探讨了云原生技术在现代企业IT架构中的关键作用,分析了其带来的优势和面临的主要挑战。通过实际案例分析,揭示了如何有效应对这些挑战,以实现业务敏捷性和技术创新的平衡。 ####
云原生技术在现代企业中的应用与实践####
本文深入探讨了云原生技术的核心概念及其在现代企业IT架构转型中的关键作用,通过具体案例分析展示了云原生如何促进企业的敏捷开发、高效运维及成本优化。不同于传统摘要仅概述内容,本部分旨在激发读者对云原生领域的兴趣,强调其在加速数字化转型过程中的不可或缺性,为后续详细论述奠定基础。 ####
云原生时代的应用架构演进:从微服务到 Serverless 的阿里云实践
云原生技术正重塑企业数字化转型路径。阿里云作为亚太领先云服务商,提供完整云原生产品矩阵:容器服务ACK优化启动速度与镜像分发效率;MSE微服务引擎保障高可用性;ASM服务网格降低资源消耗;函数计算FC突破冷启动瓶颈;SAE重新定义PaaS边界;PolarDB数据库实现存储计算分离;DataWorks简化数据湖构建;Flink实时计算助力风控系统。这些技术已在多行业落地,推动效率提升与商业模式创新,助力企业在数字化浪潮中占据先机。
246 12
容器化浪潮下的AI赋能:智能化运维与创新应用
近年来,容器技术以其轻量、高效、可移植的特性成为云原生时代的基石,推动应用开发和部署方式革新。随着容器化应用规模扩大,传统运维手段逐渐力不从心。AI技术的引入为容器化生态带来新活力,实现智能监控、自动化故障诊断与修复及智能资源调度,提升运维效率和可靠性。同时,AI驱动容器化创新应用,如模型训练、边缘计算和Serverless AI服务,带来更多可能性。未来,AI与容器技术的融合将更加紧密,推动更智能、高效的运维平台和丰富的创新应用场景,助力数字化转型。
云原生技术在现代软件开发中的应用与挑战####
本文探讨了云原生技术的兴起背景、核心理念及其在现代软件开发中的广泛应用。通过具体案例分析,揭示了云原生架构如何促进企业数字化转型,并指出了在实施过程中面临的主要挑战及应对策略。 ####
阿里云容器服务AI助手2.0 - 新一代容器智能运维能力
2024年11月,阿里云容器服务团队进一步深度融合现有运维可观测体系,在场景上覆盖了K8s用户的全生命周期,正式推出升级版AI助手2.0,旨在更好地为用户使用和运维K8S保驾护航。
小团队 CI/CD 实践:无需运维,Java Web应用的自动化部署
本文介绍如何使用GitHub Actions和阿里云Kubernetes(ACK)实现Java Web应用的自动化部署。通过CI/CD流程,开发人员无需手动处理复杂的运维任务,从而提高效率并减少错误。文中详细讲解了Docker与Kubernetes的概念,并演示了从创建Kubernetes集群、配置容器镜像服务到设置GitHub仓库Secrets及编写GitHub Actions工作流的具体步骤。最终实现了代码提交后自动构建、推送镜像并部署到Kubernetes集群的功能。整个过程不仅简化了部署流程,还确保了应用在不同环境中的稳定运行。
286 9
云原生AI加速生成式人工智能应用的部署构建
本文探讨了云原生技术背景下,尤其是Kubernetes和容器技术的发展,对模型推理服务带来的挑战与优化策略。文中详细介绍了Knative的弹性扩展机制,包括HPA和CronHPA,以及针对传统弹性扩展“滞后”问题提出的AHPA(高级弹性预测)。此外,文章重点介绍了Fluid项目,它通过分布式缓存优化了模型加载的I/O操作,显著缩短了推理服务的冷启动时间,特别是在处理大规模并发请求时表现出色。通过实际案例,展示了Fluid在vLLM和Qwen模型推理中的应用效果,证明了其在提高模型推理效率和响应速度方面的优势。
云原生AI加速生成式人工智能应用的部署构建
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问