50% 할인 모든 플랜, 기간 한정. 시작 가격 $2.48/mo
etcd

etcd

etcd는 분산 키-값 저장소입니다. Kubernetes, Consul, CoreOS의 핵심 구성 요소로, Raft 프로토콜을 통해 여러 머신 간 안정적인 합의를 보장하도록 설계되었습니다. Go로 작성된 오픈소스 프로젝트이며, 서비스 디스커버리와 분산 설정 관리의 표준 선택지입니다.

버전

v3.6.9

운영 체제

Ubuntu Server 24.04 LTS

최소 RAM

1 GB

IP 유형

IPV4,IPV6

서비스 개요

  • 시스템 사용자 etcd
  • 기본 노드 이름: 자동 생성 etcd-<timestamp>
  • 구성 파일: /etc/etcd/etcd.yml
  • 데이터 디렉토리: /var/lib/etcd
  • 이진 파일: /usr/local/bin/etcd, /usr/local/bin/etcdctl, 그리고 /usr/local/bin/etcdutl
  • 로그 레벨: debug

네트워크 및 포트

  • 클라이언트 트래픽: http://localhost:2379
  • 피어 트래픽: http://localhost:2380
  • 기본값: localhost에만 바인딩 (로컬 접근 전용)

Systemd 관리

systemctl status etcd         # Check status
systemctl restart etcd        # Start service
systemctl stop etcd           # Stop service
systemctl restart etcd        # Restart service

기본 명령어

# Check etcd server version
etcd --version

# Check etcdctl client version
etcdctl version

# Check etcdutl version
etcdutl version

# Set a key
etcdctl put mykey "HelloEtcd"

# Get a key
etcdctl get mykey

# List all keys with values
etcdctl get "" --prefix

# List only key names
etcdctl get "" --prefix --keys-only

# Delete a key
etcdctl del mykey

# Check cluster health
etcdctl endpoint health

# List cluster members
etcdctl --endpoints=http://127.0.0.1:2379 member list

# Show cluster leader
etcdctl endpoint status --write-out=table

# Watch a key for changes
etcdctl watch mykey

백업 및 복원

스냅샷 백업 (현재 etcd 상태를 파일로 저장):

etcdctl snapshot save /root/etcd-backup.db

스냅샷 상태 확인:

etcdutl snapshot status /root/etcd-backup.db -w table

충돌 방지를 위해 etcd 서비스 중지:

systemctl stop etcd

데이터 디렉터리의 기존 내용 삭제:

rm -rf /var/lib/etcd/*

스냅샷 복원:

etcdutl snapshot restore /root/etcd-backup.db --data-dir /var/lib/etcd

권한 설정 확인:

chown -R etcd:etcd /var/lib/etcd

etcd 서비스 재시작:

systemctl start etcd

메모

  • 기본값은 단일 노드 클러스터로, 개발 및 테스트 환경에 적합합니다.
  • 디버그 로그 레벨로 설정됩니다.
  • 운영 환경에서는 클라이언트 및 피어 통신에 TLS를 활성화하세요.
  • 고가용성을 위해 멀티 노드 클러스터 구성을 고려하세요.
  • 방화벽 규칙을 통해 포트 2379(클라이언트)와 2380(피어)를 신뢰할 수 있는 호스트로만 제한하세요.
  • 수정 /etc/etcd/etcd.yml 고급 설정은 다음 파일을 수정하고 etcd 서비스를 재시작하여 변경 사항을 적용하세요.
  • 삭제/복원/압축 등 되돌리기 어려운 작업을 수행하기 전에 반드시 데이터를 백업하세요.
  • 확인하다 /var/lib/etcd 소유하고 있습니다 etcd:etcd; 권한 설정이 잘못되면 복원 또는 데이터 변경 후 etcd가 시작되지 않을 수 있습니다.

데이터베이스 도구 더 보기

관련 앱.

지금 etcd를 배포하세요. 월 $2.48부터.