資格道場
記事法人
The Linux Foundation(CNCF)Level 1

難易度は Level 1(やさしめ)〜Level 5(難関) の5段階です。

KCNA-JPのサンプル問題(本番形式・解説付き)

KCNA-JP(The Linux Foundation(CNCF)・Kubernetes and Cloud Native Associate(KCNA-JP))の出題形式を、実際の問題で確かめられます。ここに掲載する5問は、無料の会員登録で解ける模試 第1回(60問)の冒頭から抜粋したオリジナル問題です。当サイトは全360問を本番CBT準拠の形式で収録しており、この5問はそのごく一部にあたります。

設問1

物流会社の配送管理チームが、社内勉強会で Kubernetes の位置づけを説明することになった。本文の定義に沿った Kubernetes の説明はどれか。

  • ソースコードのビルドから成果物の配布までを担う継続的インテグレーションの基盤である
  • アプリケーションのログと指標を収集して画面に可視化するための監視の基盤である
  • コンテナのイメージを作成して1台のホスト上でそれを実行するための道具の基盤である
  • コンテナ化されたアプリケーションのデプロイ、スケーリング、管理を自動化する基盤である(正解)

解説

本文は Kubernetes を、コンテナ化されたアプリケーションのデプロイ、スケーリング、管理を自動化するオープンソースのプラットフォームと定義しています。ソースコードのビルドやCI/CDパイプラインそのものは Kubernetes の責任範囲外で、Argo CD や Tekton などの別プロジェクトが担います。ログ・監視・アラートの仕組みそのものも範囲外で、収集の口は用意するものの Prometheus や Fluentd などのエコシステムに委ねられます。イメージを作って1台で実行するのは Docker の担当で、Kubernetes は多数のノードにまたがる調整役です。

設問2

教育系サービスの運用チームが、社内ドキュメントに Kubernetes を K8s と書く理由と、プロジェクトの出自を記載しようとしている。本文の記述に合うものはどれか。

  • ギリシャ語で「操舵手」を意味する語が8文字であることに由来し、Linux Foundation が最初にホストしたプロジェクトである
  • 8つの中核コンポーネントを持つことに由来し、2015年に CNCF が新規に開発を始めたプロジェクトである
  • K と s の間に8文字あることに由来し、2015年の公開と同時に CNCF へ寄贈されたプロジェクトである(正解)
  • 8番目の主要リリースで名称を改めたことに由来し、Google が現在も単独で保有し続けるプロジェクトである

解説

本文は、K と s の間に8文字あることから K8s と略記されること、2015年に最初のバージョンが公開されると同時に CNCF へ寄贈されたことを述べています。ギリシャ語の「操舵手」は名前の意味の由来であって、8文字という略記の由来とは別の話です。開発は Google の社内システムの設計思想を引き継いだもので、CNCF が新規に始めたわけではありません。CNCF へ寄贈済みであり、Google が単独で保有し続けている状態でもありません。

設問3

地方銀行のシステム基盤チームが、Kubernetes の中核にある考え方を新人に説明している。宣言的(declarative)なモデルの説明として適切なものはどれか。

  • 実行すべき手順を順番どおりに記述して、その手順を一度だけ実行させるという考え方である
  • 利用者が望ましい状態を宣言し、Kubernetes がその状態に近づける努力を続ける考え方である(正解)
  • アプリケーションに障害が起きたときにだけ利用者が復旧の操作を投入するという考え方である
  • 実際の状態を利用者が観測して、差分に応じた指示をそのつど送り込むという考え方である

解説

本文は宣言的モデルを、利用者が望ましい状態(desired state)を宣言し、Kubernetes がその状態に近づける努力を続ける仕組みだと説明しています。手順を記述して実行させるのは命令的(imperative)な指示で、宣言的モデルと対照的なやり方です。障害時にだけ操作を投入する運用も、差分を人が見て指示を送る運用も、差分を埋める役を人が担っており、コントローラが常時ループする宣言的モデルとは別です。

設問4

製造業の情報システム部が、Kubernetes を導入すれば何が手に入るかを整理している。本文が、Kubernetes 本体ではなく Argo CD や Tekton などの別プロジェクトが担うとしている領域はどれか。

  • ソースコードのビルドと継続的インテグレーションのパイプラインそのもの(正解)
  • Pod をノードへ配置して障害時に再作成する自己修復の仕組みそのもの
  • Service と DNS による安定した名前とIPアドレスの提供の仕組みそのもの
  • ConfigMap と Secret による設定と機密情報の注入の仕組みそのもの

解説

本文は、ソースコードのビルドやCI/CDパイプラインそのものは Kubernetes の責任範囲外で、Argo CD や Tekton などの別プロジェクトが担うと述べています。Pod の配置と障害時の再作成は kube-scheduler とコントローラが担う Kubernetes の中核機能です。安定した名前とIPアドレスの提供は Service と DNS の役割として本文の表に挙げられています。設定や機密情報をイメージの外から注入するのも ConfigMap と Secret という Kubernetes の機能です。

設問5

通信事業者の運用部門で、Kubernetes と containerd の関係について議論になった。本文の整理に合うものはどれか。

  • Kubernetes 自身がコンテナランタイムとして各ノード上でコンテナのプロセスを直接起動する
  • Kubernetes は containerd を置き換える後継のランタイムとして開発を継続する
  • Kubernetes は containerd へ etcd を経由して指示を送りコンテナを起動する
  • Kubernetes はランタイムではなく、containerd などのランタイムを CRI 経由で利用する(正解)

解説

本文の取り違え表は、Kubernetes はランタイムではなく、containerd などのランタイムを CRI 経由で使う側だと明記しています。コンテナのプロセスを実際に起動するのはコンテナランタイムで、Kubernetes 自身が直接起動する構造ではありません。containerd は置き換えの対象ではなく、CRI の先で使われる高レベルランタイムです。etcd はクラスタのデータを保持する保存先で、ランタイムへの指示を中継する経路ではありません。

続きは、会員登録なしでそのまま50問解けます。採点と解説つきで、上と同じ本物の問題です。

登録なしで50問解く