Warum es ein No-No ist, bei produktiven Server _kein_ RAID zu verwenden

Der Grund warum ich diesen Post schreibe ist folgender: Ein Kunde ordert einen Root-Server bei uns. Soweit so gut. Das System ist recht flott, hat zwei identische Platten drin und wird von uns mit frisch installiertem Gentoo ausgeliefert.

Natürlich richten wir solche Server, sofern kein Hardware RAID integriert ist, mit Software RAID1 mit dem Linux md-device Driver ein. Dies hat den Vorteil, dass zum einen die Swap-Partition auf einem RAID1 Device läuft und somit das System nicht abstürzt, wenn die Swap-Partition defekte Blöcke aufweisst, zum anderen hat es den Vorteil, dass man generell vor dem Ausfall einer Disk und dem einhergehenden Datenverlust gefeit ist.
weiterlesen…

www-hoster.de jetzt mit E-Mail Push Dienst

seit gestern bietet http://www-hoster.de jetzt seine E-Mail Services auch als E-Mail Push Dienst an. So kann man nun mit seinem Smart Phone den E-Mail Push Dienst nutzen und bekommt somit neue E-Mails direkt von www-hoster.de auf sein Phone gepusht. Der Hoster erhebt für die zusätzliche Leistung keine weiteren Kosten und hat auch bestehende Pakete für diesen Dienst upgegraded.

vd-server.de und Korypet stellt Service ein

Wie ich heute erfahren habe, stellt vd-Server.de und Korypet seine Services ein.

Allen Kunden, die bisher noch keinen neuen Provider gefunden haben, kann ich nur sagen, dass www.smart-weblications.de ähnliche Produkte zu günstigen Preisen anbietet.

Soweit ich mitbekommen habe, werden die Services eingestellt, weil es dem Geschäftsführer aus gesundheitlichen Gründen nicht mehr möglich ist, die Dienste aufrecht zuerhalten.

Keine Einrichtungsgebühr im Juni bei http://www-hoster.de!

Jetzt im Juni bei http://www-hoster.de sparen und Ihren Webspace ohne
Einrichtungsgebühren ordern!

Dieses Angebot gilt nur im Juni 2008 für Neukunden von http://www-hoster.de

Premium Quality Webhosting

mit über 10 Jahre Erfahrung im Webhostingbereich bieten wir Ihnen mit
www-hoster.de eine Plattform um Ihre Domains einfach und effizient zu
verwalten.

Webhosting war noch nie so einfach!

Mit dem leistungsstarken VHCS Control System verwalten Sie Ihre Domains,
E-Mail Adressen und FTP-Accounts mit ein paar Mausklicks. Ebenso können Sie
damit auch Subdomains anlegen und über unser Webmail-Modul haben Sie von
überall Zugriff auf Ihre E-Mails.

Zu den Produken http://www-hoster.de/products.htm

apache2, virtualdocumentroot und Logfiles in verschiedene Files

Wieder mal ein spezifisches Problem:

Wer mit apache2 einfaches Massenhosting betreiben will, der will nicht für jeden Virtualhost einen VirtualHost-Container in seiner Apache Konfiguration anlegen, denn ab ca. 500 Domains als VHostContainer wird zum einen die Konfiguration sehr unübersichtlich und ausserdem wird der Indianer dadurch langsamer, aufgrund von vielen offenen Filehandles. Muss man ja auch nicht, schliesslich gibt es das vhost_alias Modul, mit welchem man ein VirtualDocumentRoot konfigurieren kann, dass dann das DocumentRoot anhand des übermittelten ServerName oder HTTP-Host Headers auswertet.

In der Apache Konfiguration sieht das dann z.B. so aus:

<VirtualHost *>
UseCanonicalName Off
Options Indexes Includes FollowSymLinks MultiViews
VirtualDocumentRoot /domains/%0/www
VirtualScriptAlias /domains/%0/cgi-bin/
CustomLog access_log vcommon
<Directory /domains/%0/www>
AllowOverride All
</Directory>
</VirtualHost>

Das Problem ist nun, dass alle Logs in ein einziges File “access_log” geloggt werden, und es schwierig ist, hier für die einzelnen gehosteten Domains Statistiken zu erzeugen etc.

Man kann nun aber um dieses Problem zu umgehen Folgendes tun:
Man erzeugt in /etc/apache2 ein Script welches die Ausgabe des Logfiles aufteilt und in mehrere Dateien speichert:


#!/usr/bin/php
<?php

$path = “/var/log/apache2″;
$fh_timeout = 30; // 30 sek.

$fd = fopen(“php://stdin”, “r”);

while(!feof($fd)) {

$row = fgets($fd);

list($vhost,$h,$l,$u,$t,$r,$s,$b,$referrer,$ua) = explode(“;”,$row,10);

if (!${$vhost}) { ${$vhost} = fopen($path.“/”.$vhost.“_access.log”,“a+”); }
$lastwrite[$vhost] = time();
fputs (${$vhost},“$h $l $u $t $r $s $b $referrer $ua”);

foreach ($lastwrite as $vhost => $time) {
if ((
time() – ($time+30)) >=0) {
fclose(${$vhost});
unset(${
$vhost});
unset(
$lastwrite[$vhost]);
}
}
}
?>

Nun müssen wir in der apache2 Konfiguration noch das Logformat ändern und die Ausgabe des Logfiles an unser Script durchpipen:

LogFormat "%V;%h;%l;%u;%t;\"%r\";%>s;%b;\"%{Referer}i\";\"%{User-agent}i\"" vcommon
CustomLog "|/etc/apache2/splitlogs.php" vcommon

Dann Apache einmal neu starten und künftig werden pro Host separate Logfiles erstellt.

Edit: Fast hätte ich es vergessen! Das Script braucht natuerlich eXecutable-Flag also am besten chmod 755 /etc/apache2/splitlogs.php ausführen!

mysqlfs mit mySQL NDB Cluster als verteiltes Dateisystem

Jeder der kritische Anwendungen über das Web laufen hat, wie z.B. einen Onlineshop, stellt sich irgendwann, bei hinreichend großem Umsatz, die Frage, wie man das System noch ausfallsicherer machen kann.

Meist wird dann hierzu ein Loadbalancer (ob Hardware oder Software ist erst mal egal) aufgesetzt, welcher die Anfragen an mehrer Server verteilt, welche sich einen gemeinsammen Massenspeicher teilen. Dadurch ist es möglich, dass einzelne Server gewartet werden können, bzw. auch ausfallen können, ohne dass die Applikation dadurch gestört wird.

Leider beschränkt sich diese Variante auf nur eine Location, d.h. wird aus irgendwelchen Gründen z.B. die Internetanbindung an das System unterbrochen, ist die Applikation offline.

Dies kann man damit umgehen, dass man das System multihomed aufbaut, d.h. mehrere Server an unterschiedlichen Standorten betreibt, um bei einem Ausfall von einem Standort trotzdem noch erreichbar zu sein. Diese Variante hat den Nachteil, dass die Daten des Systems sehr aufwändig synchronisiert werden müssen, falls ein Standort nicht mehr erreichbar war. Weiterhin muss man auch bei Updates etc. aufpassen, dass es keine Versionskonflikte bei der Applikation gibt, denn man kann die Software nicht an beiden Standorten gleichzeitig aktualisieren.

Benötigt wird für so eine Lösung also zum einen eine Datenbank, welche automatisch repliziert und dies auch über mehr als einen Standort hinweg, weiterhin dazu noch ein Dateisystem, welches verteilten Host-Systemen eine gemeinsame Datenbasis bereitstellen kann.
weiterlesen…

apache2, mod_mysql_auth, debian etch

Wer ebenfalls verzweifelt mod_mysql_auth für Apache2 unter Debian Etch sucht, dem sei gesagt, dass es aus lizenztechnischen Gründen in Debian Etch nicht mehr enthalten ist.

Man kann jedoch das Module relativ einfach nachinstallieren:
weiterlesen…

Hetzner Online AG wirbt Kunden von Resellern ab…

weiterlesen…

www-hoster.de mit SPAM Filter Maia Mailguard

Bei www-hoster.de gibt es jetzt bei allen Paketen den SPAM Filter Maia Mailguard gratis mit dazu.
weiterlesen…