Skip to content
Published on

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

Authors

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 섹션이 시험 범위와 가장 밀접합니다.