日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
五種方法判斷Kubernetes是否適合你的應(yīng)用

五種方法判斷Kubernetes是否適合你的應(yīng)用

2022-11-10 14:33:40
云計(jì)算
云原生 盡管Kubernetes是一項(xiàng)優(yōu)秀的技術(shù),但它遠(yuǎn)不是適合所有應(yīng)用部署的最佳解決方案。

創(chuàng)新互聯(lián)的客戶來(lái)自各行各業(yè),為了共同目標(biāo),我們?cè)诠ぷ魃厦芮信浜?,從?chuàng)業(yè)型小企業(yè)到企事業(yè)單位,感謝他們對(duì)我們的要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。專業(yè)領(lǐng)域包括成都做網(wǎng)站、網(wǎng)站制作、電商網(wǎng)站開(kāi)發(fā)、微信營(yíng)銷、系統(tǒng)平臺(tái)開(kāi)發(fā)。

很多情況下,應(yīng)用程序現(xiàn)代化的路徑是這樣的:首先,將應(yīng)用重構(gòu)為微服務(wù);接下來(lái),將每個(gè)服務(wù)容器化;最后,將其部署在Kubernetes上。Kubernetes是一種開(kāi)源的編排引擎,已經(jīng)成為運(yùn)行容器化應(yīng)用的一種事實(shí)標(biāo)準(zhǔn)平臺(tái)。

問(wèn)題是,并非所有的現(xiàn)代化都遵循這種路徑。很多情況下,Kubernetes并不是現(xiàn)代軟件部署之旅的一部分。

盡管Kubernetes是一項(xiàng)優(yōu)秀的技術(shù),但它遠(yuǎn)不是適合所有應(yīng)用部署的最佳解決方案。即使你的應(yīng)用使用容器作為微服務(wù)運(yùn)行,Kubernetes也不一定是部署這些應(yīng)用的最佳方式,還有其他更簡(jiǎn)單的解決方案(例如Amazon ECS或者Lambda)可以用于運(yùn)行容器。而且,如果你的應(yīng)用根本不是一組微服務(wù),那么Kubernetes顯然也不是運(yùn)行這些應(yīng)用的一個(gè)好方式。

那么,哪些類型的應(yīng)用實(shí)際上可以通過(guò)Kubernetes運(yùn)行呢?應(yīng)用具備哪些功能要求或者架構(gòu)特征的情況下特別適合采用K8(Kubernetes追隨者有時(shí)候?qū)υ撈脚_(tái)的叫法)呢,或者反過(guò)來(lái),更適合采用替代性的托管解決方案呢?

本文通過(guò)介紹使用Kubernetes部署應(yīng)用之前應(yīng)該具備的五個(gè)關(guān)鍵因素來(lái)回答這些問(wèn)題。我們還將研究Kubernetes工作負(fù)載的“反模式”,即團(tuán)隊(duì)在選擇是否用K8來(lái)運(yùn)行給定工作負(fù)載時(shí)經(jīng)常犯的一些錯(cuò)誤。

如何判斷你的應(yīng)用是否適合Kubernetes?

在評(píng)估應(yīng)用是否適合通過(guò)Kubernetes進(jìn)行部署的時(shí)候,請(qǐng)考慮Kuberbetes與以下每個(gè)特征的匹配程度。

1、你的應(yīng)用是作為小型的、簡(jiǎn)潔的、獨(dú)立的可擴(kuò)展服務(wù)運(yùn)行的

當(dāng)應(yīng)用作為一組小型的、簡(jiǎn)潔的服務(wù)運(yùn)行的時(shí)候,它就非常適合Kubernetes。主要原因是Kubernetes可以獨(dú)立地動(dòng)態(tài)擴(kuò)展每個(gè)服務(wù),反過(guò)來(lái)意味著你的應(yīng)用可以最有效地利用可用的托管資源。

相反,作為“單體”運(yùn)行的應(yīng)用(也就是說(shuō)整個(gè)應(yīng)用是作為單一服務(wù)運(yùn)行的)并不能從Kubernetes中受益。選擇在K8上運(yùn)行單體應(yīng)用,就意味著與選擇更簡(jiǎn)單的部署模型(例如在獨(dú)立虛擬機(jī)上運(yùn)行該應(yīng)用)相比,你將面臨更多的復(fù)雜性,而且也不會(huì)獲得很多好處,因?yàn)閱误w應(yīng)用是無(wú)法進(jìn)行細(xì)粒度或者動(dòng)態(tài)擴(kuò)展的。

2、你的應(yīng)用是與硬件無(wú)關(guān)的

不需要特定硬件配置的應(yīng)用可以很好地運(yùn)行在Kubernetes上,因?yàn)槟憧梢允褂肒8s設(shè)置服務(wù)器集群并在這些集群之間部署應(yīng)用。Kubernetes會(huì)決定在集群中放置每個(gè)應(yīng)用的位置,并根據(jù)需要為應(yīng)用分配資源?;蛘撸憧梢裕ㄍǔ?yīng)該可以)定義Kubernetes在部署時(shí)應(yīng)該分配給每個(gè)應(yīng)用的資源最小值。

另一方面,如果你的應(yīng)用需要嚴(yán)格的CPU或者內(nèi)存分配(或者需要訪問(wèn)專用硬件設(shè)備例如GPU),那么通常把應(yīng)用直接部署在虛擬機(jī)要比K8s集群更有意義。

3、你的應(yīng)用是眾多應(yīng)用之一,而且這些應(yīng)用可以在共享基礎(chǔ)設(shè)施上共存

Kubernetes允許你使用稱為命名空間的功能把工作負(fù)載彼此分割,命名空間本質(zhì)上是你可以在單個(gè)服務(wù)器集群中進(jìn)行定義的虛擬邊界。但是,Kubernetes并不提供在專用虛擬機(jī)或者是物理服務(wù)器上運(yùn)行每個(gè)應(yīng)用所獲得的“硬”應(yīng)用隔離。

這意味著,如果你有大量可以共享服務(wù)器集群的工作負(fù)載,而且每個(gè)工作負(fù)載都運(yùn)行著自己的虛擬環(huán)境,那么Kubernetes非常適合,而如果你需要工作負(fù)載之間有堅(jiān)如磐石的隔離,那么K8就不是那么好了。如果你只有少量的工作負(fù)載,這也沒(méi)有多大意義,在這種情況下,設(shè)置和管理Kubernetes的難度要超過(guò)它能帶來(lái)的價(jià)值。

4、你的應(yīng)用運(yùn)行多個(gè)服務(wù),有些是內(nèi)部的,有些是外部的

通常,現(xiàn)代應(yīng)用中只有一些微服務(wù)需要是外部的,意味著可以連接到應(yīng)用外部(但仍在公司網(wǎng)絡(luò)內(nèi)部)的資源,而其他服務(wù)(例如在應(yīng)用前端和后端數(shù)據(jù)庫(kù)之間內(nèi)部移動(dòng)數(shù)據(jù)的服務(wù))則不需要連接到應(yīng)用或者是托管這些應(yīng)用的服務(wù)器集群外部。

Kubernetes是此類應(yīng)用的絕佳解決方案,因?yàn)镵ubernetes讓你能夠以細(xì)粒度的方式定義哪些服務(wù)將面向公司網(wǎng)絡(luò),哪些服務(wù)僅限內(nèi)部,而且真正重要的是,它讓你可以保存企業(yè)網(wǎng)絡(luò)IP地址,這一點(diǎn)很重要,因?yàn)镮P地址在企業(yè)環(huán)境中通常是有限供應(yīng)的。

5、你的應(yīng)用需要自定義DNS設(shè)置

Kubernetes讓管理員可以很好地控制網(wǎng)絡(luò)名稱的解析方式,這對(duì)于那些需要自定義域名設(shè)置(而不是使用通用DNS服務(wù)器)將IP地址映射到主機(jī)或服務(wù)名稱的應(yīng)用來(lái)說(shuō)非常有用。

大多數(shù)傳統(tǒng)應(yīng)用并不需要特殊的DNS設(shè)置。但是在手動(dòng)設(shè)置DNS配置的企業(yè)環(huán)境中,或者對(duì)于具有大量需要特殊DNS設(shè)置的內(nèi)部服務(wù)應(yīng)用來(lái)說(shuō),Kubernetes是很有用處的,因?yàn)镵ubernetes提供了對(duì)DNS一定程度的控制和靈活性,而這在其他類型托管環(huán)境中是不具備的。

在什么情況下你絕不應(yīng)該使用Kubernetes

為了在是否使用Kubernetes的決策過(guò)程中多考慮一些背景信息,讓我們來(lái)看一下什么時(shí)候我們不走K8路線的一個(gè)例子。

當(dāng)你有一個(gè)單體應(yīng)用的時(shí)候,你決定把它放到Docker容器中。盡管從技術(shù)角度來(lái)看,Kubernetes能夠運(yùn)行你的容器化單體,但選擇在Kubernetes上部署這類應(yīng)用會(huì)讓你面臨很多挑戰(zhàn),而且?guī)缀醪粫?huì)帶來(lái)任何好處。

你的應(yīng)用將無(wú)法有效地消耗主機(jī)資源,因?yàn)镵ubernetes無(wú)法對(duì)應(yīng)用的不同部分進(jìn)行單獨(dú)的擴(kuò)展。這個(gè)應(yīng)用作為一個(gè)整體,只能整體地橫向或者是縱向擴(kuò)展。

你的容器化單體也可能需要在不同的交付階段(例如開(kāi)發(fā)、測(cè)試和生產(chǎn))進(jìn)行不同的配置,這意味著你將無(wú)法享受到容器在一致性配置方面帶來(lái)的好處,例如由于配置錯(cuò)誤導(dǎo)致的故障幾率會(huì)降低。

最糟糕的是,你最終也許不得不把安全配置數(shù)據(jù)(例如訪問(wèn)憑證)拷貝到你的單體容器映像中,這無(wú)形中增加了敏感信息落入壞人之手的風(fēng)險(xiǎn)。

底線是,雖然從技術(shù)上講沒(méi)有什么能夠阻止你在Kubernetes以容器的形式運(yùn)行單體應(yīng)用,但這么做絕對(duì)不是一個(gè)好主意。這是在Kubernetes上獲取應(yīng)用的一種方式,但客觀上來(lái)說(shuō)這是一種糟糕的方式。

最后,我要強(qiáng)調(diào)的是,我并不是反對(duì)Kubernetes。Kubernetes確實(shí)可以提供很多東西,特別是對(duì)于那些以離散微服務(wù)的方式運(yùn)行的應(yīng)用,這些應(yīng)用可以在共享集群上運(yùn)行良好,并且需要特殊的網(wǎng)絡(luò)配置。

但對(duì)于其他應(yīng)用來(lái)說(shuō),很可能存在一種替代性的部署解決方案,它的設(shè)置和管理都要比Kubernetes更簡(jiǎn)單,同時(shí)還能提供更高的性能、可擴(kuò)展性和成本節(jié)約優(yōu)勢(shì)。在你僅僅因?yàn)槠渌硕歼@么做而加入Kubernetes潮流之前,重要的是退后一步,想想哪種部署策略最適合你特定的應(yīng)用,而不是最流行的那種。


分享標(biāo)題:五種方法判斷Kubernetes是否適合你的應(yīng)用
文章鏈接:http://m.5511xx.com/article/cdoeogp.html