本文來自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的容器化方面有豐富的經驗。