KubeSolo - IoT·엣지에 최적화된 초경량, 단일 노드 Kubernetes
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
DevOps
대상자
- *개발자 및 DevOps 엔지니어**
- 리소스 제한된 IoT/엣지 장치에서 Kubernetes 운영이 필요한 분야
- 초보자~중급자 대상: 경량화된 아키텍처 이해 및 적용 가능
핵심 요약
- 초경량 단일 노드 Kubernetes : 리소스 제한된 환경 최적화
- SQLite 기반 Storage :
Kine
을 통해 etcd 대체 (코드:SQLite
) - 락프리·멀티프로세스 아키텍처 :
NodeSetter
커스텀 Webhook으로 Scheduler 대체
섹션별 세부 요약
1. **초경량 단일 노드 특징**
- 단일 바이너리 배포로 외부 의존성 최소화
- 컨테이너 런타임:
containerd
&runc
, DNS:CoreDNS
내장 - 오프라인 운영 가능: 인터넷 연결 없이도 모든 기능 사용 가능
2. **엣지 장치 최적화**
- K3s, MicroK8s 등 FOG 레이어용 배포판과 차별화
- 엣지(Edge) 장치에 특화, 클러스터 기능 없음 (etcd 미포함)
- 모든 Linux 배포판 (ARM, ARM64, x86_64)에서 동작
3. **기술적 구현 방식**
Kine
을 통해 SQLite를 Storage로 사용 (코드:SQLite
)NodeSetter
Webhook으로 Kubernetes Scheduler 대체- K3s 기반 fork로 upstream과 호환성 유지
결론
- 엣지/임베디드 장치에서 오프라인 및 리소스 제한 환경에서 사용 가능
SQLite
기반 Storage와NodeSetter
Webhook 활용으로 단일 노드 최적화- K3s fork 기반으로 빠른 업데이트 및 유지보수 가능