国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

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

pod底層網(wǎng)絡(luò)和數(shù)據(jù)存儲(chǔ)是如何進(jìn)行的

馬哥Linux運(yùn)維 ? 來源:CSDN博客 ? 作者:inicho ? 2021-09-24 11:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 核心組件原理 —— pod 核心原理

1.1 pod 是什么

pod 也可以理解是一個(gè)容器,裝的是 docker 創(chuàng)建的容器,也就是用來封裝容器的一個(gè)容器;

pod 是一個(gè)虛擬化分組, 有自己的 IP 地址和主機(jī)名 hostname,利用 namespace 進(jìn)行資源隔離,相當(dāng)于一臺(tái)獨(dú)立沙箱環(huán)境;

pod 相當(dāng)于一臺(tái)獨(dú)立主機(jī),內(nèi)部可以封裝一個(gè)或多個(gè)容器(通常是一組相關(guān)的容器),內(nèi)部容器之間訪問采用 localhost。

1.2 pod 用來干什么

通常情況下,在服務(wù)部署的時(shí)候,使用 pod 來管理一組相關(guān)的服務(wù)(一個(gè) pod 中要么部署一個(gè)服務(wù),要么部署一組有關(guān)系的服務(wù))。如下圖是部署了一組有關(guān)系的服務(wù)的結(jié)構(gòu)圖,其中 C 表示容器(container),下面的 pod 里就有很多個(gè)容器。

如何理解一組相關(guān)的服務(wù)?

如下圖:有一個(gè)請(qǐng)求是訪問 Nginx,然后部署了 Nginx 的容器就把請(qǐng)求轉(zhuǎn)發(fā)給部署了 web 服務(wù)的容器,web 再訪問數(shù)據(jù)庫,然后請(qǐng)求會(huì)依次返回來數(shù)據(jù),最后再返回給用戶。因此在 鏈?zhǔn)秸{(diào)用的調(diào)用鏈路上的服務(wù) 叫做一組相關(guān)的服務(wù)。

1.3 實(shí)現(xiàn) web 服務(wù)集群

只需要復(fù)制多個(gè) pod 的副本即可,這也是 k8s 管理的先進(jìn)之處。k8s 如果要進(jìn)行擴(kuò)容或縮容,只需要控制 pod 的數(shù)量即可。比如上面那個(gè)部署模式,服務(wù)集群就是復(fù)制多個(gè)這樣的 pod。

1.4 pod 底層網(wǎng)絡(luò)和數(shù)據(jù)存儲(chǔ)是如何進(jìn)行的

前面說過 pod 內(nèi)部的容器也是一個(gè)獨(dú)立的沙箱環(huán)境,因此也有自己的 ip 和 端口。如果內(nèi)部容器還是通過 ip:port 來通信,相當(dāng)于還是遠(yuǎn)程訪問,這樣的話性能會(huì)受到一定的影響。如何提高內(nèi)部容器之間訪問的性能呢?

pod 底層

pod 內(nèi)部容器創(chuàng)建之前,必須先創(chuàng)建 pause 容器。pause 有兩個(gè)作用:共享網(wǎng)絡(luò)和共享存儲(chǔ)。

每個(gè)服務(wù)容器共享 pause 存儲(chǔ),不需要自己存儲(chǔ)數(shù)據(jù),都交給 pause維護(hù)。

pause 也相當(dāng)于這三個(gè)容器的網(wǎng)卡,因此他們之間的訪問可以通過 localhost 方式訪問,相當(dāng)于訪問本地服務(wù)一樣,性能非常高(就像本地幾臺(tái)虛擬機(jī)之間可以 ping 通)。

2. ReplicaSet 副本控制器

2.1 副本控制器基本理解

作用:管理控制 pod 副本(服務(wù)集群)的數(shù)量,以使其永遠(yuǎn)與預(yù)期設(shè)定的數(shù)量保持一致。例如:replicas = 3 (創(chuàng)建 3 個(gè)副本,這是提前設(shè)置好的)

當(dāng)副本設(shè)置為 3 時(shí),副本控制器將會(huì)永遠(yuǎn)保證副本數(shù)量為 3。因此當(dāng)有 pod 服務(wù)宕機(jī)時(shí)(如上面第 3 個(gè) pod),那副本控制器會(huì)立馬重新創(chuàng)建一個(gè)新的 pod,就能夠保證副本數(shù)量一直為預(yù)先設(shè)定好的 3 個(gè)。

2.2 ReplicaSet 和 ReplicationController 的區(qū)別

ReplicaSet 和 ReplicationController 都是副本控制器,其中:

相同點(diǎn):都有前面 2.1 節(jié)所描述的功能

不同點(diǎn):標(biāo)簽選擇器的功能不同。ReplicaSet 可以使用標(biāo)簽選擇器進(jìn)行 單選 和 復(fù)合選擇;而 ReplicationController 只支持 單選操作。

什么意思呢?

假設(shè)下面有下面兩個(gè)不同機(jī)器上的 Node 結(jié)點(diǎn),如何知道它們的 pod 其實(shí)都是相同的呢?答案是通過標(biāo)簽。

給每個(gè) pod 打上標(biāo)簽 ( key=value 格式,如下圖中的 app=web, release=stable,這有兩個(gè)選項(xiàng),相同的pod副本的標(biāo)簽是一樣的),于是副本控制器可以通過標(biāo)簽選擇器 seletor 去選擇一組相關(guān)的服務(wù)。一旦 selector 和 pod 的標(biāo)簽匹配上了,就表明這個(gè) pod 是當(dāng)前這個(gè)副本控制器控制的,表明了副本控制器和 pod 的所屬關(guān)系。如下圖中 seletor 指定了 app = web 和 release=stable 是復(fù)合選擇,要用 ReplicaSet 才能實(shí)現(xiàn)若用 ReplicationController 的話只能選擇一個(gè),如只選擇匹配app=web標(biāo)簽。這樣下面的 3 個(gè) pod 就歸這個(gè)副本控制器管。

可見 ReplicaSet 功能更齊全,所以在新版的 k8s 中,建議使用 ReplicaSet 作為副本控制器,不再使用 ReplicationController。

3. Deployment 部署對(duì)象

3.1 滾動(dòng)更新

ReplicaSet 副本控制器可以永久保持 pod 副本的數(shù)量。但是項(xiàng)目的需求在不斷的迭代、更新,項(xiàng)目在不斷發(fā)版。那如何做到服務(wù)更新?難道把服務(wù)停掉再把新版本部署上去嗎?當(dāng)然不是,答案是用滾動(dòng)更新。就是重新創(chuàng)建一個(gè) pod (v2版本) 來代替 之前的 pod (v1版本)。

那是如何滾動(dòng)更新的呢?涉及到下面要講到的部署模型。

3.2 部署模型

單獨(dú)的 ReplicaSet 是不支持滾動(dòng)更新的,Deployment 對(duì)象支持滾動(dòng)更新,通常和 ReplicaSet 一起使用。

需要滾動(dòng)更新時(shí)的步驟:

Deployment 建立新的 Replicaset

Replicaset 重新建立新的 pod

所以它們之間是有層次關(guān)系的,Deployment 管 Replicaset,Replicaset 維護(hù) pod。在更新時(shí)刪除的是舊的 pod,老版本的 ReplicaSet 是不會(huì)刪除的,所以在需要時(shí)還可以回退以前的狀態(tài)。

4. StatefulSet 部署有狀態(tài)服務(wù)

4.1 引入定義

思考:如果 MySQL(有狀態(tài)服務(wù)) 使用容器化部署,會(huì)存在什么問題?

容器都是有生命周期的,一旦宕機(jī)數(shù)據(jù)就很可能丟失

pod 也有生命周期的,用 pod 部署時(shí)把 pod 集群副本重啟以后也可能會(huì)出現(xiàn)數(shù)據(jù)丟失

因此對(duì) k8s 來說,不能使用 Deployment 部署有狀態(tài)的服務(wù)。通常情況下,Deployment 被用來部署無狀態(tài)服務(wù)。然后 StatefulSet 就是為了解決有狀態(tài)服務(wù)使用容器化部署的一個(gè)問題。

4.2 如何理解狀態(tài)服務(wù)

有狀態(tài)服務(wù)

有實(shí)時(shí)的數(shù)據(jù)需要存儲(chǔ)

在有狀態(tài)服務(wù)集群中,如果把某一個(gè)服務(wù)抽離出來,一段時(shí)間后再加入回集群網(wǎng)絡(luò),此后集群網(wǎng)絡(luò)會(huì)無法使用

無狀態(tài)服務(wù)

沒有實(shí)時(shí)的數(shù)據(jù)需要存儲(chǔ)

在無狀態(tài)服務(wù)集群中,如果把某一個(gè)服務(wù)抽離出去,一段時(shí)間后再加入回集群網(wǎng)絡(luò),對(duì)集群服務(wù)無任何影響,因?yàn)樗鼈儾恍枰鼋换ィ恍枰獢?shù)據(jù)同步等等。

4.3 部署模型

StatefulSet 的部署模型和 Deployment 的很相似。比如下圖,借助 PVC(與存儲(chǔ)有關(guān)) 文件系統(tǒng)來存儲(chǔ)的實(shí)時(shí)數(shù)據(jù),因此下圖就是一個(gè)有狀態(tài)服務(wù)的部署。在 pod 宕機(jī)之后重新建立 pod 時(shí),StatefulSet 通過保證 hostname 不發(fā)生變化來保證數(shù)據(jù)不丟失。因此 pod 就可以通過 hostname 來關(guān)聯(lián)(找到) 之前存儲(chǔ)的數(shù)據(jù)。

原文鏈接:https://blog.csdn.net/qq_43280818/article/details/106910187

責(zé)任編輯:haq

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

    關(guān)注

    8

    文章

    7335

    瀏覽量

    94761
  • 存儲(chǔ)
    +關(guān)注

    關(guān)注

    13

    文章

    4791

    瀏覽量

    90058
  • 網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    14

    文章

    8265

    瀏覽量

    94728

原文標(biāo)題:Kubernetes 核心組件原理梳理,運(yùn)維必備~

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

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    Kubernetes Pod調(diào)度策略原理與落地指南

    Pod調(diào)度是Kubernetes的核心機(jī)制之一,決定了Pod最終運(yùn)行在哪個(gè)節(jié)點(diǎn)上。默認(rèn)調(diào)度器kube-scheduler通過一系列預(yù)選(Filtering)和優(yōu)選(Scoring)算法完成調(diào)度決策,但默認(rèn)行為在生產(chǎn)環(huán)境中往往不夠用。
    的頭像 發(fā)表于 02-27 11:08 ?145次閱讀

    Kubernetes存儲(chǔ)管理功能的落地實(shí)踐

    容器本身是無狀態(tài)的,Pod重啟后容器內(nèi)的數(shù)據(jù)全部丟失。數(shù)據(jù)庫、消息隊(duì)列、文件存儲(chǔ)這類有狀態(tài)服務(wù)跑在K8s上,必須解決持久化存儲(chǔ)問題。Kube
    的頭像 發(fā)表于 02-26 14:45 ?169次閱讀

    【服務(wù)器數(shù)據(jù)恢復(fù)】EVA4400/6400/8400存儲(chǔ)底層原理及數(shù)據(jù)恢復(fù)全流程

    難度極高。 EVA存儲(chǔ)所用FC磁盤本質(zhì)為SAS盤轉(zhuǎn)接實(shí)現(xiàn),加之虛擬化存儲(chǔ)持續(xù)數(shù)據(jù)遷移、業(yè)務(wù)負(fù)載高,磁盤易故障掉線,最終突破冗余保護(hù)導(dǎo)致存儲(chǔ)崩潰。
    的頭像 發(fā)表于 02-24 15:55 ?90次閱讀
    【服務(wù)器<b class='flag-5'>數(shù)據(jù)</b>恢復(fù)】EVA4400/6400/8400<b class='flag-5'>存儲(chǔ)</b><b class='flag-5'>底層</b>原理及<b class='flag-5'>數(shù)據(jù)</b>恢復(fù)全流程

    【服務(wù)器數(shù)據(jù)恢復(fù)】EVA存儲(chǔ)硬盤離線,LUN丟后數(shù)據(jù)如何“重生”?

    將故障EVA存儲(chǔ)設(shè)備上的所有硬盤編號(hào)后取出。硬件工程師對(duì)所有硬盤進(jìn)行硬件故障檢測。檢測后發(fā)現(xiàn)掉線硬盤不存在物理故障和壞道。將所有硬盤以只讀方式做全盤鏡像備份,鏡像完成后將所有磁盤按照編號(hào)還原到原EVA存儲(chǔ)設(shè)備中,后續(xù)的
    的頭像 發(fā)表于 01-22 17:39 ?1117次閱讀

    請(qǐng)問如何利用CW32L083系列微控制器的內(nèi)部Flash存儲(chǔ)進(jìn)行程序升級(jí)和數(shù)據(jù)存儲(chǔ)

    如何利用CW32L083系列微控制器的內(nèi)部Flash存儲(chǔ)進(jìn)行程序升級(jí)和數(shù)據(jù)存儲(chǔ)
    發(fā)表于 12-15 07:39

    對(duì)于設(shè)備上的舊固件如何進(jìn)行備份和恢復(fù)?

    對(duì)于設(shè)備上的舊固件,如何進(jìn)行備份和恢復(fù)?
    發(fā)表于 12-12 08:23

    電能質(zhì)量在線監(jiān)測裝置的暫態(tài)事件臺(tái)賬存儲(chǔ)容量有限,如何進(jìn)行數(shù)據(jù)管理?

    針對(duì)電能質(zhì)量在線監(jiān)測裝置暫態(tài)事件臺(tái)賬存儲(chǔ)容量有限的問題,數(shù)據(jù)管理的核心邏輯是 “分級(jí)優(yōu)先 + 全生命周期管控” :通過 “價(jià)值分級(jí)、存儲(chǔ)優(yōu)化、自動(dòng)備份、智能清理、合規(guī)歸檔” 五步實(shí)現(xiàn),確保關(guān)鍵
    的頭像 發(fā)表于 12-11 10:53 ?499次閱讀
    電能質(zhì)量在線監(jiān)測裝置的暫態(tài)事件臺(tái)賬<b class='flag-5'>存儲(chǔ)</b>容量有限,如<b class='flag-5'>何進(jìn)行數(shù)據(jù)</b>管理?

    CAN如何進(jìn)行錄波,接收所有數(shù)據(jù)

    。但是還是只能接收到過濾的傳入的數(shù)據(jù)參數(shù)內(nèi)容,實(shí)際我并希望他啟用過濾。 3)RT_CAN_CMD_SET_FILTER 看can.c文件下,是有對(duì)該使能標(biāo)志位進(jìn)行判定 4)還是說只需要設(shè)置成監(jiān)聽
    發(fā)表于 10-09 09:12

    何進(jìn)行聲音定位?

    文章主要介紹了如何利用一種簡單的TDOA算法進(jìn)行聲音點(diǎn)位,并使用數(shù)據(jù)采集卡進(jìn)行聲音定位的實(shí)驗(yàn)。
    的頭像 發(fā)表于 09-23 15:47 ?1812次閱讀
    如<b class='flag-5'>何進(jìn)行</b>聲音定位?

    數(shù)據(jù)中心和通信網(wǎng)絡(luò)有什么區(qū)別

    數(shù)據(jù)中心和通信網(wǎng)絡(luò)在功能定位、技術(shù)架構(gòu)、應(yīng)用場景等方面存在顯著區(qū)別,以下是詳細(xì)對(duì)比: 一、功能定位 數(shù)據(jù)中心 核心功能:作為存儲(chǔ)、處理和管理海量數(shù)據(jù)
    的頭像 發(fā)表于 06-12 09:57 ?936次閱讀
    <b class='flag-5'>數(shù)據(jù)</b>中心和通信<b class='flag-5'>網(wǎng)絡(luò)</b>有什么區(qū)別

    詳解Kubernetes中的Pod調(diào)度親和性

    在 Kubernetes(K8s)中,Pod 調(diào)度親和性(Affinity) 是一種高級(jí)調(diào)度策略,用于控制 Pod 與節(jié)點(diǎn)(Node)或其他 Pod 之間的關(guān)聯(lián)(親和)或反關(guān)聯(lián)(反親和)關(guān)系。通過親和性規(guī)則,管理員可以更精細(xì)地控
    的頭像 發(fā)表于 06-07 13:56 ?938次閱讀

    請(qǐng)問STM32WBA65如何進(jìn)行matter的學(xué)習(xí)?

    STM32WBA65如何進(jìn)行matter的學(xué)習(xí)?相關(guān)的支持都有哪些?有一個(gè)X-CUBE-MATTER,可是這個(gè)沒有集成在STM32CubeMX中
    發(fā)表于 04-24 07:22

    #### KEPServerEX 數(shù)據(jù)存儲(chǔ)插件\\-2

    上次我們介紹了Datalogger插件的前三式,展示了一些常見的觸發(fā)器設(shè)置,例如數(shù)據(jù)變化存儲(chǔ),定時(shí)存儲(chǔ)等等,接下來我們繼續(xù)講解后三式。 一、 現(xiàn)在有一個(gè)需求是通過邏輯判斷有條件的進(jìn)行
    發(fā)表于 04-09 16:09

    注塑機(jī)數(shù)據(jù)采集網(wǎng)關(guān)和數(shù)據(jù)中臺(tái)有哪些聯(lián)系特點(diǎn)

    。它將這些分散的、來自不同注塑機(jī)的數(shù)據(jù)進(jìn)行收集和整理,為數(shù)據(jù)中臺(tái)提供原始數(shù)據(jù)來源。 數(shù)據(jù)中臺(tái)實(shí)現(xiàn)集中存儲(chǔ)
    的頭像 發(fā)表于 03-25 15:38 ?665次閱讀
    注塑機(jī)<b class='flag-5'>數(shù)據(jù)</b>采集網(wǎng)關(guān)<b class='flag-5'>和數(shù)據(jù)</b>中臺(tái)有哪些聯(lián)系特點(diǎn)

    使用CAN以及CANIF配置了S32K310的CAN驅(qū)動(dòng)模塊,如何進(jìn)行報(bào)文的接收呢?

    CanIf_RxIndication()函數(shù)進(jìn)行接收。但是這個(gè)函數(shù)在靜態(tài)代碼中的邏輯應(yīng)當(dāng)是自動(dòng)調(diào)用,而不是由我在外部主程序中調(diào)用。或者說這個(gè)函數(shù)在觸發(fā)中斷自動(dòng)執(zhí)行后將數(shù)據(jù)進(jìn)行存儲(chǔ),那
    發(fā)表于 03-21 07:24