2025-09-23
1일 1아티클
데보션
k0s
배경
- k8s는 컨테이너 오케스트레이션의 표준인 동시에, 이면에는 기술적 복잡성을 가짐
k0s
- 핵심 철학
- 단순함 : 설정 복잡성 제거
- 경량화 : 불필요한 컴포넌트 제거
- 유연성 : 다양한 환경에서도 동일한 동작
- 업스트림 호환성 : 순수 쿠버네티스 기능 제공
- 특징
- 단일 바이너리 배포 : 모든 쿠버네티스 컴포넌트가 하나의 실행 파일에 포함
- 설치 시 별도의 패키지 관리자나 복잡한 의존성 해결 불필요
- 배포 및 업그레이드 간편화
- 버전 관리 및 롤백 용이
- 자동화된 구성 요소
- containerd 컨테이너 런타임
- Calico CNI 플러그인
- 기본 스토리지 클래스
- 단일 바이너리 배포 : 모든 쿠버네티스 컴포넌트가 하나의 실행 파일에 포함
- 한계
- 세밀한 커스터마이징 어려움
- 엔터프라이즈 기능 부족
- 운영 도구 생태계 제한
- 사용 이유
- 빠른 프로토타이핑 및 학습
- 개발 환경 구축, 쿠버네티스 학습, 프로토타이밍 속도 이점
- 엣지 컴퓨팅, 리소스 제한 환경
- IoT, 개발자 노트북 등 제한된 리소스 환경에서 유용
- 단순함
- 시간 절약, 실수 방지, 유지보수성
- 점진적 학습 경로
- k0s를 통한 기본 개념 학습 → k0s 한계 경험 및 고급 기능 필요성 인식 → kubeadm 전환으로 세밀한 제어 학습
- 빠른 프로토타이핑 및 학습
구축 방법
- k0s 설치
- 컨트롤러 설치 및 시작
- kubectl 설정
- 클러스터 확인
제거 방법
- k0s 리셋
- k0s 바이너리 제거
- kubeconfig 제거
- 시스템 재부팅
멀티 노드 클러스터 구성
- k0sctl 설치
- 설정 파일 생성 (
k0sctl.yaml) - 설정 편집 (호스트 정보 입력)
- 클러스터 배포
제거 방법
- k0s 리셋
- k0s 바이너리 제거
- kubeconfig 제거
- 시스템 재부팅
오늘 배운 것
- JSP, MVC
- 바이브 프로젝트
- 프로젝트 init
- PRD 작성
- 회의
내일 할 일
- EL JSTL
- 바이브 프로젝트 후속작업