次の方法で共有


Azure SQL Managed Instance とオペレーショナル エクセレンス

Azure SQL Managed Instance は、最も広範な SQL Server データベース エンジンの互換性と、サービスとしてのフル マネージドの常緑プラットフォームのすべての利点を組み合わせた、インテリジェントでスケーラブルなクラウド データベース サービスです。

SQL Managed Instance の高可用性アーキテクチャの目的は、メンテナンス操作や停止の影響を心配することなく、データベースが稼働していることを保証することです。 このソリューションは、次の目的で設計されています。

  • エラーが原因でコミットされたデータが失われないようにします。
  • メンテナンスエラーがワークロードに影響しないようにします。
  • データベースがソフトウェア アーキテクチャの単一障害点にならないことを確認します。

Azure SQL Managed Instance がアプリケーション ワークロードのオペレーショナル エクセレンスをサポートする方法の詳細については、次の記事を参照してください。

次のセクションには、設計上の考慮事項、構成チェックリスト、Azure SQL Managed Instance に固有の推奨構成オプション、およびオペレーショナル エクセレンスが含まれます。

設計に関する考慮事項

Azure SQL Managed Instance には、次の設計上の考慮事項が含まれています。

  • アプリケーション パフォーマンス SLA を定義し、アラートを使用して監視します。 高い回復性を維持するには、アプリケーションのパフォーマンスが誤って許容レベルを下回ったときに迅速に検出することが重要です。 パフォーマンスが SLA を破ったときにアクションを実行できるように、監視ソリューションを使用して主要なクエリ パフォーマンス メトリックにアラートを設定します。
  • 人的ミスから復旧するには、ポイントインタイム リストアを使用します。 ポイントインタイム リストアは、誤って行われた変更からデータを回復するために、データベースを以前の時点に戻します。 詳細については、マネージド インスタンス のポイントインタイム リストア (PITR) のドキュメントを参照してください。
  • サービス障害から復旧するには、ジオリストアを使用します。 geo リストアでは、geo 冗長バックアップから別のリージョンのマネージド インスタンスにデータベースが復元されます。 詳細については、 Geo リストアを使用したデータベースの復旧に関するドキュメントを参照してください
  • 特定の操作に必要な時間を考慮してください。 既存のマネージド インスタンスのスケールアップとスケールダウンに必要な時間を十分にテストし、新しいマネージド インスタンスを作成する時間を分けます。 このタイミング プラクティスにより、時間のかかる操作が RTO と RPO にどのように影響するかを完全に理解できます。
  • Azure Backup を使用して Azure 仮想マシン上の SQL データベースを保護し、停止中の復旧を保証します。 構成されたポリシーに基づいて、Recovery Services コンテナーにバックアップが格納されます。 セカンダリ リージョンまたはサブスクリプションへの復元のために、コンテナーは geo 冗長に設定してください。 Azure Backup を使用してデータベースを復元する方法について説明します。

チェックリスト

オペレーショナル エクセレンスを念頭に置いて Azure SQL Managed Instance を構成しましたか?

  • Business Critical レベルを使用する。
  • セカンダリ インスタンスと自動フェールオーバー グループを構成して、別のリージョンへのフェールオーバーを有効にします。
  • 再試行ロジックを実装します。
  • 信頼性インシデントを検出するために、ほぼリアルタイムで SQL MI インスタンスを監視します。
  • Azure Backup サービスを使用して SQL データベースを復元します。

構成に関する推奨事項

次の推奨事項の表を参照して、Azure SQL Managed Instance の構成をオペレーショナル エクセレンスに最適化します。

勧告 説明
Business Critical レベルを使用する。 このレベルでは、障害に対する回復性が高くなり、基になる HA アーキテクチャのためにフェールオーバー時間が短縮されます。その他の利点もあります。 詳細については、「 SQL Managed Instance の高可用性」を参照してください。
追加のコストや構成なしで迅速な 管理操作 を利用でき、すべてのサービス レベルで利用できます。 管理操作は、すべての構成に対して迅速に完了でき、デプロイとスケーリングの時間を大幅に短縮できます。
セカンダリ インスタンスと自動フェールオーバー グループを構成して、別のリージョンへのフェールオーバーを有効にします。 障害がマネージド インスタンス内の 1 つ以上のデータベースに影響する場合は、インスタンス内のすべてのデータベースをセカンダリ リージョンに手動または自動フェールオーバーできます。 詳細については、 マネージド インスタンスの自動フェールオーバー グループに関するドキュメントを参照してください
再試行ロジックを実装します。 Azure SQL MI は推移的なインフラストラクチャの障害に対する回復性がありますが、これらの障害は接続に影響を与える可能性があります。 SQL MI の操作中に一時的なエラーが発生した場合は、コードで呼び出しを再試行できることを確認してください。 詳細については、 再試行ロジックを実装する方法を参照してください。
信頼性インシデントを検出するために、ほぼリアルタイムで SQL MI インスタンスを監視します。 使用可能なソリューションの 1 つを使用して SQL MI を監視し、潜在的な信頼性インシデントを早期に検出し、データベースの信頼性を高めます。 ほぼリアルタイムの監視ソリューションを選択して、インシデントに迅速に対応します。 詳細については、 Azure SQL Managed Instance の監視オプションを参照してください。
Azure Backup サービスを使用して SQL データベースを復元します。 Azure Backup を使用して、SQL データベースの検出、Recovery Services コンテナーでのバックアップの構成、 データベースの完全 または 特定の時点への復元を行います。 また、ディザスター リカバリーの訓練、 監視、その他の管理タスクもサポートしています。

次のステップ