Cloud & Edge 인프라/Cloud & Edge Computing

Edge Device에서 사용할 수 있는 OS 총정리

gksyb4235 2025. 11. 22. 21:21

Edge에서의 OS (Operating System)


엣지 컴퓨팅 디바이스는 경량·견고·실시간 처리 가능한 운영체제를 필요로 한다.
그 이유는 제한된 자원을 관리하면서 신뢰성 있는 통신, 로컬 처리, 디바이스 제어를 지원하기 위함이다.


1. Embedded Linux Distributions (임베디드 리눅스 배포판)

1. Yocto Project

대표적으로 임베디드 시스템용 커스텀 리눅스 빌드에 사용된다.

다음과 같은 특징이 있다.

  • 고도로 모듈화됨
  • 패키지 · 하드웨어 드라이버에 대한 세밀한 제어
  • 산업용 게이트वे, 자동차 ECU(Electronic Control Unit)에 사용

2. OpenWRT

대표적으로 라우터, IoT 게이트웨이와 같은 네트워크 장치에 사용된다.

다음과 같은 특징이 있다.

  • 웹 기반 + CLI 구성 지원
  • 풍부한 패키지 관리자(opkg)
  • Mesh 네트워크 지원 (B.A.T.M.A.N., 802.11s)

3. Ubuntu Core / BalenaOS

보안성과 컨테이너 친화성이 필요한 IoT 디바이스에 사용된다.

대표적은 특징은 다음과 같다.

  • Immutable(불변형) 시스템 이미지
  • Snap 및 컨테이너 기본 지원

※ B.A.T.M.A.N. = Better Approach To Mobile Ad-hoc Networking

 

기능 Yocto OpenWRT Ubuntu Core Balena OS
유형(Type) 빌드 시스템/메타 배포판 임베디드 리눅스 OS 경량 Linux 배포판 IoT용 컨테이너 기반 OS
목적(Purpose) 임베디드 장치용 커스텀 OS 네트워킹/라우터 보안 IoT & 엣지 장치 엣지에서 컨테이너 배포
커스터마이징 매우 높음 중간 (패키지 구성 기반) 중간 (Snap 기반) 중간 (Docker 기반)
사용 난이도 복잡함(빌드 도구 필요) 중간(웹 UI 제공) 쉬움 쉬움(클라우드 대시보드)
패키지 관리 BitBake opkg snap Docker
사용 예시 자동차, 산업 제어 가정용 라우터, Mesh 스마트 가전, 게이트웨이 IoT 플릿 관리
커뮤니티 지원 개발자 중심 강력한 오픈소스 커뮤니티 Canonical 지원 Balena 지원

 

 

 

 

RTOS (Real-Time Operating Systems)


1. FreeRTOS

대표적으로 8비트/32비트 MCU 기반 초저전력 장치에 사용된다.

특징은 아래와 같다.

  • 결정론적 작업 스케줄링
  • 10 KB 이하의 매우 작은 메모리 풋프린트
  • AWS IoT · BLE 스택과 통합 가능

2. Zephyr OS

대표적으로 보안 IoT 장치, 산업용 센서에 사용된다.

  • POSIX 유사 API 지원 (open/read/write/close 등)
  • ARM, RISC-V, x86 등 멀티 아키텍처 지원
  • 시큐어 부팅, OTA 업데이트, 디바이스 관리 지원

3. Mbed OS

  • ARM이 개발한 오픈소스 OS
  • ARM Cortex-M MCU용
  • 클라우드 통합 중심, 강력한 TLS 보안 스택
  • 배터리 기반 엔드포인트에 최적
  • OTA 업데이트, 원격 모니터링, 프로비저닝 지원
항목 FreeRTOS ZEphyr OS Mbed OS
개발자 Amazon Linux Foundation ARM
라이선스 MIT Apache 2.0 Apache 2.0
커널 RTOS RTOS 마이크로커널 CMSIS-RTOS 기반
언어 C C C/C++
메모리 풋프린트 6–15 KB 20–50 KB 128 KB+
멀티스레딩 기본(Tasks/Queue/Timer) Yes(POSIX-like) Yes
RTOS 기능 선점 스케줄러, 세마포어 Tickless idle, SMP Event-driven threading
보안 TrustZone, TLS Secure Boot, MPU TLS, Secure Sockets, Firmware Signing
연결성 MQTT, LwIP BLE, Zigbee(802.15.4), IPv6 Wi-Fi, BLE, Ethernet, LoRa
파일 시스템 FatFs(옵션) LittleFS, NVS, FAT LittleFS, FAT
대상 기기 8/16/32-bit MCU 32-bit MCU/SoC Cortex-M

 

 

이때 RTOS는 다음의 기준에 의해 선택될 수 있다.

사용 사례 최적 OS 이유
배터리 기반 센서 노드 FreeRTOS 초저전력 + 작은 풋프린트
산업 게이트웨이/모뎀 Zephyr OS CoAP, LwM2M 등 풍부한 프로토콜 + 강력한 보안
보안 중심 IoT Mbed OS 강력한 TLS + OTA 업데이트
실시간 제어(모터, 액추에이터) FreeRTOS 결정론적 RTOS, 빠른 인터럽트 처리
BLE Mesh/6LoWPAN/CoAP 노드 Zephyr OS 네이티브 Mesh + IPv6 지원

 

Security Notes

  • FreeRTOS: Secure boot/격리를 기본 제공 X → 확장 필요
  • Zephyr: Secure boot & Trusted firmware 강조
  • Mbed OS: TLS·Secure Storage 강화

 

 

Container Runtime at the Edge (엣지에서의 컨테이너 런타임)


기술 주요 특징 사용 사례
Docker 가장 인기, OCI 준수, 풍부한 생태계. (생산용 엣지에는 권장 X → 테스트 용) 라즈베리파이, AI 추론, IoT 게이트웨이
Podman 데몬리스, 루트리스, 보안 우선 산업용 보안 엣지 환경
containerd 경량·빠름, Kubernetes-native 엣지 Kubernetes 클러스터
CRI-O Kubernetes 특화, 보안 중심, 최소 풋프린트 Red Hat 기반 엣지
LXC/LXD 시스템 컨테이너, VM 수준 격리 멀티테넌트 엣지 플랫폼

 

1. Container Orchestration at the Edge

K3s

  • 경량 Kubernetes (단일 바이너리)
  • ARM 지원, resource footprint 낮음
  • 엣지용 경량·Production-ready
  • 사용 사례: 스마트 팩토리, 자율주행, IoT 게이트웨이
  • 런타임: containerd(기본)

Kind

  • Docker 내부에서 Kubernetes 실행
  • 테스트/CI/CD 용
  • Production Edge에는 부적합
  • 런타임: Docker

MicroK8s

  • Canonical의 Minimal Kubernetes
  • Snap 기반 설치, 클러스터링 쉬움
  • GPU 친화적, HA(Dqlite) 자동
  • 사용 사례: 산업 IoT, 스마트 시티, 헬스케어 엣지
  • 런타임: containerd

KubeEdge

  • Kubernetes의 엣지 확장판
  • 오프라인 상태에서도 자율 운영
  • 장치 관리, MQTT/HTTP 빌트인
  • IoT/농업/실시간 분석에 최적
  • 런타임: containerd

 


 

2. Deployment Considerations (배포 시 고려사항)

RTOS vs Embedded Linux

  • RTOS: 밀리초 단위 결정론적 제어 필요할 때 (로봇 액추에이터 등)
  • Linux: 엣지 AI, 게이트웨이, 네트워크 스택이 필요한 경우

Containers vs Bare-metal

  • Containers: 모듈식 업데이트, 버전 롤백, 패키징 편리
  • Bare-metal: 오버헤드 최소화, 고성능 환경에 유리