在一个充满活力的开源社区的支持下,Kubernetes 可以推动杰出的创新。为了帮助 Kubernetes 的采用,红帽和 IBM 研究院创建了一个开源项目 Konveyor,该项目旨在通过构建 工具 、识别模式和提供关于如何跨 IT 进行云原生转型的建议,帮助对开放混合云应用程序进行现代化和迁移。Konveyor 还支持越来越多的工具,如 Crane、Forklift、Move2Kube、Tackle 和 Pelorus,这些工具的设计都是为了加速 Kubernetes 的采用。
在整个行业中,系统管理员和开发人员通常是推动数字转型的关键团队,帮助整体业务从现代化的 IT 基础设施、应用程序和服务中受益。
这种转型通常依赖于 Kubernetes 和 Linux 容器作为基础。但是要实现这种容器化的飞跃,需要对配置和架构进行根本性的改变。这就像在看装修前后的照片时,没有说明如何从一个到另一个。在这两者之间发生了什么?你怎么能做到呢?
Kubernetes Operators 赋能 Konveyor
我们相信使用 Kubernetes Operators 的力量来嵌入操作知识和功能到 Kubernetes。Konveyor 的子项目是作为 Kubernetes Operators 开发的,这样我们就可以利用它们的灵活性,并为已经熟悉 Operators 的管理员简化部署和管理。
用 Crane 和 Forklift 重新托管工作负载
在 Kubernetes 社区中有两个主要的重新托管需求——将虚拟机不改变地迁移到 Kubernetes,以及在 Kubernetes 集群之间迁移已经容器化的应用程序。
KubeVirt[2]允许开发人员和运营团队获得 Kubernetes 编配和周围生态系统的好处,而不需要更改代码或配置。
虽然重新托管不能提供与重新平台化或重构相同的好处,但在开发团队可能没有能力更改或修改代码的情况下(比如使用供应商提供的软件),它通常是有用的。重新托管还有助于团队适应新的平台,减少流程和文化之间的摩擦。
Konveyor 子项目Forklift[3]侧重于将虚拟机迁移到 Kubernetes,并提供了将虚拟机迁移到 KubeVirt 的能力,同时最小化停机时间。
第二个需求由Crane[4]子项目来解决,它主要关注于在 Kubernetes 集群之间迁移应用程序。很多时候,开发人员和操作团队希望在 Kubernetes 的旧版本和新版本之间进行迁移,转移一个集群或迁移到不同的底层基础设施。
在理想的情况下,这将是应用程序的重新部署,但我们发现许多用户需要一个解决方案来持续迁移 Kubernetes 命名空间中的持久数据和对象。
用 Move2Kube 迁移平台
重新平台化涉及到更改应用程序使用的底层技术,同时最小化代码更改的需求。正在发生平台重组的一个领域是容器编排平台向 Kubernetes 的整合。
Move2Kube[5]子项目最初是为了帮助加速将基于 Swarm 和 Cloud Foundry 的应用程序重新平台化到 Kubernetes。该工具将现有工件转换为 Kubernetes 原生概念,提高了组织在 Kubernetes 上运行应用程序的速度和能力。
用 Tackle 重构应用程序
对于希望将应用程序迁移到 Kubernetes 的用户来说,重构可能是最具挑战性但也是最有益的策略之一。重构涉及到对应用程序架构和开发进行根本更改,以利用云原生功能。
Tackle[6]应用程序旨在提供工具来帮助评估和分析应用程序,以便将其重构为容器,并提供一个公共目录。Tackle 背后的团队利用他们使用Pathfinder[7]和Windup[8]等工具的经验来指导他们在应用程序上的工作,将现有的最佳流程和策略引入云原生领域。
测量改进
Konveyor 项目中的最后一个子项目Pelorus[9]支持指标驱动的转型,并度量软件交付性能的关键指标,包括变更的交付时间、部署频率、恢复的平均时间和变更失败率。
社区强烈认为,能够衡量重新托管、迁移平台、重构以及更改流程和文化的影响,对于证明价值至关重要。
了解更多
开发人员和系统管理员需要开源工具和实践来帮助他们将应用程序和基础设施加速到 Kubernetes。
Konveyor 项目的目标是通过OperatorHub.io[10]提供 Konveyor 的交付工具和应用程序,简化使用和生命周期管理。要接受 Konveyor 会议的邀请,建议演讲,或者开始贡献到 Konveyor 项目,可以到网站[11]订阅。
注:本博客[12]最初发表于 RedHat.com。
参考资料
[1]2021 年欧洲 KubeCon + CloudNativeCon 虚拟大会赞助文章: https://events.linuxfoundation.org/kubecon-cloudnativecon-europe/
[2]KubeVirt: https://kubevirt.io/
[3]Forklift: https://github.com/konveyor/forklift-operator
[4]Crane: https://github.com/konveyor/mig-operator
[5]Move2Kube: https://konveyor.io/move2kube/
[6]Tackle: https://github.com/konveyor/tackle-application-inventory
[7]Pathfinder: https://github.com/redhat-cop/pathfinder
[8]Windup: https://github.com/windup
[9]Pelorus: https://github.com/redhat-cop/pelorus
[10]OperatorHub.io: https://operatorhub.io/
[11]网站: http://www.konveyor.io/
[12]本博客: https://www.redhat.com/en/blog/red-hat-and-ibm-research-launch-konveyor-project
猜你喜欢: