Chinh phục chứng chỉ CKA 2024 cùng Hữu Kim (R&D): "Kịch tính và nhiều kinh nghiệm xương máu"

Sunner Hữu Kim (R&D) vừa trải qua hành trình thi chứng chỉ CKA (Certified Kubernetes Administrator) trong năm 2024. Nhắc đến cuộc thi này, kịch tính và nhiều bài học xương máu là những gì Kim ấn tượng nhất. CKA là một trong số 3 chứng chỉ phổ biến về Kubernetes bao gồm: CKAD, CKA và CKS. Hãy cùng theo dõi kinh nghiệm chinh phục chứng chỉ CKA của Hữu Kim ngay dưới đây!

Kubernetes (hay còn được gọi với nhiều cái tên khác như K8S hay KUBE) là một hệ thống mã nguồn mở để tự động hóa việc triển khai, mở rộng và quản lý các ứng dụng container hoá. Đây là một trong những hệ thống quan trọng đối với lập trình viên trong việc quản lý và vận hành các ứng dụng với các hệ thống vừa và lớn, phân tán và phức tạp

Có thể các bạn đã biết, 3 chứng chỉ phổ biến về Kubernetes bao gồm: CKAD, CKACKS. CKA là 1 trong 3 chứng chỉ phổ biến về Kubernetes bên cạnh CKAD và CKS.  Đây là một 

Năm 2023, Hữu Kim (R&D) đã có một hành trình thú vị với chứng chỉ Kubernetes đầu tiên là CKAD, và có bài chia sẻ trên Sun* News với tựa đề: Chinh phục chứng chỉ CKAD với loạt kinh nghiệm 'không thể chi tiết hơn' từ Sunner Hữu Kim (R&D))

Nắm 2024, Kim lại tiếp tục chinh phục chứng chỉ thứ 2 về Kubernetes là CKA.

Hãy cùng đến với câu chuyện chinh phục mục tiêu này của Kim ngay sau đây nhé! 

Hữu Kim (R&D) - Full-stack Engineer với đa dạng kinh nghiệm code, tối ưu performance và triển khai vận hành các sản phẩm trong môi trường container thông qua các giải pháp về Docker, K8s, GitOps, .etc.

Tại sao lại là CKA?

Hữu Kim chia sẻ bản thân đã tìm hiểu và ứng dụng Kubernetes vào dự án từ khoảng năm 2020, và nhận thấy sự cần thiết của việc học nhiều hơn kiến thức chuyên sâu cũng như thực hành liên tục để làm chủ hệ thống thú vị này.

"Thời gian gần đây, mình cũng có tham gia vào một số chương trình hợp tác đào tạo về DevOps, K8s cả trong và ngoài Sun*. Mình bỏ lỡ cũng nhiều cơ hội hợp tác khi phía đơn vị muốn đào tạo yêu cầu các chứng chỉ về Kubernetes. Ngay lúc đó mình đã đặt mục tiêu phải chinh phục các chứng chỉ này. Ôn thi chứng chỉ giúp mình hệ thống lại kiến thức, tự tin hơn khi đào tạo về Kubernetes cho các anh chị tại Sun*. Ngoài ra, chứng chỉ CKA có thể giúp chứng minh rằng Sun* cũng có năng lực về Kubernetes” - Kim cho biết. 

Toàn cảnh về CKA Exam

  • Đối tượng: Chứng chỉ này hướng đến đối tượng quản trị viên, người cần có kinh nghiệm nhất định trong việc triển khai và vận hành Kubernetes cluster.
  • Hình thức thi: Thi trực tuyến.
  • Nội dung thi: 100% các câu hỏi trong bài thi là thực hành.
  • Thí sinh được cấp máy ảo đã kết nối sẵn tới một số K8s cluster và cần hoàn thành task theo đề bài.
  • Exam Simulator: Ubuntu + Kubernetes v1.30 (đều dùng kubeadm).
  • Thời lượng: 120 phút (2 giờ).
  • Số lượng câu hỏi: 17 câu.
  • Máy sẽ chấm điểm mỗi câu theo từng ý nhỏ nên thí sinh làm được đúng ý nào sẽ cộng điểm ý đó.
  • Thi sinh có một lần thi lại (retake) miễn phí.
  • Số điểm cần đạt để pass thi CKA là 66/100 điểm.
  • Nếu pass sẽ nhận được chứng chỉ có giá trị trong 2 năm (trước 01/04/2024 là 3 năm). Lúc mình thi thì vẫn được cấp 3 năm.

Giai đoạn 1: Khởi động và ôn tập

Ngay khi lên ý định chinh phục CKA, Kim đã liên tục “săn lùng” khắp các nền tảng để mua được voucher giảm giá. 

Kim chia sẻ: CKAD, CKA đều là chứng chỉ thi thực hành nên đòi hỏi nhiều về kỹ năng và chi phí thi cũng không nhỏ. Mình thấy vào dịp giữa năm sẽ có sale 30 - 40% và cuối năm thì thường có giảm giá lên đến 50%. Nếu các bạn có dự định thi nhưng không cấp bách thì cứ thong thả chờ có sale lớn thì hãy mua voucher nhé. Mình mua voucher thi CKA trên Linux Foundation vào tháng 12/2023 và áp được mã giảm giá 50% nên chỉ mất $395 $198 (~5tr), thanh toán được bằng thẻ tín dụng VISA.”

Tips: Nếu bạn cần xuất hóa đơn sau khi thanh toán thì bạn nhấn vào mục Purchase history trên thanh header. Rồi nhập thông tin thanh toán như tên công ty, địa chỉ, email... ở biểu mẫu bên phải và lưu lại. Sau khi lưu mới nhấn Download PDF để tải hóa đơn mới về.

Do đã có kinh nghiệm thi CKAD, ở đợt thi này, Kim tự ôn tập CKA tại nhà. Nếu chưa từng thi CKAD, CKA hoặc không tự tin, Sunners nên mua một khóa học trực tuyến để hệ thống lại kiến thức. Chia sẻ về lộ trình ôn thi, Kim cho biết bản thân tập trung ôn CKA trong khoảng 1 tuần, mỗi tối dành 2-3 tiếng. Lộ trình “lý tưởng” được anh chàng plan gồm có:

  • Dành ~1 buổi đầu để hệ thống hóa kiến thức thông qua các khóa học như acloudguru. 
  • Dành 3 buổi tiếp theo tập trung làm thử lab trên site Killercoda.com.
  • Dành trọn 1 tối thứ 6 và 2 ngày cuối tuần để thực hiện thi thử trên Killer.sh.
  • Cuối cùng là xếp lịch thi vào 2 ngày tiếp theo.

Trong đó, thực hành qua các bài lab trên Killercoda.com và tham gia 2 session thi thử là phương pháp được Kim đánh giá mang lại hiệu quả cao và giúp bản thân nhớ lâu hơn. 

“Chủ yếu mình ôn tập bằng cách thực hành các bài lab trên killercoda. Đây là nơi chia sẻ rất nhiều bài tập thực hành về cloud mà miễn phí trong đó có cả CKA, CKAD. Tất nhiên, nó chỉ là một số bài mẫu. Đối với mình thì phần lớn thời gian nhớ kiến thức nhanh nhất là thông qua 2 session thi thử. Bạn nên thi vào thứ 6 vì thời gian session mở chỉ tối đa 36 giờ nên thứ 6 sẽ tận dụng được 2 ngày cuối tuần. Số lượng câu hỏi trong mỗi session là 20-25, nhiều hơn so với khi đi thi thật. Cả 2 session đều dùng chung đề, do vậy nếu session 1 không đủ bạn có thể mở tiếp session 2 để làm lại. Nếu làm được hết các bài lab trong đề thi thử thì bạn chắc chắn sẽ đỗ CKA” 

- Hữu Kim khẳng định -

Ngoài ra, Kim cũng chia sẻ về công tác chuẩn bị và các vấn đề cần lưu ý để ôn tập tốt như:

  • Sử dụng imperative commands khi dùng kubectl sẽ giúp generate ra các file YAML để định nghĩa các object của K8s nhanh chóng hơn.
  • Hãy học thuộc một số phần nội dung cấu thường dùng, những object khác thì chủ yếu là hiểu rõ về chúng, cách chúng được ứng dụng như nào, cách search ra chúng trên doc. Khi thi hoặc trong lúc làm việc thì có thể mở docs ra để copy.

Giai đoạn 2: Chuẩn bị không gian và book lịch thi

Vì là chứng chỉ thi trực tuyến 100% nên việc chuẩn bị sẵn một không gian thi đạt chuẩn là bước quan trọng hàng đầu để mang về tâm lý tốt nhất cho “sĩ tử”. Kim chia sẻ 1 vài tips để set up phòng thi, bao gồm:

  • Phòng thi yêu cầu phải là phòng trống, không có tủ hoặc giá sách, camera,... Tốt nhất phòng thi chỉ nên có một bộ PC hoặc 1 laptop.
  • Nên sử dụng màn hình rời từ 23 inch trở lên. 
  • Cần chuẩn bị webcam rời để quay không gian thi khi thực hiện check-in
  • Cần kết nối internet mạnh mẽ.
  • Tạo một checklist cần nhớ để kiểm tra khi vào phòng thi, bao gồm: Kiểm tra thiết bị, PC, chuột, bàn phím; kiểm tra webcam; kiểm tra CCCD; liệt kê lại các command alias cần thiết để nhớ và dùng khi thi
  • Chuẩn bị sẵn danh sách command alias và biến môi trường để thêm vào ~/.bashrc trong quá trình thi. 

Tham khảo danh sách command alias mẫu đã giúp Kim tiết kiệm rất nhiều thời gian khi gõ lệnh:

# set output YAML, dùng khi generate template: 

export do='--dry-run=client -oyaml' 

# dùng khi xóa một object và không phải đợi: 

export now='--grace-period=0 --force' 

export ow='-owide' 

# command alias: 

alias kr='kubectl run $do --image' 

alias ka='kubectl apply -f' 

alias kn='kubectl config set-context --current --namespace' 

alias kxp='kubectl explain --recursive' 

alias kgp='kubectl get pod' 

alias kgd='kubectl get deploy' 

alias kgn='kubectl get node' 

alias kge='kubectl get event'

Sau mấy ngày cuối tuần miệt mài thi thử, Kim quyết định book lịch thi bằng cách đăng nhập vào trang training.linuxfoundation.com sau đó chọn kỳ thi CKA. Kim lưu ý chỉ chọn được ngày thi trước 1 ngày, ví dụ hôm nay là ngày 30/05 thì chỉ book được các ngày từ 31/05, 01/06... trở đi. Sau khi đã trang bị đầy đủ “thiết giáp”, anh chàng đã chính thức dấn thân vào hành trình thi máu lửa!

Giai đoạn 3: Check-in và thi

Để bắt đầu thi, bạn cần có mặt trước giờ thi ít nhất 30 phút để chuẩn bị thiết bị và CCCD check-in. Trong thời gian chuẩn bị, bạn phải tải và cài PSI Secure Browser - công cụ dùng để thi, quá trình này mất khoảng 10 phút. Sau đó, bạn sẽ chính thức bước vào check-in cùng một bác giám thị thông qua chat bằng tiếng anh để tránh việc thí sinh gian lận khi đeo tai nghe. Việc đầu tiên phải làm chính là chụp ảnh CCCD để xác minh danh tính. 

Quá trình check-in trực tuyến có thể xảy ra những phát sinh ngoài ý muốn, nên hãy chuẩn bị thiết bị thật kỹ vì thậm chí bạn sẽ có khả năng bị yêu cầu đổi phòng thi. “Lần trước mình thi thì check-in khá suôn sẻ, nhưng lần này thì khác. Mình được yêu cầu giơ lại ảnh CCCD để bác ý chụp lại, bảo mày chụp ảnh mờ này nọ. Tiếp tục lại vậy, một tay giơ để camera lấy nét, tay còn lại gõ hỏi xem ổn chưa. Lần cuối cùng đó là được yêu cầu giơ lấy nét và quay cận vào chỗ ngày hết hạn. Vậy là xong bước khai báo” - Kim chia sẻ về trải nghiệm check-in khá “kịch tính” của mình.

Sau quá trình check CCCD, Kim lại tiếp tục vướng vào “kiếp nạn” mới với phần check webcam bởi bác giám thị phán một câu xanh rờn: “Trên tường bạn có CCTV”. 

“Ôi lúc đấy thật hoảng loạn, mình nhìn thì đúng là có một cam treo trên tường thật. Sau đó, mình bị yêu cầu đổi phòng thi mà không có phương án back-up nào. Quá giờ thi 5 phút, rối quá, mình ... đi tìm tua vít để tháo luôn CCTV. Hú hồn may quá bác giám thị đã chấp nhận!”

- Kim bồi hồi kể lại trải nghiệm đáng nhớ  -

Check-in vào lúc 13h30, sau một số trở ngại (như phải tháo camera an ninh trong phòng thi), Kim bắt đầu bài thi lúc 14h20 với 120 phút đầy đủ. Bài thi gồm 17 câu hỏi, Kim hoàn thành trong 70 phút và dành thời gian còn lại để kiểm tra đáp án. Theo anh, 17 câu hỏi của exam không quá khó và thậm chí còn thừa khá nhiều thời gian để dò đi dò lại. Thong thả ngồi làm bài và sửa bài, Kim bấm End Exam và ra ngoài trước khi hết giờ thi 15 phút.

Một vài nhận định của Hữu Kim về đề thi:

  • Đề thi CKA có nhiều câu hay và sát với thực tế và cũng rất giống với đề thi thử. Thậm chí có những câu còn rất ngắn. Chỉ cần gõ vài lệnh là đã làm xong.
  • Phần lớn đề thi liên quan tới việc triển khai ứng dụng lên Kubernetes nên yêu cầu các bạn thành thục về Deployment, StatefulSet, DaemonSet, ConfigMap, Secret, PV/PVC, RBAC.
  • Ngoài ra sẽ có thêm một số câu hỏi về việc vận hành cluster như upgrade Kubernetes cluster, system-components, backup cluster, fix lỗi.
  • Những kiến thức về deployment, configmap, secret được dùng rất nhiều;
  • Ngoài ra bạn cũng cần hiểu rõ các thành phần trong control-plane, node vì sẽ có nhiều câu hỏi liên quan tới phần này kiểu như đề bảo thực hiện upgrade control-plane hoặc upgrade k8s node lên phiên bản chỉ định, hoặc tìm và sửa lỗi xem một node trong cluster tại sao lại không hoạt động..
  • Theo kinh nghiệm của Kim, câu nào đề yêu cầu về namespaced resource mà không nhắc gì tới namespace thì nghĩa là đang dùng default namespace.

Một số mẹo và kinh nghiệm hữu ích khi làm bài thi CKA:

  • Tạo alias để chạy lệnh ngắn gọn hơn, tham khảo plugin của Kim cho fish-shell tại plugin-kubectl.
  • Sử dụng imperative command và nhớ cách tìm kiếm trong docs.
  • Chuẩn bị trang thiết bị, địa điểm thi tốt.
  • Khi đã truy cập vào phòng thi, hãy kiểm tra ngay những thiết bị đã liệt kê trong check-list, thoát khỏi các app zalo, onedrive để hệ thống record.

Tổng kết

Sau một hành trình thi đầy kịch tính, Kim đã pass exam CKA ở lần thi đầu tiên với số điểm 93/100. Chinh phục CKA khiến anh bạn tự tin hơn để triển khai thêm thật nhiều khoá đào tạo nội bộ trong công ty, cũng như tạo cảm hứng cho anh em đồng nghiệp học tập và thực hành thi chứng chỉ. 

Sau CKA, mục tiêu của Kim sẽ là CKS - một chứng chỉ để kiểm tra các kiến thức liên quan tới vấn đề security khi quản lý và vận hành k8s cluster. Hẳn là lúc đó sẽ có rất nhiều kinh nghiệm hay để chia sẻ cùng độc giả, Sunners cùng chờ đợi và đón đọc nhé!

#công nghệ

#CKA

#CKAD

#TTDH

#TTTH