클라우드 네이티브 환경에서 네트워킹 및 보안을 위한 eBPF 기술 동향
eBPF Technology Trends for Networking and Security in Cloud-native
신용윤 (Y.Y. Shin, uni2u@etri.re.kr) 네트워크·시스템보안연구실 선임기술원
신지수 (J.S. Shin, jsshin@etri.re.kr) 네트워크·시스템보안연구실 선임연구원
박철희 (C.H. Park, chpark0528@etri.re.kr) 네트워크·시스템보안연구실 연구원
박종근 (J.G. Park, queue@etri.re.kr) 네트워크·시스템보안연구실 책임연구원
ABSTRACT
In a situation where applications determine business competitiveness, they cannot respond to varying customer requirements without the cloud's flexibility and scalability. Companies have begun seeking ways to enjoy the advantages of the cloud fully, and the concept of “Cloud Native” is emerging as a solution to the problem. Cloud Native is now a target of interest in the market. Microservice and serverless functions can play a vital role in cloud- native architecture. Microservice arranges applications into various independent services, each offering certain functionality through mutual networking. eBPF is attracting attention as a cloud-native networking solution that quickly supports microservice features that repeat creation/deletion. This study identifies the characteristics of eBPF-based networking and evaluates cloud-native networking and secure networking using eBPF.
KEYWORDS cilium, cloud-native, eBPF, kubernetes
Ⅰ. 서론
클라우드 네이티브 아키텍처(Cloud Native Archi- tecture)는 클라우드 장점을 최대화하여 활용할 수 있 도록 응용(Application)을
구축하고 실행하는 방법론 을 의미하는 것으로 CNCF(Cloud Native Computing Foundation)에서 정의한 개념이다. 즉, 설계부터
클라우드 환경에 최적화된 응용 아키텍처를 구성하여 클라우드에 대한 종속을 제거하는 것이 주요 내용 이다.
CNCF는 그림 1과 같이 189개국 142,000명 이 상의 컨트리뷰터(Contributors)가 쿠버네티스(Kuber netes, K8s)로 대표되는
오케스트레이터(Orchestrator) 부터 CI/CD까지 클라우드 네이티브 전 영역에 걸 친 120여 개의 세부 프로젝트에 참여[1]하고 있으 며,
필요한 프로젝트를 활용하여 목적에 맞는 클라 우드 네이티브(Cloud Native) 환경을 구성할 수 있다 [2].
CNCF는 클라우드 네이티브의 핵심요소로 1) DevOps, 2) CI/CD, 3) Containers, 4) Microservice를 제안하고 있다. 특히,
최근 관련 시장을 주도하고 있 는 마이크로서비스 아키텍처는 클라우드 네이티브 의 가장 중요한 요소로서, 응용을 상호 독립적인 최소
구성 요소로 분할하고 독립적인 요소들이 연동 되어 같은 태스크(Task)를 완수할 수 있도록 하는 것 으로 클라우드 네이티브의 핵심요소
중 하나인 컨테이너를 통해 제공된다. 클라우드 네이티브 아키 텍처의 시스템 수평 확장 유연성, 서비스 통합/배 포/생성 시간 단축,
서비스 간 종속성 최소화를 통 한 장애 격리와 같은 장점을 기반하여 개발 생산성, 비즈니스 민첩성/확장성/가용성, 비용 절감 등의
효과를 높일 수 있기 때문에 주목받고 있다.