Amazon Relational Database Service(RDS) 데이터베이스 연결이 갑자기 끊어져서 예기치 않은 가동 중지가 발생했습니다. DB 연결이 끊어진 이유는 무엇D입니까?
해결 방법
Amazon RDS DB 연결은 여러 가지 이유로 끊어질 수 있습니다. DB 연결 끊김의 원인을 파악하려면 DB 연결이 끊어진 것이 RDS DB 인스턴스의 유지 관리 기간 내인지 또는 기간 외인지 확인합니다.
RDS 유지 관리 기간에 DB 연결이 끊어진 경우
DB 인스턴스 유지 관리 기간에 AWS는 DB 연결이 끊어질 수 있는 유지 관리 작업을 수행합니다.
자동 마이너 버전 업그레이드(Amazon RDS에서 사용되는 경우)
Amazon RDS가 새 기본 마이너 엔진 버전을 지정하고 DB 인스턴스에서 이전 버전을 실행 중인 경우, 자동 마이너 버전 업그레이드 기능이 켜져 있으면 Amazon RDS가 예약된 유지 관리 기간에 업그레이드를 수행합니다. 엔진 수준 버전 업그레이드에는 RDS 가동 중지가 수반되므로 마이너 버전 업그레이드 중에 DB 연결이 끊길 수 있습니다.
하드웨어 유지 관리
Amazon RDS는 DB 인스턴스의 기본 호스트가 성능이 저하된 하드웨어에서 실행될 때 하드웨어 유지 관리를 예약합니다. 하드웨어 유지 관리는 DB 인스턴스에 대해 구성된 유지 관리 기간에 수행됩니다. 유지 관리를 예약하기 전에 유지 관리 기간과 영향을 받는 가용 영역을 포함하는 예약된 하드웨어 유지 관리 기간에 대한 이메일 알림을 수신합니다.
운영 체제 유지 관리
Amazon RDS는 DB 인스턴스에 대해 구성된 유지 관리 기간에 기본 운영 체제의 업데이트를 주기적으로 수행합니다. 운영 체제 업데이트에 가동 중지가 포함된 경우 Amazon RDS는 다음 유지 관리 기간에 대한 유지 관리를 예약합니다. 운영 체제 업데이트에 유지 관리가 필요하지 않은 경우 기본 유지 관리 기간을 조정하여 유지 관리 기간을 연기할 수 있습니다. 유지 관리가 필요한 경우 운영 체제 업데이트를 연기할 수 없으며 후속 유지 관리 기간에 업데이트가 적용됩니다.
"다음 유지 관리 기간에 적용"을 선택하여 Amazon RDS에서 수행하는 수정 작업
RDS 구성을 수정할 때 수정 사항을 즉시 적용할지, 아니면 다음 유지 관리 기간에 적용할지 선택할 수 있습니다. 다음 유지 관리 기간에 수정을 수행하도록 선택하면 즉각적인 가동 중지가 발생하지 않습니다. 다음 유지 관리 기간에 다음 수정 사항을 적용하면 가동 중지가 발생할 수 있습니다.
- DB 인스턴스 식별자 이름 바꾸기
- DB 인스턴스 클래스 수정
- 백업 보존 기간 변경
- DB 포트 수정
- DB 엔진 버전 변경
- 새 서브넷 그룹 연결
DB 인스턴스의 영향 및 가동 중지와 함께 수정에 사용할 수 있는 세부 설정을 이해하려면 DB 인스턴스 설정 정보를 참조하세요.
RDS 유지 관리 기간 외에 DB 연결이 끊어진 경우
DB 연결이 클라이언트/서버 측 제한 시간에 도달하면 DB 연결이 끊어질 수 있습니다.
애플리케이션 엔드에 구성된 클라이언트 제한 시간 파라미터
애플리케이션 엔드에 구성된 클라이언트 제한 시간 파라미터로 인해 DB 연결이 끊어질 수 있습니다. 쿼리 처리 시간이 너무 길면 세션이 클라이언트에서 잘못 종료될 수 있습니다. 이 문제를 해결하려면 클라이언트의 제한 시간 설정을 늘립니다.
Amazon RDS에 연결된 사용자 지정 파라미터 그룹에 구성된 서버 제한 시간 파라미터
TCP keepalives를 적극적으로 설정하면 클라이언트 연결 제한 시간을 초과합니다. tcp_keepalives_idle에 설정된 시간과 tcp_keepalives_count에 설정된 메시지 수만큼 클라이언트가 유휴 상태일 때 제한 시간이 초과됩니다. 장기 실행 쿼리가 DB 인스턴스에서 실행되는 동안 연결이 서버 응답을 기다리는 경우에도 제한 시간이 초과될 수 있습니다.
idle_in_transaction_session_timeout이 기본 24시간보다 낮은 값으로 설정된 경우 구성된 값보다 오래 유휴 상태인 모든 세션이 종료됩니다. 이 값을 적극적으로 설정하면 실행 중인 쿼리가 서버에서 응답을 받는 데 더 많은 시간이 필요하더라도 세션이 구성된 제한 시간 값보다 오래 유휴 상태이면 연결이 끊어집니다.
계획되지 않은 DB 다시 시작/장애 조치
기본 하드웨어에 일시적인 문제가 발생하면 DB 인스턴스와의 통신이 끊길 수 있습니다. 하드웨어 문제로 인해 다중 AZ 배포에서 장애 조치가 시작되고 기본 호스트를 교체하여 단일 AZ 배포에서 복구가 시작될 수 있습니다. RDS 모니터링 시스템이 상태 확인을 수행하기 위해 RDS 인스턴스와 통신할 수 없기 때문에 이 문제로 인해 DB 인스턴스가 비정상적인 상태가 될 수 있습니다.
일시적인 네트워크 문제는 DB 인스턴스의 기본 호스트에 영향을 줍니다. 내부 모니터링 시스템이 이 문제를 감지하고 사전에 단일 AZ 배포에 대한 복구 및 다중 AZ 배포에 대한 장애 조치를 시작합니다.
DB 로드가 높을 경우 데이터베이스에서 메모리 크런치가 발생하여 RDS 모니터링 시스템이 기본 호스트에 접속하지 못하게 되면 DB 인스턴스가 응답하지 않습니다. 데이터베이스 오버로드로 인한 DB 인스턴스의 장애 조치 및 다시 시작을 방지하려면 DB 인스턴스에서 메모리 파라미터를 적절히 구성합니다.
기본 스토리지 하위 시스템의 일시적인 문제로 인해 Amazon Elastic Block Store(Amazon EBS) 볼륨의 지연 시간이 길어질 수 있으며, 이 문제는 내부 모니터링 시스템에서 식별됩니다. 모니터링 시스템은 사전 예방적 조치로 단일 AZ 배포에 대한 복구를 시작합니다. 다중 AZ 배포에서는 보조에 대한 장애 조치가 수행됩니다.
관련 정보
필수 Amazon RDS 유지 관리 동안 가동 중지를 최소화하려면 어떻게 해야 하나요?
운영 체제 업데이트 작업
Amazon RDS DB 인스턴스에 연결할 때 발생하는 문제를 해결하려면 어떻게 해야 합니까?
다중 AZ 장애 조치에 대한 근본 원인 분석을 수행하고 Amazon RDS 인스턴스를 다시 시작하려면 어떻게 해야 합니까?