Certified Kubernetes Administration - 3
2024-06-19
- Kubernetes
- Cloud
Key-Value Store와 전통적인 데이터베이스의 차이
-
전통적 데이터베이스:
-
SQL 또는 관계형 데이터베이스
-
행과 열로 구성된 테이블 형태로 데이터 저장
-
새 정보 추가 시 전체 테이블에 영향을 주며, 빈 셀이 많이 생김
-
-
Key-Value Store:
-
각 개체가 문서 또는 페이지 형태로 저장됨
-
개체마다 독립적인 파일로 정보 저장
-
다른 파일에 영향을 주지 않고 정보 추가 가능
-
JSON 또는 YAML 형식으로 복잡한 데이터 저장 가능
-
ETCD란?
-
분산형, 신뢰성 있는 Key-Value Store
-
단순하고, 안전하며, 빠름
-
분산 시스템, 클러스터 모드, RAFT 프로토콜, 노드 수에 대한 최적 실습에 대해 후속 강의에서 다룰 예정
ETCD 설치 및 기본 사용 방법
-
설치:
-
GitHub Releases 페이지에서 운영체제에 맞는 바이너리 다운로드 후 추출
-
ETCD 실행 파일 실행
-
기본 포트 2379에서 서비스 시작
-
-
기본 클라이언트 도구:
-
ETCDCTL: ETCD용 명령줄 클라이언트
-
키-값 저장:
./etcdctl set key1 value1
-
값 조회:
./etcdctl get key1
-
추가 옵션 확인:
etcdctl
명령어 실행
-
ETCD 버전 및 API 변화
-
버전 역사:
-
v0.1: 2013년 8월 출시
-
v2.0: 2015년 2월 출시, RAFT 합의 알고리즘 재설계, 초당 10,000개 이상의 쓰기 지원
-
v3.0: 2017년 1월 출시, 최적화 및 성능 개선
-
2018년 11월: CNCF에 프로젝트 인큐베이션
-
-
API 버전 변화:
-
v2.0과 v3.0 간 API 버전 변경
-
ETCDCTL 명령어도 이에 따라 변경
-
ETCDCTL 명령어 사용
-
버전 확인:
etcdctl version
명령어로 ETCDCTL 및 API 버전 확인- ETCDCTL 유틸리티 버전과 설정된 API 버전 확인 가능
-
API 버전 변경:
-
API v3.0으로 변경: 환경 변수 설정 필요 (
ETCDCTL_API=3
) -
전체 세션에 대해 설정:
export ETCDCTL_API=3
명령어 사용
-
-
명령어 예시:
-
API v2.0:
-
값 저장:
./etcdctl set key1 value1
-
값 조회:
./etcdctl get key1
-
-
API v3.0:
-
값 저장:
./etcdctl put key1 value1
-
값 조회:
./etcdctl get key1
-
-
Certified ...
Certified ...