這篇文章給大家介紹如何理解Kubernetes 探針,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
創(chuàng)新互聯(lián)作為成都網(wǎng)站建設(shè)公司,專注重慶網(wǎng)站建設(shè)公司、網(wǎng)站設(shè)計(jì),有關(guān)成都定制網(wǎng)站方案、改版、費(fèi)用等問(wèn)題,行業(yè)涉及成都三維植被網(wǎng)等多個(gè)領(lǐng)域,已為上千家企業(yè)服務(wù),得到了客戶的尊重與認(rèn)可。
配置 readiness、liveness 和 startup 探針可以處理不健康的 Pod,小編介紹了三種類型的探針、最佳實(shí)踐和有關(guān)工具,以檢測(cè)可能存在的配置問(wèn)題。
分布式系統(tǒng)和微服務(wù)體系結(jié)構(gòu)的挑戰(zhàn)之一是自動(dòng)檢測(cè)不正常的應(yīng)用程序,并將請(qǐng)求(request)重新路由到其他可用系統(tǒng),恢復(fù)損壞的組件。健康檢查是應(yīng)對(duì)該挑戰(zhàn)的一種可靠方法。使用 Kubernetes,可以通過(guò)探針配置運(yùn)行狀況檢查,以確定每個(gè) Pod 的狀態(tài)。
同樣的,這也是 Kubernetes 探針用來(lái)定義容器何時(shí)準(zhǔn)備接受流量,以及何時(shí)重新啟動(dòng)容器的方式。從 Kubernetes v1.16 開(kāi)始,已經(jīng)支持三種類型的探針。在文中將介紹這三種類型的探針、最佳實(shí)踐和有關(guān)工具,以檢測(cè)可能存在的配置問(wèn)題。
Kubernetes 探針
Kubernetes 版本小于 v1.15 時(shí)支持 readiness 和 liveness 探針,在 v1.16 中添加了 startup 探針作為 Alpha 功能,并在 v1.18 中升級(jí)為 Beta。
initialDelaySeconds
:?jiǎn)?dòng) liveness、readiness 探針前要等待的秒數(shù)。periodSeconds
:檢查探針的頻率。timeoutSeconds
:將探針標(biāo)記為超時(shí)(未通過(guò)運(yùn)行狀況檢查)之前的秒數(shù)。successThreshold
:探針需要通過(guò)的最小連續(xù)成功檢查數(shù)量。failureThreshold
:將探針標(biāo)記為失敗之前的重試次數(shù)。對(duì)于 liveness 探針,這將導(dǎo)致 Pod 重新啟動(dòng)。對(duì)于 readiness 探針,將標(biāo)記 Pod 為未就緒(unready)。initialDelaySeconds
來(lái)確定 readiness 探測(cè)在準(zhǔn)備就緒前要等待多長(zhǎng)時(shí)間。
假設(shè)有一個(gè)偶爾需要下載大量數(shù)據(jù)的應(yīng)用程序,由于 initialDelaySeconds
是一個(gè)靜態(tài)數(shù)字,因此該應(yīng)用程序即使不需要那么長(zhǎng)的初始化等待時(shí)間,我們也必須設(shè)置最保守的等待時(shí)間。通過(guò) startup 探針,我們可以配置 failureThreshold
和 periodSeconds
來(lái)解決該問(wèn)題,例如設(shè)置 failureThreshold
為 15,periodSeconds
為 5,這意味著應(yīng)用程序在失敗之前會(huì)有 10x5=75s 的啟動(dòng)時(shí)間。
配置探針
現(xiàn)在我們了解了不同類型的探針,下面是配置每種探針的三種不同方式。
/healthz
endpoint 的 Express server)。HTTP 探針包含其他額外參數(shù):
host
:要連接的主機(jī)名(默認(rèn)值:pod 的 IP)。scheme
:HTTP(默認(rèn))或 HTTPS。path
:HTTP/S 服務(wù)器上的路徑 。httpHeaders
:自定義標(biāo)頭(如果需要標(biāo)頭用于身份驗(yàn)證、CORS 設(shè)置等) 。port
:訪問(wèn)服務(wù)器的端口名稱或端口號(hào)。最佳實(shí)踐
雖然說(shuō)探針的確切參數(shù)和使用方法取決于應(yīng)用程序,但也有一些常用的最佳實(shí)踐:
/healthz
),但能將 failureThreshold
設(shè)置得比其他探針更高,以擁有更長(zhǎng)的啟動(dòng)時(shí)間,相對(duì)于 liveness 和 readiness 而言,設(shè)置的失敗時(shí)間會(huì)更合理。簡(jiǎn)而言之,定義明確的探針通常會(huì)帶來(lái)更好的彈性和可用性。確保觀察啟動(dòng)時(shí)間和系統(tǒng)行為,在應(yīng)用程序更改時(shí)調(diào)整探針設(shè)置。
工具
最后,鑒于 Kubernetes 探針的重要性,我們可以使用 Kubernetes 資源分析工具來(lái)檢測(cè)缺失的探針。這些工具可以在現(xiàn)有集群上運(yùn)行,也可以置入 CI/CD 流程中,可以在沒(méi)有正確配置資源的情況下自動(dòng)拒絕工作負(fù)載。
關(guān)于如何理解Kubernetes 探針就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
網(wǎng)頁(yè)名稱:如何理解Kubernetes探針
鏈接URL:http://aaarwkj.com/article6/pccpog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、App設(shè)計(jì)、、外貿(mào)網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)