IIS + PHP – Höllenfeuer und Trotzdem einfach

Heute gingen mal wieder einige Stunden für Fehlersuche drauf.

Der Grund war einfach:

Microsoft IIS + PHP……

Vor ein paar Tagen bin ich bei der Suche nach ganz was anderem über den „Microsoft Web Plattform Installer“ gestolpert.

Dieser bot die tolle Möglichkeit – neben diversen anderen Tollen Plugins und Tools, einfach mal anschauen – direkt PHP für den IIS zu installieren, praktischerweise lief dies sogar daraufhin auf Anhieb und die Welt war gut.

Nun aber zu dem schlechten teil – ich habe gerade die Testversion vom Symantec Endpoint Protection installiert um einen Virenschutz für mein Netzwerk zu testen.

Dieser installiert sich seine eigene Webseite im IIS neben diversen anderen sachen, eigentlich kein Problem. Doch leider bringt er auch seine eigene PHP Version mit für seine Seite und sagt dieses nicht an. Das PHP auf meiner Standardwebseite lief weiter einwandfrei. Das PHP vom Symantec lief gar nicht. Nach etlichem hin und her probiere war das Problem klar: Der Symantec lädt die PHP.ini von Microsoft und weiß damit nicht viel anzufangen bzw. fehlen ihm dann Plugins. Hilfe gab es direkt bei Symantec (der Supportbereich mit der Knowledgebase ist soweit Top).

Kurz zusammengefasst:

  • Nachsehen ob die Umgebungsvariable „PHPRC“ gesetzt ist und ggf. löschen
  • Unter Regedit – „HKEY_LOCAL_MACHINE\Software\“ den Schlüssel „PHP“ anlegen
  • Im Schlüssel „HKEY_LOCAL_MACHINE\Software\PHP\“ einen Schlüssel für die PHP-Version anlegen, bei mir „5.2.8“ und „5.2.11“
  • Im Schlüssel „HKEY_LOCAL_MACHINE\Software\PHP\*phpversion* eine Zeichenfolge „IniFilePath“ mit dem Wert *absoluter Pfad zu der php.ini*\php.ini“ anlegen
  • Rechner neu starten

Damit ließ sich dann für jede Version eine eigene Konfigurationsdatei angeben und jetzt Funktioniert endlich alles 🙂

P.S.:

Wer unter Server 2008 R2 einen Media Streaming Server laufen lassen will sollte das Betriebssystem auf Englisch installieren sonnst folgt bei der Installation des Updates nur ein „Ihr Betriebssystem wird nicht unterstützt“ (danach habe ich ursprünglich gesucht ^^)……

Leider habe ich hierfür noch immer keine Lösung gefunden 🙁

ESX und Storageserver mit mehr Nics

Gestern waren die neuen Netzwerkkarten gekommen, dabei eine Intel Dualport 1GBit Nic und zwei FiberChannel Karten 1GBit, wie sich nachher herausstellte ist davon leider eine ein Hostadapter für Festplatten 🙁 Aber eine 2te Netzwerkkarte ist bereits bestellt.

Aktuell sieht es somit wie folgt aus:

ESX01:

2x OnBoard 1GBit

1x Intel Dualport 1GBit

1x 1GBit FiberChannel

esx3 esx4 Dabei sind die 4 Kupferports auf einen vSwitch zusammengelegt auf dem die Seriveconsole, VMkernel und die 4 Portgruppen laufen.

Die 4 Ports sind intern aufgeteilt das jeweils eine Aktiv für die Console und Kernel da ist und die übrigen 3 jeweils als Failover, die Portgruppen haben die „Netzwerk 01“ 2 Ports und die restlichen verteilt eine Nic als Aktiv und Rest im Failover, natürlich immer unterschiedliche 😉

Die Gruppe der 4 Nics ist in den vSwitch Optionen eingestellt auf „Lastausgleich: Anhand des IP-Hashes routen“ und am Switch auf einen Statischen Trunk über alle 4 Ports eingestellt.

Die FC Karte wird sobald die 2te für den Storageserver und die Leitung da ist als Direktanbindung der Datenspeicher genutzt um das vom normalen Netz zu trennen.

Fileserver01:

2x OnBoard 1GBit

1x Intel SinglePort 1GBit

(1x 1GBit FiberChannel sobald sie eintrifft)

Am Fileserver sind die 3 Nics per Software zu einem 803.2ad LACP Trunk zusammengeschaltet. Die Nutzung von 3 Nics ist zwar nicht optimal, besser ist die Zahl der Nics in einer 2er Potenz zu halten, aber eine weitere Dualport Nic ist bereits in Beobachtung 😉

 

Weil ja jeder Bilder mag gibt’s hier noch eines der Aufteilung der VMs, Netzwerke und Datenspeicher auf dem ESX01:

esx esx5

Exchange 2007 Outlook Anywhere ohne CA-SSL

Wo ich jetzt wieder in der Schule bin und immer Laptop mit hab hat mich Outlook Anywhere grad wieder brennend interessiert da es gegenüber Outlook per VPN doch Trafficsparsamer sein sollte und der VPN Tunnel noch weg fällt.

Nach einigen erfolglosen teste (kam immer bis Logindaten eingeben bei NTLM Authentifizierung ohne SSL die er aber nicht akzeptierte) hab ich noch ein Freund gefragt der paar Connections hat und vorhin eine Lösung mit SSL ohne Geld auszugeben bekommen:

Vorraussetzungen:

  • DynDNS oder ähnliches für die externe Erreichbarkeit
  • ActiveDirectory Umgebung (Spart einen Schritt, wird aber hier mit dokumentiert)
  • Funktionierende Exchange 2007 Umgebung
  • Server 2008 / 2003 mit Zertifizierungsstelle (ich gehe davon aus das diese bereits eingerichtet ist)

Exchange 2007 Outlook Anywhere ohne CA-SSL weiterlesen

iSCSI: Gut, NTFS: Böse

Nachdem alles mit dem ESX und iSCSI so gut geklappt hat hab ich heut Nacht noch den Fileserver auf Linux umgestellt und grad das iSCSI Target fertig eingerichtet.

Dabei hab ich mir nur leider fast den Datenspeicher zerschossen, Nachforschungen ergaben:

iSCSI mit mehreren Clients auf ein Target: Geht aber nicht unbedingt empfohlen

NTFS mit mehreren Systemen die drauf zugreifen: Geht nicht, macht die MFT und co kaputt…

Mit dem ESX klappt es aber weiterhin problemlos da dessen VMFS Clustersupport und co drin hat und somit keine Probleme beim gleichzeitigen Zugriff.

Also nochmal deutlich:

Kein iSCSI mit multiplen Clients @ NTFS !

Macht nur alles kaputt und meine Pläne dafür leider auch 🙁

Jetzt wird ich mir mal überlegen was ich weiter mache, wäre ich der einzige Nutzer vom Datastore wäre es ja nicht das Problem aber da noch andere drauf zugreifen muss ich den iSCSI entweder im Server einhängen und per Freigabe weiterverteilen oder bei mit rein und weiterverteilen, letztes währe meine Performance besser aber die Netzwerklast für mein Rechner auch deutlich höher wenn noch wer drauf zugreift 🙁 Ideen? Zur Not kommt wieder 2008 auf den Server aber das ist ja nicht unbedingt Ziel der Aktion…

ESXi VMotion für Anfänger

Nach einigem hin und her hab ich bei mir derzeit wieder zwei VMWare ESXi 4 Server am Laufen da mir der Microsoft Hyper-V im Server 2008 auf Dauer zu Ramlastig ist da er immer den der VM zugeteilten voll adressiert während der ESX nur das nimmt das die VM auch tatsächlich verbraucht. Ist ein wenig flexibler wenn ich viele Sachen auf einmal testen will.

Jetzt war nur die Frage wie ich es human gelöst bekomme ein Mini-Failover zu basteln, rein aus Spaß an der Freude 😀 Der ESX ist lizenztechnisch doch etwas teuer und alle 60 Tage neu installieren ist auch murks.

Was gibt es da einfacheres als ein geteilter Datenspeicher für beide Server, für einen Switch-Over müssen die Server zwar auf ESX1 heruntergefahren und auf ESX2 wieder gestartet werden aber damit kann ich leben. Erste Testaufbauten hab ich hier dank Linux Server mit NFS gemacht allerdings war die Performance nicht so berauschend also Plan auf iSCSI geändert.

Vorteil vom NFS gegenüber iSCSI ist zwar das er eine vorhandene Partition mit benutzt und ich somit noch andere sachen drauf legen kann statt nur VM Storage (ja man kann den iSCSI auch in eine Imagefile lenken aber das ist Imho nicht grad „schön“ 😉 ). Aktuell sind noch die letzten VMs am verschieben auf den neuen Storage und die erste schon von am laufen und trotz der Tatsache das der iSCSI Server atm nur ein kleines AMD Dualcore System mit recht langsamen Broadcom Netzwerkkarten ist läuft es erstaunlich gut. Um die Bandbreite und Ausfallsicherheit des iSCSI Servers etwas zu verbesser habe ich aus den beiden Netzwerkverbindungen eine kleine Bündelung gebastelt, genauer gesagt eine IEEE 802.3ad Link Aggregation. Dank Linux Boardmitteln geht das praktischerweise ohne Hardwareseitigen besonderen Anforderungen 🙂 und mein Switch kann das natürlich auch.

Sobald jetzt alles läuft wie ich mir das vorstelle wird noch der aktuell letzte Windows Hardware Server auf Linux umgemodelt und das Raid6 dadrin per iSCSI mit NTFS eingebunden ohne die Daten verschieben zu müssen (war ich nur zu doof dazu oder mag FreeNAS echt keine mehrfachen Verbindungen auf ein iSCSI Target? Deswegen hab ich das noch nicht früher gemacht…).
Außerdem noch ein Tipp für die Linux User: EthStatus (console-based ethernet statistics monitor) – Zeigt brav die genutzte Netzwerkbandbreite an 🙂

Anbei noch ein paar nützliche Links:

iSCSI Target in Debian

Zusatz für den ESX

Port Trunking in Linux

vSphere Client unter Win7

PS: Zu Thema Hamburg gibt es bisher noch nichts neues.