自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

管理Kubernetes資源:5件要注意的事情

云計算
Kubernetes自動化了許多大規(guī)模管理容器的工作。但是容器化的應(yīng)用程序通常共享池化的資源,因此您需要正確地分配和管理它們。

[[340175]]

本文轉(zhuǎn)載自微信公眾號「新鈦云服」,作者黃豪杰 翻譯。轉(zhuǎn)載本文請聯(lián)系新鈦云服公眾號。

 Kubernetes自動化了許多大規(guī)模管理容器的工作。但是容器化的應(yīng)用程序通常共享池化的資源,因此您需要正確地分配和管理它們。

容器編排為IT團(tuán)隊提供了強(qiáng)大的承諾:它可以自動處理大量管理容器所需的大量工作。

想想Kubernetes (K8s)在項目官方網(wǎng)站上自我描述的強(qiáng)大功能:“Kubernetes (K8s)是一個用于自動化部署、擴(kuò)展和管理容器化應(yīng)用程序的開源系統(tǒng)。”

這非常重要-特別是當(dāng)您談?wù)摰膱F(tuán)隊正在運行許多容器化應(yīng)用程序時。雖然像Kubernetes這樣的編配器本身的自動化被廣泛認(rèn)為是在生產(chǎn)環(huán)境中運行容器的必要條件,但這并不意味著IT專業(yè)人員可以放松下來。還有很多工作要做,包括設(shè)置和優(yōu)化集群上運行的應(yīng)用程序的資源管理方式。

為什么需要管理Kubernetes資源

Altran的技術(shù)、研究和創(chuàng)新總監(jiān)Raghu Kishore Vempati說:“Kubernetes為計劃在其上運行的pods提供了管理所有關(guān)鍵資源的選項——比如計算、內(nèi)存和存儲。”集群沒有無限的資源,通常情況下,每個應(yīng)用程序/解決方案都有自己的Kubernetes集群并不常見,除非它們非常特殊并且應(yīng)該以這種方式運行。

這意味著應(yīng)用程序通常共享集合的資源。分配這些資源的“正確”方式會因組織和應(yīng)用程序的不同而不同,但好消息是Kubernetes包含了許多用于資源管理的特性。

Kasten的工程主管Tom Manville說:“Kubernetes可以部署在任何地方,但這意味著所需的基礎(chǔ)設(shè)施將是您的環(huán)境所特有的。”“重要的是要了解你的環(huán)境中需要的資源,并適當(dāng)?shù)胤峙渌鼈?。隨著集群的擴(kuò)展,基礎(chǔ)設(shè)施也必須擴(kuò)展。幸運的是,擴(kuò)展集群的規(guī)模很容易,而且在很多情況下,這可以自動發(fā)生。”

管理Kubernetes資源: 要知道的5個關(guān)鍵事情

Vempati指出,Kubernetes環(huán)境中的計算或存儲等資源的管理可以大致分為兩類:Kubernetes在系統(tǒng)級提供的資源,以及需要在應(yīng)用程序和體系結(jié)構(gòu)級進(jìn)行規(guī)劃的資源。這篇文章將主要關(guān)注前一類的功能。

讓我們深入了解五件重要的事情。

1.使用命名空間和資源配額

Vempati指出,團(tuán)隊通常在同一個集群上運行多個應(yīng)用程序。對于這種類型的使用,Vempati和其他專家通常建議在多租戶環(huán)境中使用命名空間作為隔離和其他目的的最佳實踐。類似地,當(dāng)多個團(tuán)隊或多個用戶訪問同一個集群時(有時會同時運行多個應(yīng)用程序),也建議使用命名空間。命名空間也是Kubernetes安全性的一部分。

當(dāng)您在這些多應(yīng)用程序、多用戶環(huán)境中使用名稱空間時,Vempati還建議使用Kubernetes的本地資源配額特性,以確保在分配給這些名稱空間的應(yīng)用程序和團(tuán)隊之間正確地分配內(nèi)容。

“資源配額允許集群管理員控制每個命名空間的總體資源消耗,”Vempati說。這可以包括每個命名空間可以創(chuàng)建的對象的總數(shù)——計算、內(nèi)存和存儲。例如,我們可以在非終端狀態(tài)下對所有pods設(shè)置CPU限制或內(nèi)存限制,不超過某個值。”

來自Kasten的Manville指出,CPU和內(nèi)存通常是管理員使用資源配額進(jìn)行約束的最常見資源,但是您也可以限制名稱空間中的pod數(shù)量??梢赃@樣說,資源配額是一個重要的管理工具。

Vempati說:“基于配額的管理允許集群管理員有效地管理整體資源,以最合適的方式將它們分配給所有的應(yīng)用程序。”

2.使用限制范圍

資源配額用于在名稱空間級別管理資源消耗。換句話說,一旦設(shè)置,它們將應(yīng)用于整個命名空間。限制范圍具有類似目的,但會限制單個容器或容器級別的資源消耗。

“Kubernetes為管理員提供了強(qiáng)大的原語,以控制應(yīng)用程序消耗的資源”Manville說。“管理員可以配置限制范圍,以限制開發(fā)人員的資源請求,并創(chuàng)建資源配額以限制命名空間中消耗的資源總數(shù)。”

考慮這些相關(guān)功能之間的區(qū)別的另一種方式是:可以使用名稱空間和資源配額來確保應(yīng)用程序或團(tuán)隊不會占用集群的總體池資源的必要份額。限制范圍有助于防止單個pod或容器占用分配給特定名稱空間的大部分資源的情況。

3. 設(shè)置網(wǎng)絡(luò)策略

Kubernetes還具有有關(guān)網(wǎng)絡(luò)的本地特性,包括pods如何相互通信(或被阻止通信)。Vempati建議使用網(wǎng)絡(luò)策略。

Vempati說:“對于網(wǎng)絡(luò),Kubernetes允許一個選項來設(shè)置網(wǎng)絡(luò)策略,該策略可以幫助指定集群上調(diào)度的各個pods如何與其他節(jié)點以及同一集群上的其他端點通信。”“例如,我們可以為pods設(shè)定進(jìn)出交通規(guī)則。” 這也是整體的、分層的容器安全方法的一部分。

4. 如果適用,請不要忘記存儲

存儲值得自己深入研究。就像管理員可以對CPU和內(nèi)存有非常特定的控制一樣,相同的原理也適用于存儲。

“Kubernetes幫助設(shè)定了非常細(xì)粒度的限制,”Vempati說。因此,在一個給定的名稱空間中,您可以設(shè)置一個可以存在于該名稱空間中的PersistentVolumeClaims的數(shù)量限制。

Red Hat的技術(shù)專員Gordon Haff將持久卷(PV)描述為有效 管理的最重要的Kubernetes資源之一。

Haff說:“配置不綁定到臨時容器映像的存儲的能力是Kubernetes的關(guān)鍵創(chuàng)新之一,它將Kubernetes與一些早期的基于容器的平臺即服務(wù)(PaaS)產(chǎn)品區(qū)分開來。”“如果沒有持久存儲,你的應(yīng)用架構(gòu)就會局限于特定的樣式。

Haff指出,Kubernetes中的PV是作為插件實現(xiàn)的,其生命周期與使用PV的任何單個Pod無關(guān)。PersistentVolumeClaim本質(zhì)上是用戶的存儲請求,Haff補(bǔ)充說,它進(jìn)一步抽象了PV的細(xì)節(jié)。

“ Kubernetes是按這種方式設(shè)計的,因為用戶通常需要具有不同屬性(例如性能)的PV來解決不同的問題和工作負(fù)載,” Haff解釋說。“不同類型的PV也具有不同類型的訪問模式。”

因此,這涉及到Vempati上面描述的第二類資源管理:應(yīng)用程序和體系結(jié)構(gòu)級別的資源規(guī)劃。Haff指出,存儲是一開始就需要評估的東西。

Haff說:“管理Kubernetes資源的一個重要部分是預(yù)先計劃是否首先需要持久性存儲(比如數(shù)據(jù)庫),如果需要,那么哪個卷插件最適合您的工作負(fù)載和計算環(huán)境。”

談到數(shù)據(jù)庫,Crunchy Data的平臺工程副總裁Jonathan Katz說,有狀態(tài)應(yīng)用程序為資源管理引入了一些額外的細(xì)微差別。“例如,內(nèi)存是一個重要的PostgreSQL可調(diào)資源,”Katz說。在Kubernetes操作符的PostreqSQL背后隱藏著復(fù)雜的數(shù)據(jù)。

Katz解釋說:“將你的內(nèi)存請求設(shè)置為你想要長期使用的實際內(nèi)存值是很重要的,而不是設(shè)置一個較低的請求和較高的限制。”“這將確保你的PostgreSQL實例被調(diào)度到一個有足夠資源的節(jié)點,因為更多的數(shù)據(jù)被緩存在內(nèi)存中,并且限制了事件的風(fēng)險,比如驅(qū)逐或者被OOM殺手訪問。”

5. 保持整潔:API對象和監(jiān)控

“如果您的任何應(yīng)用程序直接使用Kubernetes API,請確保自動清理API對象,”Manville說。大量未使用的API對象會降低集群的性能。更糟糕的是,這些對象有時會映射到閑置的基礎(chǔ)設(shè)施,這可能會增加不必要的成本。”

通常,有效的資源管理要求團(tuán)隊和管理員能夠看到正在發(fā)生的事情。因此,不要忘記監(jiān)視并確保密切關(guān)注集群之間的資源使用情況。

“這將幫助您更好地了解集群正在使用的資源,在集群接近容量時提醒您,并且在某些情況下,讓Kubernetes自動伸縮,”Manville說。

原文鏈接https://enterprisersproject.com/article/2020/8/managing-kubernetes-resources-5-things-remember

 

責(zé)任編輯:武曉燕 來源: 新鈦云服
相關(guān)推薦

2022-09-29 08:03:20

?Kubernete容器共享池

2010-10-12 15:04:52

MySql索引

2012-05-28 09:34:33

Linux Mint UbuntOS

2019-06-23 16:02:12

Kubernetes集群節(jié)點高并發(fā)

2017-06-07 09:13:13

云存儲云服務(wù)公有云

2013-09-12 11:24:24

創(chuàng)業(yè)

2018-05-07 15:32:54

編程語言Python程序員

2020-05-31 19:07:08

人工智能AI項目

2011-06-24 14:18:40

Firefox 5

2009-03-06 19:17:21

Windows 7測試

2011-05-20 08:53:07

HTML 5

2018-03-02 08:30:10

Wi-Fi網(wǎng)絡(luò)速度

2020-09-09 07:00:00

Kubernetes集群容器

2013-08-13 09:44:42

iOS 7開發(fā)者

2020-05-27 10:46:49

Kubernetes容器云計算

2011-07-21 15:40:24

iPhone 內(nèi)存管理 對象

2022-08-26 07:52:54

Kubernetes容器混合云

2013-09-03 13:01:01

團(tuán)隊管理團(tuán)隊

2021-11-22 16:21:28

Kubernetes 運維開源

2019-09-03 15:33:35

網(wǎng)絡(luò)安全保險網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊
點贊
收藏

51CTO技術(shù)棧公眾號