本篇文章給大家分享的是有關(guān)怎么讓W(xué)indows應(yīng)用程序享有K8S的絕佳優(yōu)勢(shì),小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
創(chuàng)新互聯(lián)建站公司2013年成立,先為招遠(yuǎn)等服務(wù)建站,招遠(yuǎn)等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為招遠(yuǎn)企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
實(shí)際上,沒(méi)有一個(gè)遷移路徑能夠適用于將所有傳統(tǒng)應(yīng)用程序遷移到云。這些應(yīng)用程序通常在物理機(jī)、虛擬機(jī)或本地。雖然一般情況下是重新設(shè)計(jì)應(yīng)用程序架構(gòu)以適用云原生服務(wù),但這并非是唯一的答案。將一個(gè)現(xiàn)有的應(yīng)用程序的架構(gòu)重新構(gòu)建為微服務(wù)架構(gòu)或云原生架構(gòu)會(huì)面臨諸多挑戰(zhàn),如重構(gòu)成本、復(fù)雜性以及應(yīng)用程序的依賴(lài)性。
雖然將應(yīng)用程序的架構(gòu)現(xiàn)代化有諸多好處,但許多組織仍在Windows 2003 Servers上運(yùn)行現(xiàn)有服務(wù)。而微軟不再支持Windows 2003為此帶來(lái)了一些挑戰(zhàn)。首先,人們不得不開(kāi)始決定要如何處理這些應(yīng)用程序,特別是Windows 2008的生命周期也即將結(jié)束。
許多企業(yè)想要遷移到現(xiàn)代架構(gòu)中,期望以此能讓他們的應(yīng)用程序獲得復(fù)雜性、安全性和可用性。而容器提供了使應(yīng)用程序現(xiàn)代化并將其移至云原聲服務(wù)的靈活性。在本文中,我們將重點(diǎn)介紹能夠遷移到容器的應(yīng)用程序,一般是.Net、Web、SQL和其他沒(méi)有依賴(lài)性但在Windows2003上運(yùn)行的應(yīng)用程序。你可以無(wú)需更改代碼就能將這些應(yīng)用程序遷移到容器,并且使它們?cè)趯?lái)具備可移植性。你將會(huì)享受到在Kubernetes上運(yùn)行容器的好處,如可編排、可用性、更高的彈性伸縮和密度。
請(qǐng)注意:不是所有的應(yīng)用程序和服務(wù)都能運(yùn)行在容器中。有些應(yīng)用程序存在核心依賴(lài)項(xiàng)(如數(shù)據(jù)庫(kù)、存儲(chǔ)需求等),這些都需要解決。此外,需要根據(jù)業(yè)務(wù)決定應(yīng)用程序的持續(xù)壽命。
將這些應(yīng)用程序遷移到容器有一些關(guān)鍵的業(yè)務(wù)原因,如:
投資回報(bào)率高
傳統(tǒng)的基于Web的服務(wù)可以獲得可移植性
應(yīng)用程序安全性提升
節(jié)省企業(yè)重新評(píng)估現(xiàn)有應(yīng)用程序的時(shí)間
既然Kubernetes支持Windows的worker節(jié)點(diǎn),那么你可以遷移傳統(tǒng)的Windows應(yīng)用程序到現(xiàn)代架構(gòu)中。Windows worker和Linux worker可以共存在同一個(gè)Kubernetes平臺(tái)中,也就是說(shuō),運(yùn)維團(tuán)隊(duì)可以適用同一套工具、實(shí)踐以及過(guò)程。
將傳統(tǒng)應(yīng)用程序遷移到Kubernetes需要大量的分析和計(jì)劃。但是,有一些關(guān)鍵的實(shí)踐是十分必要的,比如:
分解應(yīng)用程序:將應(yīng)用程序拆分為原始形式,以了解哪些組件正在運(yùn)行,它們?nèi)绾芜\(yùn)行以及它們的依賴(lài)關(guān)系
發(fā)現(xiàn)應(yīng)用程序提供的服務(wù)以及在數(shù)據(jù)、網(wǎng)絡(luò)等方面產(chǎn)生的調(diào)用
從應(yīng)用程序中解耦出數(shù)據(jù)層
確定并映射服務(wù)依賴(lài)項(xiàng)
測(cè)試、測(cè)試再測(cè)試
遷移到容器化、基于.Net的平臺(tái)是一個(gè)復(fù)雜的流程,中間會(huì)涉及許多步驟。因此,在執(zhí)行這一流程時(shí)需要做出一些關(guān)鍵的決定。以下過(guò)程提供了一些有關(guān)遷移舊Windows系統(tǒng)以在Kubernetes上運(yùn)行的要求的指導(dǎo)。
確定你的容器所需要的操作系統(tǒng)——Server Core或Nano Server。這需要根據(jù)應(yīng)用程序的依賴(lài)項(xiàng)進(jìn)行選擇。
遵循兼容性準(zhǔn)則。運(yùn)行Windows容器會(huì)為主機(jī)的OS版本和容器正在運(yùn)行的基本鏡像添加嚴(yán)格的兼容性規(guī)則。它們必須運(yùn)行Windows 2019,因?yàn)槿萜骷暗讓又鳈C(jī)共享一個(gè)內(nèi)核。截至成文時(shí),僅支持服務(wù)器隔離進(jìn)程。然而,很快會(huì)開(kāi)始支持Hyper-V隔離(具體時(shí)間未知),這將有助于主機(jī)和容器的兼容。
打包你的傳統(tǒng)應(yīng)用程序。
使用應(yīng)用程序包構(gòu)建基于Docker的初始容器。
在你所選擇的倉(cāng)庫(kù)中部署一個(gè)新的Docker容器
充分利用現(xiàn)有的DevOps工具(CI/CD構(gòu)建和發(fā)布流水線)
部署新的Windows應(yīng)用程序到你所構(gòu)建的支持Windows的Kubernetes環(huán)境中
測(cè)試、測(cè)試,再測(cè)試
通過(guò)從Windows遷移到Kubernetes,你的舊應(yīng)用程序?qū)⑾碛心悻F(xiàn)有基于容器的應(yīng)用程序的優(yōu)勢(shì)。此外,你的Windows容器也將會(huì)從Kubernetes平臺(tái)本身獲得優(yōu)勢(shì)。而且,它們可以使用Kubernetes生態(tài)中的工具和系統(tǒng),包括安全性工具、服務(wù)網(wǎng)格、監(jiān)控/告警等。
這些優(yōu)勢(shì)疊加在一起,可以讓你處于有利地位,以便于對(duì)應(yīng)用程序做出關(guān)鍵決策并發(fā)掘業(yè)務(wù)用例。對(duì)于無(wú)法遷移的應(yīng)用程序,由于缺乏對(duì)底層操作系統(tǒng)的支持,因此你不能對(duì)此放任不管,仍然需要決定如何處理它們。而且由于沒(méi)有其他可用的補(bǔ)丁或安全補(bǔ)救措施,因此你的企業(yè)容易受到漏洞和攻擊,所以應(yīng)該及時(shí)采取行動(dòng)。
基于容器的解決方案可以節(jié)省成本
容器減少依賴(lài)項(xiàng)并為應(yīng)用程序提供可移植性
Docker已經(jīng)是運(yùn)行容器的事實(shí)標(biāo)準(zhǔn),同時(shí)Kubernetes是容器編排引擎的事實(shí)標(biāo)準(zhǔn)
Kubernetes可以托管可伸縮、可靠且具有彈性的基于Windows容器的應(yīng)用程序以及基于Linux的應(yīng)用程序
運(yùn)行Kubernetes平臺(tái)的組織可以將傳統(tǒng)應(yīng)用程序集成到他們的DevOps文化和工具中
利用原生和基于生態(tài)系統(tǒng)的Kubernetes工具可以提高安全性并為傳統(tǒng)應(yīng)用程序增加額外的保護(hù)層
在Rancher 2.3中,GA了對(duì)Windows容器的支持。通過(guò)把Kubernetes的所有優(yōu)勢(shì)引入Windows,Rancher 2.3極大降低了企業(yè)使用Windows容器的復(fù)雜性,并為基于Windows遺留應(yīng)用程序的現(xiàn)代化提供快捷的途徑——無(wú)論這些程序是在本地運(yùn)行還是在多云環(huán)境中運(yùn)行。此外,Rancher 2.3還可以將它們?nèi)萜骰⑵滢D(zhuǎn)換為高效、安全和可遷移的多云應(yīng)用程序,從而省去重寫(xiě)應(yīng)用程序的工作。
以上就是怎么讓W(xué)indows應(yīng)用程序享有K8S的絕佳優(yōu)勢(shì),小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。