Azure Database for MySQL이 작동하는 방식

완료됨

이 단원에서는 Azure Database for MySQL이 작동하는 방식을 살펴봅니다. 현재 MySQL을 사용하고 있으며 Azure를 사용하여 MySQL 앱을 호스트하고자 하는 경우에는 다음 호스팅 방법 중 하나를 선택해야 합니다.

  • PaaS, Azure Database for MySQL - 유연한 서버 사용
  • IaaS: Azure VM의 MySQL 사용

이 단원에서는 각 호스팅 옵션에서의 차이점에 대해 자세히 알아봅니다. 각 옵션과 모드에서 제공하는 기능과 특징, 요구 사항도 살펴봅니다.

호스팅 옵션은 어떻게 다른가요?

MySQL은 여러 다른 방법으로 Azure에 배포할 수 있습니다. 다음 표에는 각 방법의 주요 특징이 나와 있습니다.

호스팅 옵션 요약
Azure Database for MySQL 완전 관리형 DBaaS, 필요한 경우 더 많은 사용자 구성 및 컨트롤 제공.
Azure VM의 MySQL IaaS를 사용하는 데이터베이스 구현을 관리합니다.

이번에는 기능상의 차이를 살펴보겠습니다.

  • MySQL 버전:

    • 모든 배포 옵션은 버전 5.7 및 8.0을 지원합니다.
    • Azure VM의 MySQL은 사용자가 설치하려는 MySQL 버전을 지원합니다.
  • 컴퓨팅 스케일링. 모든 옵션은 부하 변경을 수용하는 데 필요한 만큼 스케일링됩니다.

  • 네트워크 연결:

    • 모든 옵션은 서버 방화벽을 사용하여 퍼블릭 엔드포인트를 지원합니다.
    • Azure VM의 MySQL에서는 Private Link를 사용한 프라이빗 액세스가 지원됩니다.
    • 유연한 서버 모드에서는 Virtual Network 통합을 사용한 프라이빗 액세스가 지원됩니다.
  • SSL/TLS 연결은 모든 플랫폼에서 지원됩니다.

  • 스토리지:

    • Azure Database for MySQL은 5GiB(기가바이트)에서 16TiB(테라바이트) 사이의 스토리지 크기를 지원합니다. 온라인 스토리지 스케일링도 지원합니다.
    • Azure VM의 MySQL은 32GiB~32,767GiB 사이를 지원하며, 온라인 스토리지 스케일링은 지원하지 않습니다.
  • 업데이트 및 패치:

    • OS 업데이트:

      • Azure Database for MySQL - 유연한 서버에 대해 자동
      • Azure VM의 MySQL에서는 최종 사용자가 관리합니다.
    • MySQL 패치:

      • Azure Database for MySQL - 유연한 서버에 대해 자동
      • Azure VM의 MySQL에서는 최종 사용자가 관리합니다.
  • 고가용성:

    • Azure Database for MySQL은 여러 가용성 영역이 있는 기본 제공 고가용성을 지원합니다.
    • Azure VM의 MySQL에서는 사용자가 이러한 설정을 직접 관리해야 합니다.
  • 미사용 데이터 암호화:

    • Azure Database for MySQL은 서비스 관리형 키를 사용하여 미사용 데이터 암호화를 지원합니다.
    • Azure VM의 MySQL은 미사용 데이터 암호화를 지원하지 않습니다.
  • 백업:

    • 유연한 서버 모드에서는 백업이 1~35일 동안 보존되면서 자동으로 진행됩니다.
    • Azure VM의 MySQL에서는 백업이 수동으로 관리됩니다.

Azure Database for MySQL 아키텍처

Azure Database for MySQL의 아키텍처를 살펴보겠습니다. 아래 다이어그램에서는 Azure Database for MySQL의 인스턴스가 배포되어 있습니다. 이 인스턴스는 데이터 및 로그를 위해 Azure Premium Storage로 구성되어 있습니다. MySQL은 백업을 위해 로컬 중복 스토리지에도 액세스할 수 있습니다.

이 MySQL 인스턴스는 가용성 영역 1에 호스팅되어 있습니다. 다른 가용성 영역이 있으며 Azure Database for MySQL에서 해당 가용성 영역을 사용할 수도 있습니다. MySQL 인스턴스에 여러 클라이언트 앱이 연결되어 있습니다.

A detailed architecture diagram of Azure Database for MySQL in a typical organization as previously described.

고가용성이 작동하는 방식

MySQL - 유연한 서버에서는 호스팅 서버에 장애가 발생한 경우 단일 가용성 영역에서 다음과 같은 단계가 수행됩니다.

  1. Azure가 새 VM을 프로비저닝합니다.
  2. Azure가 스토리지 및 데이터 파일을 새 VM에 매핑합니다.
  3. Azure가 MySQL 데이터베이스 엔진을 온라인으로 전환합니다.
  4. 클라이언트 앱이 새 MySQL 인스턴스에 다시 연결합니다.

참고

여러 영역에서 고가용성을 프로비저닝한 경우 동일 Azure 지역 내의 다른 가용성 영역에서 상시 대기 서버가 유지됩니다.

백업이 작동하는 방식

사용자는 백업을 사용하여 서버를 보존 기간(35일) 내의 원하는 시점으로 복원할 수 있습니다.

스케일링이 작동하는 방식

Azure Database for MySQL는 세 개의 SKU에서 사용할 수 있습니다.

해당 SKU는 다음과 같습니다.

  • 버스트 가능. 전체 컴퓨팅 용량이 필요하지 않은 저비용 개발 및 낮은 동시성 워크로드에 적합합니다.
  • 범용. 높은 동시성, 스케일링 및 예측 가능한 성능이 필요한 프로덕션 워크로드에 적합합니다.
  • 중요 비즈니스용 높은 동시성, 스케일링 및 예측 가능한 성능이 필요한 프로덕션 워크로드에 적합합니다.

선택한 SKU에 따라 원하는 설정을 구성한 다음 애플리케이션 요구 사항에 맞게 스케일링 설정을 조정할 수 있습니다.

다음으로 Azure Database for MySQL이 조직, 앱, 데이터베이스 워크로드에 적합한지 살펴보겠습니다.