Azure Database for MySQL の探索

完了

Azure Database for MySQL への移行により組織がメリットを得られるかどうかを判断するために、まず、DBaaS データベースの概要と、Azure および Azure Database for MySQL で MySQL をホストするための適切なオプションについて説明します。

DBaaS とは

DBaaS を使用すると、組織は仮想マシン (VM) やその他の基盤となるインフラストラクチャを管理することなく、クラウド内のデータベースを設定してアクセスできます。 フル マネージド サービスである Azure Database for MySQL は、DBaaS プラットフォーム上でデータベース アプリケーションの開発を可能にし、すべての設定とメンテナンスを Microsoft Azure が担当することで、この例を示しています。

Note

DBaaS オファリングは、サービスとしてのプラットフォーム (PaaS) オファリングのより広範なカテゴリに分類されます。

MySQL とは

MySQL は、Web アプリケーションとミッション クリティカルなシステムをホストするために開発者とエンタープライズ レベルの組織の両方で広く使用されている、オープンソースで堅牢なデータベース プラットフォームです。 インターネット規模の OLTP ワークロード向けに最適化されており、Web 開発で最も一般的なテクノロジ スタックの 1 つである LAMP (Linux、Apache、MySQL、PHP) スタックの重要な部分です。

適切なホスティング オプションを選択する方法

Azure では、MySQL ワークロードは、サービスとしてのホスト型 VM インフラストラクチャ (IaaS) またはサービスとしてのホスト型プラットフォーム (PaaS) で実行できます。これは、サービスとしてのリレーショナル データベース (DBaaS) とも呼ばれます。 このモジュールで説明する 2 つのホスティング オプションには、次が含まれます。

  • Azure Database for MySQL - フレキシブル サーバー:Azure Database for MySQL - フレキシブル サーバーは、Azure でホストされるフル マネージドのリレーショナル DBaaS であり、オープンソースの MySQL Community Edition に基づいています。 可用性、メンテナンス、セキュリティ、パフォーマンスの機能がいくつか用意されており、すぐに使用でき、管理はほとんど必要ありませんが、データベース管理機能と構成設定に対するきめ細かな制御と柔軟性も実現します。

Note

このモジュール全体で、"Azure Database for MySQL" が表示されたら、Azure Database for MySQL - フレキシブル サーバーを参照しています。

  • Azure VM 上の MySQL:IaaS が必要な場合、このオプションを使用すると、DBaaS のメリットを必要としないシナリオに適した、Azure のマネージド VM 上の MySQL サーバーを柔軟に管理できます。

これらのオプションについて詳しく見ていきましょう。

Azure Database for MySQL - フレキシブル サーバー デプロイ モード

Azure Database for MySQL は、Azure でホストされるフル マネージドでリレーショナルの DBaaS プラットフォームです。 このサービスは次の機能を提供します:

  • ゾーン冗長構成、リージョン間レプリケーション、ユニバーサル Geo 復元など、高可用性とディザスター リカバリーのオプション。

  • 自動バックアップとオンデマンド バックアップを使用したデータ保護と、長期保有のオプション (プレビュー期間は最大 10 年)。

    Note

    Azure Database for MySQL では、自動バックアップとポイントインタイム回復が最大 35 日間使用されます。この復元は、個別に使用することも、長期保有期間に加えて使用することもできます。

  • 次のコンポーネントの中で、サービスが最も安全で最新の状態になるように、メンテナンスを自動化します:

    • 基盤となるハードウェア
    • OS
    • データベース エンジン

    このサービスでは、スケジュールされたメンテナンス期間を柔軟に選択することもできます。

  • ワークロードの需要に合わせて役立つ IOPS の自動スケーリングや高速ログなどの機能を備えた予測可能なパフォーマンス。

  • サーバーとバースト可能なコンピューティング レベルを開始/停止する機能を備えたエラスティック スケーリングと最適化されたコスト。

  • 保存中および転送中の機密データを保護するために役立つエンタープライズ レベルのセキュリティとコンプライアンス機能。

  • カスタマー マネージド キーによるデータ暗号化、Azure Private Link とのプライベート接続、Microsoft Defender for Cloud を使用した簡素化された脅威保護など、高度なセキュリティ機能。

  • 大規模なデプロイの管理を効率化する監視および自動化ツール。

これらの標準機能では、実装と構成に関する管理作業はほとんど必要ありません。

Azure Database for MySQL は、MySQL Workbench などの一般的なツールをサポートし、MySQL 拡張機能を介して Azure Data Studio と統合し、開発者にとって使い慣れたワークフローを維持します。 このサービスにより、お気に入りのツール、言語、フレームワークを使用してアプリケーションを開発し、App Services や AKS などの Azure サービスと統合して迅速にデプロイし、GitHub または Azure DevOps を使用して CI/CD タスクを自動化するための柔軟性が提供されます。

次のようなクラウド ネイティブ アプリおよびソリューションをサポートするには、このデプロイ モードを検討してください:

  • メンテナンス スケジュールの十分な柔軟性と制御によって、自動パッチ適用を管理するように設計されているもの。

  • 高可用性をサポートするには、次のいずれかを行います:

    • 1 つの可用性ゾーン内
    • 複数の可用性ゾーン
  • 次の機能を使用して、コスト最適化制御のメリットを得ることができます:

    • サーバーを起動および停止する。
    • バースト可能なコンピューティングを実装します。

    ヒント

    これらの柔軟なコスト最適化制御は、常に完全なコンピューティング容量を必要としないワークロードに役立ちます。

  • データベースでコンピューティングとストレージを動的にスケーリングする必要があります。

  • MySQL 構成設定を制御およびカスタマイズする機能と共に、すぐに使用できるパフォーマンスが必要です。

  • 開発エクスペリエンスの簡素化と Azure エコシステムとの緊密な相互運用性からメリットが得られます。

Azure VM 上の MySQL

このホスティング オプションは、フル マネージド データベース サービスではなく、IaaS として分類されます。 これにより、Azure クラウド プラットフォーム上のマネージド VM 内で MySQL を実行できます。

ヒント

ホストされている VM に、MySQL の最近のすべてのバージョンとエディションをインストールできます。

このオプションは、IaaS デプロイによって提供されるより高度なコントロールが必要で、DBaaS プラットフォームに含まれる使いやすさやその他の利点を省略できる場合にのみ検討してください。

ホスティング オプションの違い

MySQL を Azure にデプロイするには、さまざまな方法があります。 次の表は、これらの各方法の主な特性を示したものです。

ホスティング オプション まとめ
Azure Database for MySQL 広範なユーザー構成と制御を備えたフル マネージド DBaaS プラットフォーム。
Azure VM 上の MySQL データベースの実装を完全に制御する IaaS ベースのオプション。

機能の違いをまとめると次のようになります。

  • MySQL バージョンのサポート:
    • Azure Database for MySQL では、MySQL バージョン 5.7 と 8.0 がサポートされており、メジャー バージョンとマイナー バージョンのアップグレードが自動化されています。
    • Azure VM 上の MySQL では、任意の MySQL バージョンのインストールが可能になり、従来のサポートに柔軟性が提供されます。
  • コンピューティングのスケーリング:
    • どちらのオプションも、さまざまな負荷需要に対応するためのスケーラブルなリソースを提供します。
  • ネットワーク接続:
    • 両方のオプションがサポートされています。
      • サーバー ファイアウォールを備えたパブリック エンドポイント。
      • Private Link サポート付きのプライベート アクセス。
      • Virtual Network 統合を使用したプライベート アクセス。
  • SSL/TLS 接続:
    • セキュリティで保護されたデータ転送を保証するために、両方のホスティング方法でサポートされます。
  • ストレージと IOPS:
    • Azure Database for MySQL は、5 ギガバイト (GiB) から 32 テラバイト (TiB) のストレージ サイズをサポートしています。 また、ストレージの自動スケーリングと IOPS の自動スケーリングもサポートされています。
    • Azure VM 上の MySQL では 32 GiB から 32,767 GiB までサポートされていますが、オンライン ストレージまたは IOPS のスケーリングはサポートされていません。
  • OS と MySQL の更新プログラムと修正プログラムの適用::
    • Azure Database for MySQL の自動。
    • Azure VM 上の MySQL の場合はエンド ユーザーによって管理されます。
  • 高可用性:
    • Azure Database for MySQL は、複数の可用性ゾーンを備えた組み込みの高可用性をサポートしています。
    • Azure VM 上の MySQL では、これらの設定をユーザーがカスタム管理する必要があります。
  • 保存時のデータ暗号化:
    • Azure Database for MySQL は、サービス マネージド キーまたは顧客マネージド キーを使用した保存データの暗号化をサポートしています。
    • Azure VM 上の MySQL に保存時のデータ暗号化を実装するには、手動による介入が必要です。
  • バックアップ:
    • Azure Database for MySQL では、最大 35 日間構成可能なデータ保持期間を持つ自動バックアップが提供され、最大 10 年間の長期保有がサポートされるようになりました。
    • Azure VM 上のバックアップは手動で管理する必要があります。 さらに、Azure Database for MySQL には、Azure VM 上で MySQL を実行しているときには利用できなかったり、手動で管理する必要があったりする、監視やアラート、最大 10 個の読み取りレプリカをスケールアウトする機能、Microsoft Entra ID 認証、Microsoft Defender for Cloud サポートなどの機能も組み込まれています。

さらに、Azure Database for MySQL には、Azure VM 上で MySQL を実行しているときには利用できなかったり、手動で管理する必要があったりする、監視やアラート、最大 10 個の読み取りレプリカをスケールアウトする機能、Microsoft Entra ID 認証、Microsoft Defender for Cloud サポートなどの機能も組み込まれています。

次のユニットでは、Azure Database for MySQL についてさらに詳しく調べてみましょう。