재해 복구 훈련 수행Performing Disaster Recovery Drill

복구 워크플로에 대한 응용 프로그램 준비의 유효성 검사를 정기적으로 수행하는 것이 좋습니다.It is recommended that validation of application readiness for recovery workflow is performed periodically. 응용 프로그램 동작과 데이터 손실의 영향 및/또는 장애 조치(failover)와 관련된 중단을 검사하는 것은 적절한 엔지니어링 실무입니다.Verifying the application behavior and implications of data loss and/or the disruption that failover involves is a good engineering practice. 또한 대부분의 업계 표준에서 비즈니스 연속성 인증의 일부로 요구하는 사항이기도 합니다.It is also a requirement by most industry standards as part of business continuity certification.

재해 복구 훈련의 수행은 다음으로 구성됩니다.Performing a disaster recovery drill consists of:

  • 데이터 계층 중단 시뮬레이션Simulating data tier outage
  • 복구Recovering
  • 복구 후 응용 프로그램 무결성 검사Validate application integrity post recovery

비즈니스 연속성을 위한 응용 프로그램 설계방법에 따라 연습을 실행하는 워크플로가 달라질 수 있습니다.Depending on how you designed your application for business continuity, the workflow to execute the drill can vary. 아래에 Azure SQL Database와 관련하여 재해 복구 훈련을 수행하는 모범 사례가 설명되어 있습니다.Below we describe the best practices conducting a disaster recovery drill in the context of Azure SQL Database.

지역 복원Geo-restore

재해 복구 훈련을 수행할 때 잠재적인 데이터 손실을 방지하려면, 프로덕션 환경의 복사본을 만들고 이를 응용 프로그램의 장애 조치 워크플로를 검사하는 데 사용하는 방법으로 훈련을 수행하는 것이 좋습니다.To prevent the potential data loss when conducting a disaster recovery drill, we recommend performing the drill using a test environment by creating a copy of the production environment and using it to verify the application’s failover workflow.

중단 시뮬레이션Outage simulation

중단을 시뮬레이션하기 위해 원본 데이터베이스를 삭제하거나 이름을 바꿀 수 있습니다.To simulate the outage, you can delete or rename the source database. 그러면 응용 프로그램 연결이 실패합니다.This causes application connectivity failures.

복구Recovery

  • 여기에 설명된 대로 서로 다른 서버에 데이터베이스의 지역 복원을 수행합니다.Perform the geo-restore of the database into a different server as described here.
  • 복구된 데이터베이스에 연결하도록 응용 프로그램 구성을 변경하고 복구 후 데이터베이스 구성 가이드에 따라 복구를 완료합니다.Change the application configuration to connect to the recovered database and follow the Configure a database after recovery guide to complete the recovery.

유효성 검사Validation

  • 복구 후 응용 프로그램 무결성 검사(연결 문자열, 로그인, 기본 기능 테스트 또는 기타 표준 응용 프로그램 로그아웃 절차의 유효성 검사 부분 포함)로 훈련을 완료합니다.Complete the drill by verifying the application integrity post recovery (including connection strings, logins, basic functionality testing or other validations part of standard application signoffs procedures).

지역에서 복제Geo-replication

지역에서 복제를 사용하여 보호되는 데이터베이스의 경우에는 보조 데이터베이스로의 계획된 장애 조치가 연습에 포함됩니다.For a database that is protected using geo-replication the drill exercise involves planned failover to the secondary database. 계획된 장애 조치(failover)는 역할이 전환될 때 주 데이터베이스와 보조 데이터베이스가 동기화 상태로 유지되도록 합니다.The planned failover ensures that the primary and the secondary databases remain in sync when the roles are switched. 계획되지 않은 장애 조치와 달리 이 작업에서는 데이터가 손실되지 않으므로 프로덕션 환경에서 연습을 수행할 수 있습니다.Unlike the unplanned failover, this operation does not result in data loss, so the drill can be performed in the production environment.

중단 시뮬레이션Outage simulation

중단을 시뮬레이션하기 위해 데이터베이스에 연결된 웹 응용 프로그램 또는 가상 컴퓨터를 비활성화할 수 있습니다.To simulate the outage, you can disable the web application or virtual machine connected to the database. 그러면 웹 클라이언트에 대한 연결이 실패합니다.This results in the connectivity failures for the web clients.

복구Recovery

  • DR 지역의 응용 프로그램 구성이 완전히 액세스 가능한 새로운 주 데이터베이스가 될 이전의 보조 데이터베이스를 가리키는지 확인합니다.Make sure the application configuration in the DR region points to the former secondary which becomes the fully accessible new primary.
  • 계획된 장애 조치(failover) 를 수행하여 보조 데이터베이스를 새로운 주 데이터베이스로 지정합니다.Perform planned failover to make the secondary database a new primary
  • 복구 후 데이터베이스 구성 가이드에 따라 복구를 완료합니다.Follow the Configure a database after recovery guide to complete the recovery.

유효성 검사Validation

  • 복구 후 응용 프로그램 무결성 검사(연결 문자열, 로그인, 기본 기능 테스트 또는 기타 표준 응용 프로그램 로그아웃 절차의 유효성 검사 부분 포함)로 훈련을 완료합니다.Complete the drill by verifying the application integrity post recovery (including connection strings, logins, basic functionality testing or other validations part of standard application signoffs procedures).

다음 단계Next steps