| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Monitoring
- Kafka
- fork()
- 분산시스템
- Pub/Sub
- Kubernetes
- 운영체제
- OS
- 개발
- 커널
- 엘라스틱서치
- 인프라
- 쿠버네티스
- 데이터엔지니어
- Network
- SRE
- 개발자
- elasticsearch
- AWS
- 대규모시스템
- etcd
- 시스템호출
- it
- k8s
- devsecops
- Data Engineering
- Observability
- 코테
- tech
- 스프링빈
- Today
- Total
모래성 말고 철옹성
[Firecracker] Lambda, Fargate는 어떤 기술로 만들어졌을까? 본문

Firecracker가 탄생한 히스토리
AWS는 처음에 Lambda 서비스를 만들면서 고객별로 전용 서버를 할당해 안전하게 운영했습니다. 하지만 이 방식은 무겁고 관리가 어려운 문제점이 있었습니다. 서버리스와 컨테이너 사용이 급격히 늘어나면서, 더 빠르고 가볍고 효율적인 가상 머신 기술이 필요해졌습니다.
그래서 AWS는 Firecracker를 개발했습니다. Firecracker는 아주 작고 빠른 가상 머신으로, 한 서버에 수천 개를 동시에 띄워도 안전하고 효율적으로 운영할 수 있도록 설계되었습니다. 덕분에 Lambda와 Fargate 같은 서비스가 더 빠르고 효율적으로 동작할 수 있게 되었습니다.
개요
Firecracker는 MicroVM을 빠르고 안전하게 만드는 기술
- Firecracker의 중요한 구성요소는 가상 컴퓨터를 만들고 관리하는 프로그램인 VMM(Virtual Machine Monitor)이고, 이건 리눅스의 KVM(Kernel Virtual Machine)을 이용하여 microVM을 구성함
- 필요 없는 기능이나 장치는 빼서 메모리를 적게 사용하고, 보안도 강화된 형태. 그래서 기동이 빠르고 하드웨어 자원도 효율적 이용 가능
- Firecracker는 Kata Containers나 Flintlock 같은 컨테이너 프로그램과도 함께 사용 가능
- 원래 AWS에서 서버리스 서비스 Lambda와 컨테이너 서비스 Fargate를 더 빠르고 효율적으로 만들려고 개발한 오픈소스
장점
강화된 보안
- 기존 VM보다 강화된 보안 제공함으로써 서로 다른 고객의 작업을 같은 하드웨어에서 안전하게 실행 가능
- 필수 기능만을 구성해 공격 가능한 영역을 줄여 안정성 강화
속도
- 가볍고 단순하게 설계되어 기동이 빠름
- 0.125초 안에 실행할 수 있고 한 호스트에서 초당 150개의 microVM을 생성할 수 있다
효율성
- 5MiB 미만의 메모리만을 사용해, 한 서버에 많은 수의 microVM을 배치
- microVM에 rate limiter(속도 제한)기능을 내장해, 수천 개 microVM이 있어도 네트워크와 저장장치 자원을 효과적으로 공유할 수 있게 함
동작 방법

Firecracker는 컴퓨터 안에서 작은 가상 컴퓨터(마이크로VM)를 아주 빠르고 가볍게 만드는 기술로 앞서 봤듯이 아래와 같은 장점들이 있다.
- 적은 메모리 사용과 빠른 동작으로, 한 대의 서버에 수백개의 microVM을 올릴 수 있다
- 최소한의 기능 탑재로 보안적으로 노출되는 범위가 적어 안전하다
- 수백개의 microVM이 있지만 속도 제한을 컨트롤 하여, 네트워크와 저장장치를 효율적 사용이 가능하다
기존에 쓰이던 QEMU라는 가상 컴퓨팅 기술과 비슷하지만, 더 빠르고 가볍게 만들 수 있는 기술이다.
Firecracker 프로세스는 RESTful API를 통해 제어할 수 있으며, 이 API로 vCPU 수 설정이나 가상머신 시작 같은 작업도 가능하다. 마지막으로, 'jailer'라는 프로그램이 가상 컴퓨터를 더 안전하게 보호해 주는데, 만약 가상화 장치가 뚫려도 한 번 더 막아주는 역할을 합니다.
쉽게 말하면, Firecracker는 ‘가상 컴퓨터를 만들고, 조절하고, 안전하게 지키는 여러 가지 도구와 방법’을 함께 제공하는 기술이다.
'DevOps > Infra' 카테고리의 다른 글
| [AWS] EKS에서 Control Plane과 Data Plane의 통신 (0) | 2026.01.24 |
|---|---|
| [AWS] AWS의 Elastic Load Balancer(ELB) 톺아보기 (0) | 2026.01.10 |
