Sie befinden sich hier: eisfair / Pack-Eis
News News News

Navigation

Content

Dateianzeige für nginx (0.2.6)

usr/share/doc/nginx/nginx.txt
Das nginx Paket Einleitung Dieses Paket stellt den Webserver nginx (Engine X) zur Verfügung. Dabei wird nginx nicht primär als wirklicher Webserver bereitgestellt, sondern nur die Funktionalitäten Load Balancer und Reverse Proxy können über die Eisfair-1 Konfigurationsschicht parametrisiert werden. Ein echter Webserver kann aber manuell über Erstellung der entsprechenden Konfigurationsdatei realisiert werden. Die nginx Dokumentation ist unter http://nginx.org/ verfügbar. Funktionen Das nginx Paket bietet die Möglichkeit einen Load Balancer oder einen Reverse Proxy zu realisieren. Voraussetzungen Das Paket benötigt folgendes Paket: libpcre. Es ist auch davon abhängig, dass eine aktuelle Version des Basissystems installiert ist. Installation Das nginx Paket wird über das Setup-Menü im Untermenü ”Package administration” installiert. Das Menü im Setup-Program Das nginx Menü ist über den Menüpunkt ”Service administration” des Hauptmenüs im zentralen Setup-Programm zu erreichen. Es ist wie folgt aufgebaut: 1. View documentaion 2. View changes 3. View nginx logfiles 4. Edit configuration 5. Advanced configuration file handling 6. Start nginx 7. Stop nginx 8. Restart nginx 9. Reload nginx configuration 10. Show nginx status 11. Test nginx configuration 12. Edit nginx configuration directly 13. Check nginx module dependencies 0. Exit Änderung der Konfiguration Die Konfiguration kann über den Menüpunkt ”Edit Configuration” geändert werden. Standardmäßig wird dabei der Editor genutzt, der über den Menüpunkt ”Set eisfair configuration editor” in der ”Base configuration” eingestellt ist. Nachdem der Editor beendet wurde wird die Konfiguration mit dem eischk-Programm automatisch auf syntaktische und teilweise auch auf semantische Fehler geprüft. Werden Fehler festgestellt, so werden diese gemeldet und der Benutzer zur Korrektur aufgefordert. Wird eine solche Korrektur nicht durchgeführt, so kann es zu unvorhersehbaren Fehlfunktionen bei dem Dienst kommen. Es wird zusätzlich gefragt, ob die Konfiguration angewendet (aktiviert) werden soll. Wird dieses verneint, so unterbleibt die Aktivierung. ACHTUNG Beim nächsten Boot-Vorgang kann es in diesem Fall zu unvorhersehbaren Fehlern kommen. Wird die Aktivierung bestätigt, werden über ein Skript die durchgeführten Änderungen wirksam gemacht. Dazu wird der nginx Dienst gestoppt und neu gestartet. Die Konfigurationsdatei Die Konfigurationsdatei (/etc/config.d/nginx) enthält in einer Reihe von Abschnitten die Parameter, die den Dienst parametrisieren bzw. festlegen, ob der Dienst überhaupt zur Verfügung gestellt wird oder nicht. nginx web server (general settings) START_NGINX Legt fest, ob der nginx Server gestartet wird. Gültige Werte: yes, no Standardeinstellung: START_NGINX='no' nginx web server (configuration action settings) NGINX_MAN_CONFIG Konfiguriere nginx manuell 'yes' oder 'no'. Wenn hier der Wert 'yes' gesetzt wird, so wird die nginx Konfigurationdatei /etc/nginx/nginx.conf nicht generiert. Der Anwender ist selbst dafür verantwortlich eine korrekte Konfiguration zu erstellen. Gültige Werte: yes, no Standardeinstellung: NGINX_MAN_CONFIG='no' nginx web server (general configuration settings) NGINX_SERVER_TYPE Server Typ: reverse_proxy nginx arbeitet als Reverse Proxy load_balancer nginx arbeitet als Load Balancer Eine Konfiguration für den Typ Web-Server wird möglichweise in der Zukunft möglich sein. Man muss NGINX_MAN_CONFIG='yes' benutzen, um einen Web-Server konfigurieren zu können. Will man saubere Ergebnisse erhalten, wenn eine Reihe von Hosts beim Load Balancing genutzt werden, so muss darauf geachtet werden, dass alle Hosts einen identischen Web-Inhalt (web content) haben. Gültige Werte: reverse_proxy, load_balancer Standardeinstellung: NGINX_SERVER_TYPE='reverse_proxy' nginx web server (configuration settings) NGINX_WORKER_PROCESSES Definiert die Anzahl der sog. Worker Prozesse. Die optimale Anzahl wird bestimmt durch mehrere Faktoren. Die Anzahl der CPUs spielt eine Rolle, stellt aber nicht das Limit dar. Die Anzahl der genutzten Festplatten ist ebenfalls mit entscheidend. Die Anzahl der Worker Prozesse auf die Anzahl der verfügbaren CPUs zu setzen ist ein guter Startwert (der Wert 'auto' versucht die Anzahl eigenständig zu ermitteln). Gültige Werte: Zahl oder 'auto' Standardeinstellung: NGINX_WORKER_PROCESSES='auto' NGINX_WORKER_CONNECTIONS Dieser Parameter bestimmt die Anzahl gleichzeitiger Verbindungen, die ein Worker Prozess öffnen soll. Bitte beachten Sie, dass diese Zahl alle Verbindungen beinhaltet, also auch die Verbindungen mit anderen Servern (proxied server) nicht nur die Anzahl Verbindungen mit Clients. Eine wichtige Randbedingung ist, dass die Anzahl der gleichzeitigen Verbindungen die Anzahl der möglichen offenen Dateien nicht überschreiten darf (Siehe auch die Variable worker_rlimit_nofile. Diese wird aber derzeit nicht von der Eisfair-1 Konfigurationsschicht unterstützt.) Gültige Werte: Zahl Standardeinstellung: NGINX_WORKER_CONNECTIONS='1024' NGINX_SERVER_LISTEN_N Anzahl der zu erzeugenden listen directiven. Gültige Werte: Zahl Standardeinstellung: NGINX_SERVER_LISTEN_N='1' NGINX_SERVER_LISTEN_x Hier wird die Adresse und der IP-Port oder aber der UNIX-Domain Socket angegeben, auf dem der Server Anfragen entgegennimmt. Sowohl Adresse und Port oder nur eine Adresse können angegeben werden. Die Adresse kann auch ein Hostname sein. Beispiele: 127.0.0.1:8000 127.0.0.1 8000 *:8000 localhost:8000 IPv6 Addressen können in eckigen Klammern angegegeben werden: [::]:8000 [::1] Ein UNIX-domain socket wird wie folt angegeben: unix:/var/run/nginx_sock Standardeinstellung: NGINX_SERVER_LISTEN_='80' NGINX_SERVER_NAME Name eines virtuellen Servers. Bitte die angegebene nginx Dokumentation für weitere Informationen nutzen. Standardeinstellung: NGINX_SERVER_NAME='localhost' nginx web server (log configuration settings) NGINX_ERROR_LOG Name des Fehler-Logfiles und Loglevel. Ein relativer Dateiname wird als Dateiname relativ zu /var/log/nginx/. interpretiert. Einen Syslog Server kann man über syslog:server=address konfigurieren. Es ist NICHT möglich das Error Logging über NGINX_ERROR_LOG='off' auszuschalten. Standardeinstellung: NGINX_ERROR_LOG='error.log' NGINX_ACCESS_LOG Name des Zugriffs-Logfiles und Format des Logs. Ein relativer Dateiname wird als Dateiname relativ zu /var/log/nginx/. interpretiert. Einen Syslog Server kann man über syslog:server=address konfigurieren. Über NGINX_ACCESS_LOG='off' kann das Logging ausgeschaltet werden. Standardeinstellung: NGINX_ACCESS_LOG='access.log' NGINX_LOGANON Hier wird festgelegt, ob die IP-Adressen im Zugriffs-Logfile anonymisiert werden sollen. Gültige Werte: yes, no Standardeinstellung: NGINX_LOGANON='no' NGINX_LOGANON_MODE Diese Konfigrationsvariable wirkt nur auf IPv4 Adressen. 16Bit : erhalte 16 der 32 Bits Beispiel 192.168.4.16 wird zu 192.168.0.0 24Bit : erhalte 24 der 32 Bits Beispiel 192.168.4.16 wird zu 192.168.4.0 Gültige Werte: 16Bit, 24Bit Standardeinstellung: NGINX_LOGANON_MODE='16Bit' NGINX_ROTATE_LOGS Definiert, ob die Funktionalität logrotate benutzt werden soll, um Error Log und Access Log rotieren zu lassen. NGINX_ROTATE_LOGS sollte auf 'no' stehen, wenn NGINX_MAN_CONFIG='yes' genutzt wird. Standardeinstellung: NGINX_ROTATE_LOGS='yes' NGINX_LOGROTATE_INTERVAL Definiert das logrotate Intervall. Intervall: daily, weekly, monthly Standardeinstellung: NGINX_LOGROTATE_INTERVAL='daily' nginx web server (status information settings) NGINX_STUB_STATUS_LOAD Soll das Stub Status Modul geladen werden 'yes' oder 'no'. Das Stub Status Modul liefert auf einer Webseite Informationen über den nginx Server aus. Standardeinstellung: NGINX_STUB_STATUS_LOAD='no' NGINX_STUB_STATUS_LOCATION Ort des Stub Status. Man kann den Status über http:// erreichen. Z.B. http://eisgcc.ap.de/basic_status Standardeinstellung: NGINX_STUB_STATUS_LOCATION='/basic_status' nginx reverse proxy (configuration settings) NGINX_PROXY_BUFFERING Freigeben oder Sperren der Nutzung von Puffern für Antworten der via Proxy angesprochenen Server. Werte 'on' oder 'off'. Standardeinstellung: NGINX_PROXY_BUFFERING='off' NGINX_PROXY_PASS_URL Setzt das Protokoll und die Adresse des/der via Proxy angesprochenen Server. Standardeinstellung: NGINX_PROXY_PASS_URL='http://mydestination:80' nginx load balancer (configuration settings) NGINX_UPSTREAM_NAME Name der sog. Upstream Definition. Hiermit wird einer Gruppe von Server, die als Ziele für das Load Balancing zur Verfügung stehen, benannt. Standardeinstellung: NGINX_UPSTREAM_NAME='myupstream' NGINX_LB_SERVER_N Anzahl der Server in der Upstream Definition. Standardeinstellung: NGINX_LB_SERVER_N='0' NGINX_LB_SERVER_x_ADDRESS Adresse des x-ten Servers. Angabein wie bei NGINX_SERVER_LISTEN sind möglich. NGINX_LB_SERVER_x_WEIGHT ”Gewicht” des x-ten Servers. Die Server, die als Ziele für das Load Balancing zur Verfügung stehen, werden in der sog. weighted round-robin balancing Methode angesprochen. Ein Gewicht ungleich 1 bedeutet, dass ein Server x-mal pro Durchgang angesprochen wird. Hiermit kann die Last ungleichmäßig verteilt werden. Gültige Werte: Zahl Standardeinstellung: NGINX_LB_SERVER_x_WEIGHT='1' NGINX_LB_SERVER_x_MAX_FAILS Maximale Anzahl Fehler des x-ten Servers. Anwortet der x-te Server NGINX_LB_SERVER_x_MAX_FAILS nicht, so wird er als fehlerhaft markiert und NGINX_LB_SERVER_x_FAIL_TIMEOUT Sekunden nicht mehr benutzt. Standardeinstellung: NGINX_LB_SERVER_x_MAX_FAILS='1' NGINX_LB_SERVER_x_FAIL_TIMEOUT Fehler Timeout des x-ten Servers in Sekunden. Siehe NGINX_LB_SERVER_x_MAX_FAILS. Standardeinstellung: NGINX_LB_SERVER_x_FAIL_TIMEOUT='10' NGINX_LB_SERVER_x_BACKUP Soll der x-te Server als Backup Server genutzt werden 'yes' or 'no'. Ein Backup Server wird für das Load Balancing nur dann genutzt, wenn alle anderen Server der Server Gruppe nicht (mehr) antworten. Standardeinstellung: NGINX_LB_SERVER_x_BACKUP='no' Einstellungen beim Übersetzen der Packages Mit folgenden Einstellungen wurde der nginx übersetzt (eigentlich konfiguriert): --prefix= --sbin-path=/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/lib/nginx/tmp/ --http-proxy-temp-path=/var/lib/nginx/proxy/ --http-fastcgi-temp-path=/var/lib/nginx/fastcgi/ --http-uwsgi-temp-path=/var/lib/nginx/uwsgi/ --http-scgi-temp-path=/var/lib/nginx/scgi/ --user=nginx --group=nginx --modules-path=/var/lib/nginx/modules --with-pcre-jit --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_perl_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-file-aio --with-http_ssl_module --with-http_stub_status_module --with-mail=dynamic --with-mail_ssl_module --with-http_v2_module --with-stream=dynamic --with-http_auth_request_module --with-debug Erster Test nach Installation von nginx Ein erster lokaler Test von nginx kann durch die Nutzung als reiner Webserver erfolgen. Hier sind dann keine weiteren Server erforderlich. Vorgehensweise: 1.) cd /etc/nginx 2.) cp nginx.conf.default nginx.conf 3.) Konfiguration ändern START_NGINX='yes' NGINX_MAN_CONFIG='yes' 4.) Im Browser http:// oder http:// Die sog. Welcome Seite von nginx wird angezeigt: Welcome to nginx! __________________________________________________________________