CNCF が提供する Kubernetes の認定資格 CKA を取得した

Written by @ryysud

Mar 24, 2019 23:27 · 2930 words · 6 minutes read #kubernetes #poem

cka.png

Certified Kubernetes Administrator(CKA)とは?

Certified Kubernetes Administrator(CKA)は、CNCF が Linux Foundation と共同で作成した Kubernetes の認定資格の内の1つで、Kubernetes の管理者向けの認定資格となっております。CKA の他に、Kubernetes 上のアプリケーション開発者向けには Certified Kubernetes Application Developer(CKAD)が提供されています。

また、Kubernetes のバージョンを追随する形で試験内容もバージョニングされており、自分が受験した v1.13.0 は以下のような内容でした。バージョン毎に試験要項が変更になる可能性大なので、受験時に Certified Kubernetes Administrator (CKA) Program を確認するのが間違いないです。

  • 受験費用は $300
  • 問題数は 24個 で試験時間は 180分
  • 試験問題は日本語が選択可能
  • 試験会場は誰も入ってこない静かな個室を自分で用意
  • Webカメラ/マイク/画面共有 を用いてリモートで実施
  • 合格ラインに達しない際にはリテイクとして無料で一度だけ再受験が可能

試験中は1つのタブのみ開くことが許可されていて、以下のページのみが閲覧可能です。

試験問題で問われる範囲は以下で網羅的な知識が求められる印象です。

  • Application Lifecycle Management 8%
  • Installation, Configuration & Validation 12%
  • Core Concepts 19%
  • Networking 11%
  • Scheduling 5%
  • Security 12%
  • Cluster Maintenance 11%
  • Logging / Monitoring 5%
  • Storage 7%
  • Troubleshooting 10%

※ GitHub で公開されている cncf/curriculum からの引用

CKA 取得までの流れ

1. 試験に必要なものを揃える

以下が必要なものとなります。

  • PC(デスクトップ or ラップトップ)
  • Webカメラ
  • マイク
  • パスポートなどの身分証明書
  • 試験会場

自分は以下の構成で臨みました。

  • MacBook Pro + ディスプレイ
  • Web カメラは LOGICOOL の外付けのもの を購入
  • マイクは MacBook Pro に内蔵されているものを利用
  • パスポートを用意
  • 試験会場は自宅を片付けて用意(貸し会議室や会社の会議室を利用する方が多い印象)

2. 試験前のチェックリストを全てクリアする

試験登録後に My Portal 上にチェックリストが設けられるので、それらを全てクリアする必要があります。

  • 試験登録(こちらは初回アクセス時には既に ✓ となっています)
  • システムの互換性チェック(OS、Webブラウザ、Webカメラ、Chrome拡張、ネットワーク状況などがチェックされます)
  • 試験のスケジューリング
  • 試験要項の確認(先述のものに加えてより詳細な記載がなされています)
  • 名前の確認
  • 試験の際の Tips の確認
  • 試験開始(こちらは当日までは未チェックとなります)

規約違反が発生したら元も子もないので、試験要項と Tips は読み込んでおいた方が良いと思います。

3. Kubernetes の理解を深める

Kubernetes の学習には以下をベースに進めて、理解が浅いものは都度ググって深掘りしました。

また、以下の方々のブログなどを参考にさせて頂きました。

4. 試験当日の流れ

試験開始までは以下の流れとなります。

  • 試験時間に My Portal から試験開始ボタンを押下
  • 試験官からチャットで連絡が来る
  • パスポートをWebカメラを通して確認する
  • カメラとマイクと画面の共有を行う(ディスプレイを利用していたので2つの画面共有を実施)
  • Google Chrome 以外のアプリケーションを終了する
  • Google Chrome の余計なタブを閉じる
  • カメラを使って部屋を隅々チェックする(外部 Web カメラだったのでスムーズでした)
  • 試験要項の簡単なおさらい
  • 試験開始
  • 試験終了
  • アンケート回答

上記がざっくりとした流れとなっております。試験中はメモを取ることが可能なためよく使いそうなマニフェストは初めに貼り付けておくと良いかもしれません。また、申し出をすれば離席してのトイレ休憩も可能です。試験官とのやりとりは英語でのチャットで、音声でのやりとりは発生しませんでした。マイクはこちらの音をチェックするだけで、試験開始後にマイクはミュートにしてくれと言われました。

5. 合否の連絡がくるまで

試験終了後すぐに、36時間以内に結果を連絡する旨のメールが届きます。

Our records show you recently completed the CKA Exam. Within 36 hours of your completion of this Exam, a score report will be emailed to you and exam scores will be made available in your My Portal account on https://training.cncf.io/portal.

自分の場合は、試験終了の32時間後に結果のメールが来ました。

Congratulations! You achieved a passing score on the CKA Exam that you took on 2019-03-23!
You scored 91% for this Exam. A score of at least 74% was required to pass.

※ 最上部の画像にある認定証も添付されています

上記とは別に Certificate ID が記載された正式なメールも届きました。

Congratulations, you have successfully completed the requirements needed to achieve CKA Certification!
Your Certificate ID is CKA-1900-001691-0100 and your CKA Certificate is attached.
The expiration date of your CKA Certification is 03/24/2021.

以下のページで Certificate ID と名前を入力して、他の方への証明が可能となっているようです。
https://portal.linuxfoundation.org/certification/verify-certifications

試験を終えてやっておいた良かったと思ったこと

kubernetes.io/docs の読み込み

試験中に参照できる唯一のドキュメントなので、何度も何度も読み込みました。そのおかげで全くわからない問題にぶつかった際には「関連する情報があの辺りに書いてあったなあ」という薄い記憶から知りたかった情報に辿り着いて解答することができました。kubernetes.io/docs/tasks で手を動かしておくのは MUST かなと思います。また、コンポーネントのニッチな機能や便利オプションであったり、痒いところに手が届く kubectl のサブコマンドを知ることができる嬉しい副作用なんかもあるので、最高です。

kubectl を叩きまくる

ひたすら Kubernetes Objects の 作成/参照/更新/削除 を行いました。また、kubectl explainkubectl run --dry-run -o yaml の操作は多様するので抑えておいた方が良いと思います。

arush-sal/cka-practice-environment を利用した模擬試験

とてもたくさんの CKA 受験ブログが公開されているのですが、問題画面と専用コンソールに関する記載がなされているものが見当たらず、GitHub を漁っていたら arush-sal/cka-practice-environment というリポジトリを見つけました。docker-compose を使って、お手軽に模擬試験問題と CKA の専用コンソールで利用される GateOne を起動することが出来るので、試験のイメージを掴むためにも大変オススメです。また、試験では1つのコンソールしか与えられず、複数コンソールを使いたいときには screen や tmux の利用が必要です。自分は1つでどうにかなったのですが、余裕があれば tmux の操作を覚えておきたかったです。

Kubernetes クラスタの構築

CKA はあくまで “管理者向け” の試験で、壊れているクラスタを正常に稼働するように直す問題なども出題されるので、Kubernetes The Hard Way の実施は MUST だと思います。自分は実施する中で各コンポーネントの役割を頭に叩き込んでいきました。また、kubernetes.io/docs の情報をベースに、Kubernetes クラスタの構築をフルスクラッチで行ったことで、各コンポーネントのパラメータがどのように作用するのかを知れた事も大きかったと思っております。

さいごに

久々の試験であることに加えて、取得したい気持ちが強く、当日は緊張で吐きそうだったのですが、なんとか合格することが出来て本当に安心しました。試験勉強を通して、いくらかは Kubernetes の理解が深まった気もしましたが、まだまだ浅く広くしか理解できていない感も否めず、インターネットにある Kubernetes 関連の有良記事におんぶにだっこ状態なので、嬉しい気持ちはさっさと忘れて、地道に頑張っていきたいと思います。CKAD は気持ちが乗ったときにでも挑戦します。