InfoGrab Docs

Teleport 데이터베이스 상태 검사

Teleport 데이터베이스 상태 검사를 구성하고 대상 상태 정보를 보는 방법.

이 문서는 데이터베이스 상태 검사 관리 방법을 설명합니다. Teleport 18에서 사용 가능한 데이터베이스 상태 검사는 Teleport Database Service 인스턴스에서 Teleport 클러스터에 등록된 데이터베이스로의 연결을 모니터링하는 데 사용됩니다. 상태 검사로 데이터베이스 연결을 모니터링하는 이유는 무엇인가요? 관찰 가능성 : 사용자가 데이터베이스에 연결을 시도하기 전에 네트워킹 문제를 발견합니다. 비정상 데이터베이스는 Teleport 웹 UI에서 강조 표시되며 Teleport 클러스터의 API를 통해 프로그래밍 방식으로 발견할 수 있습니다. 고가용성 : 여러 Teleport Database Service 인스턴스를 배포하여 동일한 등록 데이터베이스에 대한 연결을 프록시할 수 있습니다. Teleport는 데이터베이스 엔드포인트에 도달할 수 없는 인스턴스보다 도달할 수 있는 Database Service 인스턴스를 통해 사용자 연결을 우선적으로 라우팅합니다. 동작 원리 # 사용자가 Teleport를 통해 데이터베이스에 연결하면 연결이 Teleport Database Service를 통해 라우팅됩니다. Database Service는 연결을 프록시하기 위해 데이터베이스의 엔드포인트에 도달할 수 있어야 합니다. Teleport Database Service 인스턴스는 전역 health_check_config 리소스의 레이블 선택기와 일치하는 데이터베이스에 대해 정기적인 상태 검사를 수행합니다. 데이터베이스와 일치하는 health_check_config 가 없으면 해당 데이터베이스에 대한 상태 검사가 활성화되지 않습니다. 상태 검사를 수행하기 위해 Teleport Database Service 인스턴스는 데이터베이스의 엔드포인트에 TCP 연결을 설정하고 연결 성공 여부를 보고하려고 합니다. Note 현재는 TCP 상태 검사만 사용할 수 있습니다. 데이터베이스가 등록되면 처음에는 "unknown" 상태가 됩니다. 상태 검사가 비활성화되면 상태는 "unknown"으로 유지됩니다. 상태 검사가 활성화되면 첫 번째 상태 검사 결과가 데이터베이스의 상태를 결정합니다: "healthy" 또는 "unhealthy". 데이터베이스에 대한 첫 번째 상태 검사 후에는 연속으로 통과하거나 실패하는 상태 검사 수가 구성 가능한 임계값에 도달할 때만 상태가 변경됩니다. 구성 # Teleport의 health_check_config 리소스는 어떤 데이터베이스에 상태 검사가 활성화되는지와 이러한 검사에 사용될 설정을 결정합니다: kind: health_check_config version: v1 metadata: name: example description: 상태 검사 구성 예시 spec: # interval은 각 상태 검사 사이의 시간입니다. 기본값 30s. interval: 30s # timeout은 상태 검사 연결 설정 타임아웃입니다. 기본값 5s. timeout: 5s # healthy_threshold는 대상의 상태가 "healthy"가 되는