모래성 말고 철옹성

[1분 쿠버네티스] etcd: Kubernetes의 심장을 지탱하는 분산 키-값 저장소 본문

DevOps/쿠버네티스

[1분 쿠버네티스] etcd: Kubernetes의 심장을 지탱하는 분산 키-값 저장소

JDhyeok 2025. 8. 14. 00:51

etcd란? 

분산 환경에서 데이터를 안정적으로 저장하는 강한 일관성(Strong Consistency) 기반의 키-값 저장소이다.

주요 특징으로는

  • 리더 선출 자동 처리 - 네트워크 분할 상황에서도 안정적으로 리더 선출
  • 고가용성 - 리더 노드 장 시 데이터와 서비스 지속 가능
  • 분산 시스템 필수 구성요소 - k8s같은 클러스터 환경에서 핵심 메타데이터 저장소로 사용

etcd 주요 기능

  • 간단한 인터페이스
    • curl 같은 HTTP 도구로 값 읽기/쓰기 가능
  • key-value 저장
    • 표준 파일 시스템처럼 계층적 디렉토리 구조 지원
  • 변경 감지
    • 특정 키, 디렉터리 변경 시 감지하고 반응
  • 보안 기능
    • 선택적 SSL 클라이언트 인증서 지원
  • 고성능
    • 인스턴스당 초당 수천 건의 쓰기 처리 가능
  • TTL 지원
    • 특정 키에 만료 시간 부여 가능
  • 분산 합의
    • Raft 프로토콜 기반으로 데이터 무결서으 일관성 보장

Kubernetes에서 etcd  역할

K8S는 클러스터 상태정보를 전부 etcd에 저장합니다.

  • 노드 정보: 어떤 노드랑 클러스터링 되어있는지, 리소스 상태 등
  • Pod 스케줄링 정보: 어떤 Pod가 어떤 노드에 있는지
  • ConfigMap, Secrets: 설정 값과 민감정보 저장
  • Service & Endpoint: 네트워크 라우팅 정보

etcd의 데이터가 손실 시 k8s는 클러스터 상태정보도 없어지고, API서버 동작도 불능상태가 됩니다.

 

따라서 etcd는 매우 중요하며 백업&복구 전략이 필수적입니다.

 

참조.

https://etcd.io/

 

etcd

A distributed, reliable key-value store for the most critical data of a distributed system Learn more Quickstart What is etcd? etcd is a strongly consistent, distributed key-value store that provides a reliable way to store data that needs to be accessed b

etcd.io

https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/

 

Operating etcd clusters for Kubernetes

etcd is a consistent and highly-available key value store used as Kubernetes' backing store for all cluster data. If your Kubernetes cluster uses etcd as its backing store, make sure you have a back up plan for the data. You can find in-depth information a

kubernetes.io

 

반응형
Comments