Amazon Aurora 모범 사례 - Amazon Aurora

Amazon Aurora 모범 사례

데이터의 사용 또는 Amazon Aurora DB 클러스터로의 데이터 마이그레이션에 대한 일반적인 모범 사례 및 옵션에 대한 정보를 확인할 수 있습니다.

Amazon Aurora에 대한 모범 사례 중 일부는 특정 데이터베이스 엔진으로 국한됩니다. 데이터베이스 엔진에 특정한 Aurora 모범 사례에 대한 자세한 정보는 다음을 참조하십시오.

참고

Aurora에 대한 일반적인 권장 사항은 Amazon Aurora 권장 사항 확인 및 이에 대한 응답 단원을 참조하십시오.

Amazon Aurora에 대한 기본 운영 지침

다음은 Amazon Aurora로 작업할 때 모든 사용자가 따라야 하는 기본 운영 지침입니다. Amazon RDS 서비스 수준 계약에 다음 지침을 따르도록 명시되어 있습니다.

  • 메모리, CPU 및 스토리지 사용을 모니터링합니다. Amazon CloudWatch에서 사용 패턴이 변경되거나 사용자가 배포 용량에 도달했을 때 알림을 받도록 설정할 수 있으므로 이렇게 하면 시스템 성능 및 가용성을 유지할 수 있습니다.

  • 클라이언트 애플리케이션이 DB 인스턴스의 DNS(Domain Name Service) 데이터를 캐시하는 경우 TTL(Time-to-Live) 값을 30초 미만으로 설정합니다. 장애 조치 후에 DB 인스턴스의 기본 IP 주소가 변경될 수 있습니다. 따라서 DNS 데이터를 오랜 시간 동안 캐시하면 애플리케이션이 더 이상 서비스되지 않는 IP 주소에 연결하려 할 경우 연결 오류로 이어질 수 있습니다. 연결에서 리더 엔드포인트를 사용하고 읽기 전용 복제본 인스턴스 중 하나가 유지 관리 중이거나 삭제된 경우에도 여러 읽기 전용 복제본이 있는 Aurora DB 클러스터에 연결 실패가 발생할 수 있습니다.

  • DB 클러스터의 장애 조치를 테스트하여 사용 사례 절차에 소요되는 시간을 파악하십시오. 장애 조치 테스트를 통해 DB 클러스터에 액세스하는 애플리케이션이 장애 조치 후 자동으로 새 DB 클러스터에 연결할 수 있도록 할 수 있습니다.

DB 인스턴스 RAM 권장 사항

성능을 최적화하려면 작업 세트가 거의 완전히 메모리에 상주하도록 RAM을 충분히 할당하십시오. 작업 세트가 거의 전부 메모리에 있는지 여부를 판별하려면 Amazon CloudWatch에서 다음 지표를 조사하십시오.

  • VolumeReadIOPS – 이 지표는 5분 간격으로 보고되는 클러스터 볼륨에서 읽기 I/O 작업의 평균 수를 측정합니다. VolumeReadIOPS의 값은 작고 안정적이어야 합니다. 경우에 따라 읽기 I/O가 급증하거나 평소보다 높을 수도 있습니다. 그런 경우 DB 클러스터의 DB 인스턴스를 조사하여 어떤 DB 인스턴스가 I/O 증가를 야기하고 있는지 확인합니다.

    작은 정보

    Aurora MySQL 클러스터가 병렬 쿼리를 사용하는 경우 VolumeReadIOPS 값이 증가할 수 있습니다. 병렬 쿼리는 버퍼 풀을 사용하지 않습니다. 따라서 쿼리는 빠르지만 이렇게 최적화된 프로세싱은 읽기 작업 및 관련 비용을 증가시킬 수 있습니다.

  • BufferCacheHitRatio – 이 지표는 DB 클러스터에서 DB 인스턴스의 버퍼 캐시가 제공하는 요청 백분율을 측정합니다. 이 지표는 메모리에서 제공되는 데이터의 양에 대한 통찰력을 제공합니다.

    적중률이 높다면 DB 인스턴스에 사용 가능한 메모리가 충분하다는 뜻입니다. 적중률이 낮다면 이 DB 인스턴스에 대한 쿼리가 디스크로 자주 이동한다는 뜻입니다. 워크로드를 조사하여 이 동작의 원인이 되는 쿼리를 확인하십시오.

워크로드를 조사한 후에 더 많은 메모리가 필요하다면 DB 인스턴스 클래스를 RAM이 더 큰 클래스로 확장하는 것을 고려합니다. 이렇게 한 후 앞에서 언급한 지표를 조사하고 필요에 따라 계속 확장할 수 있습니다. Aurora 클러스터가 40TB보다 큰 경우 db.t2, db.t3 또는 db.t4g 인스턴스 클래스를 사용하지 마세요.

자세한 내용은 Amazon Aurora에 대한 Amazon CloudWatch 지표 단원을 참조하십시오.

AWS 데이터베이스 드라이버

애플리케이션 연결에 AWS 드라이버 제품군을 사용하는 것이 좋습니다. 더 빠른 전환 및 장애 조치 시간, AWS Secrets Manager, AWS Identity and Access Management(IAM) 및 페더레이션 ID를 사용한 인증을 지원하도록 설계된 드라이버입니다. AWS 드라이버는 DB 클러스터 상태 모니터링과 클러스터 토폴로지 파악을 통해 새 라이터를 결정합니다. 이 접근 방식은 전환 및 장애 조치 시간을 오픈 소스 드라이버의 경우 수십 초였던 것에 비해 10초 미만으로 단축합니다.

새로운 서비스 기능이 도입됨에 따라 AWS 드라이버 제품군의 목표는 이러한 서비스 기능에 대한 지원을 기본 제공하는 것입니다.

자세한 내용은 AWS 드라이버를 사용하여 Aurora DB 클러스터에 연결 단원을 참조하십시오.

Amazon Aurora 모니터링

Amazon Aurora는 모니터링을 통해 Aurora DB 클러스터의 상태와 성능을 평가할 수 있는 여러 가지 지표와 인사이트를 제공합니다. AWS Management Console, AWS CLI 및 CloudWatch API와 같은 다양한 도구를 사용하여 Aurora 지표를 볼 수 있습니다. 성능 개선 도우미 대시보드에서 결합된 성능 개선 도우미 및 CloudWatch 지표를 확인하고 DB 인스턴스를 모니터링할 수 있습니다. 이 모니터링 보기를 사용하려면 DB 인스턴스에서 성능 개선 도우미가 켜져 있어야 합니다. 이 모니터링에 대한 자세한 내용은 Amazon RDS 콘솔에서 결합 지표 보기 섹션을 참조하세요.

특정 기간에 대한 성과 분석 보고서를 생성하고 식별된 인사이트와 문제 해결을 위한 권장 사항을 볼 수 있습니다. 자세한 내용은 성능 분석 보고서 생성 섹션을 참조하세요.

DB 파라미터 그룹 및 DB 클러스터 파라미터 그룹 작업

프로덕션 DB 클러스터에 파라미터 그룹 변경 사항을 적용하기 전에 테스트 DB 클러스터에서 DB 파라미터 그룹 및 DB 클러스터 파라미터 그룹 변경 사항을 시험해 보는 것이 좋습니다. DB 엔진 파라미터를 잘못 설정하면 성능 저하 및 시스템 불안정 등의 의도하지 않은 부작용이 있을 수 있습니다.

DB 엔진 파라미터를 수정할 때 항상 주의를 기울이고 DB 파라미터 그룹을 수정하기 전에 DB 클러스터를 백업하십시오. DB 클러스터 백업에 대한 자세한 정보는 Amazon Aurora DB 클러스터 백업 및 복구 단원을 참조하십시오.

Amazon Aurora 모범 사례 비디오

YouTube의 AWS Online Tech Talks 채널에는 보다 안전하고 가용성이 높은 Amazon Aurora DB 클러스터를 생성 및 구성하는 모범 사례에 대한 비디오 프레젠테이션이 포함되어 있습니다.