Ich bin verwirrt, wie die AWS Load Balancer funktionieren. Ich habe eine ziemlich einfache Einrichtung ...Loadbalancer kann keinen guten Gesundheitscheck bekommen
Ich habe eine Rest-basierte API, die über meinen Load Balancer ins Internet (Port 80) ausgesetzt werden muss. Ich möchte nur, dass der Load Balancer dem Internetverkehr ausgesetzt ist. Ich habe ein Sicherheitsgruppen-Setup für meine Instanz, das den direkten Zugriff auf meine IP-Adresse zu Testzwecken einschränkt.
Der Load Balancer ist nicht IP-beschränkt auf http, es hat nur Port 80 offen (mit einem Listener zu meinem API-Dienst an Port 3001). Das Problem ist, dass der Load Balancer meine Instanz nicht sehen kann, wenn ich IP-Beschränkungen für die betreffenden Instanzen einstelle. Sobald ich diese Einschränkungen für meine Instanzen aufgehoben habe, funktionieren die Statusprüfungen und ich kann über den Lastenausgleich auf den Service zugreifen. Das Problem damit ist, dass meine Instanzen jetzt offene Ports zum Internet haben, die ich nicht will.
Gibt es noch etwas, das ich tun muss, damit der Load Balancer auf meine Instanzen zugreifen kann, wenn ich IP-Einschränkungen verwende?
Eine letzte Anmerkung, meine Gesundheitsprüfungen funktionieren gut, bis ich die Instanz-Level-IP-Einschränkungen hinzufügen, so dass ich weiß, die Gesundheitsprüfung ist nicht das Problem. Ich denke, wenn ich die IP-Adresse des Load Balancers zu meiner Whitelist hinzufügen würde, würde es funktionieren, aber diese IP ist dynamisch und für diesen Zweck nicht geeignet.
Sie setzen IP-Einschränkung zu welchem Anschluss an Ihrem Beispiel, wenn Ihr ELB die Instanz ungesund macht? – error2007s
Ich habe den Port 3001 so eingeschränkt, dass er nur für meine IP-Adresse geöffnet ist. Wenn ich den Zugriff beschränke, nehme ich an, dass dies nur für den Verkehr im Internet gilt - aber ich denke, es könnte auch den Zugriff meines Load Balancers auf die Instanz einschränken. ELB macht die Instanz nicht per se ungesund, es versagt nur die Gesundheitsprüfung. – bstar
Was haben Sie in Ihrem AWS ELB-Gesundheitscheck eingerichtet? – error2007s