Cilium CNI 를 알아보기 전에 Cilium의 근간이 되는 eBPF를 정리해 보았습니다.
https://ebpf.io/ 가 공식 사이트이고 메인페이지에 아래와 같은 그림으로 eBPF 기술을 요약하고 있습니다.

위 그림을 분석해 보면
왼쪽의 "USE CASES" 박스를 보면
- Networking
- Security
- Observability
가 있습니다. eBPF 기술을 이용하면 커널스페이스에서 안전하게 커널의 기능을 확장할 수 있기 때문에 위의 UseCase에 대한 기능을 사용자정의하여 다양하게 확장할 수 있습니다.
중앙에 있는 Userspace의 어플리케이션은 Tracing, Profiling, Monitoring 박스로 그려져 있습니다.
여기에서 어플리케이션은 일반 SI 시스템의 어플리케이션이기 보다는 시스템 전체 레벨에서 Traing, Profiling, Monitoring을 제어하기 위한 어플리케이션으로 해석할 수 있습니다.
오른쪽의 Kernelspace 에는 " Kernel Runtime" 의 큰 BOX 안에 4개의 구성요소가 포함되어 있는데, 일종의 격리된 VM 이라고 생각할 수 있습니다.
- Verifier & JIT
- Helper API
- Maps
- OS Runtime
eBPF 프로그램은 Kernel에서 Verifier를 통과하여 안전하다고 여겨지면, JIT 컴파일되어 Machine Code로 바뀌어 실행되기 때문에 CPU 아키텍처(x86_64, ARM)에 영향을 받지 않고 실행될 수 있습니다.
한문장으로 eBPF 기술은 아래와 같이 요약할 수 있습니다.
커널 내부에 존재하는, 샌드박스 환경의 가상 머신에서 실행되는, 이벤트 기반 프로그램

eBPF 기술을 이해하기 위해서는 아래 2곳의 링크를 둘러보시는것을 추천드립니다.
1. eBPF 개념을 짧게 정리
What is eBPF? An Introduction and Deep Dive into the eBPF Technology
A detailed step by step introduction to the eBPF technology with lots of references for further reading.
ebpf.io
2. eBPF를 심도 있게 학습
eBPF는 하루 아침에 성숙된 기술은 아닙니다.
수많은 개발자들의 기여로 지금에 이르렇습니다. 그 중에서 Isovalent 의 Liz Rice는 eBPF 기술 확산을 위한 책 "Learning eBPF"를 무료로 실습 환경까지 제공하고 있습니다.
아래는 위의 책을 정리한 PDF 이니, 책과 함께 학습하시면 도움이 될꺼라 생각됩니다.
'Kubernetes' 카테고리의 다른 글
| Cilium Study [1기] (3주차) - Networking - 노드에 파드들간 통신 상세 1 (0) | 2025.07.28 |
|---|---|
| Cilium Study [1기] (2주차) - Observability (3) | 2025.07.26 |
| AEWS [3기] 12주차 - Amazon VPC Lattice for Amazon EKS (0) | 2025.04.26 |
| AEWS [3기] 10주차 - K8S 시크릿 관리 (0) | 2025.04.10 |
| AEWS [3기] 9주차 - EKS Upgrade (1) | 2025.04.01 |