我通過認證 Kubernetes 應用程式開發人員 (CKAD) 考試的經驗和技巧

我通過認證 Kubernetes 應用程式開發人員 (CKAD) 考試的經驗和技巧我最近成功通過了認證 Kubernetes 應用程式開發人員(CKAD)考試並獲得了認證。今天我想談談認證程序本身以及我如何準備它。在考官的密切監督下在線參加考試對我來說是一次有趣的經歷。這裡不會有任何有價值的技術資訊;這​​篇文章純粹是敘述性的。我也沒有太多使用 Kubernetes 的背景,也沒有與同事進行過聯合訓練;我利用空閒時間自學和訓練。

我在 Web 開發領域還很年輕,但我很快就意識到,如果沒有 Docker 和 K8s 的基本知識,你就無法取得太大的進展。參加課程並準備此類考試似乎是進入容器及其編排世界的一個很好的切入點。

如果您仍然認為 Kubernetes 太複雜且不適合您,請繼續閱讀。

Чтоэтотакое?

雲端原生運算基金會 (CNCF) 提供兩種類型的 Kubernetes 認證:

  • 認證 Kubernetes 應用程式開發人員 (CKAD) - 驗證您為 Kubernetes 設計、建置、設定和發布雲端原生應用程式的能力。考試時間2小時,共19個任務,及格分數為66%。需要對基本原語有非常膚淺的了解。花費300美元。
  • 認證 Kubernetes 管理員 (CKA) 是一種認證,用於驗證履行 Kubernetes 管理員職責的技能、知識和能力。考試時間3小時,共有24個任務,通過率為74%。需要更深入的建置和配置系統的知識。費用也是300美元。

CKAD 和 CKA 認證計畫由雲端原生運算基金會 (CNCF) 開發,旨在透過標準化培訓和認證擴展 Kubernetes 生態系統。該基金會由谷歌與…合作創建。 Linux Kubernetes 基金會最初獲得了 Kubernetes 作為技術貢獻,並得到了微軟、蘋果、Facebook、思科、英特爾、紅帽等眾多公司的支持。 (c) Wiki

簡而言之,這些都是來自 Kubernetes「主要組織」的考試。當然,還有其他公司的認證。

為什麼呢?

這可能是整個項目中最具爭議的一點。我不想就證書的必要性發起聖戰,我只是想相信擁有這種證書會對我在勞動力市場上的價值產生積極的影響。這都是主觀的——你永遠不知道別人決定僱用你的轉折點是什麼。

附註:我沒有在找工作,現在我對一切都很滿意……好吧,也許可以搬到美國某個地方

訓練

CKAD 測驗共有 19 個問題,分為以下主題:

  • 13% – 核心概念
  • 18% – 配置
  • 10% – 多容器 Pod
  • 18%——可觀察性
  • 20% – 船艙設計
  • 13% – 服務與網絡
  • 8% – 狀態持久性

Udemy 平台上有一門非常棒的課程,由一位名叫 Mumshad Mannambeth 的印度人講授(連結位於文章末尾)。確實是高品質的材料,而且價格便宜。特別酷的是,在課程中,您可以在測試環境中進行實踐練習,這樣您就可以培養在控制台中工作的技能。

我完成了整個課程並解決了所有的實踐練習(當然,不看答案是做不到的),並且在考試前我以更快的速度再次復習了所有的講座並重新參加了最後兩次模擬考試。我以悠閒的節奏花了大約一個月的時間。這些材料足以讓我自信地以 91% 的成績通過考試。我在一個任務中的某個地方犯了一個錯誤(NodePort 不起作用),儘管我知道解決方案,但幾分鐘還是不足以完成另一個從檔案連接 ConfigMap 的任務。

考試怎麼樣

考試在瀏覽器中進行,網路攝影機打開,螢幕共享。考試規則要求房間裡不能有陌生人。當我參加考試時,國家已經實行了自我隔離制度,因此對我來說,找一個安靜的時間段非常重要,這樣我的妻子就不會進入房間,孩子也不會尖叫。我選擇了深夜,幸運的是,時間的選擇可以滿足任何人的口味。

一開始,考官就要求你出示你的主身份證件,上面有你的照片和全名(拉丁文)——對我來說是一本外國護照,並將你的網絡攝像頭轉向桌面和房間,以確保沒有異物。

考試期間,允許開啟另一個瀏覽器標籤頁並開啟以下資源之一:https://kubernetes.io/docs/https://github.com/kubernetes/https://kubernetes.io/blog/。我有這個文件,這就夠了。

在主窗口中,除了任務文字、終端和與考官的聊天之外,還有一個筆記窗口,您可以在其中複製一些重要的名稱或命令 - 它在幾次中都派上了用場。

Советы

  1. 使用別名來節省時間。這是我使用的:
    export ns=default # переменная для нэймспейса
    alias ku='kubectl' # укорачиваем основную команду
    alias kun='ku -n=$ns' # kubectl + namespace
    alias kudr='kun --dry-run -o=yaml' # очень нужные флаги, чтобы генерить yaml описание для объекта
  2. 記住隊伍的旗幟組合 運行,快速產生不同物件的 yaml — — pod/deploy/job/cronjob(雖然你根本不需要記住它們,你可以直接查看帶有 flag 的幫助 -h):
    kudr run pod1 --image=nginx --restart=Never > pod1.yaml
    kudr run deploy1 --image=nginx > deploy1.yaml
    kudr run job1 --image=nginx --restart=OnFailure > job1.yaml
    kudr run cronjob1 --image=nginx --restart=OnFailure --schedule="*/1 * * * * " > cronjob1.yaml
  3. 使用縮短的資源名稱:
    ku get ns # вместо namespaces
    ku get deploy # вместо deployments
    ku get pv # вместо persistentvolumes
    ku get pvc # вместо persistentvolumeclaims
    ku get svc # вместо services
    # и т.д., полный список можно подсмотреть по команде: 
    kubectl api-resources
  4. 合理分配時間來完成所有任務,不要糾結於一件事,跳過問題,繼續前進。一開始我以為自己完成作業的速度很快,可以提前完成考試,但最後有兩份作業都沒能完成。其實考試的時間非常緊張,整個2小時都是在緊張中度過的。
  5. 不要忘記切換上下文——在每個任務開始時都有一個切換命令以便在所需的叢集中工作。
    還要注意命名空間。為此我使用了另一種方法:
    alias kun='echo namespace=$ns && ku -n=$ns' # при выполнении каждой команды первой строкой у меня выводился текущий нэймспейс
  6. 不要急於支付認證費用,等待折扣。課程作者經常會向您的郵箱發送 20-30% 折扣的促銷代碼
  7. 終於學會 vim :)

引用:

  1. www.cncf.io/certification/ckad — 認證頁面本身
  2. www.udemy.com/course/certified-kubernetes-application-developer - 非常好的準備課程,所有內容都清晰明了,並配有插圖
  3. github.com/lucassa/CKAD-resources - 有關考試的有用連結和說明
  4. habr.com/ru/company/flant/blog/425683 — Habr 的同事講述如何通過難度更高的 CKA 考試的故事

來源: www.habr.com

為具有 DDoS 保護、VPS VDS 服務器的站點購買可靠的主機 🔥 購買具備 DDoS 防護的可靠網站寄存服務,包括 VPS 和 VDS 伺服器 | ProHoster