深入理解容器技术
過去幾年,以 docker、kubernetes 為代表的容器技術(shù)已發(fā)展為一項(xiàng)通用技術(shù),BAT、滴滴、京東、頭條等大廠,都爭(zhēng)相把容器和 k8s 項(xiàng)目作為技術(shù)重心,試圖“放長(zhǎng)線釣大魚”。
?
就說阿里吧,目前基本所有業(yè)務(wù)都跑在云上,其中有一半遷移到了自己定制 k8s集群上。據(jù)說,今年計(jì)劃完成 100% 基于 k8s 集群的業(yè)務(wù)部署。而服務(wù)網(wǎng)格這塊兒,在阿里一些部門(比如螞蟻金服),已經(jīng)有線上業(yè)務(wù)在用了。
?
這充分說明了容器在當(dāng)今軟件研發(fā)領(lǐng)域的地位,掌握容器技術(shù)自然成為很多公司在招聘時(shí)的重要選項(xiàng)。
?
但是,容器技術(shù)本身偏向運(yùn)維,namespace 資源隔離、cgroups 資源限制等概念,對(duì)開發(fā)者來說,理解起來比較困難。這幾年,在跟朋友探討 k8s 落地時(shí),也有一些問題被反復(fù)提及,比如:
?
為什么運(yùn)行在虛擬機(jī)里的 CPU 監(jiān)控程序,移到容器之后,再用之前的算法計(jì)算容器 CPU 使用率就不適用了?
為什么我的容器里有這么多僵尸進(jìn)程?
為什么 kubernetes 一直不支持使用 swap?
為什么我的容器內(nèi)存使用量總是在臨界點(diǎn)?
?
其實(shí),容器問題雖然有很多類型,但最終都會(huì)歸結(jié)到 Linux 操作系統(tǒng)上。此外,也要考慮容器自身的特性——Namespace 和 Cgroups。所以,在解決容器相關(guān)問題時(shí),我們要將 Linux 操作系統(tǒng)的主要模塊,和容器的知識(shí)結(jié)構(gòu)系統(tǒng)串聯(lián)起來,并看到 Namespace 和 Cgroups 帶來的特殊性。
? ? ? ? ? ? ?
?
上面這張圖出自李程遠(yuǎn),他是 eBay 總監(jiān)級(jí)工程師、云平臺(tái)架構(gòu)師,有超過 15 年 Linux 平臺(tái)開發(fā)經(jīng)驗(yàn)和 8 年云平臺(tái)開發(fā)經(jīng)歷,參與設(shè)計(jì)并開發(fā)了 eBay 數(shù)據(jù)中心兩代云平臺(tái)。
?
這兩天,看朋友圈有人分享他的專欄《容器實(shí)戰(zhàn)高手課》,跟著學(xué)了幾篇,收獲不小,很想推薦給你。
?
在專欄中,他講解了容器技術(shù)的底層實(shí)現(xiàn)和核心原理,通過解決 20 個(gè)常見容器問題, 帶你搭建完整的容器知識(shí)體系,掌握常見 Linux 內(nèi)核調(diào)試工具的使用場(chǎng)景,和 Namespace、Cgroups 的實(shí)際應(yīng)用,內(nèi)容挺硬的,都是工作中實(shí)打?qū)嵱玫蒙系摹?/p>
?
????掃碼免費(fèi)試看
拼團(tuán)+口令「happy2021」
立省?¥40,到手僅¥89
?
他是如何講解容器的?
?
在專欄中,他將零散的知識(shí)點(diǎn)體系化,按照類似操作系統(tǒng)的模塊劃分,依次講解容器進(jìn)程、容器內(nèi)存、容器存儲(chǔ)、 容器網(wǎng)絡(luò)、容器安全這 5 大模塊,從一個(gè)個(gè)實(shí)際問題入手,帶你系統(tǒng)掌握容器核心點(diǎn) Namespace 和 Cgroups,并理解其對(duì)傳統(tǒng)操作系統(tǒng)行為的影響。
?
比如,Memory Cgroup 對(duì) Pagecache 和 Swap 空間有怎樣的影響;在 proc 文件系統(tǒng)下,我們的網(wǎng)絡(luò)參數(shù)應(yīng)用了 Network Namespace 后,需要如何重新設(shè)置,等等。
?
此外,他還會(huì)專門做一個(gè)專題加餐。通過一個(gè)真實(shí)案例,帶你了解 perf,ftrace,bcc/ebpf 這幾個(gè) Linux 調(diào)試工具的原理,熟悉它們?cè)谡{(diào)試問題的不同階段所發(fā)揮的作用,并用它們解決現(xiàn)實(shí)場(chǎng)景中復(fù)雜的容器問題。
?
具體內(nèi)容,可以看看目錄:
訂閱福利
拼團(tuán)?+ 口令「happy2021」到手僅¥89,新人最低?59.9!
原價(jià) ¥99,口令僅限「前 50 人」有效。
????掃碼免費(fèi)試讀
?
溫馨提示:
訂閱后可通過「極客時(shí)間 App」或「極客時(shí)間小程序」我的-已購,學(xué)習(xí)已訂閱的專欄。
?
????點(diǎn)擊「閱讀原文」,
輸入優(yōu)惠口令「happy2021」,
最低價(jià)¥59.9入手。
總結(jié)
- 上一篇: 如何阅读《深入理解计算机系统》?(文末送
- 下一篇: 深入理解Linux socket