你闺女都能看懂的 Kubernetes 插画指南!
有一天,程序員問大師,什么是 Kubernetes?
大師說:“Kubernetes 是一個開源的,用于管理云平臺中多個主機上的容器化的應用,Kubernetes 的目標是讓部署容器化的應用簡單并且高效(powerful)……”
可想而知,大師當場就被打死了。
為了讓大家更好地理解 Kubernetes ,今天給大家帶來了一個插畫版的 Kubernetes 教程,可以讓你對 Kubernetes 的關鍵技術點有一個大致的了解。
Written by: Matt Butcher & Karen Chu
Illustrated by: Bailey Beougher
Designed by: Karen Chu
實驗樓翻譯:
“我很無聊,菲比阿姨,”Zee 懶洋洋地躺在沙發上說,“我們今天要做什么?”
“為什么不去看看動物呢?”菲比笑著說。“我們去動物園吧!”
“Yeah!”Zee 高興地叫著,準備出發!
來到動畫園,他們遇到的第一批動物是藍色毛茸茸的,有松鼠那么大,每個小動物都帶著一個小盒子,不停地來回穿梭。
菲比說,“這些叫 Pod。他們整天整夜地跑來跑去,拖著小箱子。”
“他們每天只做這些嗎,菲比阿姨?”
“是的,它們的一生中只做這件事,運行。”
在 Kubernetes 中,**Pod 負責運行容器,每個 Pod 至少有一個容器,并控制該容器的執行。**當容器退出時,Pod 也會消失。
兩人繼續往前走,他們看到了一個很大的玻璃圍場,緊貼著窗戶的是一排洋溢著幸福的小貓鼬的臉。
“那些是復制品(ReplicaSets)。”菲比說。
在 Zee 的注視下,右邊那張臉咧開嘴笑了,然后從窗臺上滑了下來,大家齊聲跳了起來,接著,一只長得一模一樣的貓鼬從左邊跑了過來。
菲比解釋說:“每次一個小模型掉下來,另一個就會跳起來。”
ReplicaSets:分布式管理副本集,用來確保一組相同配置的 Pod 以所需的數量運行。如果一個 Pod 脫離運行,ReplicaSets 會創造一個新的頂上去。
繼續往前走,Zee 指向一處洞穴和叢林,雖然有很多跡象表明,該地區有人居住,但菲比和 Zee 都看不見任何動靜。
“秘密就在這里,”菲比說。“沒有這些帶解碼器的眼鏡,你就看不見它們。”
Zee 接過菲比遞來的眼鏡,戴上后臉都紅了:“噢,天啊。我想我該走了,現在。”
把眼鏡遞了回去,他們繼續往前走。
**Secrets 用于存儲非公共信息,如令牌、證書或密碼。**它可以在運行時附加到Pods 上,以便將敏感的配置數據安全地存儲在集群中。
一群蜥蜴聚集在池塘岸邊的一個大彈弓旁,中心有一個小島。一只蜥蜴跳上了彈弓,其他蜥蜴把它彈向了小島。
“「部署」派了一群人去島上,現在,他們正努力讓三個人到那兒。” 菲比說。
就在這時,另一只蜥蜴騰空而起,但隨著池塘里巨大的水花,它沒有到達小島。
菲比說:“如果失敗了,他們就會繼續努力,直到得到他們想要的。
部署(Deployments):Deployment 用來控制部署和維護一組 Pod(是將Pod實際部署到群集的方式)。在后臺,它使用一個 ReplicaSet 來保持 Pod 的運行,而且為部署、更新和擴展集群中的 Pod 提供了高級功能。
一個長滿草的小山丘上,有幾根石柱,每根石柱的頂端都坐著一只禿鷲。在 Zee 和菲比的注視下,一只禿鷲展開了翅膀,撲扇著翅膀飛向遠方。一個剛走,另一個就來了。
Zee 問:“他們在做什么?”
“那些是「DaemonSet」,” 菲比說,“它們一定要占據每根柱子,不管下雨還是下雨,白天還是晚上。” 菲比笑著說:“我敢打賭,如果我們增加一根新柱子,一只新鳥就會降落在柱子上,比你說 ‘cube cuddle’ 的速度還快。”
DaemonSets 提供了一種方法來確保 Pod 的副本在集群中的每個節點上運行。當集群發展或收縮時,DaemonSet 將這些有特殊標記的 Pods 部署到所有節點上。
他們繼續往前走,來到了一個水族館前,里面有一個巨大的礁石。礁石看起來能阻止任何東西,從一邊傳到另一邊。
Zee 看到數百條小魚向巖石表面的中心沖去,這些魚全速游進巖石表面的洞里,很快就消失不見了。
Zee 發出一聲驚嘆,五顏六色的魚群從礁石的另一邊迸發出來。這些魚似乎不是從一個單獨的洞里鉆出來的,而是從礁石的各處小裂縫里鉆出來的。
“入口真漂亮啊,” 菲比看得如夢似幻。
Zee 也著了魔,低聲說:“嗯哼。”
Ingresses 提供一種方法,用于將群集外部的訪問,傳入到群集內部的目的地。一個外部的Ingresses 入口可以導向許多不同的內部服務。
一群浣熊一動不動地躺在圍欄里,Zee 指了指他們問:“他們怎么了?”
突然,其中一只跳了起來,做了一個開合跳,然后又趴下來繼續打盹。
“他們是**「CronJobs」,” 菲比說。“大多數時候,他們只是睡覺,但他們會周期性地完成特定的任務。**”
就在她說話的時候,另一只又猛地站了起來,抓起一把掃帚,打掃了整個圍欄,然后繼續睡覺。“菲比阿姨,我可以把它帶回家來打掃我的房間嗎?” 菲比笑了,他們繼續往前走。
CronJobs 提供了一種調度 pod 的方法。它非常適合執行定期任務,比如備份、報告和自動化測試。
Zee 突然停了下來。在遠處,出現了一個黑色柵欄。上面的拱形標記寫著 C-R-D。
在里面,Zee 看到了一些奇怪的小動物:長著河馬頭的長頸鹿,有浣熊耳朵的蛇,有海貍尾巴的獅子,沒有角的獨角獸…… Zee 也無法確定自己是否喜歡這些動物的外觀。
CustomResourceDefinitions,簡稱 CRD,它提供了一種擴展機制,集群的操作人員和開發人員可以使用它來創建自己的資源類型。
“哦,” Phippy 滿臉擔憂地說,“看,午飯時間到了,我們該回家了。”
Zee 松了一口氣。“回家的時候可以在庫伯船長的奶昔店停一下嗎?”
(Zee 戀戀不舍地走了,出門前,他回過頭又看到了飛翔的蜥蜴)
(還記得這是哪個知識點嗎)
Kubernetes 是近兩年來 Docker 最為火熱的開源項目之一。現今已經成為了國內外技術大廠探索的方向。國外的 Google、Amazon、Microsoft 都在布局 Kubernetes,國內的阿里、騰訊、華為等知名公司也都在追逐。
如果說 Docker 開啟了容器時代,那 Kubernetes 則革新了我們對于云計算、軟件開發流程、業務平臺等方面的認知。如果你是個決心要在云計算領域深入發展的人,熟悉 Kubernetes 非常有必要。
特別是對運維工程師來說,掌握 Kubernetes 能讓你以一己之力維護上千節點,實現月薪 3000 到 30000 的跨越:
實驗樓推出「樓+ 之 Kubernetes 實戰」,6 周時間帶你打通 Docker、Kubernetes 的任督二脈,成為有真正工作能力的 Kubernetes 初級工程師!
課程包含:70 余實驗 + 25 個挑戰 + 解析視頻,同時提供了全程助教答疑、共享桌面支持、代碼人工審閱、班主任督學、畢業報告證書等服務。
總結
以上是生活随笔為你收集整理的你闺女都能看懂的 Kubernetes 插画指南!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用卷积神经网络识别交通标志
- 下一篇: 我用C++复刻了这款上世纪最伟大的游戏