🚀 ゴールデンクバーストロノートへの旅 (3/15): KCNA、1日で合格した体験談 (feat. 特殊な出題問題)

こんにちは!CKA資格更新体験談に続き、「ゴールデンクバーストロノート」を目指す三度目の旅、KCNA(Kubernetes and Cloud Native Associate) 資格取得体験談を共有します。

CKA、CKADを通じてKubernetesの深さを経験したなら、今回のKCNAはクラウドネイティブエコシステム全般を幅広く理解する貴重な機会でした。特に今回の試験は、たった一日という短い準備期間を経て、初回で75点の合格ラインをはるかに超える89点で合格したという点で、私にとっても特別な経験でした。CKA/CKADの知識とAIを活用した私独自の学習法がどのようにこのような結果を生み出したのか、今から詳しく説明します!

image


🧠 1. CKA/CKAD知識 + AI = 最高の効率、たった一日の準備

正直に申し上げると、KCNA試験の準備に多くの時間を費やしませんでした。CKAとCKADの準備を通じて、すでにKubernetesアーキテクチャとコアオブジェクトについて十分な理解を持っていたからです。しかし、KCNAはKubernetesだけでなく、Prometheus、Fluentd、CI/CDなど、広範なクラウドネイティブエコシステムの基本概念を問う試験であるため、概念をもう一度整理し、問題形式に慣れる過程は必須でした。

ここで私の秘策は、まさにGeminiでした。

> “I have a basic knowledge of CKA and CKAD. Please create about 20 multiple-choice questions for the KCNA exam, covering the entire exam curriculum.”

私はGeminiに上記のように依頼し、KCNA試験範囲全体を網羅する約100問の予想問題を作成しました。これらの問題を解きながら、私がこれまで気にしていなかった細かい概念(例:コンテナランタイムの種類、サービスメッシュの役割、クラウドネイティブセキュリティの基本原則など)を素早く吸収し、各技術がどのような問題を解決するために登場したのか、全体像を把握することができました。

CKA/CKADが実習中心の「技術」試験であるなら、KCNAは概念中心の「知識」試験に近いと言えます。したがって、私のようにすでにKubernetesに慣れている方であれば、AIを活用して短時間で広範な概念を復習する方法が最高の効率を生み出すと確信しています。


💻 2. KCNA試験体験: 広く浅く、しかし正確に

KCNA試験はCKA/CKADとは全く異なる方法で進行されます。別途のリモートデスクトップ環境なしに、PSIセキュアブラウザ内で全ての問題が出題され、解決する方式です。ほとんどが客観式(Multiple Choice)問題であり、各選択肢の微妙な違いを正確に区別することが重要でした。

私が試験を受けて感じた主な特徴は以下の通りです。

① Kubernetesの根本に関する質問: 単にPodをデプロイする方法を超えて、なぜ(Why) Kubernetesが必要なのかという根本的な質問が多く出題されました。例えば、コンテナオーケストレーションの必要性、宣言的APIの利点、コントロールプレーンとワーカーノードの各コンポーネント(etcd、kube-scheduler、kubelet、kube-proxyなど)がどのような役割を果たすのかを正確に理解していなければ解けない問題が主でした。

② CNCFエコシステム全般の理解: Kubernetes以外にもCNCF(Cloud Native Computing Foundation)の主要プロジェクトに関する概念を問う問題が継続的に出題されました。(OPA、Prometheus、Tracing、Grafana、ArgoCD、Fluxなど) 

  • 可観測性(Observability): Prometheus(モニタリング)、Fluentd(ロギング)のようなツールがそれぞれどのような役割を果たすのかを問う問題が出題されました。
  • ネットワーキング: CNIの役割と代表的なCNIプラグイン(例:Calico、Flannel)の特徴を比較する問題がありました。
  • CI/CD: クラウドネイティブ環境で継続的インテグレーションおよびデプロイがなぜ重要なのか、そして関連ツール(例:ArgoCD、Jenkins X)がどのような価値を提供するのかについての理解を評価しました。

③ kubectlコマンドの正確な使用: 実習環境ではありませんが、特定の状況でどのkubectlコマンドを使用すべきかを問う問題が多数出題されました。例えば、「Podのログを確認するコマンドは?」「Deploymentのバージョンを確認するコマンドは?」のように、コマンドとその使用法を正確に暗記している必要がありました。

④ 時間管理の重要性: 全90分で60問を解かなければならないため、1問あたり平均1分30秒を超えないようにする必要があります。概念が曖昧な問題が出ても、とりあえず飛ばして、わかる問題から素早く解く戦略が重要です。私は100問の予想問題を解きながら時間配分の練習をしたことが大いに役立ちました。


🔥 2-1. 予想外の特殊な出題問題共有!

今回の試験では、従来の体験談ではあまり言及されていなかった、より実務に近い内容が出題され、印象的でした。私が覚えている特殊な問題は以下の通りです。

  • kubectl rollout status: Deploymentのようなリソースのデプロイ進行状況が正常に完了するまでリアルタイムで監視するコマンドです。
  • kubectl api-resources: クラスターで利用可能なすべてのAPIリソースリストを確認するこのコマンドの用途を問う問題が出題されました。CRD(Custom Resource Definition)で拡張されたリソースまで確認する方法を知っているかを評価するようでした。
  • クラウドプロバイダー連携質問: クラウドプロバイダー(AWS、GCP、Azureなど)環境でクラスターノードレベルのオートスケーリングのための拡張ポリシーやサーバーレス料金体系(例:AWS Lambdaに似たもの)に関する概念を問う問題が出題され、少し戸惑いました。これはKubernetesだけでなく、Kubernetesが動作するインフラ環境に対する理解も必要であることを示しています。
  • Security Policy vs Security Context: これら二つの概念の違いを明確に区別する問題が出題されました。Security Contextが個々のPodやコンテナレベルのセキュリティ設定を定義するのに対し、(現在はPod Security Admissionに置き換えられつつある)Pod Security Policyはクラスター全体のPodセキュリティポリシーを強制するより広い概念であることを正確に知っていなければ解けませんでした。

✨ 3. 総評: クラウドネイティブの第一歩、しかし侮るなかれ!

KCNAはCKA/CKADに進む前に、クラウドネイティブという巨大な世界の地図を描くことができる最高の入門資格だと思います。私のようにすでにCKA/CKADを取得している人にとっては、散らばっていた知識を体系的に整理し、CNCFエコシステム全体に視野を広げるきっかけとなりました。

ただし、個人的な意見としては、逆説的ですが、KCNAを準備する前にCKAやCKADを先に取得してみるのも良い戦略になり得ると考えます。CKA/CKADはハンズオン試験なので内容が明確で、市販の資料も多く、目標を立てて勉強するにはむしろより容易な側面があります。KCNAは、この過程で得た実務的な知識と経験を基に「なぜ?」を問う概念問題が多いです。したがって、下位資格だからといって安易に考えてアプローチするには、難しい部分が 분명히 存在します。

もちろん簡単な問題もありましたが、合否の境界を分けるような難易度の高い問題が約15~20問程度出題されると感じました。ここでどれだけ正解できるかが合格の鍵となるでしょう。

もしクラウドネイティブ分野に初めて入門される方であれば、KCNAを通じて今後何を、どのように勉強すべきかについての明確なロードマップを得られるでしょう。Kubernetesがなぜ強力なのか、そしてその周りを取り巻く数多くのオープンソースプロジェクトがどのように有機的に動作するのかを理解するだけでも、今後の旅ははるかにスムーズになるでしょう。

私の「AIを活用した一日での合格」戦略と、私が共有した特殊な出題問題が、皆さんのKCNA準備に小さなインスピレーションとなることを願っています。皆さんの成功的な資格取得を応援します!🎉


Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です