最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

pod 知識點 下

2023-06-26 22:35 作者:阿兵云原生  | 我要投稿

我參與11月更文挑戰(zhàn)的第 25 天,活動詳情查看:2021最后一次更文挑戰(zhàn)」

上一篇分享了 pod 的基本知識點,有 K8S 環(huán)境的小伙伴還是可以用起來的,還對比較簡單,知道了 pod 的 yaml 文件結(jié)構(gòu),標(biāo)識,基本的創(chuàng)建 pod 和刪除 pod 的用法等等,我們繼續(xù)

pod 的基本分類

前面我們說到了 pod 分為靜態(tài) pod 和普通的 pod ,那么這倆有啥區(qū)別呢?

靜態(tài) pod

  • 由 kubelet 進行管理

  • 存在于特定 Node 上的 pod

  • 不能通過 Api Server 管理

  • 無法 ReplicationController,Deployment,Daemonset 進行關(guān)聯(lián)

  • kubelet 無法對該 pod 進行健康檢查

普通 pod

  • 一旦創(chuàng)建,就會被放到 etcd 存儲中

  • 會被 k8s 中的 master 調(diào)度到某個 Node 上面并綁定,該 Node 上的 kubelet 會實例化成 docker 容器 運行起來

  • k8s 會對 pod 做健康檢查,若 pod 中的容器暫停或者異常,k8s 會將他們重啟

  • 若 pod 所在的 Node 宕機了,那么 k8s 會將 該 Node 的所有 pod 重新調(diào)度到別的節(jié)點上面

pod 的生命周期是啥樣的

如上圖,我們可以看到 mykubia pod 的運行狀態(tài)是 RUNNING , 那么 pod 的生命周期是什么樣子的呢?會有哪些狀態(tài)呢?

  • Pending

Pending 狀態(tài) 表示 ?Api Server 已經(jīng)創(chuàng)建好了該 pod,但是 pod 中的一個或者多個容器還沒有被創(chuàng)建,或者現(xiàn)在正在下載鏡像

  • Running

pod 內(nèi)所有的容器已經(jīng)創(chuàng)建好了,至少有一個容器是運行狀態(tài)、正在啟動狀態(tài)或者是正在重啟狀態(tài)

  • Completed

pod 內(nèi)的容器均已執(zhí)行正常退出,且不會再次重啟了

  • Failed

pod 內(nèi)的容器均已執(zhí)行正常退出,至少有一個容器是退出失敗的

  • Unknown

由于某種原因無法獲取到 pod 的狀態(tài),例如網(wǎng)絡(luò)問題等等

pod 的重啟策略是啥樣的

上一篇文章我們手寫 yaml 的時候,還記得 yaml 里面的這個字段嗎 ?restartPolicy: [Always|Never|OnFailure]

restartPolicy 指的是 pod 的重啟策略,分別為:

  • Always

如果 pod 里面的容器失效的時候,kubelet 會自動重啟這個容器

  • Never

不管容器運行的狀態(tài)怎么樣,正常還是異常,kubelet 都不會重啟該容器

  • OnFailure

容器終止運行的時候,并且退出碼不是 0, kubelet 就會重啟該 容器

上面說到的 pod 的狀態(tài)又是如何轉(zhuǎn)換的呢?

我們可以來對比一下,當(dāng) pod 中有 1 個 或者多個容器在運行的時候,發(fā)生如下情況,pod 的狀態(tài)會是如何轉(zhuǎn)換的

當(dāng) pod 中有 1 個容器的時候:

當(dāng)前 pod 的狀態(tài)若發(fā)生如下事件pod 的狀態(tài)會如何調(diào)整Running容器成功退出- Always 重啟策略
狀態(tài)仍然是 Running
- Never 重啟策略
狀態(tài)會變成 Completed
- OnFailure 重啟策略
狀態(tài)會變成 CompletedRunning容器退出異常- Always 重啟策略
狀態(tài)仍然是 Running
- Never 重啟策略
狀態(tài)會變成 Failed
- OnFailure 重啟策略
狀態(tài)會變成 Running

當(dāng) pod 中有 2 個以上的容器的時候:

當(dāng)前 pod 的狀態(tài)若發(fā)生如下事件pod 的狀態(tài)會如何調(diào)整Running有 1 容器退出異常- Always 重啟策略
狀態(tài)仍然是 Running
- Never 重啟策略
狀態(tài)會變成 Running
- OnFailure 重啟策略
狀態(tài)會變成 RunningRunning容器資源被限制,容器被殺掉- Always 重啟策略
狀態(tài)仍然是 Running
- Never 重啟策略
狀態(tài)會變成 Failed
- OnFailure 重啟策略
狀態(tài)會變成 Running

pod 的資源是如何配置的?

例如上一篇我們手寫的 yaml 就有提到

image-20211126230636938

pod 的 yaml 中,我們可以設(shè)置 cpu 的個數(shù)和 memory 的大小,這些值都是一個具體的值,都是絕對值

cpu 的單位是 個數(shù) , 例如可以配置 500m 表示 0.5 個 CPU

memory 的單位是 字節(jié)數(shù) , 例如可以配置 64 Mi 表示 64 M 的內(nèi)存

  • request

表示資源申請的最小數(shù)量,滿足系統(tǒng)必須要求

  • limits

表示申請該資源的最大數(shù)量,這個值是不能突破的,如果突破了,K8S 就會將該 pod 殺掉

今天就到這里,學(xué)習(xí)所得,若有偏差,還請斧正

歡迎點贊,關(guān)注,收藏

朋友們,你的支持和鼓勵,是我堅持分享,提高質(zhì)量的動力

好了,本次就到這里

技術(shù)是開放的,我們的心態(tài),更應(yīng)是開放的。擁抱變化,向陽而生,努力向前行。

我是阿兵云原生,歡迎點贊關(guān)注收藏,下次見~


pod 知識點 下的評論 (共 條)

分享到微博請遵守國家法律
璧山县| 汤原县| 山东| 宁德市| 恭城| 营口市| 墨竹工卡县| 曲阳县| 衢州市| 沾益县| 大宁县| 台北市| 锡林郭勒盟| 灵寿县| 清苑县| 西华县| 东兰县| 合川市| 淳化县| 新疆| 桂林市| 辰溪县| 长兴县| 若羌县| 封丘县| 黔西| 云安县| 江华| 龙岩市| 开鲁县| 松江区| 清镇市| 桑植县| 新野县| 滨州市| 涞水县| 玛曲县| 原平市| 东光县| 正定县| 贵南县|