質問
バックエンドECSインスタンスは、ユーザーアクセスがなく、オリジンIPがイントラネットIPである場合でも、GETリクエストを頻繁に受信します。User-AgentはKeepAliveClientとして表示されます。
原因
リスナープロトコルとしてTCPを選択し、ヘルスチェックとしてHTTPを選択した場合、SLBによるバックエンドのヘルスチェックは、HEADメソッドではなくGETメソッドを使用してチェックされます。
回答
リスナープロトコルとヘルスチェックプロトコルは、HTTPやHTTPSなどの同じプロトコルに設定することを推奨します。 この場合、SLBはHEADメソッドを使用してヘルスチェックを行います。 詳細については、「方法1」をご参照ください。 または、TCPに変更することもできます。 TCPヘルスチェックは、ネットワーク層の検出に基づいており、SYNパケットを送信してサーバーポートが稼働しているかどうかを検出し、バックエンドECSインスタンスの負荷が小さいかどうかを検出します。 詳細については、「方法2」をご参照ください。
方法1
HTTPまたはHTTPSリスナーを作成します。 詳細は、「ヘルスチェックの設定」をご参照ください。
方法2
SLBコンソールにログインし、対象のリージョンを選択し、対象のSLBインスタンスのインスタンスIDをクリックします。
[リスナー] タブをクリックし、[リスナー設定の変更] >次ステップ> 次をクリックし、変更をクリックします。
ヘルスチェックのプロトコルをHTTPからTCPに変更し、[次へ] > 送信をクリックします。
適用範囲
SLB