Skip to content

Split View: [Golden Kubestronaut] CCA 실전 연습 문제 80제 - Cilium Certified Associate

|

[Golden Kubestronaut] CCA 실전 연습 문제 80제 - Cilium Certified Associate

CCA (Cilium Certified Associate) 실전 연습 문제 80제

시험 개요

CCA(Cilium Certified Associate)는 Cilium과 eBPF 기반 쿠버네티스 네트워킹에 대한 기본 지식을 검증하는 자격증입니다.

항목내용
시험 시간90분
문제 수60문제
합격 기준75%
형식객관식

도메인별 가중치

도메인비중
Architecture20%
Networking25%
Network Policy20%
Service Mesh15%
Observability10%
Cluster Mesh and External Workloads10%

Architecture (문제 1-16)

문제 1

eBPF 프로그램이 리눅스 커널에서 실행되기 전에 반드시 거쳐야 하는 단계는 무엇인가?

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 Address Management), 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. socket operations D. 사용자 공간 프로세스

정답 확인

정답: D

eBPF 프로그램은 커널 공간에서 실행됩니다. XDP, tc, socket operations, 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이 사용하는 BPF 맵 타입 중 CIDR 기반 정책 매칭에 사용되는 것은?

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 모드에서는 쿠버네티스가 각 노드에 할당한 PodCIDR 범위에서 IP 주소를 할당합니다. 이는 기본적인 IPAM 모드로, 별도의 클라우드 통합 없이 동작합니다.

문제 15

Cilium Agent가 사용하는 상태 저장소로 올바른 것은?

A. Redis B. 로컬 etcd 또는 CRD(쿠버네티스 커스텀 리소스) C. PostgreSQL D. Consul

정답 확인

정답: B

Cilium Agent는 상태를 쿠버네티스 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. 쿠버네티스 스케줄링 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를 사용하여 쿠버네티스 서비스의 로드 밸런싱을 구현할 수 있으며, 이를 통해 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

Geneve는 TLV 옵션을 통해 메타데이터(Identity 정보 등)를 터널 헤더에 포함할 수 있습니다. Cilium은 이를 활용하여 추가적인 보안 컨텍스트를 전달합니다.

문제 28

Cilium의 호스트 방화벽(Host Firewall) 기능은 무엇을 보호하는가?

A. Pod 간 통신만 B. 호스트 네트워크 네임스페이스로의 트래픽 C. 외부 DNS 요청 D. etcd 데이터

정답 확인

정답: B

Cilium 호스트 방화벽은 노드의 호스트 네트워크 네임스페이스로 들어오고 나가는 트래픽에 정책을 적용합니다. 이를 통해 노드 수준의 보안을 강화합니다.

문제 29

Cilium에서 IPv4/IPv6 듀얼 스택을 활성화하기 위한 설정은?

A. enable-ipv4: trueenable-ipv6: true B. dual-stack: enabled C. ip-version: both D. network-mode: dual

정답 확인

정답: A

Cilium에서 듀얼 스택은 enable-ipv4: trueenable-ipv6: true를 함께 설정하여 활성화합니다. 각 프로토콜을 독립적으로 활성화/비활성화할 수 있습니다.

문제 30

Cilium의 Bandwidth Manager가 사용하는 리눅스 커널 기능은?

A. cgroups B. EDT(Earliest Departure Time) 기반 rate limiting C. tc-filter D. iptables rate limiting

정답 확인

정답: 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와 쿠버네티스 NetworkPolicy의 차이점으로 올바른 것은?

A. CiliumNetworkPolicy는 L7 정책을 지원 B. 쿠버네티스 NetworkPolicy가 더 많은 기능 제공 C. CiliumNetworkPolicy는 클러스터 범위만 지원 D. 둘은 완전히 동일한 기능

정답 확인

정답: A

CiliumNetworkPolicy는 쿠버네티스 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는 노드당 하나의 인스턴스로 실행됩니다.

문제 43

Cilium 네트워크 정책에서 기본 거부(Default Deny) 동작은 언제 활성화되는가?

A. Cilium 설치 시 자동으로 활성화 B. 특정 엔드포인트를 선택하는 정책이 하나라도 적용될 때 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 네트워크 정책에서 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에서 HTTP 메서드 기반 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 또는 toEndpointsnamespaceSelector를 포함하면 다른 네임스페이스의 엔드포인트를 매칭할 수 있습니다.

문제 51

Cilium 정책에서 toServices 필드의 용도는?

A. 쿠버네티스 서비스를 대상으로 이그레스 정책 정의 B. 서비스 메시 설정 C. 서비스 디스커버리 구성 D. 서비스 모니터링

정답 확인

정답: A

toServices 필드는 쿠버네티스 서비스 이름과 네임스페이스를 기반으로 이그레스 정책을 정의합니다. 이를 통해 특정 서비스로의 아웃바운드 트래픽을 제어할 수 있습니다.

문제 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. 노드당 하나의 Envoy 프록시와 eBPF 기반 트래픽 리디렉션 C. Istio 사이드카와 통합 D. 애플리케이션 코드 수정

정답 확인

정답: B

Cilium 서비스 메시는 사이드카를 사용하지 않고, 노드당 하나의 공유 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

사이드카리스 모드에서는 노드당 하나의 공유 Envoy 인스턴스를 사용하므로, 각 Pod별 독립적인 Envoy 설정은 불가능합니다. 대신 리소스 효율성, 지연 시간 감소, 운영 복잡성 감소 등의 이점이 있습니다.

문제 56

Cilium에서 CiliumEnvoyConfig CRD의 목적은?

A. Cilium Agent 설정 B. Envoy 프록시의 L7 트래픽 관리 규칙 정의 C. Hubble 설정 D. BGP 피어 설정

정답 확인

정답: B

CiliumEnvoyConfig CRD를 통해 Envoy 프록시의 리스너, 라우트, 클러스터 등 L7 트래픽 관리 규칙을 쿠버네티스 네이티브 방식으로 정의할 수 있습니다.

문제 57

Cilium 서비스 메시에서 L7 트래픽 관리 기능에 포함되는 것은?

A. 헤더 기반 라우팅 B. GPU 스케줄링 C. 스토리지 프로비저닝 D. 노드 오토스케일링

정답 확인

정답: A

Cilium 서비스 메시의 L7 트래픽 관리 기능에는 헤더 기반 라우팅, URL 경로 기반 라우팅, 트래픽 분할(카나리 배포), 리트라이, 타임아웃 등이 포함됩니다.

문제 58

Cilium에서 Ingress 컨트롤러 기능을 제공하기 위해 사용하는 리소스는?

A. CiliumIngressController CRD B. 표준 쿠버네티스 Ingress 리소스와 CiliumEnvoyConfig C. Nginx ConfigMap D. Istio Gateway

정답 확인

정답: B

Cilium은 표준 쿠버네티스 Ingress 리소스를 지원하는 내장 Ingress 컨트롤러를 제공합니다. 추가적인 설정은 CiliumEnvoyConfig를 통해 가능합니다.

문제 59

Cilium 서비스 메시에서 Gateway API 지원의 의미는?

A. 독자적인 API만 사용 B. 쿠버네티스 Gateway API 리소스(Gateway, HTTPRoute 등)를 네이티브로 지원 C. AWS API Gateway 통합 D. REST API 자동 생성

정답 확인

정답: B

Cilium은 쿠버네티스 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. 쿠버네티스 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. 쿠버네티스 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. 쿠버네티스 리소스 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. 쿠버네티스 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를 설치하여 쿠버네티스 클러스터의 네트워크 정책 적용 B. 외부 DNS 서버 관리 C. 클라우드 인스턴스 자동 프로비저닝 D. VPN 서버 배포

정답 확인

정답: A

외부 워크로드 기능을 통해 VM이나 베어메탈 서버에 Cilium Agent를 설치하고, 쿠버네티스 클러스터에 참여시켜 동일한 네트워크 정책과 보안 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는 쿠버네티스 리소스로서, 어떤 노드가 어떤 BGP 피어와 세션을 맺고, 어떤 경로(Pod CIDR, Service IP 등)를 광고할지를 선언적으로 정의합니다.


마무리

도메인별 점검 요약

도메인문제 범위핵심 키워드
Architecture1-16eBPF 검증기, Identity, Agent/Operator, BPF 맵, XDP
Networking17-36CNI, 라우팅 모드, Maglev, DSR, BGP, LB-IPAM, WireGuard
Network Policy37-52CiliumNetworkPolicy, L3/L4/L7, FQDN, Identity, Deny 우선
Service Mesh53-64Sidecar-less, Envoy, mTLS, Gateway API, SPIFFE
Observability65-72Hubble, Relay, UI, Prometheus, gRPC API
Cluster Mesh73-80etcd, Global Service, KVStoreMesh, External Workloads, BGPCP

학습 팁

  1. eBPF 기초 확실히 이해: 검증기, BPF 맵, 프로그램 타입(XDP, tc, socket) 등 eBPF 기본 개념이 시험 전반에 출제됩니다.
  2. Identity 기반 보안 모델 숙지: Cilium의 핵심 차별점인 레이블 기반 Identity 할당과 정책 적용 메커니즘을 이해하세요.
  3. Hands-on 연습: cilium status, cilium endpoint list, hubble observe 등 CLI 도구를 직접 사용해보세요.
  4. 공식 문서 참조: Cilium 공식 문서의 Concepts 섹션이 시험 범위와 가장 밀접합니다.

[Golden Kubestronaut] CCA Practice Exam 80 Questions - Cilium Certified Associate

CCA (Cilium Certified Associate) Practice Exam - 80 Questions

Exam Overview

The CCA (Cilium Certified Associate) certification validates foundational knowledge of Cilium and eBPF-based Kubernetes networking.

ItemDetails
Duration90 minutes
Questions60 questions
Passing Score75%
FormatMultiple Choice

Domain Weights

DomainWeight
Architecture20%
Networking25%
Network Policy20%
Service Mesh15%
Observability10%
Cluster Mesh and External Workloads10%

Architecture (Questions 1-16)

Question 1

What step must an eBPF program go through before it can run in the Linux kernel?

A. Compilation B. Verification C. Linking D. Serialization

Show Answer

Answer: B

eBPF programs must pass through the eBPF verifier before being loaded into the kernel. The verifier ensures the program contains no infinite loops, invalid memory accesses, or other safety violations.

Question 2

On what basis does Cilium assign a security Identity to each workload?

A. Pod IP address B. Pod name C. Security-relevant labels of the Pod D. Node where the Pod runs

Show Answer

Answer: C

Cilium assigns a numeric Identity based on the combination of security-relevant labels. All Pods with the same label set share the same Identity.

Question 3

Which of the following is NOT a primary role of the Cilium Agent?

A. Compiling and loading eBPF programs B. Endpoint management C. IPAM allocation management D. CRD validation

Show Answer

Answer: D

CRD validation is handled by the Cilium Operator. The Cilium Agent runs on each node and is responsible for eBPF program management, endpoint management, and policy enforcement.

Question 4

What is a correct role of the Cilium Operator?

A. Loading eBPF programs on each node B. Cluster-wide IPAM management and CRD management C. Collecting Hubble metrics D. Managing Envoy proxies

Show Answer

Answer: B

The Cilium Operator runs at the cluster level and handles cluster-wide tasks such as IPAM (IP Address Management), CRD management, node discovery, and garbage collection.

Question 5

What is the purpose of BPF maps in eBPF?

A. Sharing data between eBPF programs or between kernel and user space B. Buffers for storing network packets C. Storing eBPF program source code D. Loading kernel modules

Show Answer

Answer: A

BPF maps are key-value stores for sharing data between eBPF programs, or between kernel space and user space. Cilium uses them for policy lookups, connection tracking, NAT, and more.

Question 6

What characterizes the veth datapath mode in Cilium?

A. Uses veth pairs between Pod and host network namespaces B. Forwards packets directly via XDP C. Only uses VXLAN tunnels D. Operates based on iptables

Show Answer

Answer: A

In veth mode, Cilium creates veth pairs between the Pod network namespace and the host network namespace, and attaches eBPF programs at tc (traffic control) hooks to process packets.

Question 7

Which is NOT a valid execution context for eBPF programs?

A. XDP (eXpress Data Path) B. tc (traffic control) C. Socket operations D. User space process

Show Answer

Answer: D

eBPF programs execute in kernel space. They operate at kernel hook points such as XDP, tc, socket operations, kprobes, and tracepoints, not as user space processes.

Question 8

Which is NOT an advantage of Cilium's Identity-based security model?

A. Unaffected by IP address changes B. Intuitive label-based policy enforcement C. BPF map size is always smaller than IP-based approaches D. Policies automatically apply when Pods scale

Show Answer

Answer: C

Key advantages of the Identity-based model include immunity to IP changes, intuitive label-based policies, and automatic application during scaling. However, BPF map size is not guaranteed to be always smaller.

Question 9

When does an Endpoint in Cilium undergo regeneration?

A. When a network policy changes B. When node CPU usage is high C. When Hubble restarts D. When DNS cache expires

Show Answer

Answer: A

When network policies change, the Cilium Agent recompiles and reloads the eBPF programs for affected endpoints. This process is called endpoint regeneration.

Question 10

Which BPF map type does Cilium use for CIDR-based policy matching?

A. Hash Map B. LPM Trie C. Array Map D. Ring Buffer

Show Answer

Answer: B

LPM (Longest Prefix Match) Trie is used for CIDR-based policy matching. It can find the most specific matching rule based on IP address prefixes.

Question 11

Why is there a limit on the maximum number of instructions an eBPF program can execute?

A. Memory conservation B. To guarantee program termination C. Network bandwidth limitation D. CPU core limitation

Show Answer

Answer: B

The eBPF verifier enforces instruction limits to guarantee that programs always terminate. This is a safety mechanism for kernel stability, preventing infinite loops and excessive execution.

Question 12

Why is the Cilium Agent deployed as a DaemonSet on each node?

A. For high availability B. Because it needs to manage the network datapath on each node C. For centralized logging D. For storage management

Show Answer

Answer: B

The Cilium Agent must load eBPF programs and manage endpoints on each node. To directly control the node's network datapath, it must run on that node, hence the DaemonSet deployment.

Question 13

What is the primary benefit of using XDP (eXpress Data Path) in Cilium?

A. L7 protocol analysis B. Ultra-fast packet processing at the network driver level C. Automatic TLS termination D. Multi-cluster communication

Show Answer

Answer: B

XDP runs eBPF programs at the network driver level, processing packets before they reach the kernel network stack. This enables ultra-fast performance for DDoS mitigation, load balancing, and more.

Question 14

What characterizes the Kubernetes Host Scope IPAM mode in Cilium?

A. Uses AWS ENIs to allocate IPs B. Allocates IPs from the PodCIDR assigned to each node C. Integrates with external IPAM services D. Supports IPv6 only

Show Answer

Answer: B

In Kubernetes Host Scope mode, IP addresses are allocated from the PodCIDR range assigned to each node by Kubernetes. This is the basic IPAM mode that works without cloud integration.

Question 15

What state store does the Cilium Agent use?

A. Redis B. Local etcd or CRDs (Kubernetes Custom Resources) C. PostgreSQL D. Consul

Show Answer

Answer: B

The Cilium Agent stores state in Kubernetes CRDs (CiliumEndpoint, CiliumIdentity, etc.) or external etcd (kvstore). In recent versions, CRD-based KVStore is the default.

Question 16

What is the purpose of eBPF tail calls?

A. Invoking system calls from eBPF programs B. Transferring execution from one eBPF program to another C. Calling user space applications D. Triggering kernel panics

Show Answer

Answer: B

eBPF tail calls are a mechanism for transferring execution flow from one eBPF program to another. Cilium uses this to split complex packet processing pipelines across multiple programs.


Networking (Questions 17-36)

Question 17

Which is NOT a routing mode supported by Cilium?

A. VXLAN tunneling B. Geneve tunneling C. Direct Routing (native routing) D. MPLS routing

Show Answer

Answer: D

Cilium supports VXLAN, Geneve tunneling modes and Direct Routing (native routing) mode. MPLS routing is not supported by Cilium.

Question 18

What does Cilium do when operating as a CNI (Container Network Interface) plugin?

A. Sets up network interfaces and allocates IPs when Pods are created B. Builds container images C. Kubernetes scheduling D. Mounts storage volumes

Show Answer

Answer: A

As a CNI plugin, Cilium sets up network interfaces, allocates IP addresses, and attaches eBPF programs when Pods are created.

Question 19

How is Pod-to-Pod traffic forwarded in Cilium's Direct Routing mode?

A. Encapsulated with VXLAN headers B. Forwarded directly using the node's routing table C. NAT is always applied D. Forwarded through user space proxies

Show Answer

Answer: B

In Direct Routing mode, packets are not encapsulated but forwarded directly using the node's routing table (or BGP). This has lower overhead but requires network infrastructure to support Pod CIDR routing.

Question 20

What is the core implementation approach for Cilium's kube-proxy replacement feature?

A. Creating iptables rules B. Creating ipvs rules C. eBPF-based service load balancing D. Deploying HAProxy

Show Answer

Answer: C

Cilium can implement Kubernetes service load balancing using eBPF, which allows it to completely replace kube-proxy (iptables/ipvs).

Question 21

What problem does Maglev consistent hashing solve in Cilium service load balancing?

A. DNS resolution speed B. Maintaining existing connections when backends change C. TLS certificate management D. Pod scheduling optimization

Show Answer

Answer: B

Maglev consistent hashing ensures that existing connections are maintained to the same backend when backend Pods are added or removed. It minimizes hash table redistribution to ensure connection stability.

Question 22

What is the advantage of DSR (Direct Server Return) mode?

A. Response packets go directly to the client without passing through the original load-balancing node B. All traffic is encrypted C. L7 protocol analysis is possible D. Multi-cluster communication support

Show Answer

Answer: A

In DSR mode, response traffic is sent directly from the backend to the client, bypassing the original node that performed service load balancing. This reduces unnecessary hops and saves bandwidth.

Question 23

What is the primary purpose of Cilium's BGP Control Plane feature?

A. DNS resolution inside Pods B. Advertising Pod CIDRs and service IPs to BGP peers C. Container image registry management D. etcd cluster management

Show Answer

Answer: B

Cilium's BGP Control Plane (BGPCP) advertises Pod CIDRs, service LoadBalancer IPs, etc. to external BGP routers, enabling direct access to Pods/services from external networks.

Question 24

What is the approximate overhead added by VXLAN tunneling mode?

A. 8 bytes B. 50 bytes C. 100 bytes D. 200 bytes

Show Answer

Answer: B

VXLAN encapsulation adds approximately 50 bytes of additional headers (outer Ethernet + IP + UDP + VXLAN header) to packets. This may reduce MTU, so proper MTU configuration is needed.

Question 25

At which hook point does eBPF acceleration for NodePort services operate in Cilium?

A. Application Layer B. XDP or tc C. syslog D. Netfilter

Show Answer

Answer: B

Cilium processes NodePort service traffic at XDP or tc hook points. In XDP mode, it operates at the network driver level for maximum performance.

Question 26

What is the advantage of socket-level load balancing in Cilium?

A. L7 protocol analysis is possible B. Packets connect directly to the backend without traversing the network stack C. Automatic TLS termination D. DNS caching

Show Answer

Answer: B

Socket-level load balancing translates service IPs to backend IPs directly at the connect() system call time. This means packets avoid unnecessary NAT and conntrack processing.

Question 27

Why is Geneve tunneling preferred over VXLAN in Cilium?

A. Less overhead B. Supports extensible TLV (Type-Length-Value) option fields C. Faster encryption D. Supports only IPv4

Show Answer

Answer: B

Geneve supports TLV options that allow metadata (such as Identity information) to be included in the tunnel header. Cilium uses this to carry additional security context.

Question 28

What does Cilium's Host Firewall feature protect?

A. Pod-to-Pod communication only B. Traffic to and from the host network namespace C. External DNS requests D. etcd data

Show Answer

Answer: B

Cilium Host Firewall applies policies to traffic entering and leaving the node's host network namespace, enhancing node-level security.

Question 29

What configuration is needed to enable IPv4/IPv6 dual stack in Cilium?

A. enable-ipv4: true and enable-ipv6: true B. dual-stack: enabled C. ip-version: both D. network-mode: dual

Show Answer

Answer: A

Dual stack in Cilium is enabled by setting both enable-ipv4: true and enable-ipv6: true. Each protocol can be independently enabled or disabled.

Question 30

What Linux kernel feature does Cilium's Bandwidth Manager use?

A. cgroups B. EDT (Earliest Departure Time) based rate limiting C. tc-filter D. iptables rate limiting

Show Answer

Answer: B

Cilium's Bandwidth Manager uses EDT (Earliest Departure Time) and FQ (Fair Queuing) to implement per-Pod bandwidth limits. This is more efficient than traditional tc-based approaches.

Question 31

What is the purpose of WireGuard integration in Cilium?

A. L7 traffic analysis B. Transparent encryption of inter-node traffic C. DNS query acceleration D. Log collection

Show Answer

Answer: B

Cilium's WireGuard integration transparently encrypts Pod traffic between nodes. It provides simpler configuration and higher performance compared to IPsec.

Question 32

Which Cilium IPAM mode uses ENIs (Elastic Network Interfaces) in cloud environments?

A. Kubernetes Host Scope B. Cluster Scope C. AWS ENI mode D. CRD-backed

Show Answer

Answer: C

In AWS ENI mode, Cilium uses AWS ENIs to assign VPC-native IPs to each Pod, allowing Pods to use VPC routing directly.

Question 33

What is the purpose of BIG TCP in Cilium?

A. Limiting TCP connections B. Improving throughput via GRO/GSO for large packet processing C. Expanding TCP port range D. Adjusting TCP timeouts

Show Answer

Answer: B

BIG TCP leverages GRO (Generic Receive Offload) and GSO (Generic Segmentation Offload) to internally process packets larger than 64KB, significantly improving network throughput.

Question 34

How does Cilium implement session affinity for services?

A. iptables rules B. Storing client IP to backend mappings in BPF maps C. DNS round-robin D. Delegating to external load balancer

Show Answer

Answer: B

Cilium stores the mapping between client IP and selected backend in BPF maps to implement session affinity. Requests from the same client are directed to the same backend for the configured timeout duration.

Question 35

Which statement about IP Masquerading in Cilium is correct?

A. Always applies SNAT to all traffic B. Applies SNAT with node IP for traffic from Pods to destinations outside the cluster C. Applies only to inbound traffic D. Works only with IPv6

Show Answer

Answer: B

IP Masquerading translates the source IP of traffic from Pods to external destinations to the node IP (SNAT). It is implemented in eBPF and is not applied to cluster-internal traffic.

Question 36

What is the LB-IPAM feature for LoadBalancer type services in Cilium?

A. Automatic cloud load balancer provisioning B. Cilium directly allocates IPs from a LoadBalancer IP pool C. DNS-based load balancing D. Ingress controller deployment

Show Answer

Answer: B

LB-IPAM (LoadBalancer IP Address Management) allows Cilium to allocate external IPs from a predefined IP pool for LoadBalancer type services, providing on-premises load balancer functionality similar to MetalLB.


Network Policy (Questions 37-52)

Question 37

What is a correct difference between CiliumNetworkPolicy and Kubernetes NetworkPolicy?

A. CiliumNetworkPolicy supports L7 policies B. Kubernetes NetworkPolicy provides more features C. CiliumNetworkPolicy only supports cluster scope D. They have exactly the same features

Show Answer

Answer: A

CiliumNetworkPolicy is a superset of Kubernetes NetworkPolicy, supporting additional features such as L7 (HTTP, gRPC, Kafka) policies, FQDN-based policies, and Identity-based policies.

Question 38

Where are L3/L4 network policies enforced in Cilium?

A. Envoy proxy B. eBPF programs (kernel level) C. iptables D. User space firewall

Show Answer

Answer: B

L3/L4 policies are enforced directly at the kernel level by eBPF programs attached at tc hook points. This enables high-performance policy enforcement without user space proxy overhead.

Question 39

How do FQDN-based network policies work in Cilium?

A. Periodically querying external DNS servers B. Cilium DNS proxy intercepts DNS responses to learn IP mappings and apply policies C. Referencing /etc/hosts files D. Implemented as a CoreDNS plugin

Show Answer

Answer: B

Cilium transparently intercepts DNS responses through its DNS proxy and learns FQDN-to-IP mappings. Based on this information, it updates BPF maps to enforce FQDN-based policies at the IP level.

Question 40

What traffic does the following CiliumNetworkPolicy allow?

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. Traffic from backend to frontend on port 8080 B. TCP traffic from frontend to backend on port 8080 C. Traffic from all Pods to backend D. All outbound traffic from backend

Show Answer

Answer: B

This policy selects endpoints with the app: backend label and allows ingress TCP traffic on port 8080 from endpoints with the app: frontend label.

Question 41

What is the purpose of CiliumClusterwideNetworkPolicy?

A. A policy that applies only to a specific namespace B. A network policy that applies across the entire cluster C. A policy applied to external clusters D. A DNS-only policy

Show Answer

Answer: B

CiliumClusterwideNetworkPolicy defines policies that apply across the entire cluster regardless of namespace. It is used for cluster-level default deny policies or common security rules.

Question 42

Which proxy is used when Cilium applies L7 network policies?

A. Nginx B. HAProxy C. Envoy D. Traefik

Show Answer

Answer: C

Cilium uses the Envoy proxy for L7 policy enforcement. It analyzes and filters L7 protocols such as HTTP, gRPC, and Kafka. Envoy runs as one instance per node.

Question 43

When is default deny behavior activated in Cilium network policies?

A. Automatically when Cilium is installed B. When at least one policy selecting a specific endpoint is applied C. Only when explicitly configured by an administrator D. By namespace labels

Show Answer

Answer: B

In Cilium, when a policy selecting a specific endpoint is applied, all traffic not explicitly allowed in that direction (ingress/egress) is denied.

Question 44

Which protocol is NOT supported in Cilium L7 policies?

A. HTTP B. gRPC C. Kafka D. MQTT

Show Answer

Answer: D

Cilium supports L7 policies for HTTP, gRPC, Kafka, DNS, and other protocols. MQTT is not natively supported by default.

Question 45

What is the purpose of Policy Audit Mode in Cilium?

A. Block and log policy-violating traffic B. Monitor policy-violating traffic without blocking it C. Automatically generate policies D. Optimize policy performance

Show Answer

Answer: B

In Policy Audit Mode, policy-violating traffic is not actually blocked but only logged. This allows you to assess the impact of policies before enforcing them.

Question 46

What is the purpose of CIDR-based egress rules in Cilium network policies?

A. Controlling Pod-to-Pod communication within the cluster B. Controlling egress traffic to specific external IP ranges C. Controlling DNS resolution D. Configuring Ingress controllers

Show Answer

Answer: B

CIDR-based egress rules are used to allow or deny outbound traffic from Pods to specific external IP ranges (e.g., 10.0.0.0/8).

Question 47

What does toEntities: world mean in Cilium?

A. All Pods in the same cluster B. All endpoints outside the cluster C. All endpoints not managed by Cilium D. DNS servers

Show Answer

Answer: B

The world entity represents all endpoints outside the cluster. Cilium provides predefined entities such as world, cluster, host, remote-node, and kube-apiserver.

Question 48

Given the following Cilium L7 policy example:

rules:
  http:
    - method: GET
      path: '/api/v1/users'

What traffic does this rule allow?

A. All HTTP traffic B. Only GET requests to the /api/v1/users path C. All HTTP methods to the /api/v1/users path D. Only POST requests

Show Answer

Answer: B

This L7 policy rule allows only HTTP GET requests to the /api/v1/users path. Other methods (POST, PUT, etc.) or other paths are denied.

Question 49

Where is Identity stored in Cilium's Identity-based policies?

A. Pod environment variables B. BPF maps and KVStore (CRD or etcd) C. ConfigMap D. Secret

Show Answer

Answer: B

Identity is stored in BPF maps for fast lookups in the datapath, and simultaneously stored in the KVStore (CRD or etcd) for cluster-wide sharing.

Question 50

How do you write policies that cross namespace boundaries in Cilium?

A. Directly specifying namespace names B. Using namespaceSelector to match namespace labels C. Always using CiliumClusterwideNetworkPolicy D. Adding iptables rules

Show Answer

Answer: B

In CiliumNetworkPolicy, including namespaceSelector in fromEndpoints or toEndpoints allows matching endpoints in other namespaces.

Question 51

What is the purpose of the toServices field in Cilium policies?

A. Defining egress policies targeting Kubernetes services B. Configuring service mesh C. Configuring service discovery D. Service monitoring

Show Answer

Answer: A

The toServices field defines egress policies based on Kubernetes service names and namespaces, enabling control of outbound traffic to specific services.

Question 52

What is the priority of deny rules in Cilium policies?

A. Always lower than allow rules B. Always higher than allow rules (deny takes precedence) C. By creation time D. By namespace alphabetical order

Show Answer

Answer: B

In Cilium, deny rules always take precedence over allow rules. If both allow and deny rules exist for the same traffic, that traffic is denied.


Service Mesh (Questions 53-64)

Question 53

What is the core principle of Cilium service mesh's sidecar-less architecture?

A. Injecting a sidecar container into each Pod B. One Envoy proxy per node with eBPF-based traffic redirection C. Integration with Istio sidecars D. Modifying application code

Show Answer

Answer: B

Cilium service mesh operates without sidecars, running a single shared Envoy proxy instance per node. It uses eBPF to transparently redirect only traffic that requires L7 policies to Envoy.

Question 54

What is the role of mTLS (Mutual TLS) in Cilium service mesh?

A. DNS encryption B. Mutual authentication and encryption of service-to-service communication C. Log encryption D. Storage encryption

Show Answer

Answer: B

mTLS enables both sides in service-to-service communication to verify each other's certificates and encrypt the communication. Cilium service mesh implements mTLS using SPIFFE-based Identity.

Question 55

Which is NOT an advantage of Cilium's sidecar-less service mesh?

A. Improved resource efficiency B. Reduced latency C. Independent Envoy configuration per Pod D. Reduced operational complexity

Show Answer

Answer: C

In sidecar-less mode, a single shared Envoy instance per node is used, so independent Envoy configuration per Pod is not possible. The benefits include resource efficiency, reduced latency, and reduced operational complexity.

Question 56

What is the purpose of the CiliumEnvoyConfig CRD?

A. Cilium Agent configuration B. Defining L7 traffic management rules for the Envoy proxy C. Hubble configuration D. BGP peer configuration

Show Answer

Answer: B

CiliumEnvoyConfig CRD allows defining Envoy proxy listeners, routes, clusters, and other L7 traffic management rules in a Kubernetes-native manner.

Question 57

What is included in Cilium service mesh's L7 traffic management capabilities?

A. Header-based routing B. GPU scheduling C. Storage provisioning D. Node autoscaling

Show Answer

Answer: A

Cilium service mesh L7 traffic management capabilities include header-based routing, URL path-based routing, traffic splitting (canary deployments), retries, timeouts, and more.

Question 58

What resource does Cilium use to provide Ingress controller functionality?

A. CiliumIngressController CRD B. Standard Kubernetes Ingress resources and CiliumEnvoyConfig C. Nginx ConfigMap D. Istio Gateway

Show Answer

Answer: B

Cilium provides a built-in Ingress controller that supports standard Kubernetes Ingress resources. Additional configuration is possible through CiliumEnvoyConfig.

Question 59

What does Gateway API support mean in Cilium service mesh?

A. Uses only proprietary APIs B. Natively supports Kubernetes Gateway API resources (Gateway, HTTPRoute, etc.) C. AWS API Gateway integration D. Automatic REST API generation

Show Answer

Answer: B

Cilium natively supports Kubernetes Gateway API (Gateway, HTTPRoute, GRPCRoute, TLSRoute, etc.) to provide standards-based traffic management.

Question 60

How are L4-level service mesh features (such as mTLS) implemented in Cilium?

A. Always through the Envoy proxy B. Directly in eBPF (without a proxy) C. Via iptables rules D. Via sidecar containers

Show Answer

Answer: B

Cilium can implement L4-level service mesh features (mTLS, load balancing, etc.) directly in eBPF. Traffic is only redirected to the Envoy proxy when L7 features are needed.

Question 61

What does a SPIFFE ID represent in Cilium's SPIFFE integration?

A. Pod IP address B. Cryptographic identifier of a workload C. Node hostname D. Namespace name

Show Answer

Answer: B

A SPIFFE ID is a URI-format cryptographic identifier that uniquely identifies a workload. Cilium uses SPIFFE to manage certificates used for mTLS authentication between workloads.

Question 62

How do you implement canary deployments in Cilium service mesh?

A. Adjusting Kubernetes Deployment replica count B. Setting weights on backendRefs in HTTPRoute C. DNS round-robin D. Manually changing Pod IPs

Show Answer

Answer: B

In Gateway API's HTTPRoute, you can set weights on backendRefs to split traffic proportionally, enabling canary deployments.

Question 63

Under what conditions is traffic redirected to Envoy in Cilium?

A. All traffic is always redirected B. Only traffic with L7 network policies applied C. Only TCP traffic D. Only UDP traffic

Show Answer

Answer: B

Cilium selectively redirects only traffic with L7 policies to the Envoy proxy. Traffic with only L3/L4 policies is processed directly in eBPF without proxy overhead.

Question 64

How do you configure retry policies in Cilium service mesh?

A. Implement in Pod application code B. Via CiliumEnvoyConfig or HTTPRoute retry settings C. Kubernetes livenessProbe D. sysctl parameters

Show Answer

Answer: B

Retry policies can be configured through CiliumEnvoyConfig or Gateway API HTTPRoute to leverage Envoy's retry capabilities. Retry count, timeout, and conditions can be finely tuned.


Observability (Questions 65-72)

Question 65

Which component in Hubble's architecture collects flow data on each node?

A. Hubble Relay B. Hubble UI C. Hubble embedded in the Cilium Agent D. Prometheus

Show Answer

Answer: C

Hubble runs embedded within the Cilium Agent on each node. It collects network flow events from the eBPF datapath into a ring buffer.

Question 66

What is the role of Hubble Relay?

A. Collecting flows from a single node B. Aggregating Hubble data from multiple nodes for cluster-wide observability C. DNS relay D. Load balancing

Show Answer

Answer: B

Hubble Relay connects to Hubble instances running on all cluster nodes and aggregates flow data, providing cluster-wide network observability.

Question 67

Which L7 protocol is NOT observable through Hubble?

A. HTTP B. DNS C. Kafka D. SMTP

Show Answer

Answer: D

Hubble can observe L7 protocol flows for HTTP, DNS, gRPC, and Kafka. SMTP is not natively supported by default.

Question 68

What is the command to view flows for a specific namespace in Hubble CLI?

A. hubble observe --namespace default B. hubble get flows --ns default C. hubble watch default D. hubble logs --namespace default

Show Answer

Answer: A

hubble observe --namespace default is used to observe network flows for a specific namespace in real time.

Question 69

What functionality does Hubble UI provide?

A. Service dependency topology map visualization B. Kubernetes resource YAML editing C. Container log viewer D. CI/CD pipeline management

Show Answer

Answer: A

Hubble UI visualizes service-to-service communication relationships as a topology map. It shows network flows in real time, allowing intuitive understanding of policy enforcement status and traffic flow.

Question 70

What information can be collected through Hubble's Prometheus metrics integration?

A. Flow counts, policy drop counts, HTTP request latency B. CPU usage C. Disk I/O D. Memory usage

Show Answer

Answer: A

Hubble provides network-related Prometheus metrics including network flow counts, policy drop counts, HTTP request/response latency, DNS query latency, and more.

Question 71

What is the command to view packets dropped by policies in Hubble?

A. hubble observe --verdict DROPPED B. hubble dropped-packets C. hubble observe --type drop D. hubble policy-violations

Show Answer

Answer: A

hubble observe --verdict DROPPED filters and displays traffic denied by network policies.

Question 72

What is the primary use of the Hubble gRPC API?

A. Pod scheduling B. Programmatic querying and streaming of flow data C. Kubernetes API server access D. Image registry management

Show Answer

Answer: B

The Hubble gRPC API allows external systems or custom tools to programmatically query and stream flow data.


Cluster Mesh and External Workloads (Questions 73-80)

Question 73

What is the core architectural component of Cilium ClusterMesh?

A. Centralized control plane B. Each cluster's etcd and clustermesh-apiserver C. Single shared etcd D. Consul

Show Answer

Answer: B

ClusterMesh has each cluster maintaining its own etcd while exposing information to other clusters through the clustermesh-apiserver. This is a fully distributed architecture with no single point of failure.

Question 74

What is a Global Service in ClusterMesh?

A. A service using the same IP across all clusters B. A service that distributes traffic across backends in multiple clusters under the same service name C. A service exposed to the external internet D. A DNS-only service

Show Answer

Answer: B

A Global Service has the same name and namespace across multiple clusters, with traffic distributed to backends in all clusters. It is enabled by the io.cilium/global-service: "true" annotation.

Question 75

How do you set service affinity to prefer the local cluster in ClusterMesh?

A. Add the io.cilium/service-affinity: "local" annotation to the service B. Change affinity-mode in ClusterMesh configuration C. Adjust DNS TTL D. Set BGP priority

Show Answer

Answer: A

Adding the io.cilium/service-affinity: "local" annotation to a service prioritizes local cluster backends, forwarding traffic to remote clusters only when no local backends are available.

Question 76

Why are cross-cluster network policies possible in ClusterMesh?

A. Only IP address-based policies are used B. Identities are synchronized across clusters enabling Identity-based policy enforcement C. A central firewall is used D. VPN tunnels are used

Show Answer

Answer: B

In ClusterMesh, Cilium Identities are synchronized across clusters. This enables label-based Identity policies to be applied to workloads in other clusters.

Question 77

What is the purpose of KVStoreMesh?

A. KVStore backup B. A caching layer to reduce KVStore load in large ClusterMesh environments C. KVStore encryption D. KVStore monitoring

Show Answer

Answer: B

KVStoreMesh caches remote cluster KVStore data locally in ClusterMesh, improving scalability in large multi-cluster environments.

Question 78

What does the Cilium External Workloads feature enable?

A. Installing Cilium Agent on external VMs or bare-metal servers to apply Kubernetes cluster network policies B. Managing external DNS servers C. Automatic cloud instance provisioning D. VPN server deployment

Show Answer

Answer: A

The External Workloads feature allows installing the Cilium Agent on VMs or bare-metal servers and joining them to the Kubernetes cluster, applying the same network policies and security Identities.

Question 79

Which is NOT a required prerequisite for setting up ClusterMesh?

A. Unique cluster ID for each cluster B. Non-overlapping Pod CIDRs between clusters C. All clusters must be on the same cloud provider D. Network connectivity between clusters

Show Answer

Answer: C

ClusterMesh is cloud provider agnostic. Required prerequisites are unique cluster IDs, non-overlapping Pod CIDRs, and network connectivity between clusters. It works across different cloud providers.

Question 80

What is the purpose of the CiliumBGPPeeringPolicy resource in Cilium BGP Control Plane (BGPCP)?

A. Running a BGP daemon inside Pods B. Declaratively defining BGP peering sessions and routes to advertise on nodes C. Automatic external BGP router deployment D. BGP traffic encryption

Show Answer

Answer: B

CiliumBGPPeeringPolicy is a Kubernetes resource that declaratively defines which nodes establish BGP peering sessions with which peers, and which routes (Pod CIDR, Service IPs, etc.) to advertise.


Summary

Domain Review

DomainQuestion RangeKey Topics
Architecture1-16eBPF verifier, Identity, Agent/Operator, BPF maps, XDP
Networking17-36CNI, routing modes, Maglev, DSR, BGP, LB-IPAM, WireGuard
Network Policy37-52CiliumNetworkPolicy, L3/L4/L7, FQDN, Identity, Deny precedence
Service Mesh53-64Sidecar-less, Envoy, mTLS, Gateway API, SPIFFE
Observability65-72Hubble, Relay, UI, Prometheus, gRPC API
Cluster Mesh73-80etcd, Global Service, KVStoreMesh, External Workloads, BGPCP

Study Tips

  1. Understand eBPF fundamentals: Verifier, BPF maps, program types (XDP, tc, socket) -- these concepts appear throughout the exam.
  2. Master the Identity-based security model: Understand the label-based Identity allocation and policy enforcement mechanism that differentiates Cilium.
  3. Hands-on practice: Use CLI tools like cilium status, cilium endpoint list, and hubble observe hands-on.
  4. Reference official documentation: The Concepts section of the Cilium official documentation aligns most closely with the exam scope.