다음을 통해 공유


Azure Database for MySQL - 유연한 서버란?

적용 대상: Azure Database for MySQL - 유연한 서버

이 문서에서는 유연한 서버 배포 모델의 핵심 개념에 대한 개요와 소개를 제공합니다. 워크로드에 적절한 배포 옵션에 관한 자세한 내용은 Azure에서 올바른 MySQL 서버 옵션 선택을 참조하세요.

Azure Database for MySQL - 유연한 서버는 Microsoft Cloud의 완전 관리형, 프로덕션 레디 관계형 데이터베이스 서비스입니다. 이 서비스는 MySQL Community Edition(GPLv2 라이선스에서 사용 가능) 데이터 엔진 기반이며 버전 5.6(사용 중지됨), 5.7, 8.0이 있습니다. 이 서비스를 이용하면 데이터베이스 관리 기능과 구성 설정을 세분화하여 제어하고 유연하게 관리할 수 있습니다. 현재 다양한 Azure 지역에서 정식 출시되었습니다.

Azure Database for MySQL - 유연한 서버 제공 내용:

  • 영역 중복 및 동일한 영역의 고가용성(HA).
  • 유지 관리 기간 예약 기능.
  • 최대 35일간 자동 백업 및 특정 시점 복원을 사용해 데이터 보호.
  • 서비스를 안전하고 최신 상태로 유지하는 데 도움이 되는 기본 하드웨어, 운영 체제, 데이터베이스 엔진 자동 패칭 및 유지 관리.
  • 포용성 있는 종량제 가격 책정을 사용해 성능 예측 가능.
  • 몇 초 내에 탄력적 스케일링
  • 저렴한 버스트 가능 컴퓨터 계층을 통해 비용 최적화 제어, 서버를 중지하고 시작하는 기능.
  • 엔터프라이즈급 보안, 규정 준수, 개인정보 보호를 통해 미사용 및 사용 중인 중요한 데이터 보호.
  • 모니터링 및 자동화를 통해 대규모 배포 관리 간소화.
  • 다양한 방법으로 지원받기.

이러한 기능은 추가 비용 없이 제공되며 관리도 거의 필요하지 않습니다. 이러한 기능을 이용하면 신속한 앱 개발에 집중할 수 있고, 가상 머신과 인프라를 관리하는 데 시간과 리소스를 할당할 필요가 없어 출시 기간을 단축하는 데 도움이 됩니다. 또한 오픈 소스 도구 및 사용자가 선택한 플랫폼을 사용해 애플리케이션을 계속 개발할 수 있으므로 새로운 기술을 배우지 않고도 비즈니스에서 요구하는 속도와 효율성을 제공할 수 있습니다.

Azure Database for MySQL - 유연한 서버는 예약 인스턴스도 지원합니다. 프로덕션 워크로드에 예측 가능한 컴퓨터 용량 요구 사항이 있는 경우, 예약 인스턴스를 사용하면 비용 절감에 도움이 됩니다.

Azure Database for MySQL - 유연한 서버 최신 업데이트에 관한 자세한 내용은 Azure Database for MySQL - 유연한 서버의 새로운 기능을 참조하세요.

Azrue 데이터베이스 서비스와 MySQL의 관계를 표시한 다이어그램입니다.

아키텍처 개요

유연한 서버 배포 옵션은 세 가지 컴퓨팅 계층을 제공하며, 각자 컴퓨팅과 메모리 용량이 달라 데이터베이스 워크로드를 지원합니다.

  • 버스트 가능 계층은 전체 컴퓨팅 용량이 지속적으로 필요하지 않은, 비용이 저렴한 개발 워크로드와 동시성이 낮은 워크로드에 가장 적합합니다.
  • 범용중요 비즈니스용은 높은 동시성, 규모, 예측 가능한 성능이 필요한 프로덕션 워크로드에 더 적합합니다.

첫 앱을 저렴한 비용으로 버스트 가능 계층에서 빌드한 다음, 솔루션 요구 사항에 맞춰 규모를 조정할 수 있습니다. 자세한 내용은 Azure Database for MySQL - 유연한 서버 서비스 계층을 참조하세요.

유연한 서버 아키텍처를 사용하는 경우, 가용성 영역 하나에서나 여러 가용성 영역에 걸쳐 고가용성을 선택할 수 있습니다. 유연한 서버는 다음에 가장 적합합니다.

  • 간편한 배포, 간소화된 스케일링, 데이터베이스 관리 오버헤드가 적어 백업, 고가용성, 보안, 모니터링에 적합.
  • 컨트롤과 사용자 지정이 강화된 MySQL 커뮤니티 버전이 필요한 애플리케이션 개발.
  • 같은 영역이나 영역 중복 고가용성, 관리형 유지 관리 기간을 포함한 프로덕션 워크로드.
  • 간소한 개발 경험.

유연한 서버 아키텍처의 다이어그램입니다.

12개월 무료 제공

Azure 무료 계정을 사용하면 Azure Database for MySQL - 유연한 서버를 12개월간 무료로 이용할 수 있습니다. 이 오퍼에 적용되는 월별 최대 한도는 다음과 같습니다.

  • 버스트 가능 Standard_B1ms 가상 머신 750시간 사용. 매달 데이터베이스를 중단 없이 실행하는 데 충분한 시간입니다.
  • 스토리지 32GB, 백업 스토리지 32GB.

이 오퍼를 사용해 유연한 서버에 적합한 Azure 데이터베이스 애플리케이션을 개발, 배포할 수 있습니다. Azure 무료 계정을 사용해 Azure Database for MySQL - 유연한 서버 인스턴스를 만들고 사용하는 방법에 관한 자세한 내용은 이 자습서를 참조하세요.

가용성 영역의 고가용성

Azure Database for MySQL - 유연한 서버를 사용하면 자동 장애 조치(failover)로 고가용성을 구성할 수 있습니다. 고가용성 솔루션을 이용하면 커밋된 데이터가 오류로 인해 손실되지 않도록 보장하고, 애플리케이션의 전반적인 작동 시간을 개선하는 데 도움이 됩니다.

고가용성을 구성하면 유연한 서버가 자동으로 대기 복제본을 프로비저닝하여 관리합니다. 주 복제본과 보조 복제본에 대해 프로비저닝된 컴퓨팅 및 스토리지에 대한 요금이 청구됩니다.

다음 두 가지의 고가용성 아키텍처 모델이 있습니다.

  • 영역 중복 고가용성(HA): 이 옵션을 이용하면 완전 격리를 제공하며, 여러 가용성 영역에서 인프라 중복성을 구성해야 합니다. 한 가용성 영역 내에서, 가용성 영역 전체에서 대기 시간이 발생해도 괜찮은 경우, 각종 인프라 장애에 대한 최고 수준의 가용성을 제공합니다.

    영역 중복 HA는 여러 가용성 영역과 영역 중복 프리미엄 파일 공유를 지원하는 Azure 지역 하위 집합에서 사용할 수 있습니다.

    영역 중복 고가용성(HA)의 다이어그램입니다.

  • 동일한 영역의 고가용성: 이 옵션을 이용하면 네트워크 대기 시간이 짧은 인프라 중복을 제공합니다. 기본 서버와 대기 서버가 같은 가용성 영역에 있기 때문입니다. 이 경우 여러 영역에서 애플리케이션 중복을 구성하지 않아도 고가용성을 제공합니다.

    동일한 영역의 HA는 Azure Database for MySQL - 유연한 서버 인스턴스를 만들 수 있는 모든 Azure 지역에서 사용할 수 있습니다.

    동일한 영역의 고가용성 다이어그램입니다.

자세한 내용은 Azure Database for MySQL - 유연한 서버의 고가용성(HA) 개념을 참조하세요.

관리되는 유지 관리 기간을 사용하여 자동 패치

이 서비스는 기본 하드웨어, 운영 체제, 데이터베이스 엔진의 자동 패칭을 수행합니다. 패치에는 보안 및 소프트웨어 업데이트가 포함됩니다. MySQL 엔진의 경우, 계획된 유지 관리 릴리스에 부 버전 업그레이드도 포함합니다.

사용자는 패칭 일정을 시스템 관리형으로 구성할 수도 있고, 자체적으로 사용자 지정 일정을 정의할 수도 있습니다. 유지 관리 일정 중에 패치가 적용되고, 서버를 다시 시작해야 할 수 있습니다. 사용자 지정 일정을 사용하면 패치 주기를 예측할 수 있게 하고, 비즈니스에 미치는 영향이 최소한의 수준인 유지 관리 기간을 선택할 수 있습니다. 이 서비스는 연속 통합 및 릴리스를 위해 월별 릴리스 일정을 따릅니다.

자세한 내용은 Azure Database for MySQL - 유연한 서버의 예약된 유지 관리를 참조하세요.

자동 백업

Azure Database for MySQL - 유연한 서버 서비스는 자동으로 서버 백업을 만들고 이를 사용자가 구성한 로컬 중복 또는 지역 중복 스토리지에 저장합니다. 백업을 사용하면 서버를 백업 보존 기간 내 어느 시점으로든 복원할 수 있습니다.

보존 기간은 1~35일로 구성할 수 있습니다. 기본값은 7일입니다. 모든 백업은 AES 256비트 암호화를 통해 암호화됩니다.

자세한 내용은 Azure Database for MySQL - 유연한 서버 백업 및 복원을 참조하세요.

네트워크 격리

Azure Database for MySQL - 유연한 서버에 연결하는 네트워킹 옵션은 2가지입니다.

  • 프라이빗 액세스(가상 네트워크 통합): Azure Database for MySQL - 유연한 서버 인스턴스를 Azure 가상 네트워크에 배포할 수 있습니다. 가상 네트워크의 리소스는 개인 IP 주소를 통해 통신할 수 있습니다.

    가상 네트워크 통합은 다음 기능을 원하는 경우 선택하세요.

    • 개인 IP 주소를 사용해 같은 가상 네트워크의 Azure 리소스에서 Azure Database for MySQL - 유연한 서버 인스턴스에 연결.
    • VPN(가상 사설망) 또는 Azure ExpressRoute를 사용해 비 Azure 리소스에서 Azure Database for MySQL - 유연한 서버 인스턴스에 연결.
    • 퍼블릭 엔드포인트 지양.
  • 퍼블릭 액세스(허용된 IP 주소): 퍼블릭 엔드포인트를 사용해 Azure Database for MySQL - 유연한 서버 인스턴스를 배포할 수 있습니다. 퍼블릭 엔드포인트는 공개적으로 확인할 수 있는 DNS 주소입니다. 서버에 액세스할 권한을 부여할 IP 주소 범위를 선택할 수 있습니다. 이러한 유형의 권한을 방화벽 규칙이라고 합니다.

자세한 내용은 Azure Database for MySQL - 유연한 서버에 대한 연결 및 네트워킹 개념을 참조하세요.

성능 및 규모에 맞는 빠른 조정

한 달에 불과 몇 달러의 비용으로 작은 데이터베이스에 첫 번째 앱을 빌드하고, 이후에 솔루션의 요구에 맞게 원활하게 스케일링할 수 있습니다. 스토리지 크기 조정은 온라인이며, Azure Database for MySQL - 유연한 서버의 스토리지 초과 기능을 지원합니다.

Azure Database for MySQL - 유연한 서버를 사용하면 스토리지와 관계없이 무료 IOPS 한도를 넘어 추가로 초당 입/출력 작업(IOPS)을 프로비저닝할 수 있습니다. 이 기능을 사용하면 언제든 워크로드 요구 사항에 따라 프로비저닝되는 IOPS 양을 늘리거나 줄일 수 있습니다. 동적 확장성을 사용하면 데이터베이스가 빠르게 변화하는 리소스 요구 사항에 투명하게 대응할 수 있습니다. 사용하는 리소스에 대해서만 요금을 지불합니다.

자세한 내용은 Azure Database for MySQL - 유연한 서버 서비스 계층을 참조하세요.

읽기 복제본을 사용해 읽기 워크로드 스케일 아웃

MySQL은 인터넷 규모 웹, 모바일 애플리케이션을 실행하는 데 애용되는 대중적인 데이터베이스 엔진입니다. Microsoft 고객은 온라인 교육, 동영상 스트리밍, 디지털 결제 솔루션, 전자상거래 플랫폼, 게임 서비스, 뉴스 포털, 정부 기관 및 의료 서비스 웹사이트 등으로 이를 활용합니다. 이러한 서비스는 웹이나 모바일 앱의 트래픽 증가에 따라 서비스를 제공하고 스케일링해야 합니다.

애플리케이션은 보통 Java나 PHP로 개발되며, 다음 중 하나에 해당합니다.

App Service 또는 AKS가 기본 인프라인데 Virtual Machine Scale Sets를 사용하면 새 가상 머신을 즉시 프로비저닝하고 애플리케이션의 상태 비저장 구성 요소를 복제하여 요청에 대응하기 때문에 애플리케이션 스케일링이 간소해집니다. 단, 데이터베이스가 중앙 집중형 상태 저장 구성 요소로서 병목 현상이 일어나는 경우가 많습니다.

읽기 복제본 기능을 사용하면 Azure Database for MySQL - 유연한 서버 인스턴스의 데이터를 읽기 전용 서버로 복제할 수 있습니다. 원본 서버에서 최대 10개의 복제본으로 복제할 수 있습니다.

복제본은 MySQL 엔진의 기본 이진 로그(bin log) 파일 위치 기반 복제 기술을 통해 비동기식으로 업데이트됩니다. ProxySQL 과 같은 부하 분산 장치 솔루션을 사용하면 애플리케이션 리팩터링 비용을 들이지 않고도 읽기 복제본에 대한 애플리케이션 워크로드를 원활하게 스케일 아웃할 수 있습니다.

자세한 내용은 Azure Database for MySQL - 유연한 서버의 읽기 복제본을 참조하세요.

입력 데이터 복제를 사용해 하이브리드 또는 다중 클라우드 데이터 동기화

입력 데이터 복제 기능을 사용하면 외부 MySQL 서버의 데이터를 Azure Database for MySQL - 유연한 서버와 동기화할 수 있습니다. 외부 서버는 온-프레미스일 수도 있고, 가상 머신이나 Azure Database for MySQL - 단일 서버에 있을 수도 있고, 다른 클라우드 공급자가 호스팅하는 데이터베이스에 있을 수도 있습니다.

입력 데이터 복제는 binlog 파일에서의 위치 기반입니다. 이 기능을 사용할 때 고려해야 할 주된 시나리오:

자세한 정보는 Azure Database for MySQL - 유연한 서버로 데이터 복제를 참조하세요.

온디맨드 서버 중지/시작

Azure Database for MySQL - 유연한 서버를 사용하면 온디맨드 방식으로 서버를 중지, 시작하여 비용을 최적화할 수 있습니다. 서버가 중지되는 즉시 컴퓨팅 계층에 대한 대금 청구가 중지됩니다. 이 기능을 사용하면 배포, 테스트, 시간 제한이 있는 예측 가능한 프로덕션 워크로드 중에 비용을 절약하는 데 도움이 됩니다. 서버는 30일간 중지된 상태를 유지합니다(단, 사용자가 그보다 먼저 다시 시작하는 경우는 예외).

자세한 내용은 Azure Database for MySQL - 유연한 서버의 서버 개념을 참조하세요.

엔터프라이즈급 보안, 규정 준수, 개인정보 보호

Azure Database for MySQL - 유연한 서버는 미사용 데이터의 스토리지 암호화에 FIPS 140-2 검증된 암호화 모듈을 사용합니다. 데이터(백업 포함)와 쿼리를 실행하는 동안 만들어진 임시 파일이 암호화됩니다.

서비스는 Azure 스토리지 암호화에 포함된 AES 256비트 암호화를 사용하며, 키는 시스템에서 관리됩니다(기본값). 또한 Azure Key Vault나 관리형 하드웨어 보안 모듈에 저장된 고객 관리형 키를 사용해 미사용 데이터를 암호화할 수도 있습니다. 자세한 내용은 Azure Database for MySQL - 유연한 서버의 고객 관리형 키를 사용한 데이터 암호화를 참조하세요.

Azure Database for MySQL - 유연한 서버는 사용 중인 데이터를 기본 적용된 전송 계층 보안(TLS)으로 암호화합니다. Azure Database for MySQL - 유연한 서버는 TLS 1.2를 사용하는 암호화된 연결을 지원합니다. TLS 1.0과 TLS 1.1을 사용하는 모든 수신되는 연결은 거부됩니다. TLS 적용을 해제하려면 require_secure_transport 서버 매개 변수를 설정하고, 서버에 대하여 최소 tls_version 값을 설정하면 됩니다. 자세한 내용은 암호화된 연결을 사용해 Azure Database for MySQL - 유연한 서버에 연결을 참조하세요.

Azure Database for MySQL - 유연한 서버는 가상 네트워크 통합을 통해 서버에 완전 프라이빗 방식으로 액세스를 허용합니다. 가상 네트워크의 서버에는 프라이빗 IP 주소를 통해서만 연결할 수 있습니다. 가상 네트워크 통합의 경우, 퍼블릭 액세스가 거부되고 퍼블릭 엔드포인트를 통해서는 서버에 연결할 수 없습니다. 자세한 내용은 Azure Database for MySQL - 유연한 서버에 대한 연결 및 네트워킹 개념을 참조하세요.

모니터링 및 경고

Azure Database for MySQL - 유연한 서버에는 기본 제공되는 성능 모니터링 및 경고 기능이 있습니다. 모든 Azure 메트릭의 빈도는 1분입니다. 메트릭마다 30일의 기록을 제공합니다.

메트릭에 대한 경고를 구성할 수 있습니다. Azure Database for MySQL - 유연한 서버는 호스트 서버 메트릭을 노출하여 리소스 사용률을 모니터링하고, 느린 쿼리 로그를 구성하도록 허용합니다. 이러한 도구를 사용하면 워크로드를 신속하게 최적화하고 서버를 최고 성능에 맞춰 구성할 수 있습니다.

Azure Database for MySQL - 유연한 서버에서는 Azure Monitor 워크북을 사용해 느린 쿼리와 감사 로그 데이터를 시각화할 수 있습니다. 통합 문서를 사용하면 데이터를 분석하고 Azure Portal 내에서 풍부한 시각적 보고서를 만들 수 있는 유연한 캔버스를 얻을 수 있습니다. Azure Database for MySQL - 유연한 서버는 서버 개요, 감사, 쿼리 성능 Insight 등 세 가지 워크북 템플릿을 제공합니다.

쿼리 성능 Insight 워크북을 사용하면 다음과 같은 정보를 제공하므로 데이터베이스 성능 문제 해결에 들이는 시간을 줄일 수 있습니다.

  • 실행 시간이 오래 걸리는 주요 쿼리와 해당 쿼리의 추세
  • 쿼리 세부 정보: 쿼리 텍스트와 실행 기록을 쿼리 시간(최소, 최대, 평균, 표준 편차) 기준으로 조회합니다.
  • 리소스 사용률(CPU, 메모리, 스토리지).

또한 Percona Monitoring and Management와 같은 커뮤니티 모니터링 도구를 사용하고 이를 Azure Database for MySQL - 유연한 서버와 통합할 수도 있습니다.

자세한 내용은 Azure Database for MySQL - 유연한 서버 모니터를 참조하세요.

마이그레이션

Azure Database for MySQL - 유연한 서버는 MySQL 커뮤니티 버전을 실행합니다. 이 디자인을 이용하면 완전한 애플리케이션 호환성이 보장되고, MySQL 엔진에서 개발된 기존 애플리케이션을 Azure Database for MySQL - 유연한 서버로 마이그레이션하는 데 리팩토링 비용이 최소한의수준으로 발생합니다. Azure Database for MySQL - 유연한 서버로 마이그레이션하는 옵션은 다음과 같습니다.

오프라인 마이그레이션

Azure Database Migration Service는 원본과 Azure 사이 네트워크 대역폭이 양호한 경우(예: 고속 ExpressRoute 연결) 사용하세요. 단계별 지침은 자습서: DMS를 사용하여 MySQL을 Azure Database for MySQL로 오프라인 마이그레이션을 참조하세요.

mydumper 및 myloader를 사용해 압축 설정을 사용하여 저속 네트워크(예: 퍼블릭 인터넷)를 통해 데이터를 효율적으로 이동합니다. 단계별 지침은 mydumper/myloader를 사용하여 대규모 데이터베이스를 Azure Database for MySQL로 마이그레이션을 참조하세요.

온라인 또는 최소 가동 중지 시간 마이그레이션

초기 시드 배정을 위해 mydumper/myloader-consistent 백업 및 복원과 함께 입력 데이터 복제를 사용합니다. 단계별 지침은 오픈 소스 도구로 Azure Database for MySQL - 단일 서버를 Azure Database for MySQL - 유연한 서버로 마이그레이션을 참조하세요.

간단한 5단계를 통해 Azure Database for MySQL - 단일 서버에서 Azure Database for MySQL - 유연한 서버로 마이그레이션하는 방법은 이 블로그를 참조하세요.

자세한 내용은 Azure Database for MySQL로 마이그레이션하기 위한 적합한 도구 선택을 참조하세요.

Azure 지역

Azure에서 워크로드를 실행하는 이점 중 하나는 글로벌 연결입니다. 현재 Azure Database for MySQL - 유연한 서버는 다음 Azure 지역에서 이용할 수 있습니다.

지역 가용성 동일 영역 HA 영역 중복 HA 지역 중복 백업
오스트레일리아 중부 ✔️ ✔️
오스트레일리아 동부 ✔️ ✔️ ✔️ ✔️
오스트레일리아 남동부 ✔️ ✔️ ✔️
브라질 남부 ✔️ ✔️ ✔️ ✔️
캐나다 중부 ✔️ ✔️ ✔️ ✔️
캐나다 동부 ✔️ ✔️ ✔️
인도 중부 ✔️ ✔️ ✔️ ✔️
미국 중부 ✔️ ✔️ ✔️ ✔️
중국 동부 2 ✔️ ✔️ ✔️
중국 동부 3 ✔️ ✔️ ✔️
중국 북부 2 ✔️ ✔️ ✔️
중국 북부 3 ✔️ ✔️ ✔️ ✔️
동아시아(홍콩 SAR) ✔️ ✔️ ✔️ ✔️
미국 동부 ✔️ ✔️ ✔️ ✔️
미국 동부 2 ✔️ ✔️ ✔️ ✔️
프랑스 중부 ✔️ ✔️ ✔️ ✔️
프랑스 남부 ✔️ ✔️ ✔️
독일 중서부 ✔️ ✔️ ✔️ ✔️
독일 북부 ✔️ ✔️ ✔️
이스라엘 중부 ✔️ ✔️ ✔️
이탈리아 북부 ✔️ ✔️ ✔️
일본 동부 ✔️ ✔️ ✔️ ✔️
일본 서부 ✔️ ✔️ ✔️
Jio 인도 서부 ✔️ ✔️
한국 중부 ✔️ ✔️ ✔️ ✔️
대한민국 남부 ✔️ ✔️ ✔️
미국 중북부 ✔️ ✔️ ✔️
북유럽 ✔️ ✔️ ✔️ ✔️
노르웨이 동부 ✔️ ✔️ ✔️ ✔️
노르웨이 서부 ✔️ ✔️
폴란드 중부 ✔️ ✔️ ✔️
카타르 중부 ✔️ ✔️ ✔️
남아프리카 북부 ✔️ ✔️ ✔️ ✔️
남아프리카 공화국 서부 ✔️ ✔️ ✔️
미국 중남부 ✔️ ✔️ ✔️ ✔️
인도 남부 ✔️ ✔️ ✔️
동남 아시아 ✔️ ✔️ ✔️ ✔️
스페인 중부 ✔️ ✔️ ✔️
스웨덴 중부 ✔️ ✔️ ✔️
스위스 북부 ✔️ ✔️ ✔️ ✔️
스위스 서부 ✔️ ✔️ ✔️
대만 북부 ✔️ ✔️
대만 북서부 ✔️ ✔️
아랍에미리트 중부 ✔️ ✔️ ✔️
아랍에미리트 북부 ✔️ ✔️ ✔️ ✔️
영국 남부 ✔️ ✔️ ✔️ ✔️
영국 서부 ✔️ ✔️ ✔️
USGov 버지니아 ✔️ ✔️
USGov 애리조나 ✔️ ✔️ ✔️
USGov 텍사스 ✔️ ✔️ ✔️
미국 중서부 ✔️ ✔️ ✔️
서유럽 ✔️ ✔️ ✔️ ✔️
미국 서부 ✔️ ✔️ ✔️
미국 서부 2 ✔️ ✔️ ✔️ ✔️
미국 서부 3 ✔️ ✔️ ✔️ ✔️

피드백 및 지원

Azure Database for MySQL - 유연한 서버를 다루는 것과 관련해 궁금한 점이나 제안할 사항이 있으면 다음 연락처로 문의 바랍니다.