.log(ぽちろぐ)

退屈しているおっさんの日記

webアプリ冗長化

     久しぶりにお仕事日記書くぜ。

     VPSでサービス運用してたんだけど、
  • ある日突然、tomcat起動失敗。原因はメモリ不足。
  • メモリ増強したプランへ乗り換えしたい。
  • コンパネ不具合で乗り換えできない。なぜなら、サービス起動失敗時にOS再起動するshがcronで走ってて、そいつが邪魔する。
  •  という事が今ではわかってるけど、当時は大パニック。まだまだユーザが少ない無償サービスでよかった。VPS業者とやりとりして
    「プラン変更できない原因はわかりません」
    「いつ治るかもわかりません」

    ほんま使えねーな(笑)。復旧をボケ〜と待っているわけにもいかんので、別の業者に乗り換え。2日半で稼働開始した。ふー。
     なにしろ利用開始すぐにハードウェアの物理故障で数時間以上の停止があり、この半年で予告なしの日中メンテが数回あり、ちょっと信頼出来ないなあと思ってて。予告なしの接続断を事後報告されたり、障害報告書を取り違えて送ってきたり、原因が完全に判明するまでに2週間以上かかってその間サービス停止とか。商用運用してたらと思うとぞっとするわ。
     物理故障はしょうがなくて、復旧時間なんだよね。メンテはしょうがなくて、それは予告した上で、利用者の少ない夜中にやるべきなんだよね。

     さて本題。HA(HighAvailability)構成すなわち冗長化。いろいろ調べたけど、弊社の技術者は所詮はアプリ開発者。インフラ技術者でもネットワーク技術者でもない。自分で作るのは時間がかかりすぎる。
     調査で得た知識を武器に、サーバ業者に要求仕様を投げてる。電話で話したりメール書いたり見積読んだり機器構成をチューニングしたり。

     もともとアプリ開発者の俺は、仕事が進んでる感じがぜんぜんしない(笑)。でも誰かがやんなきゃいけないことだから。弊社のエースエンジニアをその道に集中させるため、俺は雑用する。

     つーか、誰かおらん?HAなサーバ組める人。CentOS + apache + tomcat + MySQLで。

    《関連語句》
     keepAlived LVS ロードバランサ ファイアウォール スイッチ レプリケーション マルチマスタ 高可用性