精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Docker 容器健康檢查機(jī)制

云計(jì)算
對(duì)于容器而言,最簡(jiǎn)單的健康檢查是進(jìn)程級(jí)的健康檢查,即檢驗(yàn)進(jìn)程是否存活。Docker Daemon會(huì)自動(dòng)監(jiān)控容器中的PID1進(jìn)程,如果docker run命令中指明了restart policy,可以根據(jù)策略自動(dòng)重啟已結(jié)束的容器。在很多實(shí)際場(chǎng)景下,僅使用進(jìn)程級(jí)健康檢查機(jī)制還遠(yuǎn)遠(yuǎn)不夠。比如,容器進(jìn)程雖然依舊運(yùn)行卻由于應(yīng)用死鎖無(wú)法繼續(xù)響應(yīng)用戶請(qǐng)求,這樣的問(wèn)題是無(wú)法通過(guò)進(jìn)程監(jiān)控發(fā)現(xiàn)的。

[[201204]]

在分布式系統(tǒng)中,經(jīng)常需要利用健康檢查機(jī)制來(lái)檢查服務(wù)的可用性,防止其他服務(wù)調(diào)用時(shí)出現(xiàn)異常。

對(duì)于容器而言,最簡(jiǎn)單的健康檢查是進(jìn)程級(jí)的健康檢查,即檢驗(yàn)進(jìn)程是否存活。Docker Daemon會(huì)自動(dòng)監(jiān)控容器中的PID1進(jìn)程,如果docker run命令中指明了restart policy,可以根據(jù)策略自動(dòng)重啟已結(jié)束的容器。在很多實(shí)際場(chǎng)景下,僅使用進(jìn)程級(jí)健康檢查機(jī)制還遠(yuǎn)遠(yuǎn)不夠。比如,容器進(jìn)程雖然依舊運(yùn)行卻由于應(yīng)用死鎖無(wú)法繼續(xù)響應(yīng)用戶請(qǐng)求,這樣的問(wèn)題是無(wú)法通過(guò)進(jìn)程監(jiān)控發(fā)現(xiàn)的。

在Kubernetes提供了Liveness與Readness探針?lè)謩e對(duì)Container及其服務(wù)健康狀態(tài)進(jìn)行檢查。阿里云容器服務(wù)也提供了類似的服務(wù)健康檢查機(jī)制。

Docker 原生健康檢查能力

而自 1.12 版本之后,Docker 引入了原生的健康檢查實(shí)現(xiàn),可以在Dockerfile中聲明應(yīng)用自身的健康檢測(cè)配置。HEALTHCHECK 指令聲明了健康檢測(cè)命令,用這個(gè)命令來(lái)判斷容器主進(jìn)程的服務(wù)狀態(tài)是否正常,從而比較真實(shí)的反應(yīng)容器實(shí)際狀態(tài)。

HEALTHCHECK 指令格式:

  • HEALTHCHECK [選項(xiàng)] CMD <命令>:設(shè)置檢查容器健康狀況的命令
  • HEALTHCHECK NONE:如果基礎(chǔ)鏡像有健康檢查指令,使用這行可以屏蔽掉

注:在Dockerfile中 HEALTHCHECK 只可以出現(xiàn)一次,如果寫了多個(gè),只有最后一個(gè)生效。

使用包含 HEALTHCHECK 指令的dockerfile構(gòu)建出來(lái)的鏡像,在實(shí)例化Docker容器的時(shí)候,就具備了健康狀態(tài)檢查的功能。啟動(dòng)容器后會(huì)自動(dòng)進(jìn)行健康檢查。

HEALTHCHECK 支持下列選項(xiàng):

  • interval=<間隔>:兩次健康檢查的間隔,默認(rèn)為 30 秒;
  • timeout=<間隔>:健康檢查命令運(yùn)行超時(shí)時(shí)間,如果超過(guò)這個(gè)時(shí)間,本次健康檢查就被視為失敗,默認(rèn) 30 秒;
  • retries=<次數(shù)>:當(dāng)連續(xù)失敗指定次數(shù)后,則將容器狀態(tài)視為 unhealthy,默認(rèn) 3 次。
  • start-period=<間隔>: 應(yīng)用的啟動(dòng)的初始化時(shí)間,在啟動(dòng)過(guò)程中的健康檢查失效不會(huì)計(jì)入,默認(rèn) 0 秒; (從17.05)引入

在 HEALTHCHECK [選項(xiàng)] CMD 后面的命令,格式和 ENTRYPOINT 一樣,分為 shell 格式,和 exec 格式。命令的返回值決定了該次健康檢查的成功與否:

  • 0:成功;
  • 1:失敗;
  • 2:保留值,不要使用

容器啟動(dòng)之后,初始狀態(tài)會(huì)為 starting (啟動(dòng)中)。Docker Engine會(huì)等待 interval 時(shí)間,開(kāi)始執(zhí)行健康檢查命令,并周期性執(zhí)行。如果單次檢查返回值非0或者運(yùn)行需要比指定 timeout 時(shí)間還長(zhǎng),則本次檢查被認(rèn)為失敗。如果健康檢查連續(xù)失敗超過(guò)了 retries 重試次數(shù),狀態(tài)就會(huì)變?yōu)?unhealthy (不健康)。

注:

  • 一旦有一次健康檢查成功,Docker會(huì)將容器置回 healthy (健康)狀態(tài)
  • 當(dāng)容器的健康狀態(tài)發(fā)生變化時(shí),Docker Engine會(huì)發(fā)出一個(gè) health_status 事件。

假設(shè)我們有個(gè)鏡像是個(gè)最簡(jiǎn)單的 Web 服務(wù),我們希望增加健康檢查來(lái)判斷其 Web 服務(wù)是否在正常工作,我們可以用 curl來(lái)幫助判斷,其 Dockerfile 的 HEALTHCHECK 可以這么寫:

  1. FROM elasticsearch:5.5 
  2.  
  3. HEALTHCHECK --interval=5s --timeout=2s --retries=12 \ 
  4.   CMD curl --silent --fail localhost:9200/_cluster/health || exit 1 
  5. docker build -t test/elasticsearch:5.5 . 
  6.  
  7. docker run --rm -d \ 
  8.     --name=elasticsearch \ 
  9.     test/elasticsearch:5.5 

我們可以通過(guò) docker ps,來(lái)發(fā)現(xiàn)過(guò)了幾秒之后,Elasticsearch容器從 starting 狀態(tài)進(jìn)入了 healthy 狀態(tài)

  1. $ docker ps 
  2. CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS                            PORTS                NAMES 
  3. c9a6e68d4a7f        test/elasticsearch:5.5   "/docker-entrypoin..."   2 seconds ago       Up 2 seconds (health: starting)   9200/tcp, 9300/tcp   elasticsearch 
  4. $ docker ps 
  5. CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS                    PORTS                NAMES 
  6. c9a6e68d4a7f        test/elasticsearch:5.5   "/docker-entrypoin..."   14 seconds ago      Up 13 seconds (healthy)   9200/tcp, 9300/tcp   elasticsearch 

另外一種方法是在 docker run 命令中,直接指明healthcheck相關(guān)策略。

  1. $ docker run --rm -d \ 
  2.     --name=elasticsearch \ 
  3.     --health-cmd="curl --silent --fail localhost:9200/_cluster/health || exit 1" \ 
  4.     --health-interval=5s \ 
  5.     --health-retries=12 \ 
  6.     --health-timeout=2s \ 
  7.     elasticsearch:5.5 

為了幫助排障,健康檢查命令的輸出(包括 stdout 以及 stderr)都會(huì)被存儲(chǔ)于健康狀態(tài)里,可以用 docker inspect 來(lái)查看。我們可以通過(guò)如下命令,來(lái)獲取過(guò)去5個(gè)容器的健康檢查結(jié)果

  1. docker inspect --format='{{json .State.Health}}' elasticsearch 

  1. docker inspect elasticsearch | jq ".[].State.Health" 

示例結(jié)果如下

  1.   "Status""healthy"
  2.   "FailingStreak": 0, 
  3.   "Log": [ 
  4.     { 
  5.       "Start""2017-08-19T09:12:53.393598805Z"
  6.       "End""2017-08-19T09:12:53.452931792Z"
  7.       "ExitCode": 0, 
  8.       "Output""..." 
  9.     }, 
  10.     ... 

由于應(yīng)用的開(kāi)發(fā)者會(huì)更加了解應(yīng)用的SLA,一般建議在Dockerfile中聲明相應(yīng)的健康檢查策略,這樣可以方便鏡像的使用。對(duì)于應(yīng)用的部署和運(yùn)維人員,可以通過(guò)命令行參數(shù)和REST API針對(duì)部署場(chǎng)景對(duì)健康檢查策略按需進(jìn)行調(diào)整。

注:

  • 阿里云容器服務(wù)同時(shí)支持Docker原生健康檢測(cè)機(jī)制和阿里云的擴(kuò)展檢查機(jī)制
  • 目前Kubernetes還不提供對(duì)Docker原生健康檢查機(jī)制的支持。

Docker Swarm mode中的服務(wù)健康檢查能力

在Docker 1.13之后,在Docker Swarm mode中提供了對(duì)健康檢查策略的支持

可以在 docker service create 命令中指明健康檢查策略

  1. $ docker service create -d \ 
  2.     --name=elasticsearch \ 
  3.     --health-cmd="curl --silent --fail localhost:9200/_cluster/health || exit 1" \ 
  4.     --health-interval=5s \ 
  5.     --health-retries=12 \ 
  6.     --health-timeout=2s \ 
  7.     elasticsearch 

在Swarm模式下,Swarm manager會(huì)監(jiān)控服務(wù)task的健康狀態(tài),如果容器進(jìn)入 unhealthy 狀態(tài),它會(huì)停止容器并且重新啟動(dòng)一個(gè)新容器來(lái)取代它。這個(gè)過(guò)程中會(huì)自動(dòng)更新服務(wù)的 load balancer (routing mesh) 后端或者 DNS記錄,可以保障服務(wù)的可用性。

在1.13版本之后,在服務(wù)更新階段也增加了對(duì)健康檢查的支持,這樣在新容器完全啟動(dòng)成功并進(jìn)入健康狀態(tài)之前,load balancer/DNS解析不會(huì)將請(qǐng)求發(fā)送給它。這樣可以保證應(yīng)用在更新過(guò)程中請(qǐng)求不會(huì)中斷。

下面是在服務(wù)更新過(guò)程的時(shí)序圖

 

總結(jié)

在企業(yè)生產(chǎn)環(huán)境中,合理的健康檢查設(shè)置可以保證應(yīng)用的可用性。現(xiàn)在很多應(yīng)用框架已經(jīng)內(nèi)置了監(jiān)控檢查能力,比如Spring Boot Actuator。配合Docker內(nèi)置的健康檢測(cè)機(jī)制,可以非常簡(jiǎn)潔實(shí)現(xiàn)應(yīng)用可用性監(jiān)控,自動(dòng)故障處理,和零宕機(jī)更新。

責(zé)任編輯:武曉燕 來(lái)源: 阿里云
相關(guān)推薦

2023-05-09 07:34:25

Docker健康檢查方式

2022-09-07 09:19:49

Docker健康檢查

2024-02-27 17:30:11

2023-03-02 07:20:10

GRPC服務(wù)健康檢查協(xié)議

2020-12-07 06:29:13

SpringBoot

2023-03-03 08:19:35

KubernetesgRPC

2023-03-01 08:33:37

gRPC健康檢查代碼

2021-07-15 10:25:15

集群節(jié)點(diǎn)檢查

2022-08-23 10:04:23

Dockerhealth健康檢查

2022-02-28 07:40:23

Nacos注冊(cè)中心客戶端

2023-10-14 15:36:14

PodKubernetes

2024-10-31 15:16:35

2025-07-18 08:13:37

2021-01-15 05:38:28

ASPHttp端口

2021-04-18 10:34:28

Spring Clou郵件釘釘

2021-09-18 16:10:48

Spring BootJava微服務(wù)

2021-09-21 16:31:56

Windows 11微軟PC健康檢查工具

2021-07-05 06:51:41

Nacos微服務(wù)源碼

2024-02-19 08:01:59

服務(wù)微服務(wù)授權(quán)

2022-12-27 07:42:12

點(diǎn)贊
收藏

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

亚洲精品午夜精品| 亚洲乱码国产乱码精品精的特点| 高清一区二区三区日本久| 污污污www精品国产网站| 欧美成人影院| 自拍偷拍亚洲激情| 精品蜜桃一区二区三区| 中文字幕人妻互换av久久| 在线观看免费一区二区| 日韩av在线天堂网| 午夜久久福利视频| 岛国在线视频网站| 国产精品视频线看| 国产亚洲自拍偷拍| 亚洲中文字幕在线一区| aa亚洲婷婷| 久久精品国产欧美亚洲人人爽| 在线播放av网址| 国产亚洲精彩久久| 欧美日韩在线看| 在线观看18视频网站| 韩国中文字幕2020精品| 成人午夜视频在线观看| 国产精品亚洲综合天堂夜夜| 日韩成人高清视频| 91精品99| 中文字幕无线精品亚洲乱码一区 | 国产精品免费视频观看| 国产高清在线精品一区二区三区| 国产偷人爽久久久久久老妇app| 亚洲视频久久| 久久亚洲精品网站| www..com.cn蕾丝视频在线观看免费版| 视频一区中文字幕精品| 欧美日韩在线三区| 亚洲免费av一区二区三区| 国产白浆在线免费观看| 亚洲一区在线观看视频| 艳母动漫在线观看| 欧美r级在线| 国产精品丝袜91| 欧美午夜欧美| 青青草免费在线视频| 成人性生交大合| 国产66精品久久久久999小说| 91超薄丝袜肉丝一区二区| 秋霞成人午夜伦在线观看| 国产成人自拍视频在线观看| 国产午夜精品久久久久| 国产一区白浆| 久久久视频在线| 国产一级一级片| 亚洲一级黄色| 久久久久久尹人网香蕉| 久久这里只有精品国产| 午夜久久久久| 久99九色视频在线观看| 欧美国产在线看| 国产一区美女| 午夜免费久久久久| 久久免费激情视频| 蜜桃av综合| 国产精品久久久久久久久久小说 | 亚洲国产成人久久综合| 2一3sex性hd| 日韩影视高清在线观看| 99久久99久久久精品齐齐| 国产激情美女久久久久久吹潮| 亚洲精品视频91| aaa亚洲精品| 欧美精品一区二区三区久久| 国产在线一二三区| 国产精品麻豆久久久| 爱爱爱视频网站| jizz性欧美| 性欧美大战久久久久久久久| 国模无码视频一区二区三区| 自拍偷自拍亚洲精品被多人伦好爽| 在线看国产一区| 91热视频在线观看| 都市激情久久| 国产一区二区三区在线视频| 国产三级aaa| 欧美视频网站| 日本精品va在线观看| 午夜精品免费观看| 久久国产精品99久久久久久老狼| 亚洲自拍在线观看| 少妇人妻一区二区| 国产亚洲欧美一区在线观看| 樱空桃在线播放| 亚洲v.com| 宅男在线国产精品| 7788色淫网站小说| 日本一本不卡| 久久久久久久爱| 四虎影院在线免费播放| 国产福利一区二区| 欧美日韩在线一区二区三区| 成人在线影视| 日韩欧美第一页| 国产九九九视频| 欧美激情在线免费| 久久成人人人人精品欧| 久久久精品视频网站| 国产综合色视频| 久久精品女人的天堂av| а√天堂官网中文在线| 色综合久久66| 超级砰砰砰97免费观看最新一期| 国产精品一线天粉嫩av| 欧美肥婆姓交大片| 中文字幕在线播放日韩| 9色porny自拍视频一区二区| 一区二区三区四区视频在线观看 | 国产精品69久久| 丰满人妻一区二区| 国产精品欧美一级免费| 免费欧美一级视频| 中文字幕久久精品一区二区| 在线观看国产精品91| 日韩女优在线观看| 国产aⅴ精品一区二区三区色成熟| 日韩国产精品一区二区| segui88久久综合9999| 91精品国产免费久久综合| 男女做爰猛烈刺激| 在线午夜精品| 国产精品久久久久久久久婷婷| 精品国产丝袜高跟鞋| 欧美亚洲动漫另类| 亚洲熟妇一区二区三区| 亚洲国产高清一区二区三区| 亚洲a成v人在线观看| 77777影视视频在线观看| 色婷婷综合久久久久中文| 亚洲美女在线播放| 在线播放精品| 成人av免费看| 自由的xxxx在线视频| 制服丝袜在线91| 来吧亚洲综合网| 久久电影网站中文字幕| 天堂资源在线亚洲视频| 精品视频在线一区二区在线| 亚洲一区二区国产| 波多野结衣视频在线观看| ww久久中文字幕| 成人小视频在线看| 五月综合久久| 欧美在线视频观看| 欧美一区二区少妇| 一本到一区二区三区| 三上悠亚ssⅰn939无码播放| 性感少妇一区| 日本高清视频一区二区三区| 国精产品一区二区三区有限公司| 亚洲欧美在线磁力| 91视频久久久| 国产精品国产成人国产三级 | 成人精品一区二区三区四区| av日韩在线看| 精品久久ai| 欧洲亚洲在线视频| 国产在线一二三| 欧美色倩网站大全免费| 一本一本久久a久久| 久久久久久久久久一级| 国产一区二区三区久久久| 一区精品视频| 中文无码日韩欧| 性欧美长视频免费观看不卡| 亚州视频一区二区三区| 91精品91久久久中77777| 五月天婷婷丁香网| 国产精品资源在线| 日韩av中文字幕第一页| 蜜桃视频欧美| 国产欧美精品日韩| 伊人春色在线观看| 亚洲国产欧美一区二区三区同亚洲 | 亚洲av毛片成人精品| 狠狠躁夜夜躁久久躁别揉| 成熟人妻av无码专区| 国产在线不卡视频| 日本国产在线播放| 欧美肥老太太性生活| 国产成人看片| 日本欧美韩国| 久久久久一本一区二区青青蜜月| 日本五码在线| 91精品在线免费观看| 国产欧美一区二区三区在线看蜜臂| 中文字幕av一区二区三区免费看| 操人视频免费看| 美女日韩在线中文字幕| 热久久最新地址| 精品久久久久久久久久久下田 | 精品色999| www.av一区视频| 制服诱惑亚洲| 久久久久亚洲精品国产| av在线中文| 亚洲国产欧美精品| av片免费播放| 欧洲一区二区三区免费视频| 精品无码一区二区三区电影桃花| 国产片一区二区三区| 四虎国产精品免费| 免费在线观看成人| 欧美 国产 综合| 欧美激情1区2区| 婷婷久久伊人| 亚洲aaa级| 成人av蜜桃| 国产成人免费av一区二区午夜| 欧洲亚洲女同hd| 91福利区在线观看| 久久国产精品久久久| 韩日在线视频| 亚洲欧美国产日韩天堂区| 午夜精品一二三区| 欧美日韩黄色一区二区| 无码人妻av免费一区二区三区| 亚洲综合视频网| 九九精品视频免费| 国产精品成人免费| 久久久久久久久福利| 26uuu色噜噜精品一区二区| 熟妇无码乱子成人精品| 久久精品99久久久| 超碰av在线免费观看| 久久久精品网| 欧美极品欧美精品欧美图片| 99热这里只有成人精品国产| 日韩久久久久久久久久久久| 伊人情人综合网| 五月天男人天堂| 国产精品久久久久久久| 亚洲第一导航| 99久久视频| 一区二区三区av在线| 色综合天天爱| 国产又大又长又粗又黄| 天天射天天综合网| 中文字幕在线亚洲三区| 日韩欧美自拍| 在线一区高清| 欧美一区二区三区久久精品| 国产资源第一页| 欧美在线不卡| 国内精品国产三级国产99| 亚洲破处大片| 大地资源网在线观看免费官网| 综合一区在线| 男人c女人视频| 中国女人久久久| 欧美一级片中文字幕| 日韩成人av影视| 天天干天天av| 国产精品一区二区三区网站| 免费高清视频在线观看| 国产91富婆露脸刺激对白| 男人网站在线观看| 久久久精品蜜桃| 来吧亚洲综合网| 亚洲综合精品自拍| 九九热在线免费观看| 欧美午夜精品一区二区三区| 亚洲自拍偷拍另类| 精品美女一区二区三区| 亚洲欧美日韩综合在线| 一区二区三区 在线观看视| 色大18成网站www在线观看| 久久国产精彩视频| 日韩深夜视频| 国产噜噜噜噜久久久久久久久| www.久久草.com| 九九九九九九精品| 欧美一级淫片| 欧美a级免费视频| 久久亚洲风情| 交换做爰国语对白| 99国产精品一区| www.99re6| 午夜不卡av免费| 在线观看毛片av| 亚洲成人精品在线| 成人午夜在线观看视频| 免费99精品国产自在在线| 英国三级经典在线观看| 国产日韩欧美另类| 欧美日韩看看2015永久免费| 亚洲日本精品| 一区二区三区高清视频在线观看| 亚洲激情在线观看视频| 成人网在线免费视频| 日韩女同一区二区三区| 午夜视频在线观看一区二区| 性高潮视频在线观看| 精品国免费一区二区三区| yiren22亚洲综合伊人22| 欧美精品18videos性欧| 欧美aaa级| 欧美不卡三区| 国产精品啊啊啊| 欧美女同在线观看| 91丝袜高跟美女视频| 免费日韩在线视频| 欧美性一二三区| 神马久久高清| 欧美激情极品视频| 亚洲欧美专区| 日韩av高清在线播放| av成人毛片| 亚洲精品鲁一鲁一区二区三区| 亚洲国产高清aⅴ视频| 国产又爽又黄的视频| 日韩一区二区三区在线视频| 国产三级在线看| 91高潮在线观看| 国产丝袜一区| 男女激情免费视频| 国内精品写真在线观看| 一级黄色片网址| 日韩欧美中文字幕在线观看| 欧美一级淫片免费视频魅影视频| 日韩中文在线视频| 成人18视频在线观看| 噜噜噜噜噜久久久久久91| 狠狠88综合久久久久综合网| 亚洲自拍第三页| 一色屋精品亚洲香蕉网站| 在线观看毛片视频| 一个人www欧美| 亚洲承认视频| 欧美日韩一区二区视频在线观看 | 国产一区二区三区电影在线观看| 黄色一级片在线看| 国产成人精品在线看| 欧美成人一区二区三区高清| 日韩亚洲欧美在线| 99久久精品免费观看国产| 亚洲va欧美va在线观看| 91精品啪在线观看国产18| 制服丝袜中文字幕第一页| 中文字幕一区二区三区四区不卡| 中文字幕欧美在线观看| 色婷婷久久av| 四虎地址8848精品| 在线看成人av电影| 国产一区二区导航在线播放| 国精品无码一区二区三区| 日韩欧美视频一区| 在线黄色网页| 国产精品区一区二区三含羞草| 精品91久久久久| 免费中文字幕av| 91九色02白丝porn| 日韩在线免费电影| 亚洲已满18点击进入在线看片 | 中文字幕一区二区三区四区| 国产精品主播一区二区| 蜜臀久久99精品久久久无需会员| www.豆豆成人网.com| 激情综合在线观看| 久久精品一区二区三区不卡| 在线观看xxxx| 色综合天天综合网国产成人网| 国产精品调教视频| 免费日韩中文字幕| 亚洲色图另类专区| 国模无码一区二区三区| 日韩av片永久免费网站| 日韩成人精品一区二区| 亚洲午夜精品在线观看| 五月激情综合色| 成a人v在线播放| 亚洲综合小说区| 香蕉久久夜色精品| 国产第一页浮力| 日韩精品免费综合视频在线播放| 日韩欧美一区二区三区免费观看| 日本不卡一区二区三区四区| 波多野结衣91| 亚洲天堂中文在线| 午夜精品久久久久久久男人的天堂 | 国产乱对白刺激视频不卡| 国产成人免费观看视频| 最近2019免费中文字幕视频三 | 亚洲色图15p| 成人短视频软件网站大全app| 霍思燕三级露全乳照| 中文字幕成人网| 日韩在线一区二区三区四区| 国产精品美女在线观看| 亚洲手机视频| 天天做夜夜爱爱爱| 亚洲男人的天堂在线播放| 国产亚洲观看|