분류 전체보기 323

[Vault] 2. Auth methods

0. OverviewVault에서 인증을 담당하는 컴포넌트✅ 인증 성공 후, 사용자에게 identity/policy 부여✅ 인증 과정을 외부 인증 프로바이더에 위임할 수 있음 (AWS, Github 등) Enabling/Disabling auth methods필요한 인증 방식만 활성화 할 수 있음 (명령어/API 제공)✅ 모든 auth method는 auth/ prefix 아래에 마운트됨 (auth type별로 마운트 경로가 생성됨)✅ auth method가 꺼지면, 해당 방식으로 로그인했던 모든 사용자가 로그아웃됨 (인증 유지 불가) 명령어) 활성화더보기vault auth enable vault auth enable githubvault auth enable userpassvault auth enabl..

카테고리 없음 2025.09.02

[Spring Cloud Vault] 1. 설정

1. ConfigData API외부 설정을 가져오는 역할을 하는 API✅ Vault, Config Server 등✅ 어떤 설정 시스템을 가져올지, 순서를 어떻게 할지 지정 가능➡️ 유연성 높음 ConfigData Locations위치vault://vault:/// (컨텍스트 지정 가능)vault:///?prefix= (prefix 지정 가능) 기본 경로/secret/${spring.application.name}/${profile} 예시) application.yml더보기spring.config.import: vault://first/context/path, vault://other/path, vault://spring.config.import: vault://my/path?prefix=foo., vau..

카테고리 없음 2025.08.31

[Spring Cloud Vault] 0. Overview

0. 소개Spring Vault 위에서 동작하는 클라이언트 사이드 지원 도구✅ 모든 환경에서 애플리케이션이 필요로하는 외부 비밀 속성을 중앙에서 관리할 수 있음➡️ 다양한 외부 서비스에 대한 접속 자격 증명을 애플리케이션에 제공함 타입정적 비밀: 고정 값으로 자격 증명하는 방식의 secret (사용자 이름/비밀번호 등)동적 비밀: 필요할 떄마다 생성되는 임시 자격 증명 1. Server 설치2. Client 셋팅의존성) gradle더보기implementation 'org.springframework.cloud:spring-cloud-starter-vault-config' application.yml더보기spring.cloud.vault: host: localhost # Vault ..

카테고리 없음 2025.08.31

[Vault] Secret Engines

1. Overview데이터를 저장, 생성, 암복호화하는 컴포넌트 Path & RoutingVault 내 특정 경로에 마운트됨클라이언트 요청이 들어오면, Vault 라우터가 경로 접두어를 보고 해당 엔진으로 라우팅함 Lifecycle동작요약주요 영향enable엔진을 특정 경로에 활성화엔진 인스턴스 생성✅ 경로 대소문자 구분➡️ 해당 경로로 요청 라우팅 시작disable해당 엔진 비활성화엔진 사용 불가✅ 저장 데이터 제거move엔진의 마운트 경로 변경기존 경로에서 발급된 모든 리스 무효화✅ 설정 데이터는 유지tune엔진의 전역 설정예: TTL 등⚠️ 엔진의 경로가 충돌되어서는 안됨 (서로 접두어 관계가 되면 안됨) 예시) 명령어더보기vault secrets enable -path= vault secrets ..

카테고리 없음 2025.08.30

[Vault] 1. About Vault

1. What is Vault?중앙 집중화된 secret 관리 도구⚠️ 여러 시스템이 각각 비밀번호를 따로 젖아하면 유출 위험이 커지고, 비밀번호 번경도 번거로우며, 사용 현황을 관리하기 어려움✅ 모듈형 설계: 각각의 기능 단위로 유연하게 구성할 수 있음ex) db password, api key, certificate 등 Who can access data in Vault?Vault는 저장되는 데이터에 대한 접근을 엄격히 제한함✅ 데이터는 저장 시 자동으로 암호화됨➡️ 접근은 인증과 인가 과정을 반드시 거쳐야 함➡️ 모든 인증/인가 시도를 감사 로그로 기록함 PluginVault의 기능 단위 블록"데이터가 어떻게 처리되고, 클라이언트가 어떻게 접근하는지" 제어함✅ 내장 플로그인은 기본 포함되어 별도 등..

카테고리 없음 2025.08.29

[Spring Cloud Netflix] 0. Overview

Netflix OSS를 Spring Boot 애플리케이션에서 바로 쓸 수 있도록 해주는 자동 설정 패키지✅ Netflix OSS: 오픈소스로 공개된 Netflix 인프라 라이브러리들 (Eureka, Ribbon, Hystrix, Zuul 등) 1. Service Discovery서비스 레지스트리 및 디스커버리 기능 제공✅ 클라이언트는 http://'서비스 이름' 형식으로 접근 가능 Eureka서비스 디스커버리를 제공하는 Netflix OSS 컴포넌트구분Eureka ServerEureka Client역할서비스 등록소(Registry)서비스 등록자 + 소비자주요 기능- 서비스 메타데이터(IP, Port, 이름 등) 보관- 서비스 상태 모니터링- 클러스터링(HA) 지원- 자기 자신을 Eureka Server에..

카테고리 없음 2025.08.28

[gRPC] 1. What is gRPC?

1. Introduction to gRPCGoogle의 원격 프로시저 호출 오픈소스 프로젝트서비스 메서드 계약 중심의 통신 방식 (❌ URL 중심의 REST API 방식)✅ 원격 서버 애플리케이션 메서드를 로컬 메서드처럼 호출할 수 있도록 추상화 해줌✅ 보통 HTTP/2 기반으로 동작함➡️ 다양한 언어/환경/기술스택에서 서로 통신할 수 있음 Concept Diagram서비스 인터페이스와 메시지 구조를 미리 정의함✅ 전송 효율 좋음 / 타입 명확 / 코드 생성 가능 / 다국어 환경에서 계약 기반 통신이 쉬움➡️ 분산 시스템에서 서비스 간 호출을 체계적으로 관리하기 좋음 Stub서버 메서드를 로컬 메서드처럼 보이게 해주는 클라이언트 프록시✅ 서버와 동일한 메서드를 제공함 2. Protocol BuffersG..

Network 2025.08.26

[Spring Cloud Config] 1-2. Spring Cloud Config Server: Environment Repository

0. Environment RepositoryConfig Server가 어디서 설정 데이터를 가져올지 정의하는 전략Config Server는 설정을 읽어서 Environment 객체로 변환해 클라이언트에게 내려줌✅ client는 config server에 "http://{config-server}/{application}/{profile}/{label}" 형식으로 요청함✅ config server는 "서비스 이름 + 환경 + 레이블" 조합으로 설정파일을 식별함 주요 변수변수매핑 대상의미예시{application}클라이언트 spring.application.name어떤 서비스인지 식별하는 이름user-serviceorder-service{profile}클라이언트 spring.profiles.active어떤..

카테고리 없음 2025.08.21

[Spring Cloud Config] 1-1. Spring Cloud Config Server: Introduction

0. Introduction분산 시스템에서 외부 설정을 중앙에서 관리하기 위한 프레임워크✅ 애플리케이션 설정을 중앙 저장소에 두기 (git)➡️ Config Server와 Client가 이를 동적으로 가져와 사용 구성 요소구성 요소역할비고Git Backend설정 파일들이 저장된 중앙 레포지토리환경/서비스별 파일 관리, 버전 관리 가능Config Server중앙에서 설정 파일을 읽어와 제공하는 서버Git에서 설정을 가져와 REST API로 노출Config Client애플리케이션 실행 시 Config Server로부터 설정값을 받아 사용가져온 값이 Spring Environment / PropertySource에 주입됨 예) Git Backend더보기application.ymluser-service-dev...

카테고리 없음 2025.08.20

[Kafka] Dead Letter Queue

1. Dead Letter Queue란?메시지 브로커가 전달에 실패한 메시지를 별도로 보관하는 백업 저장소✅ 소비자가 처리 중 메시지 처리가 실패될 수 있음✅ 견고하고 장애에 강한 데이터 파이프라인을 구축할 때 중요한 요소 이점목적설명Fault Tolerance메시지 처리 중 오류가 발생해도 전체 시스템에 영향을 주지 않도록 함Data Integrity처리할 수 없는 메시지를 안전하게 저장해 데이터 손실을 방지Recovery원인 해결 후 DLQ에 쌓인 메시지를 선택적으로 재처리해 데이터/서비스 복구 가능Monitoring & Troubleshooting실패한 메시지를 추적·분석하여 오류 원인 파악 및 디버깅 용이Scalability실패한 메시지를 DLQ로 분리하여 메인 처리 흐름의 적체(Backlog) ..

DevOps/Kafka 2025.08.15