99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

容器探針的三種類型介紹

馬哥Linux運(yùn)維 ? 來(lái)源:cnblogs ? 2024-02-26 11:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

簡(jiǎn)介

容器探針(Container Probes)是一種機(jī)制,由 kubelet 對(duì)容器執(zhí)行定期的探查,從而獲取容器的狀態(tài)。探針的類型有三種:

啟動(dòng)探針(Startup Probe)

存活探針(Liveness Probe)

就緒探針(Readiness Probe)

探針功能

啟動(dòng)探針

啟動(dòng)探針(StartupProbe)主要用于檢測(cè)容器內(nèi)的應(yīng)用是否已經(jīng)成功啟動(dòng)并完成初始化任務(wù)。它的主要作用有以下幾點(diǎn):

延緩其他探針生效:在容器啟動(dòng)初期,啟動(dòng)探針先于存活探針(LivenessProbe)和就緒探針(ReadinessProbe)生效。當(dāng)啟動(dòng)探針配置存在時(shí),kubelet 不會(huì)執(zhí)行存活和就緒探針,直到啟動(dòng)探針成功為止。這對(duì)于某些啟動(dòng)時(shí)間較長(zhǎng)或者啟動(dòng)過(guò)程中有復(fù)雜初始化序列的應(yīng)用程序來(lái)說(shuō)非常重要,可以避免在應(yīng)用還未完全啟動(dòng)時(shí)就被誤判為不健康或就緒,進(jìn)而被錯(cuò)誤地重啟或流量過(guò)早涌入。

防止頻繁重啟:若應(yīng)用啟動(dòng)期間,存活探針或就緒探針就開(kāi)始工作,而此時(shí)應(yīng)用可能還沒(méi)有完全啟動(dòng)成功,這兩個(gè)探針可能會(huì)因?yàn)閼?yīng)用未能及時(shí)響應(yīng)而觸發(fā)容器重啟,造成不必要的服務(wù)中斷和循環(huán)重啟。啟動(dòng)探針的存在可以有效地防止此類情況的發(fā)生。

存活探針

存活探針(Liveness Probe)主要作用是檢測(cè)容器內(nèi)主進(jìn)程或服務(wù)是否仍然運(yùn)行正常且響應(yīng)健康檢查。具體來(lái)說(shuō):

自動(dòng)恢復(fù):當(dāng)存活探針檢測(cè)失敗時(shí),kubelet 將認(rèn)為該容器內(nèi)的主進(jìn)程已經(jīng)不再健康或者已停止提供預(yù)期的服務(wù)。此時(shí),kubelet 會(huì)根據(jù) Pod 的重啟策略來(lái)決定是否應(yīng)該重新啟動(dòng)這個(gè)容器。通過(guò)這種方式,存活探針可以幫助實(shí)現(xiàn)故障自愈,及時(shí)恢復(fù)服務(wù)的可用性。

就緒探針

就緒探針(Readiness Probe)主要作用是檢測(cè)容器是否已經(jīng)準(zhǔn)備好對(duì)外提供服務(wù)。具體來(lái)說(shuō):

流量路由控制:當(dāng)就緒探針成功時(shí),表示該容器內(nèi)部的應(yīng)用程序已處于可接受請(qǐng)求的狀態(tài),此時(shí) kubelet 會(huì)將該容器標(biāo)記為“就緒”狀態(tài),Service 將會(huì)將其 IP 地址添加到后端服務(wù)列表中,允許 Service 開(kāi)始將網(wǎng)絡(luò)流量轉(zhuǎn)發(fā)至這個(gè) Pod。

避免無(wú)效請(qǐng)求:如果就緒探針失敗,則意味著容器可能還在啟動(dòng)過(guò)程中、正在重啟服務(wù)、或者由于某種原因暫時(shí)無(wú)法正常響應(yīng)請(qǐng)求。在這種情況下,kubelet 會(huì)將容器從 Service 的后端池中移除,確保不會(huì)向其發(fā)送任何用戶請(qǐng)求,從而避免了因應(yīng)用未準(zhǔn)備完畢而引起的錯(cuò)誤響應(yīng)和用戶體驗(yàn)下降。

平滑過(guò)渡:通過(guò)就緒探針,Kubernetes 可以實(shí)現(xiàn)滾動(dòng)更新或部署過(guò)程中的平滑過(guò)渡,新版本的容器在通過(guò)就緒探針驗(yàn)證前,不會(huì)承擔(dān)任何實(shí)際流量,直到它們完全啟動(dòng)并做好處理請(qǐng)求的準(zhǔn)備。

探針?lè)绞?/p>

探針實(shí)現(xiàn)方式有三種:

HTTP GET請(qǐng)求:Kubernetes 通過(guò)向容器內(nèi)應(yīng)用發(fā)送一個(gè)HTTP GET請(qǐng)求來(lái)檢查應(yīng)用的狀態(tài)。如果收到的 HTTP 響應(yīng)碼在 200-399 范圍內(nèi),則認(rèn)為該探測(cè)成功。


livenessProbe:   #可指定其他兩種探針類型
  httpGet:     #指定探針?lè)绞?    path: /healthz   #http請(qǐng)求路徑
    port: 8080      #請(qǐng)求端口
    httpHeaders: # 可選,用于設(shè)置自定義HTTP頭部
    - name: Custom-Header
      value: huawei

TCP Socket檢查:Kubernetes 嘗試與容器上指定的端口建立 TCP 連接。如果能夠成功建立連接,則說(shuō)明探測(cè)成功。


livenessProbe:
  tcpSocket:
    port: 8080

exec執(zhí)行命令:在容器內(nèi)部執(zhí)行一個(gè)命令,并根據(jù)命令退出時(shí)返回的狀態(tài)碼判斷容器是否正常運(yùn)行。通常情況下,如果命令返回 0,則表示成功。


livenessProbe:
  exec:
    command:
    - cat
    - /tmp/health

啟動(dòng)探針、存活探針和就緒探針同時(shí)支持這三種方式。每種探針可以選擇不同探測(cè)方式

探針配置參數(shù)

Kubernetes中的探針都支持一些通用的參數(shù)來(lái)定義它們的行為。以下是這些探針通常使用的配置參數(shù):

initialDelaySeconds:容器啟動(dòng)后要等待多少秒后才啟動(dòng)啟動(dòng)、存活和就緒探針。如果定義了啟動(dòng)探針,則存活探針和就緒探針的延遲將在啟動(dòng)探針已成功之后才開(kāi)始計(jì)算。如果 periodSeconds 的值大于 initialDelaySeconds,則 initialDelaySeconds 將被忽略。默認(rèn)是 0 秒,最小值是 0。

periodSeconds:執(zhí)行探測(cè)的時(shí)間間隔(單位是秒)。默認(rèn)是 10 秒。最小值是 1。

timeoutSeconds:探測(cè)的超時(shí)后等待多少秒。默認(rèn)值是 1 秒。最小值是 1。

successThreshold:探針在失敗后,被視為成功的最小連續(xù)成功數(shù)。默認(rèn)值是 1。存活和啟動(dòng)探針的這個(gè)值必須是 1。

failureThreshold:探針連續(xù)失敗了 failureThreshold 次之后, Kubernetes 認(rèn)為總體上檢查已失敗:容器狀態(tài)未就緒、不健康、不活躍。對(duì)于啟動(dòng)探針或存活探針而言,如果至少有 failureThreshold 個(gè)探針已失敗, Kubernetes 會(huì)將容器視為不健康并為這個(gè)特定的容器觸發(fā)重啟操作。kubelet 遵循該容器的terminationGracePeriodSeconds 設(shè)置。

terminationGracePeriodSeconds:k8s1.25以上版本新增,為 kubelet 配置從為失敗的容器觸發(fā)終止操作到強(qiáng)制容器運(yùn)行時(shí)停止該容器之前等待的寬限時(shí)長(zhǎng)。默認(rèn)值是繼承 Pod 級(jí)別的 terminationGracePeriodSeconds 值(如果不設(shè)置則為 30 秒),最小值為 1。就緒探針不需要配置該參數(shù)

完整配置示例:


livenessProbe:
  #可以選擇 httpGet、tcpSocket 或 exec 中的一種
  httpGet:
    path: /health
    port: 8080
    httpHeaders:
    - name: Custom-Header
      value: huawei
  #通用參數(shù):
  initialDelaySeconds: 30
  periodSeconds: 10
  timeoutSeconds: 1
  successThreshold: 1
  failureThreshold: 3
  terminationGracePeriodSeconds: 30


readinessProbe: # 就緒探針配置類似
startupProbe:   # 啟動(dòng)探針配置也相似

配置建議

如果應(yīng)用是慢啟動(dòng)類型,建議配置啟動(dòng)探針或者為存活探針配置initialDelaySeconds參數(shù),避免存活探針過(guò)早介入導(dǎo)致容器頻繁重啟。如果應(yīng)用啟動(dòng)時(shí)間不固定建議使用啟動(dòng)探針。

可以將啟動(dòng)探針initialDelaySeconds、periodSeconds的值調(diào)低,讓啟動(dòng)探針更快感知容器健康狀態(tài);由于啟動(dòng)探針探測(cè)成功后就會(huì)退出不會(huì)影響容器后續(xù)運(yùn)行,可以將failureThreshold的值調(diào)大,避免應(yīng)用還未啟動(dòng)完成過(guò)早觸發(fā)重啟

由于存活探針探測(cè)失敗會(huì)導(dǎo)致容器重啟,因此將存活探針的failureThreshold設(shè)置比就緒探針大,這樣如果應(yīng)用有問(wèn)題應(yīng)該先切斷流量

審核編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 探針
    +關(guān)注

    關(guān)注

    4

    文章

    219

    瀏覽量

    21003
  • 容器
    +關(guān)注

    關(guān)注

    0

    文章

    511

    瀏覽量

    22457

原文標(biāo)題:一文帶你了解容器探針

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    protel *** 一個(gè)庫(kù)安裝了三種類型的,怎么回事?

    本帖最后由 pqwlkh 于 2012-11-28 10:15 編輯 protel *** 一個(gè)庫(kù)安裝了三種類型的,怎么回事?
    發(fā)表于 11-28 09:59

    三種類型的復(fù)位

    00. 目錄文章目錄00. 目錄01. 概述02. 系統(tǒng)復(fù)位03. 電源復(fù)位04. 備份域復(fù)位05. 預(yù)留06. 附錄07. 聲明01. 概述共有三種類型的復(fù)位,分別為系統(tǒng)復(fù)位、電源復(fù)位和備份域復(fù)位
    發(fā)表于 07-23 06:10

    三種類型的軸承數(shù)據(jù)

    參見(jiàn)相關(guān)說(shuō)明,或者參見(jiàn)其他帖子。然后下載其中某一個(gè)類別的某一個(gè)故障數(shù)據(jù)文件后,文件類型是.mat格式,可以使用MATLAB打開(kāi),打開(kāi)后發(fā)現(xiàn)里面又區(qū)分了三種類型的數(shù)據(jù),如上圖,這里不太清楚為什么在已...
    發(fā)表于 09-08 06:32

    編譯的三種類型是什么?

    編譯的三種類型是什么?ARM_Linux制作嵌入式遠(yuǎn)程調(diào)試工具
    發(fā)表于 12-24 06:42

    mimo技術(shù)的三種模式介紹,mimo技術(shù)作用,mimo技術(shù)種類

    本文以MIMO技術(shù)為中心,主要介紹了mimo技術(shù)的三種模式介紹,mimo技術(shù)作用,mimo技術(shù)種類以及mimo技術(shù)在生活當(dāng)中的應(yīng)用。
    發(fā)表于 12-12 15:58 ?6.8w次閱讀
    mimo技術(shù)的<b class='flag-5'>三種</b>模式<b class='flag-5'>介紹</b>,mimo技術(shù)作用,mimo技術(shù)<b class='flag-5'>種類</b>

    區(qū)塊鏈的三種類型及應(yīng)用介紹

    因?yàn)?,區(qū)塊鏈應(yīng)用的領(lǐng)域不同,有的領(lǐng)域更需要安全,有的領(lǐng)域則更注重效率,于是就導(dǎo)致,市面上就出現(xiàn)了多種改良版本的區(qū)塊鏈,按照對(duì)節(jié)點(diǎn)的開(kāi)放程度的不同,目前主要把區(qū)塊鏈分為三種類型,分別是公有鏈、私有鏈和聯(lián)盟鏈。
    發(fā)表于 10-25 10:41 ?1.2w次閱讀

    verilog中端口類型有哪三種_verilog語(yǔ)言入門教程

    本文主要闡述了verilog中端口的三種類型及verilog語(yǔ)言入門教程。
    發(fā)表于 08-27 09:29 ?1.2w次閱讀

    薄膜電容器按電介質(zhì)的不同可分為三種類型

    薄膜電容的分類介紹 電介質(zhì)分類 按電介質(zhì)的不同可將薄膜電容器分為以下三種類型: T型:即PET –Polyethylene(聚乙烯對(duì)苯二酸鹽(或酯))P型:即PP-Polypropylene(聚丙烯
    發(fā)表于 05-25 00:18 ?2687次閱讀

    氣動(dòng)氣缸的類型之氣缸的三種種類類型說(shuō)明

    氣動(dòng)氣缸的類型(氣缸的三種種類類型)-藤倉(cāng)自動(dòng)化 氣動(dòng)氣缸最常用于工程和制造行業(yè),通過(guò)加壓氣體的積聚來(lái)產(chǎn)生運(yùn)動(dòng)。當(dāng)然,您需要的氣缸類型會(huì)因具體應(yīng)用和行業(yè)而異。圓柱體也俗稱圓柱體;由于儀
    發(fā)表于 08-05 17:31 ?7754次閱讀

    容器三種用途分享

    容器大致用于以下三種用途。鉭電容器作為電容器的一,也被用于同樣的用途。
    發(fā)表于 01-03 11:54 ?2197次閱讀

    功率放大器的種類有哪三種類型

    功率放大器是一能將輸入信號(hào)轉(zhuǎn)換為更高功率輸出的電子設(shè)備。在電子工程和音頻領(lǐng)域中,功率放大器通常被分為三種類型:A類、B類和AB類。下面安泰電子將詳細(xì)介紹三種類型的功率放大器及其特點(diǎn)
    的頭像 發(fā)表于 08-02 17:45 ?1951次閱讀
    功率放大器的<b class='flag-5'>種類</b>有哪<b class='flag-5'>三種類型</b>

    耦合有哪幾種類型?電路的三種耦合方式 三種耦合電路及其特點(diǎn)

    耦合有哪幾種類型?電路的三種耦合方式 三種耦合電路及其特點(diǎn) 耦合是指電子元件或電路中不同部分之間的相互作用。在電路中,耦合可以分為很多種類型,其中最基本的有磁耦合和電容耦合兩
    的頭像 發(fā)表于 09-22 12:22 ?1.2w次閱讀

    伺服電機(jī)控制器的是三種類型介紹

    伺服電機(jī)控制器的類型包括降壓起動(dòng)器、調(diào)速驅(qū)動(dòng)器、智能控制器等三種分類,另外控制方面主要以方波控制、正弦波控制等兩方式,那么下面就詳細(xì)介紹一下相關(guān)內(nèi)容。
    發(fā)表于 11-19 10:00 ?1464次閱讀

    常見(jiàn)的socket三種類型

    常見(jiàn)的socket三種類型? Socket是計(jì)算機(jī)網(wǎng)絡(luò)中常用的通信機(jī)制,在網(wǎng)絡(luò)編程中起到了非常重要的作用。Socket可以分為三種類型:流套接字(Stream Socket)、數(shù)據(jù)報(bào)套接字
    的頭像 發(fā)表于 12-08 11:18 ?3101次閱讀

    雷達(dá)的種類有哪三種類型

    雷達(dá)是一利用電磁波進(jìn)行目標(biāo)探測(cè)和跟蹤的設(shè)備。它在軍事、航空、海洋、天文和氣象等領(lǐng)域具有廣泛的應(yīng)用。雷達(dá)的種類可以按照不同的分類方式進(jìn)行劃分。在本文中,我們將按照雷達(dá)的工作方式,將雷達(dá)分為三種類型
    的頭像 發(fā)表于 12-21 11:38 ?7647次閱讀