Hallo Gemeinde,
derzeit will ich einen nginx Server als Softwareloadbalancer so konfigurieren, dass er eintreffende Requests je nach Domain an verschiedene Tomcats weiterreicht. Meine nginx.conf sieht wie folgt aus:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | user www-data www-data; worker_processes 6; worker_priority 0; error_log /var/log/nginx/error.log; #log_not_found off; worker_cpu_affinity 000001 000010 000100 001000 010000 100000; events { multi_accept off; worker_connections 6144; #Muss eventuell an die Hardware angepasst werden. Erlaubt derzeit 6 * 6144 gleichzeitige Anfragen) } http { upstream test_loads { server 192.168.1.117:8080 weight=1 max_fails=10 fail_timeout=60s; server 192.168.1.115:8080 weight=1 max_fails=10 fail_timeout=60s; } include /example/config/nginx/upstreams.conf; include mime.types; default_type application/ooctet-stream; # send_file on; keepalive_timeout 65; server { listen 80; server_name localhost; location /nginx_status { stub_status on; access_log off; allow 127.0.0.1; deny all; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } # include /etc/nginx/conf.d/*.conf; include /example/config/nginx/sites/*.conf; } |
In der upstreams.conf sind insgesamt 3 Upstreamgruppen definiert. Alle wie folgt:
1 2 3 4 | upstream myupstream { server 192.168.1.117:10080 weight=1 max_fails=10 fail_timeout=60s; server 192.168.1.115:10080 weight=1 max_fails=10 fail_timeout=60s; } |
In der zugehörigen Konfigdatei unter /example/config/nginx/sites/ ist folgendes enthalten:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | server { error_log /var/log/nginx/co2ol.error; listen 80; server_name test.example.com; location = / { return 301 http://test.example.com/home/index?layoutTheme=mytheme_theme?; } location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://cocalc$request_uri; # proxy_pass http://test_loads; } } |
Die Prüfung der Konfiguration mittels nginx -t wirft keine Fehler. Allerdings, wenn ich versuche die Seite aufzurufen, sagt Firefox "Der Server unter www.myupstream.com konnte nicht gefunden werden". und Chromium "Fehler 105 (net::ERR_NAME_NOT_RESOLVED): Die DNS-Adresse des Servers kann nicht aufgelöst werden". Woran liegt das und wie könnte ich das abstellen?
Grüße Skalbjarn