提升你 Kubernetes 技能的 5 種方式
在雲原生的成長期,開發者們發現在一個小型的、原子化的、精簡的 Linux 鏡像里編寫應用程序很方便,這些鏡像與它們所運行的伺服器共享資源。從技術上講,這些基於內核命名空間的小環境定義被稱為容器。隨著容器的激增,系統管理員們很快意識到,開發一個不僅能幫助他們管理容器,還能幫助他們管理下面的虛擬化基礎設施的工具變得至關重要。於是,Kubernetes 應運而生。
Kubernetes 是一個可擴展開源平台,用於管理容器。它可以幫助管理員和開發者們圍繞容器管理工作負載、服務和進程。它促進了聲明式配置,更容易實現自動化。在它相對較短的生命周期中,它已經催生了一個迅速成長的生態系統,其中包括來自大量公司和項目的服務、支持和工具。
如果你想對這項重要的雲技術有更多的了解,這裡有一些能幫忙你更深入學習的文章。還有 5 個項目可以幫你把學到的東西付諸實踐。
遏制容器亂象
2016 年,我們發布了《使用 Kubernetes 遏制容器亂象》,這是一篇由 Terry Ryan 寫的關於 Kubernetes 的介紹性文章,講述了 Kubernetes 如何幫助管理員和架構師們努力應對容器。如果你想找一篇從底層介紹容器是做什麼的以及 Kubernetes 是如何實現容器管理的,那麼你應該先讀下本文。本文適合零基礎的讀者,解釋了所有重要的概念,因此你能迅速了解相關技術。
如果想進階了解內核層面發生的一些神奇的事情,請閱讀 Jessica Cherry 對 Kubernetes 命名空間的解釋。
延伸閱讀:
Kubernetes:為什麼它很重要?
Kubernetes 提供了 基礎設施即服務 (IaaS)解決方案(類似 OpenStack)的便利和一個完整的 平台即服務 (PaaS)。它為你提供了管理基礎設施的抽象能力,以及在裸金屬基礎層面進行故障排除所需的工具。如果你執著於使用單一的裸金屬伺服器,你可能需要閱讀下 Tim Potter 寫的《你為什麼需要 Kubernetes》。他的文章對比了 IaaS 和 PaaS,解釋了為什麼 Kubernetes 如此廣泛地被使用。你可能並不是一定需要 Kubernetes 或容器,但是重要的是知道什麼情況下需要。
延伸閱讀:
在樹莓派上運行 Kubernetes
熟悉 Kubernetes 的最好方法莫過於自己運行它。不幸的是,不是每個人都有一個雲服務基層設施(或者有足夠的錢來租用一個)可供其支配。而幸運的是,Chris Collins 提供了《在樹莓派上運行 Kubernetes》的教程。結合他的另外幾篇關於《Cloud-init》和《Cloud-init 服務》的教程(也是在樹莓派上運行),你可以搭建任何你想要的家庭實驗室,這樣你就可以學習如何管理屬於自己的開放混合雲。
Kubernetes 命令
一旦你運行起 Kubernetes 後,可以看看 Jessica Cherry 的文章和附帶的備忘清單,這個清單列出了所有的基本的 Kubernetes 命令。在她的文章中,她解釋了 kubectl
命令的語法,簡單講述了每個命令和子命令是用來做什麼的。
有趣的 Kubernetes 項目
沒有什麼比擁有技術卻不知道該怎麼用它更令人沮喪的了。例如,在你的辦公桌上有一個樹莓派是一回事,但是決定它的 CPU 應該用來做什麼工作卻完全是另一回事。我們發布了很多教程,來指導你完成你的 Kubernetes 之路的探索:
- Helm 是一個 Kubernetes 的包管理器。你可以在它的幫助下,很快熟悉 Kubernetes 環境。
- 學習下 Operator SDK 的所有內容,來熟悉 Kubernetes 的對象和操作器。
- 在 Kubernetes 之上搭建網路文件系統(NFS)
- 學習如何使用 Skipper 或 Traefik 進行流量調度。
最重要的,花點時間來熟悉容器和 Kubernetes。不論你先把容器化的應用放到伺服器、雲上還是桌面,它們都是能幫助你理解的重要的範例,因為它們是一個強大的構造,可以讓 Linux 的應用變得更好、更健壯、魯棒性更好、更簡單。一定要投入精力去學習它們,你不會後悔的。
via: https://opensource.com/article/20/6/kubernetes-anniversary
作者:Seth Kenlon 選題:lujun9972 譯者:lxbwolf 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive