servers
Summary
Details
アクティブ Geo レプリケーションを使用して、別のリージョンに読み取り可能なセカンダリを作成する
Impact: High Category: Disaster Recovery PG Verified: Verified
Description:
Active Geo Replication は、読み取り可能なセカンダリ データベース レプリカを利用することでビジネスの継続性を確保します。プライマリ データベースに障害が発生した場合は、セカンダリ データベースに手動でフェイルオーバーします。セカンダリは最大 4 つまで同じまたは異なるリージョンに存在でき、読み取り専用アクセスに使用されます。
Potential Benefits:
Enhanced disaster recovery and read scalability
Learn More:
ARG Query:
Click the Azure Resource Graph tab to view the query
// Azure Resource Graph Query
// Provides a list of SQL databases that are not part of Geo Replication.
resources
| where type == "microsoft.sql/servers/databases"
| summarize secondaryTypeCount = countif(isnotempty(properties.secondaryType)) by name
| where secondaryTypeCount == 0
| join kind=inner (
Resources
| where type == "microsoft.sql/servers/databases"
) on name
| extend param1 = "Not part of Geo Replication"
| project recommendationId = "74c2491d-048b-0041-a140-935960220e20", name, id, tags, param1
自動フェイルオーバー グループには、通常は同じアプリによって使用される 1 つまたは複数のデータベースを含めることができます。
Impact: High Category: Disaster Recovery PG Verified: Verified
Description:
フェールオーバー グループは、1 つの論理サーバー上のデータベースを別のリージョンの論理サーバーにレプリケートするように構成することで、災害復旧を容易にします。これにより、geo レプリケートされたデータベース管理が合理化され、プライマリ サーバーに障害が発生した場合に、レプリケートされたデータベースへの接続ルーティングのための単一のエンドポイントが提供されます。
Potential Benefits:
Improves load balancing and disaster recovery
Learn More:
ARG Query:
Click the Azure Resource Graph tab to view the query
// Azure Resource Graph Query
// Provides a list of SQL databases that are not configured to use a failover-group.
resources
| where type =~'microsoft.sql/servers/databases'
| where isnull(properties['failoverGroupId'])
| project recommendationId = "943c168a-2ec2-a94c-8015-85732a1b4859", name, id, tags, param1= strcat("databaseId=", properties['databaseId'])
Azure SQL Database のゾーン冗長性を有効にして、高可用性と復元性を実現します。
Impact: Medium Category: High Availability PG Verified: Verified
Description:
既定では、Azure SQL Database プレミアム レベルは、同じリージョン内に複数のコピーをプロビジョニングします。地理的冗長性の場合、データベースをゾーン冗長として設定し、Azure 可用性ゾーン全体にコピーを分散して、地域の停止中に可用性を維持できます。
Potential Benefits:
Enhanced reliability, no extra cost
Learn More:
ARG Query:
Click the Azure Resource Graph tab to view the query
// Azure Resource Graph Query
// Finds non-zone redundant SQL databases and lists them
Resources
| where type =~ 'microsoft.sql/servers/databases'
| where tolower(tostring(properties.zoneRedundant))=~'false'
|project recommendationId = "c0085c32-84c0-c247-bfa9-e70977cbf108", name, id, tags
再試行ロジックの実装
Impact: High Category: High Availability PG Verified: Verified
Description:
一時的な障害が発生した場合、アプリケーションは Azure SQL Database を使用して接続の再試行を効果的に処理する必要があります。データベース層の構成は必要ありません。代わりに、アプリケーションを正常な再試行用にセットアップする必要があります。
Potential Benefits:
Enhanced connectivity stability
Learn More:
ARG Query:
Click the Azure Resource Graph tab to view the query
// cannot-be-validated-with-arg
Azure SQL データベースをほぼリアルタイムで監視し、信頼性に関するインシデントを検出します
Impact: High Category: Monitoring and Alerting PG Verified: Verified
Description:
監視とアラートはデータベース操作の重要な部分です。 Azure SQL Database を使用する場合は、Azure Monitor と SQL Insights を利用して、関連するデータベース メトリックを確実に取得してください。
Potential Benefits:
Quick incident detection and response
Learn More:
ARG Query:
Click the Azure Resource Graph tab to view the query
// Azure Resource Graph Query
// Provides a list of SQL databases that are not configured for monitoring.
resources
| where type == "microsoft.insights/metricalerts"
| mv-expand properties.scopes
| mv-expand properties.criteria.allOf
| project databaseid = properties_scopes, monitoredMetric = properties_criteria_allOf.metricName
| where databaseid contains 'databases'
| summarize monitoredMetrics=make_list(monitoredMetric) by tostring(databaseid)
| join kind=fullouter (
resources
| where type =~ 'microsoft.sql/servers/databases'
| project databaseid = tolower(id), name, tags
) on databaseid
|where isnull(monitoredMetrics)
|project recommendationId = "7e7daec9-6a81-3546-a4cc-9aef72fec1f7", name, id=databaseid1, tags, param1=strcat("MonitoringMetrics=false" )
キーをバックアップする
Impact: Medium Category: Disaster Recovery PG Verified: Verified
Description:
Always Encrypted 構成に関連する暗号化キーを保存するには、Azure Key Vault (AKV) を使用することを強くお勧めしますが、必須ではありません。 AKV を使用していない場合は、キーが適切にバックアップされ、安全な方法で保管されていることを確認してください。
Potential Benefits:
Enhanced security and data recovery
Learn More:
ARG Query:
Click the Azure Resource Graph tab to view the query
// cannot-be-validated-with-arg