Service Bus
The presented resiliency recommendations in this guidance include Service Bus and associated resources and settings.
Summary of Recommendations
Recommendation | Category | Impact | State | ARG Query Available |
---|---|---|---|---|
SBNS-1 - Enable Availability Zones for Service Bus namespaces | Availability | High | Preview | Yes |
Definitions of states can be found here
Recommendations Details
SBNS-1 - Service Bus 名前空間の可用性ゾーンを有効にします
Category: Availability
Impact: High
Guidance
運用環境のワークロードには、ゾーン冗長性を備えた Service Bus を使用します。Service Bus Premium SKU では、可用性ゾーンがサポートされており、同じ Azure リージョン内に障害が分離された場所が提供されます。Service Bus は、メッセージング ストアの 3 つのコピー (1 つのプライマリと 2 つのセカンダリ) を管理します。Service Bus は、データ操作と管理操作のために 3 つのコピーすべての同期を維持します。プライマリ・コピーに障害が発生すると、セカンダリ・コピーの1つがプライマリ・コピーに昇格され、ダウンタイムは発生しません。アプリケーションで Service Bus からの一時的な切断が検出された場合、SDK の再試行ロジックによって Service Bus に自動的に再接続されます。
Resources
- Service Bus and reliability
- Azure Service Bus Geo-disaster recovery
- Insulate Azure Service Bus applications against outages and disasters
Resource Graph Query
// Azure Resource Graph Query
// Returns Service Bus namespaces that do not have any availability zones enabled
resources
| where type =~ 'Microsoft.ServiceBus/namespaces'
| where properties.zoneRedundant == 'false'
| project recommendationId = "sbns-1", name, id, tags, param1=strcat("zoneRedundant: ", properties.zoneRedundant), param2=strcat("SKU: ", sku.name), param3=iff(tolower(sku.name) == 'premium', 'Move Service Bus namespace to a region that supports Availability Zones', 'Migrate to Premium SKU in a region that supports Availability Zones')