Wenn man die Zabbix-Teilkomponenten Agent und Proxy hinter einem reverse proxy (hier nginx) betreiben möchte, reicht es nicht aus, die HTTP-Verbindungen weiter zu leiten.

 

Das folgende Beispiel reicht also nicht!

http {
	server {
		listen 80;
		listen 443 ssl http2;
		listen [::]:80;
		listen [::]:443 ssl http2;
		location / {
			proxy_pass http://[Interne Adresse];
		}
	}
}

 

Stattdessen müssen die beiden relevanten Ports (10050 und 10051, jeweils TCP) im Stream-Block (mod-stream) definiert werden.

stream {
	server {
		listen 10051;
		listen [::]:10051;
		proxy_pass [Interne Adresse]:10051;
	}
}

Sind mehrere Agenten weiter zu leiten, dann muss jeder Agent eine separate Lauschadresse erhalten.

stream {
	server {
		listen 10051;
		listen [::]:10051;
		proxy_pass [Interne Adresse]:10051;
	}
	server {
		listen 11051;
		listen [::]:11051;
		proxy_pass [andere interne Adresse]:10051;
	}
}