2

AWSロードバランサの動作は混乱しています。私はかなり簡単なセットアップがあります...ロードバランサが良好なヘルスチェックを取得できない

ロードバランサ経由でインターネット(ポート80)に公開する必要のある残りのAPIがあります。私はロードバランサーがインターネットトラフィックにさらされているだけです。私はテスト目的のために私のipaddressへの直接アクセスを制限する私のインスタンスのためのセキュリティグループセットアップを持っています。

ロードバランサはhttpで制限されていません。ポート80はポート801のみです(ポート3001のapiサービスのリスナー)。問題は、問題のインスタンスに対してIP制限を設定した場合、ロードバランサは自分のインスタンスを見ることができないということです。インスタンスでこれらの制限を解除すると、ヘルスチェックが機能し始め、ロードバランサを通じてサービスにアクセスできます。その問題は、私のインスタンスが今私が望んでいないインターネットにポートを開いていることです。

IP制限を使用しているときにロードバランサがインスタンスにアクセスできるように追加する必要がありますか?

私のヘルスチェックは、インスタンスレベルのIP制限を追加するまでうまくいきますので、ヘルスチェックが問題ではないことが分かります。ロードバランサのIPをホワイトリストに追加すればうまくいくと思いますが、ipは動的であり、この目的のために実行可能ではありません。

+0

にあなたのインスタンス上のどのポートにIP制限を設定していることに注意してください? – error2007s

+0

私は自分のipaddressだけにポート3001を開くように制限しています。アクセスを制限するとき、私はそれがトラフィックに直面しているインターネットのためだと仮定しますが、ロードバランサのインスタンスへのアクセスも制限していると思います。 ELBはインスタンス自体を不健康にするものではなく、単にヘルスチェックに失敗します。 – bstar

+0

AWS ELBヘルスチェックで何を設定しましたか? – error2007s

答えて

3

IP制限は使用しないでください。

1)LBを選択し、Securityタブを選択し、セキュリティグループID(sg-5555abbのようなもの)に注意してください。そのIDを編集するには、そのIDをクリックしてください

2)Load Balancerセキュリティグループを編集するときは、許可ルールを1つだけ追加してください:HTTP TCP 80 0.0.0.0/0(および必要であれば443が必要です。

3)次に、インスタンスのセキュリティグループに移動します。 Load Balancerのセキュリティー・グループのみが、ポート3001のインスタンスにアクセスすることを許可します。Custom TCP Rule TCP 3001 sg-5555abb (my-load-balancer)。あなたのELBインスタンスが不健康になるときは、手順1からIPアドレス/マスクが、セキュリティグループIDを入力しないSourceフィールド)

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#security-group-rules

+0

私のロードバランサセキュリティグループはIP上で制限されません。インスタンスのセキュリティグループだけが制限します。私は、LBがインスタンスのセキュリティグループのルールに影響されないと考えました...私はローカルのアマゾンネットワーク上のインスタンスにアクセスすると考えました。 – bstar

+0

申し訳ありませんが、おそらく私は十分に明確ではなかった、私は答えを拡大します。 –

+0

@bstar私は私の答えを削除この答えに従うこれはあなたが探しているものであり、あなたがそれを望む方法を正確に動作します。 – error2007s

関連する問題