임대 폭발(lease explosion) 방지

임대 폭발(lease explosion) 방지

Vault 환경이 배포 요구를 충족하기 위해 확장되다 보면 임대 폭발의 위험이 생깁니다. 임대 폭발은 Vault 클러스터가 과잉 구독(over-subscribed)되고 클라이언트가 지속적이고 대량의 API 요청으로 시스템 리소스를 압도할 때 발생할 수 있습니다.

출처: 문서

본문

통제되지 않은 임대 폭발은 active 노드에 메모리 고갈(memory drain)을 일으키며, 이는 다른 노드로 전파되어 전체 클러스터에 대한 서비스 거부(denial-of-service) 문제로 이어질 수 있습니다.

초기 경고 신호 찾기

임대 폭발 후의 정리는 시간이 많이 걸리고 리소스를 많이 소모하므로, Vault 인스턴스가 성숙해져 튜닝이 필요하다는 신호를 모니터링할 것을 강력히 권장합니다:

문제 가능한 원인
사용되지 않는 임대가 만료를 기다리며 오랫동안 스토리지 공간을 차지함 동적 시크릿 임대나 인증 토큰의 TTL 값이 너무 높을 수 있음
임대 철회(revocation)가 자주 실패함 외부 서비스의 실패(예: 동적 시크릿)
사용되지 않는 자격 증명과 연결된 임대가 쌓임 클라이언트가 유효한 기존 임대를 재사용하지 않음
임대 철회가 느림 storage backend의 IOPS 부족
임대 수 증가가 클라이언트 수에 비해 과도함 클라이언트 사용의 잘못된 구성 또는 안티 패턴

클라이언트 모범 사례 시행

높은 임대 수는 시스템 성능을 저하시킬 수 있습니다:

  • 토큰과 임대에 가능한 가장 작은 기본 TTL(time-to-live)을 사용해 지나치게 많은 만료되지 않은 임대 백로그와 대량의 동시 만료를 피하세요.
  • 급격한 과잉 구독으로 이어질 수 있는 비정상적인 클라이언트 동작을 텔레메트리에서 검토하세요.
  • 동시 동적 시크릿 요청과 서비스 토큰 인증 요청의 수를 제한하세요.
  • 머신 클라이언트가 권장되는 AppRole 패턴을 준수하는지 확인하세요.
  • AppRole 모범 사례를 검토하세요.

합리적인 TTL 가드레일 설정

상황에 맞는 적절한 기본값을 선택하고 임대 폭발에 대한 가드레일로 리소스 quota를 사용하세요. 기본 및 최대 TTL을 전역적으로, 특정 authN 또는 secrets 플러그인의 마운트 구성에서, 그리고 역할 수준(예: 데이터베이스 자격 증명 역할)에서 설정할 수 있습니다.

Vault는 TTL 값을 세분성에 따라 우선순위를 둡니다:

  • 전역 값이 기본값으로 작동합니다.
  • 플러그인 TTL 값이 전역 값을 재정의합니다.
  • 역할, 그룹, 사용자 수준 TTL 값이 플러그인 및 전역 값을 재정의합니다.

TTL 변경은 소급 적용되지 않습니다 임대와 토큰은 생성 당시의 TTL 값을 유지합니다. TTL 값을 조정하면 새 제한은 변경 사항을 배포한 후 발급된 임대와 토큰에만 적용됩니다.

핵심 메트릭과 로그 모니터링

사전 예방적 모니터링은 문제가 악화되기 전에 문제가 있는 동작과 사용 패턴을 찾는 데 핵심입니다:

  • 핵심 Vault 메트릭 검토
  • 메트릭 안티 패턴 이해
  • quota 관련 실패에 대해 Vault audit 디바이스 로그 모니터링

quota로 리소스 사용 제어

API rate limiting quota와 lease count quota를 사용해 마운트별로 생성되는 임대 수를 제한하고, 하드 리밋이 적합한 곳에서 Vault 인스턴스의 리소스 소비를 제어하세요.

배치 토큰(batch tokens) 고려

환경이 본질적으로 많은 수의 임대 요청으로 이어진다면 서비스 토큰 대신 배치 토큰 사용을 고려하세요.

다음 리소스가 상황에 맞게 배치 토큰이 합리적인지 결정하는 데 도움이 됩니다:

  • Vault service tokens vs batch tokens
  • Service vs batch token lease handling

다음 단계

사전 예방적 모니터링과 주기적인 사용 분석은 문제가 악화되기 전에 잠재적 문제를 식별하는 데 도움이 됩니다.

  • 일반적인 Vault 리소스 quota에 대해 자세히 알아보세요.
  • Vault Enterprise의 임대 개수 quota에 대해 알아보세요.
  • audit 디바이스 로그를 조회하는 방법을 알아보세요.
  • 권장되는 Vault 임대 한도를 검토하세요.
  • 문제와 해결책에 대한 명확한 설명을 위해 임대 안티 패턴을 검토하세요.

더 알아보기