成人精品水蜜桃_成人在线丰满少妇av_91亚洲国产高清_欧美日韩免费区域视频在线观看

首頁 房產(chǎn) > 正文

Kubernetes中容器探測,你都了解了嗎?

1、概述

容器探測用于檢測容器中的應用實例是否正常工作,是保障業(yè)務可用性的一種傳統(tǒng)機制。如果經(jīng)過探測,實例的狀態(tài)不符合預期,那么kubernetes就會把該問題實例" 摘除 ",不承擔業(yè)務流量。kubernetes提供了兩種探針來實現(xiàn)容器探測,分別是:


【資料圖】

liveness probes:存活性探針,用于檢測應用實例當前是否處于正常運行狀態(tài),如果不是,k8s會重啟容器readiness probes:就緒性探針,用于檢測應用實例當前是否可以接收請求,如果不能,k8s不會轉發(fā)流量

livenessProbe 決定是否重啟容器,readinessProbe 決定是否將請求轉發(fā)給容器。

上面兩種探針目前均支持三種探測方式:

Exec命令:在容器內(nèi)執(zhí)行一次命令,如果命令執(zhí)行的退出碼為0,則認為程序正常,否則不正常
……  livenessProbe:    exec:      command:      - cat      - /tmp/healthy……
TCPSocket:將會嘗試訪問一個用戶容器的端口,如果能夠建立這條連接,則認為程序正常,否則不正常
……        livenessProbe:    tcpSocket:      port: 8080……
HTTPGet:調(diào)用容器內(nèi)Web應用的URL,如果返回的狀態(tài)碼在200和399之間,則認為程序正常,否則不正常
……  livenessProbe:    httpGet:      path: / #URI地址      port: 80 #端口號      host: 127.0.0.1 #主機地址      scheme: HTTP #支持的協(xié)議,http或者https……
2、存活性探針(1)Exec模式

創(chuàng)建pod-liveness-exec.yaml。

apiVersion: v1kind: Podmetadata:  name: pod-liveness-exec  namespace: devspec:  containers:  - name: nginx    image: nginx    ports:     - name: nginx-port      containerPort: 80    livenessProbe:      exec:        command: ["/bin/cat","/tmp/hello.txt"] # 執(zhí)行一個查看文件的命令

因為/tmp/hello.txt 文件不存在,導致反復重啟容器。

#進入yaml目錄[root@k8s-master ~]# lsanaconda-ks.cfg  pod-liveness-exec.yaml[root@k8s-master ~]# clear[root@k8s-master ~]#[root@k8s-master ~]##查看當前dev命名空間下無pod[root@k8s-master ~]# kubectl get pod -n devNo resources found in dev namespace.[root@k8s-master ~]##創(chuàng)建pod[root@k8s-master ~]# kubectl apply -f pod-liveness-exec.yamlpod/pod-liveness-exec created[root@k8s-master ~]##再次查看dev命名空間已創(chuàng)建pod[root@k8s-master ~]# kubectl get pod -n devNAME                READY   STATUS              RESTARTS   AGEpod-liveness-exec   0/1     ContainerCreating   0          5s#查看pod詳情[root@k8s-master ~]# kubectl describe pod pod-liveness-exec -n dev#在最下面Events中,容器創(chuàng)建過程報錯Events:  Type     Reason     Age   From               Message  ----     ------     ----  ----               -------  Normal   Scheduled  28s   default-scheduler  Successfully assigned dev/pod-liveness-exec to k8s-node2  Normal   Pulling    27s   kubelet            Pulling image "nginx"  Normal   Pulled     11s   kubelet            Successfully pulled image "nginx" in 15.48165061s  Normal   Created    11s   kubelet            Created container nginx  Normal   Started    11s   kubelet            Started container nginx  Warning  Unhealthy  7s    kubelet            Liveness probe failed: /bin/cat: /tmp/hello.txt: No such file or directory#再次頻繁查看dev下pod信息可以發(fā)現(xiàn) pod的重啟次數(shù)一直在增加[root@k8s-master ~]# kubectl get pod -n devNAME                READY   STATUS    RESTARTS      AGEpod-liveness-exec   1/1     Running   3 (53s ago)   2m54s[root@k8s-master ~]# kubectl get pod -n devNAME                READY   STATUS    RESTARTS      AGEpod-liveness-exec   1/1     Running   4 (20s ago)   3m1s

這個時候我們將 yaml改為查看已存在的文件。

apiVersion: v1kind: Podmetadata:  name: pod-liveness-exec  namespace: devspec:  containers:  - name: nginx    image: nginx    ports:     - name: nginx-port      containerPort: 80    livenessProbe:      exec:        command: ["/bin/cat","/usr/share/nginx/html/index.html"] # 執(zhí)行一個查看文件的命令 此文件為nginx歡迎頁面 因為我們的容器就是nginx所以這個文件肯定存在的

再看效果:

(2)TCPSocket模式

創(chuàng)建pod-liveness-tcpsocket.yaml。

apiVersion: v1kind: Podmetadata:  name: pod-liveness-tcpsocket  namespace: devspec:  containers:  - name: nginx    image: nginx    ports:     - name: nginx-port      containerPort: 80    livenessProbe:      tcpSocket:        port: 8080 # 嘗試訪問8080端口,端口不存在

因為容器中8080端口未開通,所以連接失敗。

[root@k8s-master ~]# lsanaconda-ks.cfg  pod-liveness-tcpsocket.yaml[root@k8s-master ~]##創(chuàng)建pod[root@k8s-master ~]# kubectl apply -f pod-liveness-tcpsocket.yamlpod/pod-liveness-tcpsocket created[root@k8s-master ~]##獲取pod[root@k8s-master ~]# kubectl get pod -n devNAME                     READY   STATUS    RESTARTS   AGEpod-liveness-tcpsocket   1/1     Running   0          12s#查看詳情可以看出最后一步 連接被拒絕[root@k8s-master ~]# kubectl describe pod pod-liveness-tcpsocket -n devEvents:  Type     Reason     Age               From               Message  ----     ------     ----              ----               -------  Normal   Scheduled  23s               default-scheduler  Successfully assigned dev/pod-liveness-tcpsocket to k8s-node2  Normal   Pulling    22s               kubelet            Pulling image "nginx"  Normal   Pulled     21s               kubelet            Successfully pulled image "nginx" in 475.556438ms  Normal   Created    21s               kubelet            Created container nginx  Normal   Started    21s               kubelet            Started container nginx  Warning  Unhealthy  2s (x2 over 12s)  kubelet            Liveness probe failed: dial tcp 172.17.169.138:8080: connect: connection refused#頻繁獲取pod詳情可以看出  重啟次數(shù)也在不斷增加[root@k8s-master ~]# kubectl get pod -n devNAME                     READY   STATUS    RESTARTS      AGEpod-liveness-tcpsocket   1/1     Running   3 (32s ago)   2m13s[root@k8s-master ~]#[root@k8s-master ~]# kubectl get pod -n devNAME                     READY   STATUS    RESTARTS      AGEpod-liveness-tcpsocket   1/1     Running   3 (46s ago)   2m27s[root@k8s-master ~]#[root@k8s-master ~]# kubectl get pod -n devNAME                     READY   STATUS    RESTARTS      AGEpod-liveness-tcpsocket   1/1     Running   4 (16s ago)   2m37s

然后將 tcpSocket.port 改為80 再重復以上步驟就會發(fā)現(xiàn),容器正常啟動。

(3)HTTPGet模式

創(chuàng)建pod-liveness-httpget.yaml。

apiVersion: v1kind: Podmetadata:  name: pod-liveness-httpget  namespace: devspec:  containers:  - name: nginx    image: nginx    ports:    - name: nginx-port      containerPort: 80    livenessProbe:      httpGet:  # 其實就是訪問http://127.0.0.1:80/hello          scheme: HTTP #支持的協(xié)議,http或者https        port: 80 #端口號        path: /hello #URI地址 此地址不存在
[root@k8s-master ~]##創(chuàng)建pod[root@k8s-master ~]# kubectl apply -f pod-liveness-httpget.yamlpod/pod-liveness-httpget created#獲取pod[root@k8s-master ~]# kubectl get pod -n devNAME                   READY   STATUS              RESTARTS   AGEpod-liveness-httpget   0/1     ContainerCreating   0          7s[root@k8s-master ~]# kubectl get pod -n devNAME                   READY   STATUS              RESTARTS   AGEpod-liveness-httpget   0/1     ContainerCreating   0          13s#查看pod詳情 發(fā)現(xiàn)最后HTTP執(zhí)行報404[root@k8s-master ~]# kubectl describe pod pod-liveness-httpget -n devEvents:  Type     Reason     Age   From               Message  ----     ------     ----  ----               -------  Normal   Scheduled  24s   default-scheduler  Successfully assigned dev/pod-liveness-httpget to k8s-node2  Normal   Pulling    23s   kubelet            Pulling image "nginx"  Normal   Pulled     8s    kubelet            Successfully pulled image "nginx" in 15.416092349s  Normal   Created    8s    kubelet            Created container nginx  Normal   Started    8s    kubelet            Started container nginx  Warning  Unhealthy  4s    kubelet            Liveness probe failed: HTTP probe failed with statuscode: 404#頻繁獲取pod,發(fā)現(xiàn)pod重啟次數(shù)不斷增加[root@k8s-master ~]# kubectl get pod -n devNAME                   READY   STATUS    RESTARTS   AGEpod-liveness-httpget   1/1     Running   0          36s[root@k8s-master ~]# kubectl get pod -n devNAME                   READY   STATUS    RESTARTS     AGEpod-liveness-httpget   1/1     Running   1 (3s ago)   43s[root@k8s-master ~]# kubectl get pod -n devNAME                   READY   STATUS    RESTARTS      AGEpod-liveness-httpget   1/1     Running   2 (47s ago)   117s

然后將 httpGet.path 改為/ 再重復以上步驟就會發(fā)現(xiàn),容器正常啟動。

至此,已經(jīng)使用liveness Probe演示了三種探測方式,但是查看livenessProbe的子屬性,會發(fā)現(xiàn)除了這三種方式,還有一些其他的配置,在這里一并解釋下:

[root@k8s-master01 ~]# kubectl explain pod.spec.containers.livenessProbeFIELDS:   exec      tcpSocket       httpGet         initialDelaySeconds    # 容器啟動后等待多少秒執(zhí)行第一次探測   timeoutSeconds         # 探測超時時間。默認1秒,最小1秒   periodSeconds          # 執(zhí)行探測的頻率。默認是10秒,最小1秒   failureThreshold       # 連續(xù)探測失敗多少次才被認定為失敗。默認是3。最小值是1   successThreshold       # 連續(xù)探測成功多少次才被認定為成功。默認是1	  
		
    

關鍵詞:

最近更新

關于本站 管理團隊 版權申明 網(wǎng)站地圖 聯(lián)系合作 招聘信息

Copyright © 2005-2023 創(chuàng)投網(wǎng) - m.7778890.com All rights reserved
聯(lián)系我們:39 60 29 14 2@qq.com
皖ICP備2022009963號-3

成人精品水蜜桃_成人在线丰满少妇av_91亚洲国产高清_欧美日韩免费区域视频在线观看
国产精品一区二区三区网站| 久久99精品一区二区三区| 欧美精品一区二区三区四区| 久久精品国产第一区二区三区最新章节 | 欧美涩涩视频| 国语对白精品一区二区| 3751色影院一区二区三区| 久久婷婷麻豆| 在线一区二区三区| 欧美丝袜丝nylons| 欧美日韩高清影院| 欧美一区二区三区免费| 欧美大胆人体bbbb| 久久亚洲综合色| 国产精品久久久久久久久久久免费看 | 色天天综合久久久久综合片| 一本色道久久综合精品竹菊| 欧美性猛片xxxx免费看久爱| 337p亚洲精品色噜噜狠狠| 精品免费日韩av| 国产精品视频一区二区三区不卡| 亚洲三级视频在线观看| 日韩极品在线观看| 国产成人精品亚洲午夜麻豆| 亚洲一区黄色| 日本高清成人免费播放| 日韩视频123| 亚洲欧洲av另类| 婷婷亚洲久悠悠色悠在线播放| 久久99久久99小草精品免视看| 丰满白嫩尤物一区二区| 亚洲国产日韩欧美| 欧美性xxxxxx少妇| 国产亚洲自拍一区| 天天综合天天做天天综合| 国产剧情一区二区| 伊人精品成人久久综合软件| 久久看片网站| 久久久精品一品道一区| 亚洲成av人片一区二区三区 | 黄网站免费久久| 欧美一区二区三区四区在线观看地址 | 国产乱子轮精品视频| 欧美久久视频| 欧美视频精品在线观看| 国产精品久久久久久久蜜臀| 免费观看在线综合色| 欧美91大片| 欧美三级三级三级| 成人免费在线观看入口| 国产成人在线视频播放| 午夜久久福利影院| aaa亚洲精品一二三区| 91精品国产全国免费观看| 国产精品久久久久婷婷| 久久国产免费看| 99在线精品视频在线观看| 国产精品久久| 欧美日本免费一区二区三区| 国产精品久久综合| 国产一区二区0| 老鸭窝毛片一区二区三区| 国产亚洲午夜高清国产拍精品 | 色综合色狠狠综合色| 欧美另类视频| 欧美浪妇xxxx高跟鞋交| 亚洲国产欧美在线人成| 国产精品hd| 精品免费日韩av| 国产一区二区主播在线| 日韩亚洲国产欧美| 国产午夜精品一区二区三区嫩草| 三级影片在线观看欧美日韩一区二区| 不卡一区二区三区四区| 亚洲一区二区欧美日韩| 日韩午夜在线影院| 麻豆成人91精品二区三区| 日韩一区二区免费看| 久久这里都是精品| 国产激情一区二区三区四区| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲色图清纯唯美| 狠狠爱综合网| 国产精品嫩草99a| 91麻豆精品在线观看| 欧美电影免费观看完整版| 精品一区二区日韩| 91久久精品一区二区三区| 亚洲第一久久影院| 国产农村妇女精品一区二区| 亚洲精品国产无天堂网2021| 精品999成人| 亚洲女性喷水在线观看一区| 在线欧美亚洲| 亚洲欧美福利一区二区| 亚洲青涩在线| 亚洲激情第一区| 国产毛片久久| 日韩精品一卡二卡三卡四卡无卡| 亚洲欧美日韩精品久久久 | 99re成人在线| 欧美高清在线精品一区| 欧美日韩在线精品| 亚洲少妇最新在线视频| 国产欧美日韩在线播放| 五月婷婷欧美视频| 欧美性猛交xxxxxx富婆| 国产一区美女在线| 欧美不卡激情三级在线观看| 97se亚洲国产综合自在线观| 国产午夜精品美女毛片视频| 欧美性大战久久久久| 亚洲欧美二区三区| 一本色道久久综合亚洲精品按摩| 麻豆久久久久久| 欧美高清一级片在线| 成人免费高清视频| 国产精品另类一区| 国产亚洲毛片| 美女视频黄频大全不卡视频在线播放| 欧美日韩精品一区二区天天拍小说| 国模一区二区三区白浆| 久久在线观看免费| 在线播放豆国产99亚洲| 日韩一区精品视频| 日韩一级黄色大片| 国内一区二区在线视频观看| 午夜激情久久久| 91精品国产综合久久精品| 91麻豆免费看| 天堂一区二区在线| 精品国产乱码久久久久久1区2区 | 亚洲综合社区| 国产高清精品网站| 自拍av一区二区三区| 日本国产一区二区| 91麻豆免费看片| 日韩电影在线免费观看| 26uuu另类欧美| 成人午夜视频福利| 国产成人精品亚洲日本在线桃色 | 国产一区二区0| 亚洲国产精品成人综合色在线婷婷 | 在线亚洲自拍| 国产一区二区视频在线| 国产精品毛片大码女人| 色狠狠一区二区三区香蕉| 91在线免费视频观看| 亚洲国产欧美在线人成| 精品国产乱码久久久久久影片| 99精品视频网| 成人综合在线视频| 日韩中文字幕av电影| 精品国产在天天线2019| 久久精品官网| 国产精品二区二区三区| 国产一区二区精品在线观看| 中文字幕在线观看不卡视频| 欧美群妇大交群的观看方式| 亚洲韩日在线| 一区二区三区四区精品在线视频| 日本欧美在线观看| 欧美三级午夜理伦三级中视频| 波多野结衣精品在线| 日韩电影在线免费看| 中文字幕一区二区视频| 欧美一区二区三区四区久久| 先锋a资源在线看亚洲| 99国产精品国产精品久久| 美国毛片一区二区三区| 亚洲免费在线播放| 精品国产区一区| 欧美性猛交一区二区三区精品 | 91精品国产91热久久久做人人| 日韩天堂av| 欧美婷婷在线| 成人毛片在线观看| 久久激情综合网| 五月激情综合色| 一区二区三区欧美视频| 欧美国产综合一区二区| 欧美成人女星排行榜| 欧美日韩精品专区| 在线这里只有精品| 另类国产ts人妖高潮视频| 亚洲国产一区二区精品专区| 欧美精选一区| 91麻豆高清视频| 不卡的av电影| 成人黄页毛片网站| 国产凹凸在线观看一区二区| 麻豆91精品91久久久的内涵| 日韩激情中文字幕| 日本伊人午夜精品| 午夜精品影院在线观看| 性做久久久久久免费观看欧美| 一区二区久久久久久| 亚洲综合在线视频| 亚洲综合色成人| 午夜a成v人精品|