Kinh nghiệm và mẹo của tôi để vượt qua kỳ thi Nhà phát triển ứng dụng Kubernetes được chứng nhận (CKAD)

Kinh nghiệm và mẹo của tôi để vượt qua kỳ thi Nhà phát triển ứng dụng Kubernetes được chứng nhận (CKAD)Mới gần đây, tôi đã vượt qua thành công kỳ thi Nhà phát triển ứng dụng Kubernetes được chứng nhận (CKAD) và nhận được chứng chỉ của mình. Hôm nay tôi muốn nói về thủ tục chứng nhận và cách tôi chuẩn bị cho nó. Đó là một trải nghiệm thú vị đối với tôi khi làm bài thi trực tuyến dưới sự giám sát chặt chẽ của giám khảo. Sẽ không có thông tin kỹ thuật có giá trị ở đây; bài viết hoàn toàn mang tính chất tường thuật. Ngoài ra, tôi chưa có nhiều kinh nghiệm làm việc với Kubernetes và cũng chưa được đào tạo chung với đồng nghiệp, thời gian rảnh tôi tự nghiên cứu và rèn luyện.

Tôi còn khá trẻ trong lĩnh vực phát triển web, nhưng tôi ngay lập tức nhận ra rằng nếu không có ít nhất kiến ​​​​thức cơ bản về Docker và K8 thì bạn sẽ không thể tiến xa được. Tham gia khóa học và chuẩn bị cho loại kỳ thi này dường như là một điểm khởi đầu tốt để bước vào thế giới của các thùng chứa và sự sắp xếp của chúng.

Nếu bạn vẫn nghĩ rằng Kubernetes quá phức tạp và nó không dành cho bạn, hãy theo dõi con mèo.

Nó là gì?

Có hai loại chứng nhận Kubernetes từ Tổ chức điện toán đám mây (CNCF):

  • Nhà phát triển ứng dụng Kubernetes được chứng nhận (CKAD) - kiểm tra khả năng thiết kế, tạo, định cấu hình và xuất bản các ứng dụng gốc trên đám mây cho Kubernetes. Bài thi kéo dài 2 giờ, 19 bài, điểm đậu 66%. Đòi hỏi kiến ​​thức rất hời hợt về nguyên thủy cơ bản. Chi phí $ 300.
  • Quản trị viên Kubernetes được chứng nhận (CKA) kiểm tra các kỹ năng, kiến ​​thức và năng lực để thực hiện nhiệm vụ của quản trị viên Kubernetes. Bài thi kéo dài 3 giờ, 24 bài, điểm đậu 74%. Cần có kiến ​​thức chuyên sâu hơn về xây dựng và cấu hình hệ thống. Chi phí cũng là 300$.

Các chương trình chứng nhận CKAD và CKA được Cloud Native Computing Foundation phát triển để mở rộng hệ sinh thái Kubernetes thông qua đào tạo và chứng nhận tiêu chuẩn hóa. Quỹ này được Google tạo ra với sự hợp tác của Linux Foundation, Kubernetes từng được chuyển giao như một đóng góp công nghệ ban đầu và được hỗ trợ bởi các công ty như Microsoft, Apple, Facebook, Cisco, Intel, Red Hat và nhiều công ty khác (c) Wiki

Nói tóm lại, đây là những bài kiểm tra từ “tổ chức tổng thể” trên Kubernetes. Tất nhiên, có chứng nhận từ các công ty khác.

Tại sao?

Đây có lẽ là điểm gây tranh cãi nhất trong toàn bộ ý tưởng này. Tôi không muốn bắt đầu holivar về sự cần thiết của chứng chỉ, tôi chỉ muốn tin rằng sự hiện diện của loại chứng chỉ này sẽ có tác động tích cực đến giá trị của tôi trên thị trường lao động. Mọi thứ đều mang tính chủ quan - bạn không bao giờ biết chính xác điều gì sẽ là bước ngoặt trong quyết định tuyển dụng bạn.

Tái bút: Tôi không tìm việc làm, bây giờ tôi hài lòng với mọi thứ... à, ngoại trừ việc có thể chuyển đến một nơi nào đó ở Mỹ

Đào tạo

Bài thi CKAD có 19 câu hỏi, được chia thành các chủ đề như sau:

  • 13% – Khái niệm cốt lõi
  • 18% – Cấu hình
  • 10% – Vỏ nhiều container
  • 18% – Khả năng quan sát
  • 20% – Thiết kế nhóm
  • 13% – Dịch vụ & Mạng
  • 8% – Sự kiên trì của trạng thái

Trên nền tảng Udemy chỉ đơn giản là có một khóa học tuyệt vời từ một người Ấn Độ có tên Mumshad Mannambeth (liên kết sẽ ở cuối bài viết). Vật liệu thực sự chất lượng rất cao với một mức giá nhỏ. Điều đặc biệt thú vị là khi khóa học diễn ra, bạn sẽ được yêu cầu làm các bài tập thực hành trong môi trường thử nghiệm, do đó, bạn sẽ phát triển kỹ năng làm việc trong bảng điều khiển.

Tôi đã xem qua toàn bộ khóa học và hoàn thành tất cả các bài tập thực hành (tất nhiên là không có phần xem trước đáp án), và ngay trước kỳ thi, tôi xem lại tất cả các bài giảng với tốc độ nhanh hơn và làm lại hai bài kiểm tra thử cuối cùng. Tôi mất khoảng một tháng với tốc độ bình tĩnh. Tài liệu này đủ để tôi tự tin vượt qua kỳ thi với số điểm 91%. Tôi đã mắc lỗi ở đâu đó trong một tác vụ (NodePort không hoạt động) và một vài phút là không đủ để hoàn thành một tác vụ khác bằng cách kết nối ConfigMap từ một tệp, mặc dù tôi biết giải pháp.

Kỳ thi thế nào

Bài kiểm tra diễn ra trên trình duyệt, bật web camera và chia sẻ màn hình. Thể lệ thi yêu cầu không được có người lạ vào phòng. Tôi đi thi khi cả nước đã áp dụng chế độ tự cách ly nên điều quan trọng là tôi phải tìm khoảng thời gian yên tĩnh để vợ tôi không vào phòng nếu không con sẽ la hét. Tôi chọn vào buổi tối muộn, vì thời gian có sẵn phù hợp với mọi sở thích.

Ngay từ đầu, người kiểm tra yêu cầu bạn xuất trình ID chính có ảnh và tên đầy đủ (bằng tiếng Latinh) - đối với tôi đó là hộ chiếu nước ngoài và triển khai camera web trên máy tính để bàn và phòng để đảm bảo không có đối tượng nước ngoài.

Trong kỳ thi, được phép mở một tab trình duyệt khác bằng một trong các tài nguyên: ​https://kubernetes.io/docs/,https://github.com/kubernetes/hoặc https://kubernetes.io/blog/​. Tôi đã có tài liệu này, nó là khá đủ.

Trong cửa sổ chính, ngoài văn bản của nhiệm vụ, thiết bị đầu cuối và trò chuyện với giám khảo, còn có một cửa sổ ghi chú nơi bạn có thể sao chép một số tên hoặc lệnh quan trọng - điều này đôi khi rất hữu ích.

Советы

  1. Sử dụng bí danh để tiết kiệm thời gian. Đây là những gì tôi đã sử dụng:
    export ns=default # переменная для нэймспейса
    alias ku='kubectl' # укорачиваем основную команду
    alias kun='ku -n=$ns' # kubectl + namespace
    alias kudr='kun --dry-run -o=yaml' # очень нужные флаги, чтобы генерить yaml описание для объекта
  2. Ghi nhớ các tổ hợp cờ cho lệnh chạyđể nhanh chóng tạo yaml cho các đối tượng khác nhau - pod/deploy/job/cronjob (mặc dù không cần thiết phải nhớ chúng, bạn chỉ cần xem trợ giúp với cờ -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. Sử dụng tên tài nguyên rút gọn:
    ku get ns # вместо namespaces
    ku get deploy # вместо deployments
    ku get pv # вместо persistentvolumes
    ku get pvc # вместо persistentvolumeclaims
    ku get svc # вместо services
    # и т.д., полный список можно подсмотреть по команде: 
    kubectl api-resources
  4. Phân bổ thời gian hợp lý để hoàn thành mọi nhiệm vụ, không bị mắc kẹt ở một việc, bỏ qua câu hỏi và tiếp tục. Lúc đầu tôi tưởng mình sẽ hoàn thành bài tập với tốc độ thật nhanh và sẽ hoàn thành bài thi sớm nhưng cuối cùng tôi không có thời gian để hoàn thành hai bài tập. Trên thực tế, thời gian của kỳ thi được phân bổ liên tục và cả 2 giờ trôi qua trong căng thẳng.
  5. Đừng quên chuyển đổi ngữ cảnh - khi bắt đầu mỗi nhiệm vụ, một lệnh sẽ được đưa ra để chuyển đổi để hoạt động trong cụm mong muốn.
    Ngoài ra hãy chú ý đến không gian tên. Để làm điều này, tôi đã sử dụng một bản hack khác:

    alias kun='echo namespace=$ns && ku -n=$ns' # при выполнении каждой команды первой строкой у меня выводился текущий нэймспейс
  6. Đừng vội trả tiền để được chứng nhận, hãy chờ giảm giá. Tác giả khóa học thường xuyên gửi mã khuyến mãi giảm giá 20-30% qua email.
  7. Cuối cùng cũng học vim :)

Links:

  1. www.cncf.io/certification/ckad - chính trang chứng nhận
  2. www.udemy.com/course/certified-kubernetes-application-developer — một khóa học chuẩn bị rất tốt, mọi thứ đều rõ ràng và có hình ảnh minh họa
  3. github.com/lucassa/CKAD-resource - các liên kết và ghi chú hữu ích về kỳ thi
  4. habr.com/ru/company/flant/blog/425683 - một câu chuyện từ các đồng nghiệp của Habr về việc vượt qua kỳ thi CKA khó khăn hơn

Nguồn: www.habr.com

Thêm một lời nhận xét