膜拜!阿里內部都在強推的K8S(kubernetes)學習指南,不能再詳細了


為什么要有Kubernetes(K8S)?

有了Docker、Docker-Compose,且Docker、Docker-Compose操作起來也不復雜,為什么還要來一個Kubernetes?

的確,有了Docker、Docker-Compose的確是方便了運維的部署,直接幾條命令就可以啟動起來一個環境了,在加個Volume修改對應的配置文件,就可以實現大部分的環境部署需求。

問題在於,如果此時服務器的性能不夠用了,怎么辦?

加硬件,在學過分布式思想時,都知道到了某種程度,加機器比在一台機器上堆硬件還要便宜,且堆硬件的問題還在於服務器的硬件接口夠不夠,如果插槽不夠就更悲催了。
所以現在的主流方案都是采用加機器,橫向擴展,在加了機器的情況下,這個時候要把應用的環境全部拷貝一份過去就算了,問題在於怎么去管理整個集群,或者說怎么去管理整個已經進行了容器化的集群,性能怎么去平衡?

有的可能會想既然拷貝過去了,那就前置一個Nginx,修改Nginx的配置文件,在加一台機器的配置信息就好了,流量就會平衡過去了。那么又有個問題,如果出現了資源傾斜了怎么辦?

在以上的種種問題下,我們需要一個能夠幫助我們去管理這個集群的工具,而且這個工具能夠幫助我們去協調好各個機器的。

目前業界最火的就是Kubernetes。

在這里分享我偶然間得到的一份文檔,該文檔將K8S分為理論和實踐兩個部分進行講解,雙管齊下,事半功倍,讓我們來看看文檔內容

理論篇

理解集群控制器
統一入口
控制器管理器
控制器管理器
SharedInformer
ListWatcher
服務控制器
路由控制器

集群網絡詳解

集群網絡搭建:初始階段 集群階段 節點階段 Pod階段
通信

在這里插入圖片描述

集群伸縮原理

節點增加原理
手動添加已有節點
自動添加已有節點
!/bin/bash
集群擴容
自動伸縮
節點減少原理

認證與調度

在這節中,我們以一個簡單的容器化web程序為例,着重分析了客戶端怎么樣通過Kubernetes集群API Server認證,以及容器應用怎么樣被分派到合適節點這兩件事情。

“關在籠子里”的程序
雙向數字證書驗證
KubeConfig文件
Pod配置

集群服務的三個要點和一種實現

以我的經驗來講,理解K8S集群服務的概念,是比較不容易的一件事情。尤其是當我們基於似是而非的理解,去排查服務相關問題的時候,會非常不順利。

這體現在,對於新手來說,ping不通服務的IP地址這樣基礎的問題,都很難理解;而就算對經驗很豐富的工程師來說,看懂服務相關的iptables配置,也是相當的挑戰。

K8S集群服務的本質是什么
自帶通信員
把服務照進現實
一種實現
用自定義鏈實現服務的反向代理

鏡像拉取這件小事

導讀:相比 K8s 集群的其他功能,私有鏡像的自動拉取,看起來可能是比較簡單的。而鏡像拉取失敗,大多數情況下都和權限有關。所以,在處理相關問題的時候,我們往往會輕松的說:這問題很簡單,肯定是權限問題。但實際的情況是,我們經常為一個問題,花了多個人的時間卻找不到原因。這主要還是我們對鏡像拉取,特別是私有鏡像自動拉取的原理理解不深。這篇文章,作者將帶領大家討論下相關原理。

順序上來說,私有鏡像自動拉取會首先通過阿里雲 Acr credential helper 組件,再經過 K8s 集群的 API Server 和 kubelet 組件,最后到 docker 容器運行時。但是我的敘述,會從后往前,從最基本的 docker 鏡像拉取說起。

鏡像拉取這件小事
理解 OAuth 2.0 協議
Docker 扮演的角色
K8s 實現的私有鏡像自動拉取
阿里雲實現的 Acr credential helper

實踐

讀懂這一篇,集群節點不下線

需要知道的Kubernetes知識
什么是PLEG
容器runtime
Docker Daemon調用棧分析
Containerd調用棧分析
什么是Dbus
RunC請求Dbus
Systemd
Live Debugging
問題修復


節點下線姊妹篇

問題現象
大邏輯
就緒三分鍾
止步不前的 PLEG
無響應的 Terwayd

我們為什么會刪除不了集群的命名空間?

Controller在做什么?
從集群入口開始
再次回到集群入口
節點與Pod之間的通信

Route Controller為什么不工作?
集群節點訪問雲資源
問題大圖

阿里雲ACK產品安全組配置管理

安全組在ACK產品中扮演的角色
安全組與ACK集群網絡
怎么樣管理ACK集群的安全組規則
IDC與集群互訪
使用多個安全組管理集群節點
使用新的安全組管理節點
典型問題與解決方案
限制集群訪問公網或者運營級NAT保留地址
容器組跨節點通信異常

二分之一活的微服務

二分之一活的微服務
繞不過去的大圖
代理與代理的生命周期管理
就緒檢查的實現
控制面和數據面
簡單的原因

半夜兩點Ca證書過期問題處理慘況總結

不斷重啟的Citadel
一般意義上的證書驗證
Citadel證書體系

以上就是這份文檔的概況,一次搞懂6個核心原理吃透基礎理論,學會6個典型問題的華麗操作,不管是架構師還是開發者,又或是運維,都能夠從中學到不少。

以上的文檔已整理成冊

最后:

我們身為技術人員,最怕的就是安於現狀,一直在原地踏步,那么你可能在30歲就會迎來自己的職業危機,因為你工作這么久提升的只有自己的年齡,技術還是萬年不變!

我知道,對於一些學歷沒有優勢的人來說,外包是別無選擇,但是未來的路究竟要怎么走,取決你的步子邁多開。每個人都有自己的選擇,如果你喜歡穩定,那按部就班適合你,但你有想法,不甘平庸,那就別讓外包埋沒了你。

如果你想在未來能夠自我突破,圓夢大廠,那或許以上這份學習資料,你需要閱讀閱讀,希望能夠對你的職業發展有所幫助。

最后,希望未來的我發展順利,早日拿下p7!同樣,也祝願你實現自己的人生理想,願我們都越來越好,共勉!

獲取方式: 只需你點贊+關注后,Java進階交流群:714827309 哦-!


獲取方式: 只需你點贊+關注后,Java進階交流群:714827309 進群拿資料哦-!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM