Apache ProxyPass zum Dienst im Kubernetes-Cluster

Apache ProxyPass zum Dienst im Kubernetes-Cluster

Ich habe ein Problem mit ProxyPass zu einem Dienst, der sich im Kubernetes-Cluster befindet (und auch hinter einem domänennamensensitiven Proxy).

Dies ist meine Konfiguration:

<LocationMatch "/service2">
    ProxyPass http://service2.mycluster.org Keepalive=On
</LocationMatch>

Wenn ich diesen Dienst anrufe, erhalte ich die Nummer 503.

Die ähnliche Konfiguration für eigenständige Server-Apps funktioniert:

<LocationMatch "/service1">
    ProxyPass http://myserver.org:8012 Keepalive=On
</LocationMatch>

Das einzige, was mir jetzt einfällt, ist, dass Apache die Anfrage an die aufgelöste IP stellt, nicht an den Domänennamen.

Denn die Anfrage an meinen Standalone-Server per IP funktioniert:

curl -f http://<myserverip>:8012

während der Cluster fehlschlägt

curl -f http://<myclusterip>

weil der Domänenname (service2.mycluster.org) für die interne Verteilung verwendet wird.

Übersehe ich hier etwas Offensichtliches? Ich kann in der Dokumentation keine Hinweise finden, ich dachte, ProxyPass sollte sofort funktionieren.

Antwort1

Es sieht für mich so aus, als ob Ihnen ProxyPassReverse-Direktiven fehlen. Jede ProxyPass-Direktive muss normalerweise mit einer ähnlichen ProxyPassReverse-Direktive in der Apache-Konfiguration verknüpft werden.

verwandte Informationen