왜 분산 시스템은 "동의"하는 것만으로도 어려운가? FLP 불가능성 정리의 충격, Lamport의 Paxos와 그 이해 불가능성, Raft가 바꾼 판도, ZooKeeper의 ZAB, KRaft의 탄생, Byzantine Fault Tolerance, CRDT의 합의 없는 수렴 — 모든 분산 시스템의 진짜 심장을 파헤친다.
Kubernetes 내부 구조의 모든 것 — Google Borg에서 시작한 역사, etcd의 Raft consensus, API Server의 REST와 watch 프로토콜, scheduler의 filter/score 알고리즘, controller manager의 reconciliation loop, kubelet의 Pod lifecycle, CRI/CNI/CSI 플러그인 모델, kube-proxy의 service 구현, RBAC과 NetworkPolicy 보안 모델, sidecar-less와 eBPF 기반 모던 패턴까지 1,400줄로 정리한 클러스터 오케스트레이션 딥다이브.
kubectl apply 뒤에서 무슨 일이 일어나는가? API Server부터 etcd, Scheduler, Controller, kubelet까지 — Kubernetes의 모든 내부 구조를 720줄로 완전 분석한다. Informer 패턴, Reconciliation, Operator 개발까지 다룬다.
etcd, Consul, CockroachDB, TiDB가 모두 Raft를 쓰는 이유는 이해하기 쉽기 때문이다. Leader Election, Log Replication, Safety Property, Membership Change, Snapshot까지 — 실전 시스템 분석과 함께 700줄로 깊이 있게 파헤친다.
etcd와 Kubernetes API Server의 통합을 분석합니다. kube-apiserver의 etcd 사용 방식(storage backend, codec, transformer), 키 계층 구조(/registry/ prefix), API Server의 Watch Cache(cacher, watchCache), etcd 사이징, Encryption at rest 구성을 다룹니다.
분산 시스템에서 상호 배제를 보장하는 분산 락 구현 패턴을 비교합니다. Redis Redlock 알고리즘과 Martin Kleppmann의 비판, ZooKeeper 임시 순차 노드, etcd Lease 기반 락까지 정합성·가용성·성능 트레이드오프를 실전 코드와 장애 사례로 분석합니다.