M 2.269 Planung des Einsatzes eines Apache Webservers
Verantwortlich für Initiierung: Leiter IT, IT-Sicherheitsmanagement
Verantwortlich für Umsetzung: Administrator
Die Detailplanung für den Einsatz eines Apache-Webservers baut auf der allgemeinen Planung für den Aufbau eines Webangebots (siehe M 2.172 Entwicklung eines Konzeptes für die WWW-Nutzung) auf. Aus den festgelegten Zielen des Webangebots und weiteren Rahmenbedingungen (beispielsweise Zugriff auf Datenbanken) ergeben sich Anforderungen, die in der konkreten Planung für den Apache-Webserver berücksichtigt werden müssen. Die folgenden Themen, die auch untereinander Abhängigkeiten aufweisen, sollten bei der Planung berücksichtigt werden:
Auswahl der Hardware- und Betriebssystemplattform und der Apache-Version
Die Hardware, auf der der Apache-Webserver eingesetzt wird, kann einen entscheidenden Einfluss auf die Gesamtleistung des entstehenden Systems haben. Dabei spielen bei einem Webserver, der vor allem statische Seiten ausliefert, Anzahl und Takt der eingesetzten Prozessoren praktisch keine Rolle mehr. Wichtiger ist in diesem Fall die Geschwindigkeit der eingesetzten Festplatten und des Speicherzugriffs.
Je mehr dynamische Seiten in einem Webangebot enthalten sind, desto wichtiger werden Prozessorgeschwindigkeit und Hauptspeicherausbau. Bei der Auswahl des Plattensubsystems sollte darauf geachtet werden, dass das System hohe Datenübertragungsraten beim "zufälligen" Lesen verschiedener Dateien bietet. Es sollte überlegt werden, die Partition, auf der die WWW-Daten abgelegt werden sollen, auf einem externen RAID-System zu installieren. Das RAID-System sollte das Austauschen von Festplatten im laufenden Betrieb (hot-swap) unterstützen und als RAID 5 organisiert werden. Dies erlaubt es, defekte Platten ohne Betriebsunterbrechung des Servers auszutauschen.
Der Apache-Webserver kann unter sehr vielen Betriebssystemen eingesetzt werden. Bei der Auswahl der Apache Version und des Betriebssystems, unter welchem der Apache-Webserver eingesetzt werden soll, sollten die folgenden Punkte berücksichtigt werden:
- Erst seit der Version 2 wird Windows als Betriebssystem "voll" unterstützt. Zwar existiert auch eine Portierung der Version 1.3 auf Windows, diese wird jedoch nicht als so stabil angesehen, wie die Unix-Versionen.
- Nicht alle Erweiterungsmodule, die es für den Apache-Webserver gibt, sind für alle Betriebssysteme verfügbar. Daher muss geprüft werden, welche Erweiterungsmodule für den geplanten Einsatz benötigt werden und für welche Plattformen diese verfügbar sind.
- Für die gewählte Plattform muss entsprechender interner oder externer Support zur Verfügung stehen. Die Administratoren müssen über die notwendigen Kenntnisse in dem Betriebssystem verfügen oder entsprechend geschult werden.
Binärversion oder eigenes Kompilieren
Der Apache-Webserver kann entweder aus dem Quellcode selbst kompiliert werden, oder es kann eine Binärversion installiert werden. Der Quellcode kann vom Server der Apache Foundation (http://www.apache.org) heruntergeladen werden. Binärversionen werden von verschiedenen Betriebssystemherstellern und Distributoren angeboten. Auch die Apache Foundation bietet vorkompilierte Versionen für verschiedene Betriebssysteme an.
Bei der Entscheidung, ob eine Binärversion eingesetzt oder der Apache-Webserver selbst kompiliert wird, sollten die folgenden Punkte berücksichtigt werden:
- Binärversionen sind meist auf eine bestimmte Standardkonfiguration zugeschnitten. Dies bedeutet, dass weniger Einfluss auf Installationspfade und die Zusammenstellung von Erweiterungsmodulen möglich ist.
- Binärversionen von Betriebssystemherstellern oder Distributoren sind oft nicht auf dem neuesten Versionsstand bzw. es vergeht einige Zeit, bevor eine neue Version verfügbar ist. Dies kann zu Problemen führen, wenn beispielsweise beim Auftauchen von Sicherheitslücken schnell eine neue Version benötigt wird. Andererseits bieten Binärversionen den Vorteil, dass sie vom Hersteller bzw. Distributor getestet sind, mit den vorhandenen Installationsmechanismen (Paketverwaltung oder ähnliches) installiert werden können und meist auch auf dem "Standard-Support-Weg" unterstützt werden. Die Binärversionen von der Apache Foundation sind meist relativ schnell verfügbar, es gibt jedoch keinen Standard-Support.
- Das Kompilieren des Apache-Webservers aus dem Quellcode bietet die größtmögliche Flexibilität bei der Auswahl von Modulen und anderen Optionen. Zusätzlich sind Patches und neue Versionen immer zuerst als Quellcode verfügbar. Der Nachteil ist, dass ein Administrator mit entsprechenden Kenntnissen sowie ein entsprechend ausgerüsteter Entwicklungsrechner vorhanden sein müssen. Aus Sicherheitsgründen sollte auf dem Webserver-Rechner selbst kein Compiler installiert sein.
- Manche Module können nur verwendet werden, wenn der Apache-Webserver selbst übersetzt wird.
Festlegen benötigter Funktionalität
Die weiteren Anforderungen, die bei der allgemeinen Planung für das Webangebot aufgestellt wurden, müssen in konkrete Anforderungen an den Apache-Webserver übertragen werden.
Falls das Webangebot dynamische Seiten enthalten soll, sollte spätestens an dieser Stelle entscheiden werden, mit welcher Technik diese realisiert werden sollen. Ist der Zugriff auf Datenbanken, Verzeichnisdienste oder sonstige externe Resourcen erforderlich, so muss auch dafür festgelegt werden, wie der Zugriff realisiert werden soll.
Es sollte eine Liste der Module erstellt werden, die im Apache-Webserver eingesetzt werden müssen, um die Anforderungen zu erfüllen. Module, die in der Standardkonfiguration aktiv sind, für die jedoch kein konkreter Bedarf besteht, sollten nach Möglichkeit entfernt werden.