日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

开发人员如何学习 Kubernetes

發布時間:2023/12/4 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开发人员如何学习 Kubernetes 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

雖然“容器編排平臺”還沒有被整個行業大范圍采用,但在這一領域?Kubernetes?已經戰勝其他選手,成為了事實標準。近兩年的 Web 開發技術社區,隨便打開一兩個群,你都能看到人們在談 Kubernetes。很多開發人員,包括曾經的我,在學習 Kubernetes 時遇到一個障礙:在網上看到的各類 Kubernetes 文章,或者在社區里聽到的各類 Kubernetes 分享,通常都充斥著各類聽不懂的名詞,讓人一時無法融入他們的氛圍之中。而當自己狠下心去找一兩篇安裝教程想試一試的時候,卻發現要么準備步驟繁多,要么文檔中的步驟復雜、令人忘而卻步。

我相信這些問題不止我一個人遇到,而且事實上,它們本不應該成為阻擋我們學習 Kubernetes 的障礙。

獲得 Kubernetes 集群

在聊我們如何獲得一個可用的 Kubernetes 集群之前,稍微啰嗦幾句關于必要性的問題。很多技術參考書喜歡先上來寫一章“概述”,就像大學教材第一章總是“緒論”一個套路,先回顧一下這個技術的來龍去脈,展望一下未來。然后第二章是安裝教程,不少書寫的特別詳細,恨不得每一個界面都截圖,每一段代碼和配置都要貼到書上。這個做法先不說在書的寫作上合不合理,它至少帶來一個問題,那就是不知不覺就把讀者剛翻開一本書時的新鮮感帶到軟件安裝的細節中磨滅殆盡了。這是十分低效的,也是很打擊讀者信心的事情。

如果我們眼前的任務是學習 Kubernetes 的用法,而不是要學會如何部署并立志去當一個 Kubernetes 集群運維人員,那么完全沒必要早早地著急研究如何部署一個 Kubernetes 集群,更不必去研究它的高可用集群的原理和細節。

對于急于學習 Kubernetes 用法的開發人員來說,可以有更多簡單的方法獲得一個可用的 Kubernetes 集群:

  • 使用?Katacoda?提供的線上環境(免費)。Katacoda 是一個提供交互式在線學習環境的網站,它有很多課程是免費的,其中就包括不少 Kubernetes 課程。只要打開其中一個 Kubernetes,根據提示就可以在幾分鐘時間里獲得一個小型集群環境。

  • 使用?Minikube?在個人電腦上安裝(免費)。Minikube 是一個可以在個人電腦上快速啟動的集群。不過,由于仍然有一些自己安排的步驟,所以由于每個人電腦的實際情況的不同,還是有一定機率會遇到一些問題。

  • 使用公有云提供的 Kubernetes 服務(收費)。微軟云、騰訊云、華為云等各類云環境都提供了 Kubernetes 集群服務,對于用戶來說,只要一路下一步下去,根據向導和文檔,通常只需要十來分鐘就可以擁有一個自己的集群。

實際上直接使用公有云的 Kubernetes 是我最推薦的一種方法,因為它最省事,而且并不貴:省事是很容易理解的,各個云一定希望自己提供的服務是易于使用、健康穩定的,否則不會有人用他們的服務;而價格方面,我自己在好幾個云環境都創建過 Kubernetes 集群,發現他們對于主節點(集群管理節點)都是不收費的,只對工作節點收費——也就是說,用于運行你的容器的虛擬機才需要收費。Azure 國際云上提供的 B2ms 型號虛擬機(2 核 8 GB內存)一個月才人民幣 500 元左右(美元 $70.8)。如果你只是要用幾天用于學習的話,平均到每天只要 17 元,相當于一頓外賣的錢,可以說相當便宜了。

總之,如果你現在是想快速上手學習,那就先不要在部署 Kubernetes 集群上花費太多精力。

正確的學習路徑

我想,應該有不少人都買了 Kubernetes 的大部頭著作。但這其實也是沒必要的。

坦率地講,很多大部頭并不適合想快速上手 Kubernetes 的應用開發人員作為入門讀物。這些大部頭,會從 Kubernetes 原理講起,然后分別介紹 Pod、Service、ReplicaSet、Deployment、PersistentVolume、PersistentVolumeClaim 等一系列概念,后面介紹各種原理,包括 Kubernetes 網絡模型,最后還不忘介紹如何閱讀 Kubernetes 源代碼、為它貢獻代碼、開發擴展等。

估計這一系列下來,很多人的一開始的熱情早就磨滅到所剩無幾了。最重要的是,對于開發人員來說,還是沒有學會該怎么寫好一個 Pod 的描述文件,該怎么為自己的應用設計一個面向 Kubernetes 的持續交付流水線。這類書,就像一本字典——你在遇到不認識的字時總是可以隨手翻一翻,但學習遣詞造句卻還是要從《語文》課本開始。同理,開發人員需要一個快速上手的路徑,而不是先從大部頭著作開始。

我主張,應用開發人員只需要先學很少的幾個 Kubernetes 關鍵概念,比如 Pod、Service 和 Deployment;然后直接把精力放在如何把自己的應用部署上去,并著手研究部署到 Kubernetes 之后的各類場景化需求,再反過來去逐個學習 Kubernetes 的各項功能特性。

舉例來說,把自己的應用部署上去,如果你的應用:

  • 需要存儲文件,你就著手研究如何使用 PersistentVolume、PersistentVolumeClaim 來實現存儲;

  • 依賴 Redis 或 Postgres 數據庫,你就研究如何在部署應用的同時,等待 Redis/Postgres 變成就緒狀態,再讓用戶訪問自己的應用;

  • 是一個微服務系統,你就研究如何發現并調用其他微服務

  • 總是崩潰,你就研究如何收集日志,并存儲內存轉儲文件(core dump),以便分析

  • 需要很多配置,你就研究如何將應用的配置交給 Kubernetes 管理,并規劃命名空間以滿足多套邏輯環境的隔離性

下圖是 WordPress 應用在 Kubernetes 上部署時涉及到的各種資源:

一步一步下來,我相信,你對 Kubernetes 的各種特性會是一個逐漸熟悉的過程。最重要的是,這會是一個“發現之旅”,它讓你總是帶著明確的問題出發,在解決問題之后獲得相應的成就感,激勵你繼續探索和學習下去。而這正是學習一個新的工具最好的方法。

總結

Kubernetes 已經占據著各類技術社區的頭條很長一段時間了,但根據 InfoQ 2019 年發布的 Cloud & DevOps 報告,大量的企業目前還沒有采用它。對于開發人員來說,現在這個階段開始學習并為企業接下來的戰略做好準備,將是對自己接下來一段時間職業生涯最好的保障。

同時,人們經常在談到學習 Kubernetes 時,經常談到的是它復雜、難以入門,讓很多人“從入門到放棄”。實際上,在學習 Kubernetes 時,選擇一個合適的學習路徑是可以讓學習效果事半功倍的。

基于上面的討論,我結合自己學習 Kubernetes 的經歷,近期制作了一門在線直播課程,以一個開發人員的視角與大家一同學習 Kubernetes。目前這個課程第一期的直播已經在 3.19 日晚播出,收到大量關注和好評。如果你對這個課程感興趣,請掃碼查看其詳細信息:

此外,還有一些其他的資源,也是供開發人員學習 Kubernetes 非常好的材料:

  • 微軟提供了一份學習路徑材料,我個人認為是比較為開發人員考慮的:http://shorturl.at/berF1

  • 紅帽編寫的給開發人員的 OpenShift 文檔是一份不可多得的實操手冊:http://shorturl.at/pyEQS

  • 總結

    以上是生活随笔為你收集整理的开发人员如何学习 Kubernetes的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。