

# Aurora MySQL 고가용성을 위한 모범 사례
<a name="AuroraMySQL.BestPractices.HA"></a>

Aurora MySQL 클러스터의 유효성을 개선하기 위해 적용할 수 있는 모범 사례는 다음과 같습니다.

**Topics**
+ [MySQL 데이터베이스에서 Amazon Aurora를 재해 복구용으로 사용](#AuroraMySQL.BestPractices.DisasterRecovery)
+ [감소된 중단 시간으로 MySQL에서 Amazon Aurora MySQL로 마이그레이션](#AuroraMySQL.BestPractices.Migrating)
+ [Aurora MySQL DB 인스턴스의 성능 저하, 자동 재시작 및 장애 조치 방지](#AuroraMySQL.BestPractices.Avoiding)

## MySQL 데이터베이스에서 Amazon Aurora를 재해 복구용으로 사용
<a name="AuroraMySQL.BestPractices.DisasterRecovery"></a>

MySQL DB 인스턴스에서 Amazon Aurora를 사용하여 재해 복구용 오프사이트 백업을 생성할 수 있습니다. MySQL DB 인스턴스의 재해 복구용으로 Aurora을 사용하려면 Amazon Aurora DB 클러스터를 생성한 후 이 클러스터를 MySQL DB 인스턴스의 읽기 전용 복제본으로 설정합니다. 이러한 설정은 RDS for MySQL DB 인스턴스 또는 Amazon RDS 외부에서 실행 중인 MySQL 데이터베이스에 적용됩니다.

**중요**  
MySQL DB 인스턴스와 Amazon Aurora MySQL DB 클러스터 간의 복제를 설정할 때 필요할 경우 정상 상태를 유지하고 수리하는지 확인하도록 복제를 모니터링해야 합니다.

Amazon Aurora MySQL DB 클러스터를 생성하고 이 클러스터를 MySQL DB 인스턴스의 읽기 전용 복제본으로 설정하는 방법에 대한 자세한 정보는 [Amazon Aurora를 사용하여 MySQL 데이터베이스 읽기 조정](AuroraMySQL.BestPractices.Performance.md#AuroraMySQL.BestPractices.ReadScaling)의 절차를 따르십시오.

재해 복구 모델에 대한 자세한 내용은 [Amazon Aurora MySQL 클러스터에 가장 적합한 재해 복구 옵션을 선택하는 방법](https://aws.amazon.com/blogs/database/how-to-choose-the-best-disaster-recovery-option-for-your-amazon-aurora-mysql-cluster/)을 참조하세요.

## 감소된 중단 시간으로 MySQL에서 Amazon Aurora MySQL로 마이그레이션
<a name="AuroraMySQL.BestPractices.Migrating"></a>

라이브 애플리케이션을 지원하는 MySQL 데이터베이스에서 Amazon Aurora MySQL DB 클러스터로 데이터를 가져올 때 마이그레이션하는 동안 서비스가 중단되는 시간을 줄일 수 있습니다. 그렇게 하려면 *Amazon Relational Database Service 사용 설명서*의 [가동 중지 시간을 단축하여 Amazon RDS for MySQL DB 인스턴스로 데이터 가져오기](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/mysql-importing-data-reduced-downtime.html)에 나온 절차를 따르세요. 이 절차는 대규모 데이터베이스로 작업하는 경우에 특히 유용합니다. 이 프로시저를 사용하여 네트워크에서 AWS로 전달되는 데이터의 양을 최소화하여 가져오기 비용을 줄일 수 있습니다.

이 절차에는 데이터베이스 데이터의 복사본을 Amazon EC2 인스턴스로 전송하고 데이터를 새 RDS for MySQL DB 인스턴스로 가져오는 작업을 수행하는 단계가 나열되어 있습니다. Amazon Aurora가 MySQL과 호환되므로 Amazon Aurora DB 클러스터를 대상 Amazon RDS MySQL DB 인스턴스로 대신 사용할 수 있습니다.

## Aurora MySQL DB 인스턴스의 성능 저하, 자동 재시작 및 장애 조치 방지
<a name="AuroraMySQL.BestPractices.Avoiding"></a>

워크로드가 많거나 워크로드가 DB 인스턴스의 할당된 리소스 이상으로 급증하는 경우 애플리케이션과 Aurora 데이터베이스를 실행하는 데 사용되는 리소스가 소진될 수 있습니다. CPU 사용률, 메모리 사용량, 사용된 데이터베이스 연결 수와 같은 데이터베이스 인스턴스에 대한 지표를 얻으려면 Amazon CloudWatch, 성능 개선 도우미 및 향상된 모니터링에서 제공하는 지표를 참조할 수 있습니다. DB 인스턴스 모니터링에 대한 자세한 내용은 [Amazon Aurora 클러스터에서 지표 모니터링](MonitoringAurora.md) 섹션을 참조하세요.

워크로드가 사용 중인 리소스를 소진하면 DB 인스턴스가 느려지거나, 다시 시작되거나, 다른 DB 인스턴스로 장애 조치될 수 있습니다. 이를 방지하려면 리소스 사용률을 모니터링하고, DB 인스턴스에서 실행되는 워크로드를 검사하고, 필요한 경우 최적화하세요. 최적화가 인스턴스 지표를 개선하지 못하고 리소스 소진을 완화할 수 없다면 한도에 도달하기 전에 DB 인스턴스를 스케일 업하는 것을 고려해 보세요. 사용 가능한 DB 인스턴스 클래스 및 사양에 대한 자세한 내용은 [Amazon AuroraDB 인스턴스 클래스](Concepts.DBInstanceClass.md) 섹션을 참조하세요.