반응형
Consul KV와 Vault KV의 설계 목적과 사용 사례
1. 기본 개념 차이
Vault KV(Key-Value)
- 보안에 중점 : 암호화, 접근 제어, 시크릿 관리가 주 목적
- 동적 시크릿 : 임시 자격 증명 생성 가능
- 감사 로그 : 모든 접근 기록 보관
- 리스크 관리 도구
Consul KV(Key-Value)
- 구성 관리에 중점 : 애플리케이션 설정, 서비스 디스커버리, 기능 플래그 관리
- 분산 시스템 코디네이션 : 서비스 메시, 건강 검사
- 고가용성 데이터 저장 : 분산 아키텍처 지원
- 인프라 관리 도구
2. 암호화 방식
Vault KV - 자동 암호화
vault kv put secret/my-app password="s3cr3t"
Consul KV - 평문 저장(옵션으로 암호화 가능)
consul kv put app/config password="s3cr3t"
3. 데이터 모델 비교
| 항목 | Consul KV | Vault KV |
| 목적 | 일반 설정/서비스 정보 저장 | 암호화된 비밀(Secrets) 저장 |
| 보안 | 암호화 없음(데이터센터 내부 트래픽은 TLS 설정 가능) | 자동 암호화 / 접근 정책(ACL) / 감사 로그 |
| 사용 예 | 서비스 설정값, 플래그, 간단한 구성 데이터 | 패스워드, API 키, 인증정보 |
| 접근 제어 | Consul ACL 가능하지만 Vault만큼 강력하지 않음 | Vault 정책(policy)로 강력 제어 |
| 버전관리 | 버전 없음 | KV-v2는 Secret Version 지원 |
| 저장 장소 | 자체 Consul 클러스터 내부 | Consul, Raft, DynamoDB 등 Backend |
| 사용 대상 | Consul Service Mesh, 구성 시스템 | 애플리케이션의 Secrets |
728x90
4. 사용 예시
Consul KV
Consul의 일반적인 키/값 저장소.
Consul은 기본적으로 "구성 데이터" 저장용이라 암호화를 하지 않음.(Vault의 Encrypt-then-store 구조 없음)
consul kv put config/myapp/debug true
Success! Data written to: config/myapp/debug
consul kv get config/myapp/debug
true
브라우저 접근
http://localhost:8500/ui/dc1/kv/config/myapp/debug/edit

consul kv delete config/myapp/debug
Success! Deleted key: config/myapp/debug
Vault KV
Vault에서 비밀을 저장하는 명령.
Vault는 저장시 자동으로 암호화해서 Consul(또는 Raft)에 저장함.
secret/ 엔진이 있는지 확인
vault secrets list
secret/ kv kv_2572dc0a n/a
KV v2 엔진을 활성화
vault secrets enable -path=secret kv-v2
Success! Enabled the kv-v2 secrets engine at: secret/
vault kv put secret/myapp password=1234
== Secret Path ==
secret/data/myapp
======= Metadata =======
Key Value
--- -----
created_time 2025-11-28T04:25:22.10353746Z
custom_metadata <nil>
deletion_time n/a
destroyed false
version 1
vault kv get secret/myapp
== Secret Path ==
secret/data/myapp
======= Metadata =======
Key Value
--- -----
created_time 2025-11-28T04:25:22.10353746Z
custom_metadata <nil>
deletion_time n/a
destroyed false
version 1
====== Data ======
Key Value
--- -----
password 1234
브라우저 접근
http://localhost:8200/ui/vault/secrets/secret/kv/myapp

vault kv delete secret/myapp
Success! Data deleted (if it existed) at: secret/data/myapp
728x90
반응형
'기타' 카테고리의 다른 글
| 아이폰에서 AirDrop을 켜는 방법 (0) | 2025.10.27 |
|---|---|
| Apple iPhone 17 256GB 블랙 구매 (0) | 2025.10.27 |
| 쉐보레 올란도 2.0 디젤 배터리 교체 (1) | 2025.08.19 |
| Mermaid (0) | 2025.07.30 |
| 쉐보레 올란도 2.0 디젤 미션오일 교환 (0) | 2025.06.27 |