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 SQL Managed Instance を構成しましたか?
- Business Critical レベルを使用する。
- セカンダリ インスタンスと自動フェールオーバー グループを構成して、別のリージョンへのフェールオーバーを有効にします。
- 再試行ロジックを実装します。
- 信頼性インシデントを検出するために、ほぼリアルタイムで SQL MI インスタンスを監視します。
構成に関する推奨事項
信頼性のために 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 の監視オプションを参照してください。 |