Seite 1 von 3
Prometheus - Too many redirects
Verfasst: Mi Jul 31, 2019 2:39 pm
von starwarsfan
Hallo miteinander,
für ein vernünftiges Monitoring meiner Infrastruktur möchte ich auf dem TW Prometheus als Docker-Container basierend auf dem
offiziellen Image laufen lassen. Dazu habe ich in Portainer einen entsprechenden Container konfiguriert, Port 9090:9090 gemappt und unter Command zusätzlich die Option
--web.external-url=https://timberwolf159/proxy/prometheus/ mitgegeben. Im Reverse-Proxy gibt es ebenfalls den entsprechenden Eintrag, welcher auf
http://127.0.0.1:9090/ zeigt. Rufe ich nun im Browser die URL
https://timberwolf159/proxy/prometheus/ auf, erhalte ich den Fehler ERR_TOO_MANY_REDIRECTS.
Irgendwelche Ideen, woran ich nun schrauben muss, damit das funktioniert?
Re: Prometheus - Too many redirects
Verfasst: Mi Jul 31, 2019 3:59 pm
von ms20de
So falsch sieht es für mich nicht aus.
Ein paar Ideen:
Hier ist kein = Zeichen zwischen web.external-url und der URL
https://www.robustperception.io/using-e ... prometheus
Sind die -- sicher Minus-Zeichen und sicher keine anderen Zeichen?
Viele Grüße,
Matthias
Re: Prometheus - Too many redirects
Verfasst: Mi Jul 31, 2019 4:27 pm
von starwarsfan
Hallo Matthias
Von dieser Page habe ich das mit dem Parameter zur externen URL und die Bindestriche sind korrekt. Das "=" habe ich verwendet, weil es im Container bereits diverse Parameter dieser Art gibt und das bei allen so gemacht wird. Der Inhalt der Command-Zeile sieht so aus:
'--config.file=/etc/prometheus/prometheus.yml' '--storage.tsdb.path=/prometheus' '--web.console.libraries=/usr/share/prometheus/console_libraries' '--web.console.templates=/usr/share/prometheus/consoles' '--web.external-url=
https://timberwolf159/proxy/prometheus/'
Re: Prometheus - Too many redirects
Verfasst: Mi Jul 31, 2019 5:53 pm
von ms20de
Das mit dem einfachen Anführungszeichen vor jedem Argument sieht mir gerade etwas merkwürdig aus.
Kannst du in der Portainer Console mit ps ax prüfen ob das Programm wirklich in den Argumenten läuft?
Viele Grüße,
Matthias
Re: Prometheus - Too many redirects
Verfasst: Do Aug 01, 2019 7:52 am
von Dante
Gem. der von Matthias verlinkten Anleitung, würde ich versuchen, den Reverse-Proxy mal umzustellen und dabei das Ziel um den Pfad erweitern, also auf
http://127.0.0.1:9090/prometheus/ verweisen.
Hier könntest du noch untersuchen, wohin denn versucht wird weiterzuleiten. Sollte mit den integrierten Developer-Tools der Browser (F12) möglich sein oder alternativ per Kommandozeile mit Tools wie curl oder wget (curl mit -v aufrufen).
Schlimmstenfalls könnte es sein, dass Prometheus das /prometheus/ direkt hinter dem Host voraussetzt. Dann klappt die Lösung über den Reverse Proxy nicht und du musst den Port mitgeben oder es per MacVLAN lösen.
Re: Prometheus - Too many redirects
Verfasst: Fr Aug 02, 2019 11:43 pm
von starwarsfan
Hi Thomas,
ob ich den Reverse-Proxy mit oder ohne Pfad konfiguriere, macht keinen Unterschied. Rufe ich die Seite mit cURL auf, bekomme ich das hier als Antwort:
Code: Alles auswählen
» curl --insecure https://timberwolf159/proxy/prometheus/
<a href="/proxy/prometheus">Found</a>.
Oder auch etwas umfangreicher:
Code: Alles auswählen
curl -sILk https://timberwolf159/proxy/prometheus/
HTTP/2 405
server: nginx
date: Fri, 02 Aug 2019 21:42:56 GMT
content-type: text/plain; charset=utf-8
content-length: 19
allow: GET, OPTIONS
x-content-type-options: nosniff
strict-transport-security: max-age=15768000
Chrome sagt aber weiterhin ERR_TOO_MANY_REDIRECTS
Further ideas?
Re: Prometheus - Too many redirects
Verfasst: Sa Aug 03, 2019 8:33 am
von Dante
Hi Yves,
hast du nach dem Umstellen des Reverse-Proxy den Cache geleert bzw. es mit einem Fenster im privaten / Inkognito Modus versucht? Hatte das teilweise schon, dass sich Redirects hartnäckig im Cache festgesetzt hatten. Alternativ einfach ein Fragezeichen an die URL, ggf. mit beliebigen Buchstaben, anhängen.
curl bitte mal wie beschrieben mit -v aufrufen, genauer mit -vk wg. den Zertifikaten. Evtl. danach nochmal mit einem -vkL versuchen.
Dein -sILk bringt nichts, denn das -I macht eine HEAD-, statt einer GET-Anfrage und die wird hier nicht unterstützt (HTTP-Fehler 405 => Method not allowed).
Re: Prometheus - Too many redirects
Verfasst: Mo Aug 05, 2019 9:13 pm
von starwarsfan
Hallo Thomas
Dante hat geschrieben: ↑Sa Aug 03, 2019 8:33 am
hast du nach dem Umstellen des Reverse-Proxy den Cache geleert bzw. es mit einem Fenster im privaten / Inkognito Modus versucht?
Ja, habe ich gemacht. Bleibt nach löschen des Cache oder auch im Inkognito-Modus das gleiche Verhalten.
Dante hat geschrieben: ↑Sa Aug 03, 2019 8:33 am
curl bitte mal wie beschrieben mit -v aufrufen, genauer mit -vk wg. den Zertifikaten. Evtl. danach nochmal mit einem -vkL versuchen.
Dein -sILk bringt nichts, denn das -I macht eine HEAD-, statt einer GET-Anfrage und die wird hier nicht unterstützt (HTTP-Fehler 405 => Method not allowed).
Ah, alles klar. Der Output der beiden Cmds ist im Anhang. Ich bin jetzt nicht so der Netzwerk-Crack und hoffe, Du kannst Dir daraus etwas nehmen. Er macht offenbar 50 Redirects aber ich sehe nicht so recht, wo und warum...
Re: Prometheus - Too many redirects
Verfasst: Mo Aug 05, 2019 9:44 pm
von Dante
Also hier wird die Adresse
https://timberwolf159/proxy/prometheus/
per HTTP 302 [Found (Moved Temporarily)] weitergeleitet zu
https://timberwolf159/proxy/prometheus
und diese URL leitet per HTTP 301 [Moved Permanently] weiter zu
https://timberwolf159/proxy/prometheus/
womit wir wieder oben sind und die Schleife beginnt.
Es leitet also mit trailing Slash weiter zu ohne trailing Slash und der wieder zurück.
Das wird dem Browser irgendwann zu blöd und er bricht ab.
------------------------------------------------------------
Jetzt mal weitergeschaut und folgendes gefunden:
https://www.robustperception.io/externa ... h-prefixes
hier kommt zusätzlich der Parameter web.route-prefix zum Einsatz, der die Lösung sein dürfte
demnach würde ich sagen, dass du wie folgt konfigurierst:
Re: Prometheus - Too many redirects
Verfasst: Mo Aug 05, 2019 10:07 pm
von starwarsfan
Hallo Thomas
Ahh!
Dante hat geschrieben: ↑Mo Aug 05, 2019 9:44 pm
Es leitet also mit trailing Slash weiter zu ohne trailing Slash und der wieder zurück.
Das wird dem Browser irgendwann zu blöd und er bricht ab.
Klar.
Bingo!
Dante hat geschrieben: ↑Mo Aug 05, 2019 9:44 pm
demnach würde ich sagen, dass du wie folgt konfigurierst:
Funktioniert wie ein Traum. Sensationell, vielen Dank!
Das ist sicher einen Eintrag in der KB wert...