暇人じゃない

ELB から切り離されたインスタンスは自動で復帰しない
Amazon Web ServicesEC2ELB

ELB について勘違いしていたこと。 それは、ELB から切り離されたインスタンスは自動で復帰しない、ということです。

僕の確認した中では、以下の状況では復帰しないようでした:

  • ELB に繋がっているインスタンスに異常が発生して、ELB から切り離された(Out of Service になった)場合
  • インスタンスを Stop して、ELB から切り離された(Out of Service になった)場合

上のような状況では、インスタンスが正常な状態に戻った場合、ヘルスチェックが行われて、In Service に戻るものかと思っていました。 実際には、ヘルスチェックは行われず、切り離されたままです。

インスタンスを復帰させるためには、インスタンスを ELB から削除して、再度登録する必要があります。 ヘルスチェックの設定項目にある「Healthy Threshold」の意味を勘違いしており、正しくは「インスタンスを ELB に追加してから正常な状態である、と判断される回数」という意味なのですね。 (間違っていたら教えて下さい m(__)m)

インスタンスを自動で復帰させるには Multi-Server パターンを使用するとか、インスタンスが起動した時に、自分を ELB に参加させるようなスクリプトを組む必要があるようです。

2013/05/10 13:15 追記: インスタンスを Stop した場合について追記し、本文を編集しました。また、タイトルを編集しました。

About

chocoby (GitHub / Twitter)

フリーのソフトウェア開発者です。 Ruby を使った Web 開発を得意としています。