Google Cloud Load Balancerの障害、原因は新機能に含まれていたバグだったテスト時も導入時にも発見できず(2/2 ページ)

» 2018年07月26日 08時00分 公開
[新野淳一Publickey]
前のページへ 1|2       

テスト時にも導入時にもバグが発見できなかった

 障害を起こしたGoogle Cloud Load Balancerは、Google Front Ends(GFE)の2階層アーキテクチャとなっており、第1層はリクエストにできるだけ近い場所でレスポンスを返し、第2層はサービスが提供される場所にできるだけ近い場所に置かれます。

 そして今回、第2層に新しい機能を追加したことが障害の原因だと説明されました。

The GFE development team was in the process of adding features to GFE to improve security and performance. These features had been introduced into the second layer GFE code base but not yet put into service. One of the features contained a bug which would cause the GFE to restart; this bug had not been detected in either of testing and initial rollout.

(GFE開発チームは、GFEに対してセキュリティと性能向上のための新機能を追加しているところだった。この新機能はGFEの第2層に導入されたが、まだ使用されていなかったものだ。この機能の1つに、GFEを再起動させてしまうバグが潜んでいたのだ。このバグはテスト時にも導入時にも発見されなかった)

 バグによるGFEの再起動がロードバランサーの第二層の能力を低下させ、それがバックエンドとの通信ができないという502ステータスにつながったわけです。

At the beginning of the event, a configuration change in the production environment triggered the bug intermittently, which caused affected GFEs to repeatedly restart. Since restarts are not instantaneous, the available second layer GFE capacity was reduced.

(現象の発生時、本番環境の構成変更がバグを断続的に引き起こすきっかけとなり、GFEが繰り返し再起動してしまった。再起動はすぐに終わる処理ではないため、GFEの第2層の能力が減少していった)

 前述のように、Googleのエンジニアリングチームは約30分でこの問題に対処しました。また、今後こうしたことが起こらないようテストなどを強化するほか、GFEを分割して、障害が起きたとしても、影響が一定の範囲に収まるような対策も実行予定で、監視のためのコンソールも強化していくと説明しています。

 この記事は、新野淳一氏のブログ「Publickey」の記事「Google Cloud Load Balancerの障害、原因は新機能に含まれていたバグ。テスト時も導入時にも発見できず」を許可を得た上で転載、編集しています。


前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ