- Authors

- Name
- Youngju Kim
- @fjvbn20031
CCA(Cilium Certified Associate)実践練習問題 80題
試験概要
CCA(Cilium Certified Associate)はCiliumとeBPFベースのKubernetesネットワーキングに関する基礎知識を検証する資格です。
| 項目 | 内容 |
|---|---|
| 試験時間 | 90分 |
| 問題数 | 60問 |
| 合格基準 | 75% |
| 形式 | 選択式 |
ドメイン別配点
| ドメイン | 配点 |
|---|---|
| Architecture | 20% |
| Networking | 25% |
| Network Policy | 20% |
| Service Mesh | 15% |
| Observability | 10% |
| Cluster Mesh and External Workloads | 10% |
Architecture(問題 1-16)
問題 1
eBPFプログラムがLinuxカーネルで実行される前に必ず経る必要があるステップは何ですか?
A. コンパイル B. 検証(Verification) C. リンク D. シリアライゼーション
解答を確認
正解: B
eBPFプログラムはカーネルにロードされる前にeBPF検証器(verifier)を必ず通過する必要があります。検証器はプログラムが無限ループを含まないか、無効なメモリアクセスがないかなどの安全性を確認します。
問題 2
Ciliumでは各ワークロードのセキュリティ識別子(Identity)はどの基準で割り当てられますか?
A. PodのIPアドレス B. Podの名前 C. Podのセキュリティ関連ラベル(Security-Relevant Labels) D. Podが実行されるノード
解答を確認
正解: C
Ciliumはセキュリティ関連ラベルの組み合わせに基づいて数値識別子(Numeric Identity)を割り当てます。同じラベルセットを持つすべてのPodは同じIdentityを共有します。
問題 3
Cilium Agentの主要な役割でないものはどれですか?
A. eBPFプログラムのコンパイルとロード B. エンドポイント管理 C. IPAM割り当て管理 D. CRDのバリデーション
解答を確認
正解: D
CRDのバリデーションはCilium Operatorの役割です。Cilium Agentは各ノードで実行され、eBPFプログラム管理、エンドポイント管理、ポリシー適用などを担当します。
問題 4
Cilium Operatorの役割として正しいものはどれですか?
A. 各ノードでのeBPFプログラムロード B. クラスタ範囲のIPAM管理およびCRD管理 C. Hubbleメトリクス収集 D. Envoyプロキシ管理
解答を確認
正解: B
Cilium Operatorはクラスタレベルで実行され、IPAM(IPアドレス管理)、CRD管理、ノードディスカバリ、ガベージコレクションなどのクラスタ範囲タスクを処理します。
問題 5
eBPFにおけるBPFマップ(Map)の目的は何ですか?
A. eBPFプログラム間またはカーネルとユーザー空間間のデータ共有 B. ネットワークパケットを保存するバッファ C. eBPFプログラムのソースコード保存 D. カーネルモジュールのロード
解答を確認
正解: A
BPFマップはeBPFプログラム間、またはカーネル空間とユーザー空間間でデータを共有するためのキーバリューストアです。Ciliumはこれをポリシールックアップ、コネクショントラッキング、NATなどに活用します。
問題 6
Ciliumで使用されるデータパスモードのうちvethモードの特徴は何ですか?
A. Podとホストネットワーク名前空間間でveth pairを使用 B. XDPを通じて直接パケットを転送 C. VXLANトンネルのみ使用 D. iptablesベースで動作
解答を確認
正解: A
vethモードでCiliumはPodネットワーク名前空間とホストネットワーク名前空間間にveth pairを作成し、tc(traffic control)フックにeBPFプログラムをアタッチしてパケットを処理します。
問題 7
eBPFプログラムの実行コンテキストとして正しくないものはどれですか?
A. XDP(eXpress Data Path) B. tc(traffic control) C. ソケットオペレーション D. ユーザー空間プロセス
解答を確認
正解: D
eBPFプログラムはカーネル空間で実行されます。XDP、tc、ソケットオペレーション、kprobes、tracepointsなどのカーネルフックポイントで動作し、ユーザー空間プロセスとして直接実行されることはありません。
問題 8
CiliumのIdentityベースのセキュリティモデルの利点でないものはどれですか?
A. IPアドレスの変更に影響されない B. ラベルベースでポリシー適用が直感的 C. IPベースよりBPFマップサイズが常に小さい D. Podスケーリング時にポリシーが自動適用
解答を確認
正解: C
Identityベースモデルの主要な利点はIP変更に無関係にポリシーが適用され、ラベルベースで直感的であり、スケーリング時に自動適用されることです。ただしBPFマップサイズが常に小さいとは限りません。
問題 9
Ciliumでエンドポイント(Endpoint)が再生成(Regeneration)されるのはどのような場合ですか?
A. ネットワークポリシーが変更されたとき B. ノードのCPU使用率が高いとき C. Hubbleが再起動されたとき D. DNSキャッシュが期限切れのとき
解答を確認
正解: A
ネットワークポリシーが変更されるとCilium Agentは影響を受けるエンドポイントのeBPFプログラムを再コンパイルして再ロードします。このプロセスをエンドポイント再生成と呼びます。
問題 10
CiliumがCIDRベースのポリシーマッチングに使用するBPFマップタイプはどれですか?
A. Hash Map B. LPM Trie C. Array Map D. Ring Buffer
解答を確認
正解: B
LPM(Longest Prefix Match)TrieはCIDRベースのポリシーマッチングに使用されます。IPアドレスプレフィックスに基づいて最も具体的なマッチングルールを見つけることができます。
問題 11
eBPFプログラムが処理できる最大命令数に制限がある理由は何ですか?
A. メモリ節約 B. プログラムの終了を保証するため C. ネットワーク帯域幅の制限 D. CPUコア数の制限
解答を確認
正解: B
eBPF検証器はプログラムが必ず終了することを保証するために命令数制限を適用します。これはカーネルの安定性のための安全装置で、無限ループや過度な実行を防止します。
問題 12
Cilium Agentが各ノードでDaemonSetとしてデプロイされる理由は何ですか?
A. 高可用性のため B. 各ノードのネットワークデータパスを管理する必要があるため C. 集中型ロギングのため D. ストレージ管理のため
解答を確認
正解: B
Cilium Agentは各ノードでeBPFプログラムをロードしエンドポイントを管理する必要があるため、DaemonSetとしてデプロイされます。ノードのネットワークデータパスを直接制御するには該当ノードで実行する必要があります。
問題 13
CiliumでXDP(eXpress Data Path)を使用する主な利点は何ですか?
A. L7プロトコル分析 B. ネットワークドライバレベルでの超高速パケット処理 C. 自動TLS終端 D. マルチクラスタ通信
解答を確認
正解: B
XDPはネットワークドライバレベルでeBPFプログラムを実行し、パケットがカーネルネットワークスタックに到達する前に処理できます。DDoS防御、ロードバランシングなどで超高速パフォーマンスを実現します。
問題 14
CiliumのIPAMモードのうちKubernetes Host Scopeモードの特徴は何ですか?
A. AWS ENIを使用してIPを割り当て B. 各ノードに割り当てられたPodCIDRからIPを割り当て C. 外部IPAMサービスと連携 D. IPv6のみサポート
解答を確認
正解: B
Kubernetes Host ScopeモードではKubernetesが各ノードに割り当てたPodCIDR範囲からIPアドレスを割り当てます。これは基本的なIPAMモードで、クラウド統合なしで動作します。
問題 15
Cilium Agentが使用する状態ストアとして正しいものはどれですか?
A. Redis B. ローカルetcdまたはCRD(Kubernetesカスタムリソース) C. PostgreSQL D. Consul
解答を確認
正解: B
Cilium Agentは状態をKubernetes CRD(CiliumEndpoint、CiliumIdentityなど)または外部etcd(kvstore)に保存します。最近のバージョンではCRDベースのKVStoreがデフォルトです。
問題 16
eBPFテールコール(tail call)の目的は何ですか?
A. eBPFプログラムからシステムコールを呼び出す B. あるeBPFプログラムから別のeBPFプログラムへ実行を移行する C. ユーザー空間アプリケーションを呼び出す D. カーネルパニックを引き起こす
解答を確認
正解: B
eBPFテールコールはあるeBPFプログラムから別のeBPFプログラムへ実行フローを移行するメカニズムです。Ciliumはこれを使用して複雑なパケット処理パイプラインを複数のプログラムに分離します。
Networking(問題 17-36)
問題 17
Ciliumがサポートしていないルーティングモードはどれですか?
A. VXLANトンネリング B. Geneveトンネリング C. Direct Routing(ネイティブルーティング) D. MPLSルーティング
解答を確認
正解: D
CiliumはVXLAN、GeneveトンネリングモードとDirect Routing(ネイティブルーティング)モードをサポートしています。MPLSルーティングはCiliumではサポートされていません。
問題 18
CiliumがCNI(Container Network Interface)プラグインとして動作する際に実行する作業は何ですか?
A. Pod作成時のネットワークインターフェース設定とIP割り当て B. コンテナイメージのビルド C. Kubernetesスケジューリング D. ストレージボリュームのマウント
解答を確認
正解: A
CNIプラグインとしてCiliumはPod作成時にネットワークインターフェースを設定し、IPアドレスを割り当て、eBPFプログラムをアタッチします。
問題 19
CiliumのDirect RoutingモードでPod間トラフィックが転送される方式は?
A. VXLANヘッダーを追加してカプセル化 B. ノードのルーティングテーブルを使用して直接転送 C. 常にNATを適用 D. ユーザー空間プロキシを通じて転送
解答を確認
正解: B
Direct Routingモードではパケットをカプセル化せず、ノードのルーティングテーブル(またはBGP)を使用して直接転送します。オーバーヘッドは少ないですがネットワークインフラがPod CIDRルーティングをサポートする必要があります。
問題 20
Ciliumでkube-proxyを置き換える機能の核心的な実装方式は何ですか?
A. iptablesルール生成 B. ipvsルール生成 C. eBPFベースのサービスロードバランシング D. HAProxyデプロイ
解答を確認
正解: C
CiliumはeBPFを使用してKubernetesサービスのロードバランシングを実装でき、これによりkube-proxy(iptables/ipvs)を完全に置き換えることができます。
問題 21
Maglev一貫性ハッシュ(Consistent Hashing)がCiliumサービスロードバランシングで解決する問題は何ですか?
A. DNS解決速度 B. バックエンド変更時の既存接続の維持 C. TLS証明書管理 D. Podスケジューリング最適化
解答を確認
正解: B
Maglev一貫性ハッシュはバックエンドPodが追加/削除された際に既存の接続が同じバックエンドに維持されるようにします。ハッシュテーブルの再配置を最小化して接続の安定性を保証します。
問題 22
DSR(Direct Server Return)モードの利点は何ですか?
A. 応答パケットが元のリクエストを受けたノードを経由せず直接クライアントに転送 B. すべてのトラフィックを暗号化 C. L7プロトコル分析が可能 D. マルチクラスタ通信サポート
解答を確認
正解: A
DSRモードでは応答トラフィックがサービスロードバランシングを行った元のノードを経由せず、バックエンドから直接クライアントに送信されます。不要なホップを削減し帯域幅を節約します。
問題 23
CiliumのBGP Control Plane機能の主な目的は何ですか?
A. Pod内部のDNS解決 B. Pod CIDRおよびサービスIPをBGPピアにアドバタイズ C. コンテナイメージレジストリ管理 D. etcdクラスタ管理
解答を確認
正解: B
CiliumのBGP Control Plane(BGPCP)はPod CIDR、サービスLoadBalancer IPなどを外部BGPルーターにアドバタイズし、外部ネットワークからPod/サービスに直接アクセスできるようにします。
問題 24
VXLANトンネリングモードで追加されるオーバーヘッドは約どれくらいですか?
A. 8バイト B. 50バイト C. 100バイト D. 200バイト
解答を確認
正解: B
VXLANカプセル化は約50バイトの追加ヘッダー(外部Ethernet + IP + UDP + VXLANヘッダー)をパケットに追加します。MTUが小さくなる可能性があるため適切なMTU設定が必要です。
問題 25
CiliumでNodePortサービスのeBPFアクセラレーションが動作するフックポイントは?
A. Application Layer B. XDPまたはtc C. syslog D. Netfilter
解答を確認
正解: B
CiliumはXDPまたはtcフックポイントでNodePortサービストラフィックを処理します。XDPモードではネットワークドライバレベルで動作し最高のパフォーマンスを提供します。
問題 26
Ciliumでのソケットレベルロードバランシングの利点は何ですか?
A. L7プロトコル分析が可能 B. パケットがネットワークスタックを通過せず直接バックエンドに接続 C. 自動TLS終端 D. DNSキャッシング
解答を確認
正解: B
ソケットレベルロードバランシング(socket-level LB)はconnect()システムコール時点でサービスIPをバックエンドIPに直接変換します。パケットが不要なNATやconntrackを通過しません。
問題 27
CiliumでGeneveトンネリングがVXLANより好まれる理由は何ですか?
A. オーバーヘッドが少ない B. 拡張可能なTLV(Type-Length-Value)オプションフィールドのサポート C. より高速な暗号化 D. IPv4のみサポート
解答を確認
正解: B
GeneveTLVオプションを通じてメタデータ(Identity情報など)をトンネルヘッダーに含めることができます。Ciliumはこれを活用して追加のセキュリティコンテキストを伝達します。
問題 28
Ciliumのホストファイアウォール(Host Firewall)機能は何を保護しますか?
A. Pod間通信のみ B. ホストネットワーク名前空間へのトラフィック C. 外部DNSリクエスト D. etcdデータ
解答を確認
正解: B
Ciliumホストファイアウォールはノードのホストネットワーク名前空間に出入りするトラフィックにポリシーを適用し、ノードレベルのセキュリティを強化します。
問題 29
CiliumでIPv4/IPv6デュアルスタックを有効にするための設定は?
A. enable-ipv4: trueとenable-ipv6: true
B. dual-stack: enabled
C. ip-version: both
D. network-mode: dual
解答を確認
正解: A
Ciliumでデュアルスタックはenable-ipv4: trueとenable-ipv6: trueを両方設定して有効化します。各プロトコルを独立して有効化/無効化できます。
問題 30
CiliumのBandwidth Managerが使用するLinuxカーネル機能は何ですか?
A. cgroups B. EDT(Earliest Departure Time)ベースのレート制限 C. tc-filter D. iptablesレート制限
解答を確認
正解: B
CiliumのBandwidth ManagerはEDT(Earliest Departure Time)とFQ(Fair Queuing)を使用してPodごとの帯域幅制限を実装します。従来のtcベースの方式より効率的です。
問題 31
CiliumでのWireGuard統合の目的は何ですか?
A. L7トラフィック分析 B. ノード間トラフィックの透過的な暗号化 C. DNSクエリの高速化 D. ログ収集
解答を確認
正解: B
CiliumのWireGuard統合はノード間のPodトラフィックを透過的に暗号化します。IPsecよりシンプルな設定と高いパフォーマンスを提供します。
問題 32
CiliumのIPAMモードのうちクラウド環境でENI(Elastic Network Interface)を使用するモードは?
A. Kubernetes Host Scope B. Cluster Scope C. AWS ENIモード D. CRD-backed
解答を確認
正解: C
AWS ENIモードではCiliumがAWS ENIを使用して各PodにVPCネイティブIPを割り当てます。PodがVPCルーティングを直接使用できるようになります。
問題 33
CiliumにおけるBIG TCP(Big TCP)の目的は何ですか?
A. TCP接続数の制限 B. GRO/GSOを活用した大容量パケット処理によるスループット向上 C. TCPポート範囲の拡張 D. TCPタイムアウトの調整
解答を確認
正解: B
BIG TCPはGRO(Generic Receive Offload)とGSO(Generic Segmentation Offload)を活用して64KB以上の大容量パケットを内部的に処理し、ネットワークスループットを大幅に向上させます。
問題 34
Ciliumでサービスのセッションアフィニティ(Session Affinity)を実装する方法は?
A. iptablesルール B. BPFマップでクライアントIPとバックエンドのマッピングを保存 C. DNSラウンドロビン D. 外部ロードバランサーへの委任
解答を確認
正解: B
CiliumはBPFマップにクライアントIPと選択されたバックエンドのマッピングを保存してセッションアフィニティを実装します。設定されたタイムアウト期間中、同じクライアントのリクエストが同じバックエンドに転送されます。
問題 35
CiliumのIP Masqueradingに関する説明として正しいものは?
A. 常にすべてのトラフィックにSNATを適用 B. Podからクラスタ外部へ出るトラフィックにノードIPでSNATを適用 C. インバウンドトラフィックにのみ適用 D. IPv6でのみ動作
解答を確認
正解: B
IP MasqueradingはPodからクラスタ外部へ出るトラフィックのソースIPをノードIPに変換(SNAT)します。eBPFベースで実装され、クラスタ内部トラフィックには適用されません。
問題 36
CiliumでLoadBalancerタイプのサービス向けLB-IPAM機能とは?
A. クラウドロードバランサーの自動プロビジョニング B. Ciliumが直接LoadBalancer IPプールからIP割り当て C. DNSベースのロードバランシング D. Ingressコントローラーのデプロイ
解答を確認
正解: B
LB-IPAM(LoadBalancer IP Address Management)はCiliumが事前定義されたIPプールからLoadBalancerタイプのサービスに外部IPを割り当てる機能です。MetalLBと同様のオンプレミスロードバランサー機能を提供します。
Network Policy(問題 37-52)
問題 37
CiliumNetworkPolicyとKubernetes NetworkPolicyの違いとして正しいものは?
A. CiliumNetworkPolicyはL7ポリシーをサポート B. Kubernetes NetworkPolicyの方がより多くの機能を提供 C. CiliumNetworkPolicyはクラスタ範囲のみサポート D. 両者は完全に同一の機能
解答を確認
正解: A
CiliumNetworkPolicyはKubernetes NetworkPolicyの上位互換で、L7(HTTP、gRPC、Kafkaなど)ポリシー、FQDNベースポリシー、Identityベースポリシーなどの追加機能をサポートします。
問題 38
CiliumでL3/L4ネットワークポリシーはどこで適用されますか?
A. Envoyプロキシ B. eBPFプログラム(カーネルレベル) C. iptables D. ユーザー空間ファイアウォール
解答を確認
正解: B
L3/L4ポリシーはtcフックポイントにアタッチされたeBPFプログラムで直接カーネルレベルで適用されます。ユーザー空間プロキシなしで高性能なポリシー適用が可能です。
問題 39
CiliumでFQDNベースのネットワークポリシーが動作する仕組みは?
A. 外部DNSサーバーへの定期的なクエリ B. Cilium DNSプロキシがDNS応答をインターセプトしてIPを学習しポリシー適用 C. /etc/hostsファイル参照 D. CoreDNSプラグインとして実装
解答を確認
正解: B
CiliumはDNSプロキシを通じてDNS応答を透過的にインターセプトし、FQDNとIPのマッピングを学習します。この情報を基にBPFマップを更新してFQDNベースのポリシーをIPレベルで適用します。
問題 40
次のCiliumNetworkPolicyで許可されるトラフィックは何ですか?
apiVersion: cilium.io/v2
kind: CiliumNetworkPolicy
metadata:
name: allow-frontend
spec:
endpointSelector:
matchLabels:
app: backend
ingress:
- fromEndpoints:
- matchLabels:
app: frontend
toPorts:
- ports:
- port: '8080'
protocol: TCP
A. backendからfrontendへの8080ポートトラフィック B. frontendからbackendへの8080ポートTCPトラフィック C. すべてのPodからbackendへのトラフィック D. backendから外部へのすべてのトラフィック
解答を確認
正解: B
このポリシーはapp: backendラベルを持つエンドポイントを選択し、app: frontendラベルを持つエンドポイントからTCPポート8080へのイングレストラフィックを許可します。
問題 41
CiliumClusterwideNetworkPolicyの用途は?
A. 特定の名前空間にのみ適用されるポリシー B. クラスタ全体に適用されるネットワークポリシー C. 外部クラスタに適用されるポリシー D. DNS専用ポリシー
解答を確認
正解: B
CiliumClusterwideNetworkPolicyは名前空間に関係なくクラスタ全体に適用されるポリシーを定義します。クラスタレベルのデフォルト拒否ポリシーや共通セキュリティルールの設定に使用します。
問題 42
CiliumでL7ネットワークポリシーを適用する際に使用されるプロキシは?
A. Nginx B. HAProxy C. Envoy D. Traefik
解答を確認
正解: C
CiliumはL7ポリシー適用にEnvoyプロキシを使用します。HTTP、gRPC、KafkaなどのL7プロトコルを分析しフィルタリングします。Envoyはノードあたり1つのインスタンスで実行されます。
問題 43
Ciliumネットワークポリシーでデフォルト拒否(Default Deny)動作はいつ有効化されますか?
A. Ciliumインストール時に自動的に有効化 B. 特定のエンドポイントを選択するポリシーが1つでも適用されたとき C. 管理者が明示的に設定した場合のみ D. 名前空間ラベルによって
解答を確認
正解: B
Ciliumでは特定のエンドポイントを選択するポリシーが適用されると、その方向(イングレス/イグレス)に対して明示的に許可されていないすべてのトラフィックが拒否されます。
問題 44
Cilium L7ポリシーでサポートされていないプロトコルはどれですか?
A. HTTP B. gRPC C. Kafka D. MQTT
解答を確認
正解: D
CiliumはHTTP、gRPC、Kafka、DNSなどのL7プロトコルに対するポリシーをサポートしています。MQTTは現在デフォルトではサポートされていません。
問題 45
Ciliumでのポリシー監査モード(Policy Audit Mode)の目的は?
A. ポリシー違反トラフィックをブロックしてロギング B. ポリシー違反トラフィックをブロックせずモニタリングのみ実行 C. ポリシーを自動生成 D. ポリシーパフォーマンスを最適化
解答を確認
正解: B
ポリシー監査モードではポリシー違反トラフィックを実際にはブロックせず、違反事項を記録のみします。ポリシーを適用する前に影響度を事前に把握できます。
問題 46
Ciliumネットワークポリシーでのconceal CIDRベースのイグレスルールの用途は?
A. クラスタ内部のPod間通信制御 B. 特定の外部IP帯域へのイグレストラフィック制御 C. DNS解決制御 D. Ingressコントローラー設定
解答を確認
正解: B
CIDRベースのイグレスルールはPodから特定の外部IP帯域(例:10.0.0.0/8)へのアウトバウンドトラフィックを許可または拒否するのに使用されます。
問題 47
CiliumでtoEntities: worldが意味するものは何ですか?
A. 同じクラスタのすべてのPod B. クラスタ外部のすべてのエンドポイント C. Ciliumが管理していないすべてのエンドポイント D. DNSサーバー
解答を確認
正解: B
worldエンティティはクラスタ外部のすべてのエンドポイントを表します。Ciliumはworld、cluster、host、remote-node、kube-apiserverなどの事前定義されたエンティティを提供します。
問題 48
次のCilium L7ポリシーの例について:
rules:
http:
- method: GET
path: '/api/v1/users'
このルールが許可するトラフィックは?
A. すべてのHTTPトラフィック B. /api/v1/usersパスへのGETリクエストのみ C. /api/v1/usersパスへのすべてのHTTPメソッド D. POSTリクエストのみ
解答を確認
正解: B
このL7ポリシールールはHTTP GETメソッドで/api/v1/usersパスへのリクエストのみを許可します。他のメソッド(POST、PUTなど)や他のパスは拒否されます。
問題 49
Cilium Identityベースのポリシーで、Identityはどこに保存されますか?
A. Podの環境変数 B. BPFマップとKVStore(CRDまたはetcd) C. ConfigMap D. Secret
解答を確認
正解: B
IdentityはBPFマップに保存されデータパスでの高速ルックアップが可能であり、同時にKVStore(CRDまたはetcd)にも保存されクラスタ全体で共有されます。
問題 50
Ciliumで名前空間境界を越えるポリシーを作成する際に使用する方法は?
A. 名前空間名を直接指定
B. namespaceSelectorを使用して名前空間ラベルをマッチング
C. 常にCiliumClusterwideNetworkPolicyを使用
D. iptablesルールを追加
解答を確認
正解: B
CiliumNetworkPolicyでfromEndpointsまたはtoEndpointsにnamespaceSelectorを含めると他の名前空間のエンドポイントをマッチングできます。
問題 51
CiliumポリシーのtoServicesフィールドの用途は?
A. Kubernetesサービスを対象としたイグレスポリシー定義 B. サービスメッシュ設定 C. サービスディスカバリ設定 D. サービスモニタリング
解答を確認
正解: A
toServicesフィールドはKubernetesサービス名と名前空間に基づいてイグレスポリシーを定義します。特定のサービスへのアウトバウンドトラフィックを制御できます。
問題 52
Ciliumポリシーにおけるdenyルールの優先順位は?
A. Allowルールより常に低い B. Allowルールより常に高い(Denyが優先) C. 作成時間順 D. 名前空間のアルファベット順
解答を確認
正解: B
CiliumではDenyルールは常にAllowルールより優先されます。同じトラフィックに対してAllowとDenyルールの両方が存在する場合、そのトラフィックは拒否されます。
Service Mesh(問題 53-64)
問題 53
Ciliumサービスメッシュのサイドカーレス(Sidecar-less)アーキテクチャの核心原理は?
A. 各Podにサイドカーコンテナを注入 B. ノードあたり1つのEnvoyプロキシとeBPFベースのトラフィックリダイレクション C. Istioサイドカーとの統合 D. アプリケーションコードの変更
解答を確認
正解: B
Ciliumサービスメッシュはサイドカーを使用せず、ノードあたり1つの共有Envoyプロキシインスタンスを実行します。eBPFを使用してL7ポリシーが必要なトラフィックのみをEnvoyに透過的にリダイレクションします。
問題 54
CiliumサービスメッシュにおけるmTLS(Mutual TLS)の役割は?
A. DNS暗号化 B. サービス間通信の相互認証と暗号化 C. ログ暗号化 D. ストレージ暗号化
解答を確認
正解: B
mTLSはサービス間通信で両側が相互の証明書を確認し、通信を暗号化します。CiliumサービスメッシュではSPIFFEベースのIdentityを使用してmTLSを実装します。
問題 55
Ciliumサイドカーレスサービスメッシュの利点でないものは?
A. リソース効率の向上 B. レイテンシーの低減 C. 各Podごとの独立したEnvoy設定 D. 運用複雑性の低減
解答を確認
正解: C
サイドカーレスモードではノードあたり1つの共有Envoyインスタンスを使用するため、各Podごとの独立したEnvoy設定はできません。代わりにリソース効率、レイテンシー低減、運用複雑性の低減などの利点があります。
問題 56
CiliumにおけるCiliumEnvoyConfig CRDの目的は?
A. Cilium Agent設定 B. EnvoyプロキシのL7トラフィック管理ルール定義 C. Hubble設定 D. BGPピア設定
解答を確認
正解: B
CiliumEnvoyConfig CRDを通じてEnvoyプロキシのリスナー、ルート、クラスタなどのL7トラフィック管理ルールをKubernetesネイティブの方式で定義できます。
問題 57
CiliumサービスメッシュのL7トラフィック管理機能に含まれるものは?
A. ヘッダーベースのルーティング B. GPUスケジューリング C. ストレージプロビジョニング D. ノードオートスケーリング
解答を確認
正解: A
CiliumサービスメッシュのL7トラフィック管理機能にはヘッダーベースのルーティング、URLパスベースのルーティング、トラフィック分割(カナリアデプロイ)、リトライ、タイムアウトなどが含まれます。
問題 58
CiliumがIngressコントローラー機能を提供するために使用するリソースは?
A. CiliumIngressController CRD B. 標準KubernetesIngressリソースとCiliumEnvoyConfig C. Nginx ConfigMap D. Istio Gateway
解答を確認
正解: B
Ciliumは標準Kubernetes Ingressリソースをサポートする組み込みIngressコントローラーを提供します。追加設定はCiliumEnvoyConfigを通じて可能です。
問題 59
CiliumサービスメッシュでのGateway APIサポートの意味は?
A. 独自のAPIのみ使用 B. Kubernetes Gateway APIリソース(Gateway、HTTPRouteなど)をネイティブサポート C. AWS API Gateway統合 D. REST API自動生成
解答を確認
正解: B
CiliumはKubernetes Gateway API(Gateway、HTTPRoute、GRPCRoute、TLSRouteなど)をネイティブにサポートし、標準ベースのトラフィック管理を提供します。
問題 60
CiliumでL4レベルのサービスメッシュ機能(mTLSなど)はどのように実装されますか?
A. 常にEnvoyプロキシを通じて B. eBPFで直接実装(プロキシなし) C. iptablesルールで D. サイドカーコンテナで
解答を確認
正解: B
CiliumはL4レベルのサービスメッシュ機能(mTLS、ロードバランシングなど)をeBPFで直接実装でき、L7機能が必要な場合のみEnvoyプロキシにトラフィックをリダイレクションします。
問題 61
CiliumのSPIFFE統合でSPIFFE IDが表すものは?
A. PodのIPアドレス B. ワークロードの暗号化識別子 C. ノードのホスト名 D. 名前空間名
解答を確認
正解: B
SPIFFE IDはワークロードを一意に識別するURI形式の暗号化識別子です。CiliumはSPIFFEを通じてワークロード間のmTLS認証に使用される証明書を管理します。
問題 62
Ciliumサービスメッシュでカナリアデプロイを実装する方法は?
A. Kubernetes Deploymentレプリカ数の調整 B. HTTPRouteのbackendRefsにウェイト(weight)を設定 C. DNSラウンドロビン D. 手動でPod IPを変更
解答を確認
正解: B
Gateway APIのHTTPRouteでbackendRefsにweightを設定してトラフィックを比率ベースで分割できます。これによりカナリアデプロイを実装します。
問題 63
CiliumでEnvoyにトラフィックがリダイレクションされる条件は?
A. すべてのトラフィックが常にリダイレクション B. L7ネットワークポリシーが適用されたトラフィックのみ C. TCPトラフィックのみ D. UDPトラフィックのみ
解答を確認
正解: B
CiliumはL7ポリシーが適用されたトラフィックのみを選択的にEnvoyプロキシにリダイレクションします。L3/L4ポリシーのみ適用されるトラフィックはeBPFで直接処理されプロキシオーバーヘッドがありません。
問題 64
Ciliumサービスメッシュでリトライ(Retry)ポリシーを設定する方法は?
A. Podアプリケーションコードで実装 B. CiliumEnvoyConfigまたはHTTPRouteのretry設定 C. Kubernetes livenessProbe D. sysctlパラメータ
解答を確認
正解: B
CiliumEnvoyConfigまたはGateway API HTTPRouteを通じてEnvoyのリトライポリシーを設定できます。リトライ回数、タイムアウト、条件などを細かく設定可能です。
Observability(問題 65-72)
問題 65
Hubbleのアーキテクチャで各ノードのフローデータを収集するコンポーネントは?
A. Hubble Relay B. Hubble UI C. Cilium Agentに内蔵されたHubble D. Prometheus
解答を確認
正解: C
Hubbleは各ノードのCilium Agentに内蔵されて実行されます。eBPFデータパスで発生するネットワークフローイベントをリングバッファに収集します。
問題 66
Hubble Relayの役割は?
A. 単一ノードのフロー収集 B. 複数ノードのHubbleデータを集約してクラスタ全体のオブザーバビリティを提供 C. DNSリレー D. ロードバランシング
解答を確認
正解: B
Hubble Relayはクラスタのすべてのノードで実行されるHubbleインスタンスに接続してフローデータを集約します。クラスタ全体のネットワークオブザーバビリティを提供します。
問題 67
Hubbleで観察できないL7プロトコルはどれですか?
A. HTTP B. DNS C. Kafka D. SMTP
解答を確認
正解: D
HubbleはHTTP、DNS、gRPC、KafkaなどのL7プロトコルフローを観察できます。SMTPは現在デフォルトではサポートされていません。
問題 68
Hubble CLIで特定の名前空間のフローを確認するコマンドは?
A. hubble observe --namespace default
B. hubble get flows --ns default
C. hubble watch default
D. hubble logs --namespace default
解答を確認
正解: A
hubble observe --namespace defaultを使用して特定の名前空間のネットワークフローをリアルタイムで観察できます。
問題 69
Hubble UIが提供する機能は?
A. サービス間依存関係トポロジマップの可視化 B. KubernetesリソースYAMLの編集 C. コンテナログビューア D. CI/CDパイプライン管理
解答を確認
正解: A
Hubble UIはサービス間の通信関係をトポロジマップとして可視化します。ネットワークフローをリアルタイムで表示し、ポリシー適用状況とトラフィックフローを直感的に把握できます。
問題 70
HubbleのPrometheusメトリクス統合で収集可能な情報は?
A. フロー数、ポリシードロップカウント、HTTPリクエストレイテンシー B. CPU使用率 C. ディスクI/O D. メモリ使用量
解答を確認
正解: A
Hubbleはネットワークフロー数、ポリシーによるドロップカウント、HTTPリクエスト/レスポンスレイテンシー、DNSクエリレイテンシーなどのネットワーク関連Prometheusメトリクスを提供します。
問題 71
Hubbleでポリシーによりドロップされたパケットを確認するコマンドは?
A. hubble observe --verdict DROPPED
B. hubble dropped-packets
C. hubble observe --type drop
D. hubble policy-violations
解答を確認
正解: A
hubble observe --verdict DROPPEDを使用してネットワークポリシーにより拒否されたトラフィックをフィルタリングして確認できます。
問題 72
Hubble gRPC APIの主な用途は?
A. Podスケジューリング B. プログラマティック方式でのフローデータの照会とストリーミング C. Kubernetes APIサーバーアクセス D. イメージレジストリ管理
解答を確認
正解: B
Hubble gRPC APIを通じて外部システムやカスタムツールからフローデータをプログラマティック方式で照会しストリーミングで受信できます。
Cluster Mesh and External Workloads(問題 73-80)
問題 73
Cilium ClusterMeshの核心アーキテクチャコンポーネントは?
A. 集中型コントロールプレーン B. 各クラスタのetcdとclustermesh-apiserver C. 単一共有etcd D. Consul
解答を確認
正解: B
ClusterMeshは各クラスタが自身のetcdを維持しながらclustermesh-apiserverを通じて他のクラスタに情報を公開します。完全に分散されたアーキテクチャで単一障害点がありません。
問題 74
ClusterMeshにおけるグローバルサービス(Global Service)とは?
A. すべてのクラスタで同じIPを使用するサービス B. 複数のクラスタにまたがり同じサービス名でトラフィックが分散されるサービス C. 外部インターネットに公開されたサービス D. DNS専用サービス
解答を確認
正解: B
グローバルサービスは複数のクラスタにまたがり同じ名前と名前空間を持ち、トラフィックがすべてのクラスタのバックエンドに分散されます。io.cilium/global-service: "true"アノテーションで有効化します。
問題 75
ClusterMeshでサービスアフィニティ(Service Affinity)をローカルクラスタ優先に設定する方法は?
A. サービスにio.cilium/service-affinity: "local"アノテーションを追加
B. ClusterMesh設定でaffinity-modeを変更
C. DNS TTLの調整
D. BGP優先度の設定
解答を確認
正解: A
io.cilium/service-affinity: "local"アノテーションをサービスに追加すると、ローカルクラスタのバックエンドを優先的に使用し、ローカルバックエンドがない場合のみリモートクラスタにトラフィックを転送します。
問題 76
ClusterMeshでクロスクラスタネットワークポリシーが可能な理由は?
A. IPアドレスベースのポリシーのみ使用 B. クラスタ間でIdentityが同期されIdentityベースのポリシー適用が可能 C. 中央ファイアウォールを使用 D. VPNトンネルを使用
解答を確認
正解: B
ClusterMeshではクラスタ間でCilium Identityが同期されます。そのため他のクラスタのワークロードに対してもラベルベースのIdentityポリシーを適用できます。
問題 77
KVStoreMeshの目的は?
A. KVStoreのバックアップ B. 大規模ClusterMesh環境でKVStoreの負荷を軽減するためのキャッシュレイヤー C. KVStoreの暗号化 D. KVStoreのモニタリング
解答を確認
正解: B
KVStoreMeshはClusterMeshでリモートクラスタのKVStoreデータをローカルにキャッシュして大規模マルチクラスタ環境でのスケーラビリティを改善します。
問題 78
Cilium外部ワークロード(External Workloads)機能は何を可能にしますか?
A. 外部VMやベアメタルサーバーにCilium Agentをインストールしてkubernetesクラスタのネットワークポリシーを適用 B. 外部DNSサーバー管理 C. クラウドインスタンスの自動プロビジョニング D. VPNサーバーのデプロイ
解答を確認
正解: A
外部ワークロード機能によりVMやベアメタルサーバーにCilium Agentをインストールし、Kubernetesクラスタに参加させて同じネットワークポリシーとセキュリティIdentityを適用できます。
問題 79
ClusterMeshの設定時に必須ではない要件はどれですか?
A. 各クラスタに一意のクラスタID B. クラスタ間でPod CIDRが重複しないこと C. すべてのクラスタが同じクラウドプロバイダーにあること D. クラスタ間のネットワーク接続が可能であること
解答を確認
正解: C
ClusterMeshはクラウドプロバイダーに依存しません。必須要件は一意のクラスタID、重複しないPod CIDR、クラスタ間のネットワーク接続であり、異なるクラウドでも動作します。
問題 80
Cilium BGP Control Plane(BGPCP)のCiliumBGPPeeringPolicyリソースの目的は?
A. Pod内部でBGPデーモンを実行 B. ノードのBGPピアリングセッションとアドバタイズする経路を宣言的に定義 C. 外部BGPルーターの自動デプロイ D. BGPトラフィックの暗号化
解答を確認
正解: B
CiliumBGPPeeringPolicyはKubernetesリソースとして、どのノードがどのBGPピアとセッションを確立し、どの経路(Pod CIDR、Service IPなど)をアドバタイズするかを宣言的に定義します。
まとめ
ドメイン別チェック要約
| ドメイン | 問題範囲 | 核心キーワード |
|---|---|---|
| Architecture | 1-16 | eBPF検証器、Identity、Agent/Operator、BPFマップ、XDP |
| Networking | 17-36 | CNI、ルーティングモード、Maglev、DSR、BGP、LB-IPAM、WireGuard |
| Network Policy | 37-52 | CiliumNetworkPolicy、L3/L4/L7、FQDN、Identity、Deny優先 |
| Service Mesh | 53-64 | Sidecar-less、Envoy、mTLS、Gateway API、SPIFFE |
| Observability | 65-72 | Hubble、Relay、UI、Prometheus、gRPC API |
| Cluster Mesh | 73-80 | etcd、Global Service、KVStoreMesh、External Workloads、BGPCP |
学習のヒント
- eBPFの基礎を確実に理解: 検証器、BPFマップ、プログラムタイプ(XDP、tc、socket)などeBPF基本概念が試験全体に出題されます。
- Identityベースのセキュリティモデルの習得: Ciliumの核心的な差別化ポイントであるラベルベースのIdentity割り当てとポリシー適用メカニズムを理解しましょう。
- ハンズオン練習:
cilium status、cilium endpoint list、hubble observeなどのCLIツールを実際に使用してみましょう。 - 公式ドキュメント参照: Cilium公式ドキュメントのConceptsセクションが試験範囲と最も密接に関連しています。