はじめに
こんにちは。株式会社SHIFT デリバリ改革部/サービスプラットフォームG/CAT開発チームの武井です。
私は普段、インフラエンジニアとしてCATの運用安定化・信頼性/開発体験の向上等に日々努めています。
今回は表題の通り、Certified Kubernetes Security Specialist (CKS)を受験し、無事合格したのでその体験記を書こうと思います。
これからK8s認定資格、特にCKSを目指す方の参考になれば幸いです。
CKSとは
Kubernetesのセキュリティ分野における知識と実践力が試される試験です。 受験の前提条件として、Certified Kubernetes Administrator(CKA)の認定を受けている必要があります。
Linux Foundationの公式サイトには以下のような記載があります。
CKS は、Linux Foundation と Cloud Native Computing Foundation (CNCF) が、Kubernetes エコシステムの開発を支援するための継続的な取り組みの一環として作成しました。この試験は、Kubernetes を実行するコマンド ラインから複数のタスクを解決する必要がある、オンラインで監督されるパフォーマンス ベースのテストです。
尚、CKSとCKS-JPの二種類がありますが、日本語を選択できるか否かの違いのみで難易度に差はありません。
※私はCKS-JPを受験しましたが、英語を機械翻訳したような独特の言い回しがあったため、結局途中から英語に切り替えて試験を行いました。
また、試験の購入はドル建てで行います。円安の現状(2025年9月)では割高になってしまうため、バウチャーや会社の福利厚生があれば、そちらを上手く活用して費用を抑えたいところです。ちなみに弊社では資格取得促進のための報奨金精度があり、本資格も対象でした。
Linux Foundationで頻繁にセールも行っているので、そちらを活用するのも良いかもしれません。
試験範囲
K8sにおけるセキュリティ分野の機能はもちろんですが、周辺ツールの活用をしつつタスクをこなすことが求められます。
少なくとも、以下の周辺ツールの基本的な概要と使い方は押さえておくべきでしょう。
尚、試験範囲はこちら でも確認が可能です。
-
カーネル強化ツール
-
Pod間通信の暗号化
-
イメージスキャンなど
-
Manifestスキャン
-
ランタイムモニタリング
受験環境
試験用ツール
上記の通りオンラインで行うパフォーマンス試験で、Linux Foundation Proctoring Platform(PSI)という専用のツールを用いて行います。
動作要件はこちら をご覧ください。
受験前に動作確認が行えますので、そちらを実施しておくことをお薦めします。
ロケーション
本試験を含めて、Linux Foundationの試験はこの要件が厳しいです。書斎などで受験を考えている方は、受験前に部屋の片づけが必須かと思われます。
主な要件を以下に挙げます。
-
デスク周り
-
壁
-
照明
-
試験監督が受験者の顔、手、周囲の作業エリアを見ることができるだけの光量が必要
-
受験者の後ろに照明や窓が無いこと
-
-
その他
身分証明
受験前に必要です。以前(2023~2024年にCKA/CKADを受験した際)は開始直前に身分証明書を提示してチェックを受けていましたが、今回は事前に写真を撮る方法を選択できました。 直前は何かとバタバタしますので、事前に済ませておくことをお薦めします。
尚、試験監督は日本人ではないため運転免許証やマイナンバーカードを身分証明書と認識できないケースが多いです。お持ちの方はパスポートでの身分証明がスムーズです。
試験中に許可されていること
試験中はK8sの公式ドキュメント及び試験範囲内のOSSに関するドキュメントの参照が許可されています。
詳細はこちら をご覧ください。
試験の動作環境
上述のPSI経由でUbuntuにリモートデスクトップでBase Nodeに接続し、試験を行います。複数のクラスタが用意されており、問題ごとに異なるクラスタにSSH接続してタスクを完了させていきます。
自作ツールなどの持ち込みは禁止です。ショートカットキーもMacやWindowsと異なりますので、事前に確認が必要です。
詳細はこちら をご覧ください。
その他
受験中は常時Webカメラで監視をされているのですが、顔を手で覆う行為は禁止されています。口元に手を当てるなどは考え事をする際にやってしまいがちなので注意が必要です。
学習方法
以下2つのコンテンツを上から順に利用して学習しました。書籍等は特に読んでいません。
KodeKloud
有料且つ英語の学習サイトですが、K8sをはじめとしたクラウドネイティブ技術の学習コンテンツが充実しています。 私はこの中の以下のコースを受講しました。
技術解説の動画とハンズオンラボ、模擬試験といった内容です。
内容が非常に多いため、私は初めて触れる技術に関しては動画~ハンズオンラボまでをこなし、逆に頭に入っている技術に関してはスキップをしました。模擬試験に関しては非常に参考になります。
タスク内容が全く同じというわけではありませんが、類似する問題もあり解き方を頭に叩き込むという意味で重宝しました。
この模擬試験で満点が取れるようになった時点で試験日程を確定させ、次のステップとして後述のコンテンツを利用して総仕上げしました。
Killer.sh
このコンテンツは、実際の試験とかなり近い環境と条件で模擬試験が受けられます。つまり、上述したショートカットキーや操作性の確認もこのコンテンツで行うことが可能です。
こちらもKodeKloud同様に有料コンテンツですが、試験購入時に特典として2回まで無料でアクティベートする権利が与えられます。
難易度も実際の試験にかなり近い内容ですが、問題数やタスク量はKiller.shの方が多いです。従って、この模擬試験を本番の試験と同じ条件下で、時間内に完璧にこなすことができれば試験である程度戦える状態になったといえるでしょう。
その他
試験中に必要なドキュメントをすぐに参照できるように、タスクの分類別にドキュメントへのアクセス動線の確認を実施しました。但し、時間がかなりシビアなためドキュメントの参照は必要最小限に留めるべきでしょう。
苦労した点、対策を強化するべきこと
実行中コンテナの怪しいプロセスを特定するようなタスクがあります。psやcrictl、またはdockerコマンド(筆者の試験環境ではdockerが使われていました)を駆使して頑張りましたが、あまり良い方法ではなかったかなと思っています。Falcoを適切に設定できるだけの知識があればそこまで苦労しなかっただろうと感じています。
kube-apiserverのマニフェストを修正してSecurityを強化するタスクが頻繁に出題されます。
K8sのアーキテクチャを理解している方はご存じかと思いますが、Manifestに記述ミスがあるとPodが起動してくれません。
そしてこのコンポーネントが落ちるとkubectlのAPIリクエストが届かなくなりクラスタが操作できなくなります。筆者もこれをやらかしてしまい一問落としてしまいました。
このような場合、タイポやインデントのずれなど軽微なミスが殆どですが、試験中は焦りもありますので見つけることが難しい場合もあります。繰り返しの練習と、編集前のバックアップ取得をお薦めします。
マニフェストの更新をvimで編集することが多いです。基本的な使い方に加え、ショートカットキーなどもある程度覚えておくと時短になるかと思います。
最後に
今回、無事試験にPassしK8s実技試験の3冠を達成することができました。
近日中に残りのAssociate試験をPassし、Kubestronaut を達成したいと思います。
執筆者プロフィール:武井 竜一
ネットワークエンジニアからキャリアをスタートさせ、OpenStackやOpenFlow系SDNを扱った仮想化基盤プロジェクトのリードエンジニア、ソリューションアーキテクトなどを経験し2024年9月にSHIFTに入社。KubernetesとAWSが好き。
✉ この記事の執筆者へ感想を届けてみませんか?🖊
「役に立ちそう!」「参考になった!」「思考が整理できた」など
記事を読んだ感想をぜひ、アンケートにてお寄せください。
次回の執筆テーマの参考にさせていただきます!
ご質問も大歓迎です◎
★読者アンケートはこちら
★本記事のコメント欄でも受け付けております
✅SHIFTへのお問合せはお気軽に
https://service.shiftinc.jp/contact/
SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/
SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/
SHIFTの導入事例
https://service.shiftinc.jp/case/
お役立ち資料はこちら
https://service.shiftinc.jp/resources/
SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/
元の記事を確認する