本文来自Rancher Labs数据库
实际上,没有一个迁移路径可以适用于将全部传统应用程序迁移到云。这些应用程序一般在物理机、虚拟机或本地。虽然通常状况下是从新设计应用程序架构以适用云原生服务,但这并不是是惟一的答案。将一个现有的应用程序的架构从新构建为微服务架构或云原生架构会面临诸多挑战,如重构成本、复杂性以及应用程序的依赖性。安全
虽然将应用程序的架构现代化有诸多好处,但许多组织仍在Windows 2003 Servers上运行现有服务。而微软再也不支持Windows 2003为此带来了一些挑战。首先,人们不得不开始决定要如何处理这些应用程序,特别是Windows 2008的生命周期也即将结束。服务器
许多企业想要迁移到现代架构中,指望以此能让他们的应用程序得到复杂性、安全性和可用性。而容器提供了使应用程序现代化并将其移至云原声服务的灵活性。在本文中,咱们将重点介绍可以迁移到容器的应用程序,通常是.Net、Web、SQL和其余没有依赖性但在Windows2003上运行的应用程序。你能够无需更改代码就能将这些应用程序迁移到容器,而且使它们在未来具有可移植性。你将会享受到在Kubernetes上运行容器的好处,如可编排、可用性、更高的弹性伸缩和密度。网络
请注意:不是全部的应用程序和服务都能运行在容器中。有些应用程序存在核心依赖项(如数据库、存储需求等),这些都须要解决。此外,须要根据业务决定应用程序的持续寿命。session
将这些应用程序迁移到容器有一些关键的业务缘由,如:架构
既然Kubernetes支持Windows的worker节点,那么你能够迁移传统的Windows应用程序到现代架构中。Windows worker和Linux worker能够共存在同一个Kubernetes平台中,也就是说,运维团队能够适用同一套工具、实践以及过程。并发
将传统应用程序迁移到Kubernetes须要大量的分析和计划。可是,有一些关键的实践是十分必要的,好比:运维
迁移到容器化、基于.Net的平台是一个复杂的流程,中间会涉及许多步骤。所以,在执行这一流程时须要作出一些关键的决定。如下过程提供了一些有关迁移旧Windows系统以在Kubernetes上运行的要求的指导。微服务
经过从Windows迁移到Kubernetes,你的旧应用程序将享有你现有基于容器的应用程序的优点。此外,你的Windows容器也将会从Kubernetes平台自己得到优点。并且,它们可使用Kubernetes生态中的工具和系统,包括安全性工具、服务网格、监控/告警等。工具
这些优点叠加在一块儿,可让你处于有利地位,以便于对应用程序作出关键决策并发掘业务用例。对于没法迁移的应用程序,因为缺少对底层操做系统的支持,所以你不能对此听任无论,仍然须要决定如何处理它们。并且因为没有其余可用的补丁或安全补救措施,所以你的企业容易受到漏洞和攻击,因此应该及时采起行动。
在Rancher 2.3中,GA了对Windows容器的支持。经过把Kubernetes的全部优点引入Windows,Rancher 2.3极大下降了企业使用Windows容器的复杂性,并为基于Windows遗留应用程序的现代化提供快捷的途径——不管这些程序是在本地运行仍是在多云环境中运行。此外,Rancher 2.3还能够将它们容器化并将其转换为高效、安全和可迁移的多云应用程序,从而省去重写应用程序的工做。
做者简介Kelly Griffin是基础架构,安全和微服务顾问,在提供企业解决方案方面拥有20多年的经验。他所服务过的企业遍及全球,包括澳大利亚、新加坡、新西兰等。他在使用Docker和Kubernetes的容器化方面有丰富的经验。