Virtualisierung eines Webservers, stabile PHP Entwicklungsumgebung

[n]ARC

Lieutenant
Registriert
Apr. 2005
Beiträge
858
Hallo, ich muss sagen ich bin ein Neuling was Virtualisierung angeht.

Bisher habe ich PHP Anwendungen unter NetBeans IDE entwickelt, diese wurden direkt auf dem localhost unter Windows abgespeichert und debugt.

Da mir das jedoch langsam recht mühselig erscheint und die Ausführungsgeschwindigkeit von localhost Webseiten zu wünschen übrig lässt, wollte ich folgendes aufbauen (auch wenn nicht ganz sicher wie)

Es soll eine Virtualisierungssoftware laufen, in diesem Fall VirtualBox (ist glaube ich am einfachsten und verbreitet ist es auch). Auf dieser soll ein sparsames Linux mit PHP, MySQL, Varnish und FCGI Unterstützung laufen.

Über mein Netbeans, welches unter meinem Windows Rechner läuft, soll es über einen FTP auf den Virtualisierten Webserver gespiegelt werden. Doch wie rufe ich dann die Webseite/Anwendung auf? Die Ausführungsgeschwindigkeit sollte ja höher sein, als auf einem Win localhost?

Würde mich über einen ersten Schubser freuen, eventuell einige Tutorials etc.

​PS: Ich würde gerne für jedes einzelne Projekt eine neue VMaschine einrichten. Oder ist es doch sinnvoll alles auf eine zu packen?
 
Die VM sollte an dein LAN über Netzwerkbrücke angebunden werden.
Dann kannst der VM eine IP aus deinem LAN-Bereich zuweisen und über diese erreichen (FTP,HTTP,...)

Ich würde gerne für jedes einzelne Projekt eine neue VMaschine einrichten. Oder ist es doch sinnvoll alles auf eine zu packen?

Sind die Projekte so umfangreich ?
Ggf. reicht ein Webserver, Apache, mit Virtualhosts.
 
Danke für dein Feedback. Hättest Du eventuell einen Link, ein Tutorial wäre noch besser. Wie ich VirtualBox mit einem Linux ausstatte und eben einen Webserver aufsetze. Mein Linuxwissen, ist leider recht begrenzt.

Hmm, an sich sind die Projekte nicht so umfangreich. Nur müsste ich jedes Mal zb. Memcached, Varnish oder APC bei einzelnen Projekten deaktivieren. Da sonst die ein oder andere PHP-Anwendung nicht laufen wird :(
 
Hättest Du eventuell einen Link, ein Tutorial wäre noch besser.

Leider nein, lässt sich aber bestimmt finden.
Wobei man bei Virtualbox nicht viel falsch machen kann.
Kannst auch zuerst mal ein Windows als VM versuchen.
 
VirtualBox hat sich bei mir im Dauerbetrieb nicht wirklich als Stabil erwiesen. Kann sein, dass die Kaufversion besser ist, habe diese aber noch nicht getestet.

Ich nutze jetzt seit über einem Jahr den VMware ESXi Server. Ist quasi ein eigenes Betriebssystem (Linux basierend), welches eine reine Umgebung für virtuelle Maschinen bereitstellt. Die Konfiguration erfolgt über eine eigene Software die auf einem anderen PC z.B. unter Windows gestartet werden kann. Ist meines Wissens immernoch kostenlos erhältlich und recht einfach zu bedienen. (Es gab mal den VMware Server, aber die Version wurde leider eingestellt.)

Wenn du gegen ein bisschen mehr Zeitaufwand nichts hast, wirst du wohl mit dem ESXi besser fahren. Gerade wenn mehrere Maschinen gleichzeitig über längere Zeit laufen, hatte ich das gefühl das alles viel "flüssiger" von der Hand geht, als mit den Desktop Virtualisierungslösungen.
 
Was genau meinst du mit "Ausführungsgeschwindigkeit"? Dass die Seiten auf einem lokalen Webserver im Browser Lange Ladenzeiten haben? Das Problem gibt es häufiger auf Windows 7, kann aber einfach über einen Eintrag in der hosts-Datei behoben werden.
 
Für VMware gibt es viele vorgefertigte VMs, die sich mit dem VMware Player (und auch einem ESXi) starten lassen. Das klingt ideal für dich: Man braucht sich (für den lokalen Einsatz) keinen Kopf um die Config machen und man muss sich auch nicht in so viele Dinge einlesen, um was zum Laufen zu bekommen.

VMware hat eine eigene Seite, wo die ganzen fertigen VMs angeboten werden. Einige kosten allerdings was, also aufpassen.

Für dich wären diese zwei geeignet: Bitnami LAMP (mit MySQL), Bitnami LAPP (mit PosgreSQL)
Hier findest du noch viel mehr: https://solutionexchange.vmware.com/store/category_groups/virtual-appliances


Btw, ich glaube, VMware ist der größte und verbreitetste VM-Software-Anbieter.
 
@MrDesperados - Danke für den Tipp werde ich mal gleich testen. Aber was genau meinst Du mit auf einem anderen PC? Ich wollte es eigentlich direkt von meinem PC Starten können. Bei der Lösung eines zweiten PCs kann ich ja gleich Linux drauf bügeln und einen Webserver einrichten. Oder reden wir hier gerade von einander ab?

@T0a5tbr0t - Mit ausführungsgeschwindigkeit meine ich folgendes. Die selbe Anwendung, MySQL 84 Querys.
Websever: Ladezeit 0.54sek
Localhost: Ladezeit 3.89sek

Den Eintrag in der hosts Datei ist natürlich immer da gewesen. Falls du 127.0.0.1 localhost meinst.
Wenn Du bereits einen Eintrag ansprichst, dann wäre ein Beispiel in diesem Fall wertvoll.

@e-Laurin - Danke, scheint tatsächlich das zu sein wonach ich suche. Wie gesagt ich möchte nicht viel an einem Virtuelen Webserver rum basteln. Einmal fix einrichten und eben wie einen externen FTP für die Entwicklung nutzen. Da mir die WAMP Lösung langsam gehörig auf den Senkel geht, besonders wenn etwas SCHNELL debuggt werden soll. Das dauert und dauert, und passiert denoch nichts.
 
Mein Gedanke war folgender:
VM reiner Webserver ohne Balast. Ausführung von Scripten wesentlich schneller.
 
Ach so? Du willst gar keinen VM-Server aufsetzen?

Na dann bringt dir die VM so nichts, jedenfalls nicht so, wie du dir das denkst. Bei einer VM kommt noch die Virtualisierungsschicht und eine weitere Betriebssystemschicht hinzu. Deswegen werden Programme darin immer langsamer laufen als außerhalb.
 
Hört sich an, als bräuchte der TE eine Lösung auf Basis eines Linux-Servers, auf dem eine Hostingsoftware für mehrere Webseiten braucht.

Was man benötigt:

1. Eine VMware Installation (VMware Player reicht)
2. Eine Linux-Distribution (empfehle für Entwicklung CentoOS 6.4)
3. Eine Hostingsoftware, z.B. ISP-Config, mit der mehrere Webseite projektiert werden können

Ich setze für meine Entwicklung auch auf dieses System.

Es gibt einige sehr gute Tuturiols, wie man sich eine solche Umgebung aufbaut, z.B. unter:

http://www.howtoforge.com/perfect-server-centos-6.3-x86_64-apache2-courier-ispconfig-3

Besonders ISP-Config wird hier von nutzen sein, da sich mehrere Seiten betreiben lassen und je
Seite die PHP-Settings konfigurieren lassen.

Vorteil: Nur eine virtuelle Umgebung, sehr schnell, extrem flexibel, einfach zu sichern

Eine weitere Möglichkeit, ist der Einsatz einer Virtualisierungsumgebung wie etwa OpenVZ. Das ist eine CHroorted-Umgebung, wo jeder VM einen eigenen Container enthält. Basis dazu ist allerdings von vorn herein eine Linux-Installation.

Vorteil auch hier: Sehr schnell, extrem flexibel, einfach zu sicherne VMs.

In beiden Fällen wird man ein oder zwei Tage zur Einarbeitung brauchen, dann aber eine solide Entwicklungsbasis haben.
 
Zuletzt bearbeitet:
[n]ARC schrieb:
Den Eintrag in der hosts Datei ist natürlich immer da gewesen. Falls du 127.0.0.1 localhost meinst.
Wenn Du bereits einen Eintrag ansprichst, dann wäre ein Beispiel in diesem Fall wertvoll.

Ist bei dem Eintrag "127.0.0.1 localhost" auch kein # davor? Dadurch sollte es bei Windows 7 schneller laden.
 
@Überkinger - exakt so habe ich es gemeint. Scheint also doch so zu funktionieren wie ich es mir gedacht habe. Vielen Dank für die kleinen Zwischenschritte und den Link. CentoOS ist in dem Sinne auch prima, läuft auch auf meinem dedizierten Managed Server.

​@T0a5tbr0t - nein ist kein # davor. Sonst würde die Regel ja auch nicht greifen ;)
 
Und wie weit bist du schon, läuft alles wie du es gern hättest? Und hast du das Modell von Überkinger umgesetzt?
 
Ich bin leider immer noch am "basteln". Kenne mich mit Linux halt nicht wirklich so aus, lese im Moment viel und versuche genau das umzusetzen was Überkinger vorgeschalgen hat. CentoOS 6.4 läuft zumindestens schon, jetzt muss ich nur noch die zwischenschritte zum Webserver erledigen. Alles nicht so einfach :)
 
Achso ok du, die Anleitung ist aber ganz gut aus meiner Sicht, hab auch nur Grundkentnisse im Linuxbereich. Bin noch nicht komplett fertig, aber dachte du könntest schon was zu den Funktionen sagen ob du damit zufrieden bist aber muss ich wohl dann mal selber sehen ;)
 
Hallo,

auf Nachfrage noch diese Info:

Die angegeben Anleitung gilt für die Entwicklungsumgebung, die in OpenVZ-Containern eingerichtet wird. Die Entwicklungsumgebung wird mittels Precreated Installationen eingeleitet. Die Schritte sind wie folgt:

1. OpenVZ installieren

http://www.howtoforge.com/installing-and-using-openvz-on-centos-6.4

2. Entwicklungsumgebung innerhalb der PreCreated Container installieren

http://www.howtoforge.com/perfect-server-centos-6.3-x86_64-apache2-courier-ispconfig-3
 

Ähnliche Themen

Zurück
Oben