LoginSignup
263
71

More than 3 years have passed since last update.

紅蓮禍

強くなれるモジュールを知った mod_proxy_balancerを連れて進め

負荷だらけのApacheに酔う こわばる心
1台構成では捌けないものがある それだけさ
Nagiosのアラートに空睨んでも
変わっていけるのは冗長構成だけ それだけさ

強くなれるモジュールを知った mod_proxy_balancerを連れて進め

どうしたって!
消せないアラートも 止まれないサーバも
ユーザのために強くなれるなら
ありがとう Connection timeoutよ
トラフィックに打ちのめされて負ける意味を知った
紅蓮のアラートよ咲き誇らないで! 運命を照らして

ApacheBenchの雑音が耳を刺す 戸惑う心
負荷分散だけじゃ守れないものがある? わかってるけど
ステージング環境で絡まる負荷テスト 成功して見える結果に感動
逸材のF5より 挑み続け咲いたLBが美しい

乱暴に敷き詰められた クソだらけのコードも
本気の僕だけに現れるから 乗り越えてみせるよ
簡単に片付けられた 通らなかった稟議も
無償のApacheに根を生やし このモジュールに宿ってる

人知れずローンチ 散りゆく結末
無情に破れた 悲鳴の風吹く
ユーザの笑う影 PMの泣き声
誰もが幸せを願ってる

ほんばんで!
消せないアラートも 止まれないサーバも
ユーザのために強くなれるなら
ありがとう Proxy timeoutよ
トラフィックに打ちのめされて負ける意味を知った
紅蓮のアラートよ咲き誇らないで! 運命を照らして




ステージングの負荷テストはうまくいったのだからそれで十分だろう

サーバ1台でApache+Tomcatで動くJavaアプリケーションを運用していたのですが、1台ではピークトラフィックを耐えることができなかったので、サーバを1台追加し、Apacheにmod_proxy_balancerを入れてLBにし、2台の冗長構成にすることにしました。

構成を組んだあと、ApacheBenchで負荷テストをして、その結果が問題なかったので負荷テストも問題なしとし、本番ローンチに進むことに。

死んだApacheが蘇ることはないのだ

本番ローンチした結果、パフォーマンス改善どころかむしろ以前より悪化しており、Nagiosの管理画面はアラートで紅蓮に染まりました。

殆どの人間がそうしている

ApacheBenchの結果ではなぜか全てのトラフィックを正常終了としていたのですが、実際には殆ど捌き切れておらず、負荷をかけているときにブラウザでアクセスするとレスポンスが返ってこず、最後に502 Gateway timeoutになる始末でした。

冗長構成が組めて、数回ApacheBenchを実行してその結果が良かっただけで満足してしまい、ログの確認や高負荷状態のサーバのモニタリングなど何も確認していなかったのがすべての元凶です。

また、そもそもApacheBenchでは1種類のリクエストしかテストできないので、負荷テストツールとしては不十分でした。Jmeterなど、現実に近い複数リクエストのトラフィックを起こすツールを使ってでの負荷テストじゃないと意味は薄いです。

なぜお前たちはそうしない

理由は一つ

私たちが異常者・・・ではなく怠惰だからです

Dyc5BL3UwAAzSE7.jpeg

263
71
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
263
71