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

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

1000節(jié)點(diǎn)集群,5秒搭建好

2023-08-03 22:13 作者:云原生百寶箱  | 我要投稿


你是否曾想過在幾秒鐘內(nèi)搭建一個(gè)由數(shù)千個(gè)節(jié)點(diǎn)構(gòu)成的集群,如何用少量資源模擬真實(shí)的節(jié)點(diǎn), 如何不耗費(fèi)太多基礎(chǔ)設(shè)施就能大規(guī)模地測試你的 Kubernetes 控制器?

如果你曾有過這些想法,那你可能會對 KWOK 有興趣。KWOK 是一個(gè)工具包,能讓你在幾秒鐘內(nèi)創(chuàng)建數(shù)千個(gè)節(jié)點(diǎn)構(gòu)成的集群。

圖片
由數(shù)千個(gè)節(jié)點(diǎn)構(gòu)成的集群

什么是 KWOK?

KWOK 是 Kubernetes WithOut Kubelet 的縮寫,即沒有 Kubelet 的 Kubernetes。到目前為止,KWOK 提供了兩個(gè)工具:

  • ??kwok?是這個(gè)項(xiàng)目的基石,負(fù)責(zé)模擬偽節(jié)點(diǎn)、Pod 和其他 Kubernetes API 資源的生命周期。

  • ??kwokctl?是一個(gè) CLI 工具,設(shè)計(jì)用于簡化創(chuàng)建和管理由?kwok?模擬節(jié)點(diǎn)組成的集群。

為什么使用 KWOK?

KWOK 具有下面幾點(diǎn)優(yōu)勢:

  • ??速度:你幾乎可以實(shí)時(shí)創(chuàng)建和刪除集群及節(jié)點(diǎn),無需等待引導(dǎo)或制備過程。

  • ??兼容性:KWOK 能夠與兼容 Kubernetes API 的所有工具或客戶端(例如 kubectl、helm、kui)協(xié)同作業(yè)。

  • ??可移植性:KWOK 沒有特殊的軟硬件要求。一旦安裝了 Docker 或 Nerdctl,你就可以使用預(yù)先構(gòu)建的鏡像來運(yùn)行 KWOK。另外,二進(jìn)制文件包適用于所有平臺,安裝簡單。

  • ??靈活:你可以配置不同類型的節(jié)點(diǎn)、標(biāo)簽、污點(diǎn)、容量、狀況等,還可以配置不同的 Pod 行為和狀態(tài)來測試不同的場景和邊緣用例。

  • ??性能:你在自己的筆記本電腦上就能模擬數(shù)千個(gè)節(jié)點(diǎn),無需大量消耗 CPU 或內(nèi)存資源。

使用場景是什么?

KWOK 可用于各種用途:

  • ??學(xué)習(xí):你可以使用 KWOK 學(xué)習(xí) Kubernetes 概念和特性,無需顧慮資源浪費(fèi)或其他后果。

  • ??開發(fā):你可以使用 KWOK 為 Kubernetes 開發(fā)新特性或新工具,無需接入真實(shí)的集群,也不需要其他組件。

  • ??測試

    • ??你可以衡量自己的應(yīng)用程序或控制器在使用不同數(shù)量節(jié)點(diǎn)和 Pod 時(shí)的擴(kuò)縮表現(xiàn)如何。

    • ??你可以用不同的資源請求或限制創(chuàng)建大量 Pod 或服務(wù),在集群上營造高負(fù)載的環(huán)境

    • ??你可以通過更改節(jié)點(diǎn)狀況或隨機(jī)刪除節(jié)點(diǎn)來模擬節(jié)點(diǎn)故障或網(wǎng)絡(luò)分區(qū)。

    • ??你可以通過啟用不同的特性門控或 API 版本來測試控制器如何與其他組件交互

有哪些限制?

KWOK 并非試圖完整替代其他什么。當(dāng)然也有一些限制需要你多加注意:

  • ??功能性:KWOK 不是 kubelet。KWOK 在 Pod 生命周期管理、卷掛載和設(shè)備插件方面所展現(xiàn)的行為與 kubelet 不同。?KWOK 的主要功能是模擬節(jié)點(diǎn)和 Pod 狀態(tài)的更新。

  • ??準(zhǔn)確性:需要重點(diǎn)注意?KWOK 還不能確切地反映各種工作負(fù)載或環(huán)境下真實(shí)節(jié)點(diǎn)的性能或行為。KWOK 只能使用一些公式來逼近真實(shí)的節(jié)點(diǎn)行為。

  • ??安全性KWOK 沒有對模擬的節(jié)點(diǎn)實(shí)施任何安全策略或安全機(jī)制。KWOK 假定來自 kube-apiserver 的所有請求都是經(jīng)過授權(quán)且是有效的。

kwok的主要組件是一個(gè)Kubernetes控制器,它模擬集群資源,包括節(jié)點(diǎn)和pod。這可以在現(xiàn)有的 Kubernetes 集群(即 Kind)上完成,或者你可以使用提供的 kwokctl 工具創(chuàng)建類似集群。

圖片

KWOK入門


該項(xiàng)目相當(dāng)新,可以使用Homebrew進(jìn)行安裝。

如果你不使用 Homebrew,那么你將需要執(zhí)行幾個(gè)步驟。

安裝kwokctl

安裝kwok

這將在你的本地計(jì)算機(jī)上安裝兩個(gè)二進(jìn)制文件:

  • ? kwokctl — 也是一個(gè) CLI 管理,允許你使用 Docker 建立獨(dú)立集群(類似于 Kind 集群)。

  • ? kwok — 負(fù)責(zé)模擬集群及其資源的資源控制器。

創(chuàng)建集群

要在本地模擬假集群,請確保你的 Docker 守護(hù)進(jìn)程已啟動(dòng)并正在運(yùn)行。然后使用以下命令創(chuàng)建集群

這將下載并運(yùn)行必要的 Docker 鏡像來設(shè)置新集群。你可以通過以下方式驗(yàn)證這一點(diǎn):

驗(yàn)證集群是否已創(chuàng)建:

啟動(dòng)資源控制器

接下來,你需要啟動(dòng) kwok 資源控制器。你可以通過在單獨(dú)的終端中運(yùn)行 kwok 二進(jìn)制文件(如此處演示)來完成此操作。你還可以在集群中運(yùn)行控制器(有關(guān)詳細(xì)信息,請參閱 kwok 文檔)。

上面的命令啟動(dòng) kwok 資源控制器,并指定該控制器將所有節(jié)點(diǎn)作為 Kwok 節(jié)點(diǎn)進(jìn)行管理。由于該集群不與另一個(gè)集群共享,因此這是有道理的。否則,你需要添加其他參數(shù)來過濾 Kwok 節(jié)點(diǎn)和資源。

添加節(jié)點(diǎn)

接下來,使用節(jié)點(diǎn)定義創(chuàng)建一個(gè)文件,如下所示。你可以將任意數(shù)量的節(jié)點(diǎn)添加到你想要模擬的 YAML 文件中。

接下來,我們需要將節(jié)點(diǎn)應(yīng)用到集群中。執(zhí)行此操作之前,請確保你使用正確的集群上下文:

然后,使用 kubectl 工具應(yīng)用節(jié)點(diǎn):

成功應(yīng)用 YAML 后,你可以在集群中看到你的節(jié)點(diǎn):

部署應(yīng)用

現(xiàn)在你已經(jīng)有了一個(gè)運(yùn)行著多個(gè)假節(jié)點(diǎn)的 kwok 集群,你可以向其部署應(yīng)用,就像它是一個(gè)真正的集群一樣。

定義具有大量副本的Deployment。

和以前一樣,你可以根據(jù)需要添加任意數(shù)量的虛假資源。接下來,應(yīng)用 YAML 文件,如下所示:

幾秒鐘之內(nèi),你將看到你的假資源出現(xiàn)在集群中:

總結(jié)

相比于kubemark,kubemark是一個(gè) kubelet,實(shí)際上并不運(yùn)行容器。它的行為與 kubelet 完全相同,這意味著模擬大量節(jié)點(diǎn)和 pod 需要大量內(nèi)存。然而,kwok只是模擬節(jié)點(diǎn)的行為。因此,它可以使用很少的內(nèi)存來模擬大量節(jié)點(diǎn)和 Pod

相比于kind,kind在 Docker 中運(yùn)行 Kubernetes,創(chuàng)建一個(gè)真正的集群。kwokctl在某些不需要實(shí)際運(yùn)行任何 pod 的場景中,可以用作?kind的替代方案。

簡而言之,Kwok 是云原生生態(tài)系統(tǒng)的一個(gè)重要補(bǔ)充,能讓你在幾秒鐘內(nèi)創(chuàng)建數(shù)千個(gè)節(jié)點(diǎn)構(gòu)成的集群,用來測試集群和應(yīng)用的性能是如此地絲滑和簡便

行萬里路,此處相逢,共話云原生之道。

偶逗趣事,明月清風(fēng),與君同坐。

琦彥,在云原生百寶箱公眾號等你,與你一起探討應(yīng)用遷移,GitOps,二次開發(fā),解決方案,CNCF生態(tài),以及生活況味。


1000節(jié)點(diǎn)集群,5秒搭建好的評論 (共 條)

分享到微博請遵守國家法律
安龙县| 濮阳县| 镇巴县| 新化县| 云梦县| 安义县| 荆门市| 台州市| 桓台县| 普格县| 江川县| 华亭县| 库车县| 专栏| 丰都县| 八宿县| 敦煌市| 香格里拉县| 德钦县| 高台县| 新河县| 石门县| 时尚| 罗山县| 祁连县| 蓬安县| 清丰县| 景洪市| 长葛市| 宝丰县| 台中市| 永州市| 边坝县| 文登市| 苍溪县| 梅河口市| 塔城市| 郯城县| 麻城市| 富顺县| 昌黎县|