🎓CNCF로부터 졸업한 KubeEdge
2024년 10월, KubeEdge라는 엣지 컴퓨팅(Edge Computing) 오픈소스 프로젝트가 졸업(Graduated) 단계가 되었다고 CNCF가 밝혔습니다.
클라우드 네이티브 소프트웨어 생태계 발전을 위해 설립된 CNCF(Cloud Native Computing Foundation)는 오픈소스 클라우드 네이티브 프로젝트를 육성하고 유지하기 위해 다양한 프로젝트를 관리하고 있는데요.
CNCF에서 관리하는 프로젝트들은 성숙도에 따라 샌드박스(Sandbox), 인큐베이팅(Incubating), 졸업(Graduated) 단계를 부여받습니다.
프로젝트가 졸업 단계에 돌입했다는 것은, 충분히 성숙하여 실제 운영환경에 해당 프로젝트를 안정적으로 적용할 수 있음을 의미하는데요.
Kubernetes, Argo CD, Helm, Prometheus 등 우리에게 익숙한 여러 클라우드 네이티브 프로젝트가 이미 CNCF의 졸업 단계를 거쳤답니다.
☁️KubeEdge는 어떤 프로젝트?
그렇다면 이번에 CNCF에서 졸업한 KubeEdge는 어떤 프로젝트일까요?
위에서 KubeEdge는 오픈소스 엣지 컴퓨팅 프로젝트라고 잠깐 언급했었는데요. 엣지 컴퓨팅이란, 데이터를 생성한 위치와 가까운 곳(또는 가장자리라고 해서 Edge라는 단어가 붙습니다.)에서 처리, 분석 및 저장하는 기술을 말합니다.
예를 들면, 자율 주행 차량에 설치된 다양한 IoT 센서가 실시간으로 수집하는 수많은 데이터를 즉각적으로 처리할 수 있도록 엣지 컴퓨팅 기술을 사용할 수 있는데요. 수집한 데이터를 처리하기 위해 중앙 데이터 센터로 전송하던 기존의 방식보다 대기 시간과 통신 비용이 대폭 줄어든다는 장점이 있습니다.
KubeEdge는 이런 엣지 컴퓨팅 기술을 Kubernetes 기반에서 구현할 수 있도록 도와주는 프로젝트입니다. 컨테이너에서 동작하는 애플리케이션을 디바이스(Edge) 내에 배포해서 사용할 수 있는 것인데요. KubeEdge는 클라우드와 엣지 환경으로 구분되어, 관리자가 클라우드와 연결된 Kubernetes API Server를 이용하여 중앙 집중형 관리가 가능합니다.
KubeEdge를 사용해서 얻을 수 있는 또 다른 이점은 아래와 같습니다.
개발 간소화
개발자는 쉽게 접할 수 있는 HTTP 또는 MQTT 기반으로 애플리케이션을 개발하고 이를 클라우드나 엣지 환경 중 원하는 곳에 동작시킬 수 있습니다.
네이티브한 Kubernetes 지원
KubeEdge를 사용하면 애플리케이션 배포, 노드(디바이스) 관리, 모니터링과 같은 활동을 기존의 Kubernetes 환경과 동일하게 수행 가능합니다.
배포 간소화
이미 Kubernetes 상에서 배포되어 동작하던 리소스는 엣지 환경에서도 쉽게 재배포가 가능합니다.
❕KubeEdge CNCF 졸업의 시사점
KubeEdge 프로젝트는 2018년 화웨이 클라우드에서 오픈소스로 공개되었고, 2019년에 CNCF에서 첫 번째 클라우드 네이티브 엣지 컴퓨팅 프로젝트로서 샌드박스 단계로 합류했는데요. 2020년 인큐베이팅 단계, 그리고 올해 졸업 단계를 거치면서 110여개의 조직의 컨트리뷰션을 받아왔습니다.
CNCF는 KubeEdge가 스마트 에너지, 자동차, 물류, 블록체인, 위성 시스템 분야까지 폭넓게 적용되었다고 언급했는데요.
Kubernetes 기반 엣지 컴퓨팅 프로젝트인 KubeEdge가 CNCF의 공식 졸업 단계를 거침으로써, 앞으로 Kubernetes의 적용 범위는 더 큰 폭으로 확장될 것으로 예상됩니다.