写点什么

迁移至 Kubernetes 的三种主要方式对比

  • 2019-02-12
  • 本文字数:1432 字

    阅读完需:约 5 分钟

迁移至Kubernetes的三种主要方式对比

企业大规模迁移到云端的时间已经到了,对于正在使用的应用程序,应该如何打包呢?


如今,越来越多的企业选择将应用程序或 Web 服务迁移到云端,各大厂商提供的云基础架构不仅功能强大、稳定且更具扩展性。通过迁移到云,企业可以显著降低运营压力和成本。目前比较流行的选择是迁移到基于容器的云环境,Kubernetes 是最常用的方法。从长远来看,Kubernetes 最具扩展性,本文介绍了主要的三种迁移至 Kubernetes 的方法。

为何选择 Kubernetes?

在了解可迁移到 Kubernetes 的最佳实践和方法之前,值得花时间了解为什么 Kubernetes 是企业的最佳选择。对于初学者来说,Kubernetes 在设置云环境时提供了最大灵活性。


Kubernetes 有两个主要部分:主集群和充当服务容器的节点,这两个元素可以提供更好的可用性和可靠性。当节点处理应用程序的特定任务和部分时,主集群会处理诸如网络管理和其他资源之类的事情。


两部分设置意味着可以对节点进行更改,而不会影响整体集群。例如,当需要更新特定服务时,可以创建新节点并进行更新,然后告诉主集群使用新节点而不是旧节点即可。从迁移到 Kubernetes 的那一刻起,该方法可以最大限度减少停机时间。


此外,Kubernetes 非常灵活,对于如何相对于彼此建立节点没有严格规则。只要主集群配置为正确使用节点,应用程序或 Web 服务将顺利运行。

迁移策略:三个计划

重新托管(Rehosting)

目前,主要通过三种方式将应用迁移到 Kubernetes。第一种方式是重新托管(Rehosting),这也是所有方法中最简单的一种,基本是将整个 Web 服务或应用程序转移到 Kubernetes 集群。这意味着,只需将 Docker 包装在应用程序周围,然后配置 Kube YAML 文件进行部署即可。这个过程不涉及对应用程序进行更改,这也是转移到 Kubernetes 最快的方法。


但是,重新托管可能不是利用 Kubernetes 提供的云环境最有效(或高效)方式,此方式无法立即受益于 Kubernetes 的所有灵活性,但是很好的第一步。一旦初始迁移完成,就可以继续将服务和部分应用分解到其他节点。

重新平台化(Replatforming)

重新平台化是迁移到 Kubernetes 的第二种方法,可以准备应用程序并对其运行方式进行基本更改,而不是将整个应用程序移动到当前状态,这通常涉及将服务分解为单个容器和节点,并将不同功能分解成单独容器。


重新平台化比重新托管需要更多时间,这是因为将应用程序调整到基于容器的云环境并不是一个简单的过程。在本地 Kubernetes 集群和 Minikube 的帮助下,该过程可以变得更简单。


当处理分区版本以进行迁移时,应用程序可以继续运行。完成更新并布置服务集群后,迁移到 GKE 或 Azure 等云集群会变得更加容易,甚至可以在 Minikube 内部进行彻底测试,以确保更顺畅的过渡。

重构

重构是迁移到 Kubernetes 的主要方法之一。与前两种方法不同,整个应用程序和支持服务都经过修改,以更好地适应新分区环境。


在大多数情况下,重构涉及重新架构整个应用程序以充分利用云环境。例如,开发者可以使用与 Kubernetes 一起的云原生框架(例如 Knative)来重构服务,这可以在云中运行无服务器工作负载。


作为权衡,迁移过程需要更长时间并消耗更多资源。但是,在流程结束时,企业将拥有一个完全可扩展的应用程序,可充分利用 Kubernetes 提供的所有优势。如果需要了解代码库以支持主要版本升级,倾向于推荐此过程。


至于哪种方法最合适,答案取决于迁移目标,要迁移到云的应用程序以及当前配置应用程序的方式。


参考链接:


https://dzone.com/articles/cloud-migration-best-practices-how-to-move-your-pr


2019-02-12 10:424932
用户头像
赵钰莹 极客邦科技 总编辑

发布了 897 篇内容, 共 690.2 次阅读, 收获喜欢 2699 次。

关注

评论

发布
暂无评论
发现更多内容

白鸦11周年分享:把有赞做成智能化系统运营商

ToB行业头条

软件测试 | 基于无监督深度特征的视觉识别技术:人工智能的前沿探索

测吧(北京)科技有限公司

测试

人工智能 | 经典卷积网络模型解析:深度学习中的里程碑

测吧(北京)科技有限公司

测试

人工智能 | 计算机视觉迁移学习:开启智能化视野的大门

测吧(北京)科技有限公司

测试

软件测试 | 引领未来,掌握模型驱动技术的人工智能革命

测吧(北京)科技有限公司

测试

人工智能:亲手打造的强化学习模型征服游戏世界

测吧(北京)科技有限公司

测试

Office 2019 v16.78.3激活工具(office2019套件)

Geek_幻墨成诗

Office 2019下载 Microsoft Office 2019

浩鲸科技:为什么要用雪花ID替代数据库自增ID?

王磊

Java 面试

“大+小模型”赋能油气行业高质量发展

九章云极DataCanvas

人工智能 | 无参照模型预测技术:提升模型性能和应用体验的新思路

测吧(北京)科技有限公司

测试

人工智能 | 视觉场景中的相应时间分析与弹窗检测技术

测吧(北京)科技有限公司

测试

人工智能 | 引领未来,掌握图像目标检测:PyTorch带您探索智能时代

测吧(北京)科技有限公司

测试

Unity3D 导出的apk进行混淆加固、保护与优化原理(防止反编译)

超赞!让vue开发效率翻倍的工具分享

秃头小帅oi

Vue 前端

自然语言处理技术原理解析

测吧(北京)科技有限公司

测试

Photoshop 2024(ps2024最新)v25.1激活版

Geek_幻墨成诗

Photoshop 2024破解版 Photoshop2024下载

让人恶心的多线程代码,真心建议你别用!

伤感汤姆布利柏

Java 低代码 多线程代码

Photoshop 2020 for mac(PS2020)v21.2.5中文激活版

Geek_幻墨成诗

Photoshop 2024破解版 Photoshop2020

C/C++ Zlib库封装MyZip压缩类

不在线第一只蜗牛

c c++ 开源 编程语言

谷歌访问助手(谷歌浏览器插件)Mac中文版

Geek_幻墨成诗

谷歌访问助手

Final Cut Pro for Mac(fcpx视频剪辑) v10.6.10中文版

Geek_幻墨成诗

Final Cut Pro下载 Final Cut Pro中文版 Final Cut Pro破解版 Final Cut Pro教程 Final Cut Pro

用 LangChain 搭建基于 Notion 文档的 RAG 应用

Zilliz

Milvus Zilliz AIGC langchain rag

人工智能 | 自然语言处理技术原理介绍

测吧(北京)科技有限公司

测试

人工智能 | 掌握有参照的 UIDiff 检测技术:优化用户界面的关键工具

测吧(北京)科技有限公司

测试

数仓实践丨常量标量子查询做全连接导致整体慢

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 华为云GaussDB(DWS)

3D模型渲染太耗电脑性能怎么办?

3D建模设计

3D渲染 GPU渲染 渲染调优 CPU渲染

人工智能 | Bug预测新纪元:基于迁移学习的创新应用

测吧(北京)科技有限公司

测试

迁移至Kubernetes的三种主要方式对比_服务革新_赵钰莹_InfoQ精选文章