Azure SQL Databaseの障害 (2020.07.01)

東日本リージョンでSQL Databaseの障害がありました。

7月2日0時時点でのRCAです。(まだ予備的な簡易なやつ)
以下 https://status.azure.com/ja-jp/status/history/ より引用。

Azure SQL Database – Japan East – Mitigated (Tracking ID CLCK-LD0)

Summary of impact: Between 09:30 and 11:15 UTC on 01 Jul 2020, a subset of customers using SQL Database in Japan East may have experienced service connection failures or possible timeouts. Services utilizing SQL Databases may have also been impacted.

Preliminary root cause: We determined that instances of a gateway service responsible for handling traffic to and from some SQL Databases became unhealthy. This prevented some connections from completing as expected and caused downstream impact to services leveraging SQL Databases.

Mitigation: We performed a manual restart of the impacted gateways to mitigate the issue.

Next steps: We will continue to investigate to establish the full root cause and prevent future occurrences. A full Root-Cause Analysis will be provided in the next 72 hours.

Stay informed about Azure service issues by creating custom service health alerts: https://aka.ms/ash-videos for video tutorials and https://aka.ms/ash-alerts for how-to documentation.

なお同じタイミングでSQL Databaseに接続できなかったのが原因でMicrosoft 365のSharePoint OnlineやOneDrive for Business、Teamsなども障害がでてました。

image

詳細は続報(RCA)待ちですね。

2020.07.08 更新

RCAでてました。

RCA – Azure SQL Database – Japan East (Tracking ID CLCK-LD0)

Summary of Impact: Between 09:24 and 11:15 UTC on 01 Jul 2020, a subset of customers using Azure SQL Database, Azure SQL Data Warehouse/ Synapse analytics in Japan East may have experienced service connection failures or possible timeouts. Services utilizing SQL Databases may have also been impacted.

Root Cause: Connections to Azure SQL Database and related data services go through a load balanced set of front-end nodes (Gateways) that provide directory lookup services and reroute the incoming connections to the intended backend-end nodes hosting the database. For scalability and zone redundancy purposes, there are multiple active SQL Gateway clusters in a region. During this incident, one of the SQL Gateway clusters became unhealthy having an intermittent impact on login availability. A specific network traffic pattern combined with a networking stack configuration on the SQL Gateway instances triggered an imbalance on the CPU processing of new connection requests. The persistence of such CPU imbalance over a long period of time caused high response latency and increased timeouts on connection requests. The error condition propagated across multiple instances of the SQL Gateway cluster in this region, sometimes causing a service restart.

Mitigation: Multiple SQL Gateway instances became healthy upon the triggered service restart. On further investigation, we were able to isolate the specific network pattern and the configuration setting that caused this incident and were able to reconfigure the traffic to prevent a recurrence.

Next Steps: We apologize for the impact to affected customers. We are continuously taking steps to improve the Microsoft Azure platform and our processes to help ensure such incidents do not occur in the future. In this case, this includes (but is not limited to):

  • Fix the underlying issue that causes service restart when such a condition occurs.
  • Improve the alerting logic and add identified telemetry to diagnose this kind of issues faster.
  • Activate a newer SQL Gateway cluster in this region with a more efficient networking stack configuration that reduces the chances of hitting a processing imbalance.

Provide Feedback: Please help us improve the Azure customer communications experience by taking our survey: https://aka.ms/AzurePIRSurvey

根本原因:Azure SQL Databaseと関連するデータサービスへの接続はDirectory lookup servicesを提供するフロントエンドのノード(SQL Gateway)の負荷分散セットを経由し、データベースをホストする目的のバックエンドのノードに再ルーティングする。スケーラビリティと冗長性のためにリージョンに複数のアクティブなSQL Gatewayクラスタがあり、このインシデントではそのうちの1クラスタが異常になりログインの可用性に断続的な影響がでた。SQL Gatewayインスタンスのネットワークスタック構成と特定のネットワークトラフィックパターンの組み合わせで新しい接続要求のCPU処理の不均等が起こり、応答の待ち時間が長くなり接続要求のタイムアウトが増えた。エラー状態は(東日本)リージョンのSQL Gatewayクラスタの複数インスタンスに波及、サービスの再起動が必要になった。

軽減策:トリガーとなったSQL Gatewayインスタンスの再起動およびインシデントの原因となった特定ネットワークトラフィックパターンと構成設定を特定、トラフィックを再構成して再発を防止。

次のステップ:

  • サービス再起動を引き起こす根本問題の修正
  • アラートロジックの改善、識別されたテレメトリの追加でこの種の問題の迅速な診断
  • 処理の不均等に陥る可能性を減らす、より効率的なネットワークスタック構成の使用。東日本リージョンで新しいSQL Gatewayクラスタをアクティブ化。

フィードバックはこちら:https://aka.ms/AzurePIRSurvey

ムッシュ先生による詳しい解説:SQL Database に接続する際の接続フローについて

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中