Blog

Certified Kubernetes Administrator 試験に挑戦してみた。


Central Infrastructure Agency の青山 真也です。

つい先日 Certified Kubernetes Administrator 試験 (CKA Exam) を受けてきたので、その所感をお伝えできればなと思います。

 

Certified Kubernetes Administrator とは

CKA は The Linux Foundation Project のひとつである Cloud Native Computing Foundation が出している資格試験の 1 つです。
リリースされたのも 2017 年 9 月頃となっており、非常に新しい試験となっています。
今日現在でまったく事前情報もなかったため、出題範囲を眺めつつ、初見で挑んできました。
受けたいけどどうなんだろうという方は特に目を通して頂ければと思います。

ちなみに、9 月にポチっとした時点では $300 で不合格だった場合にもう 1 回再挑戦できるようでした。

Expert

と、その前にモチベーション。

弊社では GKE 相当の Container as a Service 基盤をプライベートクラウド環境 (with OpenStack) で構築、提供しています。
CloudProvider の部分は大きく書き換えたりしながら Hardware のロードバランサと連携したり (https://cyberagent.ai/techblog/archives/3127)、OpenStack との連携など(https://cyberagent.ai/techblog/archives/2594)を行っているため、なかなかに作り込んだ設計となっています。

となると、利用者ユーザからすると心配な点はただ一つ。

「このコンテナ基盤の安定性は?」と。

そこで、利用ユーザにこのコンテナ基盤の安定性を保てるだけのスキルセットを持ったエンジニアがいるということのアピールにもなるかなと思い、受験したわけです。

 

(あとは新しい試験を1番に取ってやろうという気持ちも半分でした。)

 

出題範囲と Kubernetes 環境

出題範囲は下記のような形で幅広く網羅されています。
Kubernetes を構築する側、Kubernetes を利用する側の両方の知識が要求されてきます。

 

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

 

これらの問題に対して、様々な Kubernetes クラスタ環境を想定して、問題を説いていくことになります。
K8s クラスタの種類に関しても既に公開されており、Juju で構築された下記の 8 種類のクラスタが用意されています。

 

Cluster Members CNI Description
k8s 1 CA, 1 etcd, 1 master, 2 worker flannel non-HA k8s cluster
Hk8s 1 CA, 3 etcd, 3 master, 1 lb, 2 worker calico HA k8s cluster
bk8s 1 CA, 1 etcd, 1 master, 1 worker flannel non-HA k8s cluster
wk8s 1 CA, 1 etcd, 1 master, 2 worker flannel non-HA k8s cluster
ek8s 1 CA, 1 etcd, 1 master, 2 worker flannel non-HA k8s cluster
fk8s 1 CA, 1 etcd, 1 base node node k8s cluster none missing master node
ik8s 1 CA, 1 etcd, 1 master, 1 base node flannel missing worker node
tk8s 1 CA, 1 etcd, 1 master, 1 worker flannel non-HA k8s cluster

 

このクラスタ構成を見ると、ある程度の問題の想像もつきますね。
実際の試験も、ある程度想定通りの問題が出てきました。
また、Calico の実運用の経験もなかったため、ここらへんは鬼門になるかなと思っていました。

詳しくは、下記の PDF から確認して下さい。

出題範囲
https://github.com/cncf/curriculum/blob/master/certified_kubernetes_administrator_exam_V0.9.pdf

Important Tips
https://www.cncf.io/certification/tips

 

受験方法

基本的には The Linux Foundation が行っている LFCS (Linux Foundation Certified System Administrator) の試験と同じだと思います。

受験方法は人が入ってこない個室を用意して、 4 時間オンラインで行います。
机の上は PC 以外はティッシュ・飲み物すら置くこともNGなので、事前に綺麗にしておく必要があります。
Google Chrome の拡張機能を入れた PC を使って、モニターを共有しつつ、Web カメラで見られながら試験を受けることになります。
休憩時には申告し、部屋の外でなら飲食は大丈夫なようです。

試験中のやり取りは、カメラとマイクが必要とのことだったので、てっきり英語で会話しながらだと思っていました。
受験部屋として私語厳禁の部屋を抑えてしまっていたため、どうしたものかと思っていましたが、結果的に全てチャットでした。

また、開始前にWeb カメラで部屋全体を写して入念なチェックが行われます。
キーボードとマウスのリストレストを持ち込んだのですが、「これは何か」とわりと追求されたので、こういったところはきっちりしているようでした。
ちなみに、モニタ・キーボード・マウス・リストレスト辺りは持ち込みOKのようです。

一番肝となるのは試験中は Web ページなどは参照可能だという点です。
つまりググって OK なわけです。
resource の書き方とかを覚える必要はないですが、その変わり完全に実技重視な試験となっています。
試験画面も踏み台サーバの shell が 1 個渡され、問題を見ながら作業をしていく形になります。
問題を解決できたかどうかの判断も自分で確認する必要があります。

問題が英語で躊躇しているかたは、Google 翻訳の Chrome extension を入れておくと良さそうです。

ちなみに合格結果は 72-75 時間後とのことです。
問題は私が受けたときは 30 問、各設問の配点(1-5 点)の表示がありました。

 

問題

当然詳しくは書けないのですが、広く浅く色々な事が出てきた印象です。
例としては、下記のようなものがありました。

  • ◯◯な Kubernetes Resourceを作って下さい
  • ◯◯が動いていないので、正しく設定し直して下さい
  • ◯◯が出来るように構築してください

いずれの場合も再起動後にも正常に動作する必要があります。
reboot 後は30 秒程度で起動してきたので、カジュアルに再起動試験もしやすかったです。

また、4 時間もあるので時間の余裕はあるかと思っていたのですが、意外と時間は足りなかった印象です。
特に構築系の問題は時間が取られやすいので注意が必要です。
構築系に関しては、 tar ボールが配置されていましたが、バイナリは見当たらなかったので別途取得したのですが、取得元はどこでも問題無さそうでした。
恐らくコンテナ上で動かしたりするのでも問題ないと思います。
本来は tar ボールの中のスクリプトでも使うべきだったんだと思います。

合格点は変動する可能性が高いですが、私が受けたときは 72 時間後に返ってくる試験結果に書かれた合格ラインは 74%でした。
80% 程度がひとつの目安になるんじゃないかと思います。

 

やっておくべきこと

知らないと解けない問題、時間がかかってしまう問題もあったので、Kubernetes の公式ドキュメントは一通り目を通しておき、頭の中で大体出来ることを把握しておく必要があります。
また、ブックマークなんかも積極的に活用すると良さそうです。

また、ブラウザで立ち上がるシェルの使い勝手がいまいちなので、tmux とかは使ったほうが良さそうです。
config は事前に Web 上に公開しておかなかったので、泣く泣く単一のシェルで頑張りました。

 

で結果は?

おかげさまで無事合格いたしました。
世界で 138 番目、CyberAgent 全体でも 1 番最初に合格しました。
これからもより実務でスキルをつけていきたいと思います。

 

 

Author

アバター
masaya