다음을 통해 공유


SQL Server의 가용성 그룹 자동 장애 조치를 위한 유연한 장애 조치 정책

유연한 장애 조치(failover) 정책은 가용성 그룹에 대한 자동 장애 조치(failover )를 유발하는 조건을 세부적으로 제어합니다. 자동 장애 조치(failover)를 트리거하는 오류 조건과 상태 검사 빈도를 변경하면 고가용성을 위해 SLA를 지원하기 위해 자동 장애 조치(failover)의 가능성을 늘리거나 줄일 수 있습니다.

가용성 그룹의 유연한 장애 조치(failover) 정책은 오류 조건 수준 및 상태 검사 시간 제한 임계값에 의해 정의됩니다. 가용성 그룹이 오류 조건 수준 또는 상태 검사 시간 제한 임계값을 초과했음을 감지하면 가용성 그룹의 리소스 DLL이 WSFC(Windows Server 장애 조치(failover) 클러스터링) 클러스터에 다시 응답합니다. 그런 다음 WSFC 클러스터는 보조 복제본에 대한 자동 장애 조치(failover)를 시작합니다.

중요합니다

가용성 그룹이 WSFC 실패 임계값을 초과하는 경우 WSFC 클러스터는 가용성 그룹에 대한 자동 장애 조치를 시도하지 않습니다. 또한 클러스터 관리자가 실패한 리소스 그룹을 온라인으로 수동으로 가져오거나 데이터베이스 관리자가 가용성 그룹의 수동 장애 조치(failover)를 수행할 때까지 가용성 그룹의 WSFC 리소스 그룹은 실패한 상태로 유지됩니다. WSFC 오류 임계값은 지정된 기간 동안 가용성 그룹에 대해 지원되는 최대 오류 수로 정의됩니다. 기본 기간은 6시간이며, 이 기간 동안의 최대 오류 수에 대한 기본값은 n-1이며 여기서 n 은 WSFC 노드의 수입니다. 지정된 가용성 그룹에 대한 실패 임계값을 변경하려면 WSFC 장애 조치(failover) 관리자 콘솔을 사용합니다.

Health-Check 제한 시간 임계값

가용성 그룹의 WSFC 리소스 DLL은 주 복제본을 호스트하는 SQL Server 인스턴스에서 sp_server_diagnostics 저장 프로시저를 호출하여 주 복제본의 상태 검사를 수행합니다. sp_server_diagnostics 가용성 그룹에 대한 상태 검사 제한 시간 임계값의 1/3과 같은 간격으로 결과를 반환합니다. 기본 상태 검사 제한 시간 임계값은 30초이므로 sp_server_diagnostics 10초 간격으로 반환됩니다. sp_server_diagnostics 느리거나 정보를 반환하지 않는 경우 리소스 DLL은 주 복제본이 응답하지 않는지 확인하기 전에 상태 검사 시간 제한 임계값의 전체 간격을 기다립니다. 주 복제본이 응답하지 않는 경우 현재 지원되는 경우 자동 장애 조치(failover)가 시작됩니다.

중요합니다

sp_server_diagnostics 는 데이터베이스 수준에서 상태 확인을 수행하지 않습니다.

Failure-Condition 수준

sp_server_diagnostics 반환된 진단 데이터 및 상태 정보가 자동 장애 조치(failover)를 보증하는지 여부는 가용성 그룹의 오류 조건 수준에 따라 달라집니다. 오류 조건 수준은 자동 장애 조치(failover)를 트리거하는 오류 조건을 지정합니다. 가장 제한적인 수준(수준 1)부터 가장 제한적인 수준(수준 5)에 이르는 다섯 가지 오류 조건 수준이 있습니다. 지정된 수준은 덜 제한적인 수준을 포함합니다. 따라서 가장 엄격한 수준인 5에는 덜 제한적인 4가지 조건 등이 포함됩니다.

중요합니다

손상된 데이터베이스 및 의심되는 데이터베이스는 오류 조건 수준에서 검색되지 않습니다. 따라서 하드웨어 오류, 데이터 손상 또는 기타 문제로 인해 손상되거나 의심되는 데이터베이스는 자동 장애 조치(failover)를 트리거하지 않습니다.

다음 표에서는 각 수준에 해당하는 오류 조건에 대해 설명합니다.

레벨 오류 상태 Transact-SQL 값 PowerShell 값
1 서버 다운 시. 가장 제한적인 수준입니다. 다음 중 어느 것이 발생할 때 자동 장애 조치(failover)가 시작되도록 지정합니다.

SQL Server 서비스가 다운된 경우

서버 인스턴스로부터 ACK를 받지 못해 WSFC 클러스터에 연결할 가용성 그룹의 임대가 만료된 경우. 자세한 내용은 작동 방법: SQL Server AlwaysOn 임대 시간 제한을 참조하세요.
1 OnServerDown
서버가 응답하지 않습니다. 다음 중 어느 것이 발생할 때 자동 장애 조치(failover)가 시작되도록 지정합니다.

SQL Server 인스턴스가 클러스터에 연결되지 않고 가용성 그룹의 사용자 지정 상태 검사 제한 시간 임계값을 초과합니다.

가용성 복제본이 오류 상태에 있는 경우
2 OnServerUnresponsive
3 중요한 서버 오류입니다. 중요한 SQL Server 내부 오류(예: 고아된 스핀락, 심각한 쓰기 액세스 위반, 과도한 덤프)에서 자동 장애 조치(failover)가 시작되도록 지정합니다. 이 값은 기본 수준입니다. 3 OnCriticalServerError
4 중간 정도의 서버 오류 발생 시에 SQL Server 내부 리소스 풀의 영구 메모리 부족 조건과 같은 보통 SQL Server 내부 오류에서 자동 장애 조치(failover)가 시작되도록 지정합니다. 4 OnModerateServerError
5 특정한 오류 조건에서. 가장 제한적인 수준입니다. 다음을 포함하여 정규화된 오류 조건에서 자동 장애 조치(failover)가 시작되도록 지정합니다.

SQL 엔진 작업자 스레드가 소진된 경우

해결할 수 없는 교착 상태가 발견된 경우
5 OnAnyQualifiedFailureConditions

비고

SQL Server 인스턴스에서 클라이언트 요청에 대한 응답이 없는 것은 가용성 그룹과 관련이 없습니다.

관련 작업

자동 페일오버 구성을 위해

관련 내용

또한 참조하십시오

AlwaysOn 가용성 그룹 개요(SQL Server)
가용성 모드(AlwaysOn 가용성 그룹)
장애 조치 및 장애 조치 모드 (AlwaysOn 가용성 그룹)
Windows Server 장애 조치 클러스터링(WSFC)과 SQL Server
장애 조치 클러스터 인스턴스에 대한 정책
sp_server_diagnostics(Transact-SQL)