<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>eVibes</title>
	<atom:link href="http://www.evibes.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.evibes.de</link>
	<description>electronic vibrations</description>
	<lastBuildDate>Tue, 10 May 2011 06:41:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Varnish Cache Basics</title>
		<link>http://www.evibes.de/2011/04/29/varnish-cache-basics/</link>
		<comments>http://www.evibes.de/2011/04/29/varnish-cache-basics/#comments</comments>
		<pubDate>Fri, 29 Apr 2011 08:25:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Varnish Cache]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[load-balancing]]></category>
		<category><![CDATA[proxy]]></category>
		<category><![CDATA[reverse proxy]]></category>
		<category><![CDATA[varnish cache]]></category>
		<category><![CDATA[vcl]]></category>
		<category><![CDATA[webserver]]></category>

		<guid isPermaLink="false">http://www.evibes.de/?p=68</guid>
		<description><![CDATA[Varnish HTTP Cache ist ein Reverse Proxy und der neue Stern am Cache Himmel. Wobei, so neu ist er auch nicht mehr. Immerhin wurde die erste Version bereits 2006 veröffentlicht. Doch er erfreut sich zunehmender Beliebtheit, gerade im TYPO3 Umfeld. Was steckt wirklich dahinter? Alles nur ein Hype oder hat Varnish zu Recht einen so… <a href="http://www.evibes.de/2011/04/29/varnish-cache-basics/" rel="bookmark">mehr lesen</a>]]></description>
			<content:encoded><![CDATA[<p>Varnish HTTP Cache ist ein Reverse Proxy und der neue Stern am Cache Himmel. Wobei, so neu ist er auch nicht mehr. Immerhin wurde die erste Version bereits 2006 veröffentlicht. Doch er erfreut sich  zunehmender Beliebtheit, gerade im TYPO3 Umfeld.</p>
<p>Was steckt wirklich dahinter? Alles nur ein Hype oder hat Varnish zu Recht einen so guten Ruf?</p>
<p><strong>Was ist überhaupt ein Reverse Proxy?</strong><br />
Ich vergleiche einen Reverse Proxy gerne mit einer Chefsekretärin, welche im realen Leben ähnliche Aufgaben übernimmt und auch sehr oft unterschätzt wird.</p>
<p>Eine gute Chefsekretärin sollte folgende Eigenschaften besitzen:</p>
<ul>
<li> sie nimmt alle Anfragen an den Chef entgegen und filtert unerwünschte Anfragen raus.</li>
<li> sie weiß, welche Anfragen direkt an den Chef weitergeleitet werden müssen.</li>
<li> sie bespricht sich mindestens ein oder zweimal am Tag mit ihrem Chef über wichtige Angelegenheiten und kennt somit deren Stand.</li>
<li> sie kann viele Anfragen selbst beantworten, ohne den Chef fragen zu müssen.</li>
<li> sie kann Anfragen so umformulieren, dass sie auch der Chef versteht.</li>
<li> sie kann ihren Chef auch mal kurz vertreten oder zumindest entschuldigen.</li>
<li> ist sie mal krank oder im Urlaub, ist der Chef völlig überfordert.</li>
</ul>
<p>Kurzum, entlastet sie ihren Chef und kann ihn sogar stellenweise vertreten.</p>
<p>Das sind alles Aufgaben, die ein Reverse Proxy auch übernehmen sollte. Er ist also eine Art Filter, Zwischenspeicher und Vertreter eines anderen Servers &#8211; meist Webservers.</p>
<p>Ein guter Reverse Proxy kann also,</p>
<ul>
<li>unerwünschte Anfragen an den Server abwehren, z.B. Spam oder Brutforce Attacken,</li>
<li>Anfragen an bestimmte Webseiten, z.B. die sehr aktuell sein müssen oder mit Nutzer bezogenen Daten, direkt weiterleiten,</li>
<li>bereits angefragte Seiten zwischenspeichern und somit selbst ausliefern,</li>
<li>die zwischengespeicherten Seiten nach einer bestimmten Zeit wieder mit dem Webserver abgleichen,</li>
<li>Anfragen modifizieren und z.B. einen HTTP Header umschreiben,</li>
<li>eigene Fehlerseiten ausliefern, wenn der Webserver oder bestimmte Seiten nicht mehr erreichbar sind.</li>
</ul>
<p>Genau das und noch viel mehr kann Varnish Cache. Er zeichnet sich durch seine Stabilität,  einfache Konfiguration und  enorme Geschwindigkeit aus.</p>
<p><strong>Er läuft und läuft und läuft&#8230;</strong><br />
Der Projektleiter von Varnish, Poul-Henning Kamp ist u.a. Core Entwickler bei FreeBSD und er versteht was von moderner Prozessentwicklung unter Linux. Das merkt man auch Varnish an. Nicht nur, dass Varnish ressourcensparend und schnell arbeitet, er ist zudem sehr stabil und lässt sich nicht so einfach aus dem Konzept bringen. Varnish überwacht sich sozusagen selbst und ein spezieller Prozess hat nur die Aufgabe den Kernprozess von Varnish am laufen zu halten.</p>
<p><strong>Das Herz von Varnish ist VCL (Varnish Configuration Language)</strong><br />
Poul-Henning Kamp ist gebürtiger Däne und vielleicht ist das der Grund, warum Varnish eine eigene Konfigurationssprache (VCL) besitzt. Bekanntlich mögen Dänen ja solche Konfigurationssprachen um Systeme zu beeinflussen – siehe die von Kasper Skaarhoj entwickelte Konfigurationssprache „Typoscript“ bei TYPO3.<br />
Wie auch immer, mit VCL kann man das Caching-Verhalten von Varnish nach Herzenslust beeinflussen und sich seinen Anforderungen entsprechend anpassen.</p>
<p>Dank VCL ist es z.B. kein Problem bestimmte URLs aus dem Caching auszunehmen oder Mediadateien eine andere Cachedauer (TTL)  zu verpassen. Man kann den Request vor und nach dem Weiterleiten an das Backend (Webserver) manipulieren, ACL (Access Control Lists) anlegen, spezifische Fehlerseiten erzeugen oder auch rudimentäres Load-Balancing einrichten und vieles mehr.<br />
Die Syntax von VCL ist an C und Perl orientiert und daher für PHP Entwickler relativ einfach zu erlernen. Der Funktionsumfang hält sich auch noch in Grenzen und man kann mit wenigen Zeilen Code eine Menge auf die Beine stellen. Generell aber gilt bei VCL die Regel: „keep it simple“.</p>
<p><strong>Wie gut wird meine Seite gecached?</strong><br />
Varnish bringt einige Möglichkeiten mit, sich die Effizienz des Caching darstellen zu lassen. Der Klassiker ist &#8220;varnishtop&#8221;, welcher ähnlich wie das bekannte Linux &#8220;top&#8221;, eine textbasierte Statistik aufzeigt, die u.a.  aktuelle Cache-Hit-Ratios aufführt. Im Klartext heißt das, wie viel Prozent der Anfragen gecached ausgeliefert werden konnten. Schöner ist es allerdings, sich das bekannte Server Statistik Tool &#8220;Munin&#8221; zu installieren, für das es auch ein fertiges Varnish Modul gibt und einem so schicke Grafiken u.a. über die Hit-Ratio ausliefert.</p>
<p><strong>Fazit</strong><br />
Varnish hat somit den Einstellungstest mit Bravour bestanden. Auch wenn man vielleicht ein wenig Einarbeitungszeit investieren muss, ist er letztendlich der nahezu perfekte Sekretär: Er ist schnell, flexibel, merkt sich viel und fällt sehr selten aus.</p>
<p><strong>Ausblick</strong><br />
Nach dieser sehr allgemeinen Einführung in das Thema, möchte ich demnächst ein paar Praxisbeispiele vorstellen. Vor allem der Einsatz von Varnish im TYPO3 Umfeld und dessen Stolperfallen.</p>
<p><strong>Weiterführende Links</strong></p>
<ul>
<li><a href="http://www.varnish-cache.org" target="_blank">Varnish Website</a></li>
<li><a href="http://www.varnish-cache.org/trac/" target="_blank">Varnish Wiki</a></li>
<li><a href="http://mocsystems.com/blog/blog/article/high-perfomance-typo3-with-varnish-proxy/" target="_blank">Varnish und TYPO3 Experten</a> (engl.)</li>
<li><a href="http://vimeo.com/16676188" target="_blank">Poul-Henning Kamp auf der T3CON10 (Video</a>)</li>
<li><a href="http://munin-monitoring.org/" target="_blank">Munin</a></li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evibes.de/2011/04/29/varnish-cache-basics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Howto: Wie man TYPO3 auf Ubuntu 10.04 installiert &#8211; Teil 1: Pakete installieren</title>
		<link>http://www.evibes.de/2011/04/27/howto-wie-man-typo3-auf-ubuntu-10-04-installiert-teil-1-pakete-installieren/</link>
		<comments>http://www.evibes.de/2011/04/27/howto-wie-man-typo3-auf-ubuntu-10-04-installiert-teil-1-pakete-installieren/#comments</comments>
		<pubDate>Wed, 27 Apr 2011 09:08:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.evibes.de/?p=30</guid>
		<description><![CDATA[Einleitung In diesem Howto dreht sich alles um die Installation von TYPO3 auf einem Ubuntu Server. Ich verwende die 10.04 LTS (Long Term Support) Version von Ubuntu, da für diese 5 Jahre Updates zur Verfügung gestellt werden. Zusammen mit der TYPO3 Version 4.5, welche auch eine LTS Version ist, kann also nichts mehr schief gehen.… <a href="http://www.evibes.de/2011/04/27/howto-wie-man-typo3-auf-ubuntu-10-04-installiert-teil-1-pakete-installieren/" rel="bookmark">mehr lesen</a>]]></description>
			<content:encoded><![CDATA[<p><strong>Einleitung</strong><br />
In diesem Howto dreht sich alles um die Installation von TYPO3 auf einem Ubuntu Server. Ich verwende die 10.04 LTS (Long Term Support) Version von Ubuntu, da für diese 5 Jahre Updates zur Verfügung gestellt werden. Zusammen mit der TYPO3 Version 4.5, welche auch eine LTS Version ist, kann also nichts mehr schief gehen.</p>
<p><strong>Voraussetzungen</strong></p>
<ul>
<li>Internetanschluss</li>
<li>Shell Zugang mit Root Rechten auf den Ubuntu 10.04 Server, z.B. mit putty</li>
<li>Basic IT Know-How</li>
</ul>
<p><strong>Werkzeuge (OpenSource only)<br />
</strong></p>
<ul>
<li><a title="Ubuntu Server 10.04 LTS Download Seite" href="http://releases.ubuntu.com/lucid/" target="_blank">Ubuntu Server ISO Image </a></li>
<li><a title="TYPO3 Download Seite" href="http://typo3.org/download/" target="_blank">TYPO3 Source Paket</a></li>
<li><a title="Putty Download Seite" href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank">Shell Zugriff via putty</a></li>
<li>Optional: <a title="Virtualbox Download Seite" href="http://www.virtualbox.org/wiki/Downloads" target="_blank">VM-Box</a></li>
</ul>
<p><strong>Ziel<br />
</strong></p>
<ul>
<li>Eine lauffähige TYPO3 Version auf einem Ubuntu Server</li>
<li>Verständnis für Basis TYPO3 Administration</li>
</ul>
<p><strong>Nicht-Ziel </strong></p>
<ul>
<li>Nicht geeignet für eine Kommerzielle Live-Umgebung, da auf sicherheitsrelevante Aspekte nicht eingegangen wird</li>
</ul>
<p><strong>1. Server aufsetzen </strong></p>
<p>Die einfachste Methode ist natürlich, wenn man sich einen fertigen Server mietet. Hier kann ich uneingeschränkt die V-Pakete von Hosteurope empfehlen. Ein <a title="Virtual Server Linux L Paket" href="http://www.hosteurope.de/produkt/Virtual-Server-Linux-L" target="_blank">V-Server mit L Paket </a>für 12,99 EUR/Mon ist völlig ausreichend und bei der Bestellung kann man gleich Ubuntu 10.04 als Betriebssystem auswählen. Bitte ohne Plesk installieren, da ich Plesk in der Anleitung nicht verwende.</p>
<p>Wem das zu teuer ist, kann zum Üben auch einen Virtuellen Server mit Virtual Box lokal aufsetzen.  (Siehe Werkzeuge.) Mike erklärt in <a title="Ubuntu auf einer VM-Box aufsetzen" href="http://www.mikeraynham.co.uk/articles/ubuntu-server-virtualbox-ose" target="_blank">seinem Blog</a> recht vernünftig, wie man einen Ubuntu Server auf einer VM-Box aufsetzt. Wenn man kein Linux als OS hat, nimmt man eben die Windows Version von Virtualbox und installiert es ganz normal.</p>
<p>Während der Installation des Ubuntu Servers solltet man die bevorzugten Ländereinstellungen wählen und ohne <a title="Logical Volume Manager Wikipedia Seite" href="http://de.wikipedia.org/wiki/Logical_Volume_Manager" target="_blank">LVM</a> installieren &#8211; tut aber auch nicht weh, wenn es installiert ist. Aber es reicht auch aus, die Platte mit einer kleinen Swap- und einer Ext4-Partition anzulegen. Später bei der Paketauswahl sollte man den Open-SSH Server gleich mit installieren, damit man sich anschließend mit einem SSH Client verbinden kann. (Eine nachträgliche Installation ist natürlich auch möglich.)</p>
<p><strong>2. Mit dem Server verbinden</strong></p>
<p>Bei der V-Box Variante kann man sich nun mit dem Benutzer, welcher während der Installation vergeben wurde, an Ubuntu anmelden. Nach der Anmeldung sollte man sich erstmal dauerhaft Root Rechte geben, ansonsten muss man jedes mal den &#8220;sudo&#8221; Befehl vor administrativen Befehlen setzen und das kann nerven&#8230;
<div class="codesnip-container" ># sudo -s<br />
# (sudo) password for admin:</div>
<p>Anschließend ist man &#8220;allmächtig&#8221; &#8211; zumindest auf eurem virtuellen Ubuntu Server. Num sollte man die IP Adresse seines Systems herausfinden, damit man sich per SSH von &#8220;außen&#8221; verbinden kann.</p>
<div class="codesnip-container" ># ip a<br />
1: lo:  mtu 16436 qdisc noqueue state UNKNOWN<br />
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00<br />
inet 127.0.0.1/8 scope host lo<br />
inet6 ::1/128 scope host<br />
valid_lft forever preferred_lft forever<br />
2: eth0:  mtu 1500 qdisc pfifo_fast state UP qlen 1000<br />
link/ether 00:19:99:9a:e4:5a brd ff:ff:ff:ff:ff:ff<br />
inet <strong>2.38.218.65</strong>/24 brd 2.38.218.255 scope global eth0<br />
inet6 fe10::489:944f:f78a:e44a/64 scope link<br />
valid_lft forever preferred_lft forever<br />
3: vboxnet0:  mtu 1500 qdisc noop state DOWN qlen 1000<br />
link/ether 0a:00:27:00:00:00 brd ff:ff:ff:ff:ff:ff</div>
<p>Somit ist die IP 2.38.218.65 und nun kann man sich z.B. mit putty auf dem System verbinden. Dazu starten wir putty und tragen wie folgt die IP Adresse ein.</p>
<div id="attachment_36" class="wp-caption alignnone" style="width: 308px"><a href="http://www.evibes.de/wp-content/uploads/2011/04/putty_ip.jpg" rel="lightbox[30]"><img class=" " title="Putty Einstellungen" src="http://www.evibes.de/wp-content/uploads/2011/04/putty_ip-300x287.jpg" alt="Putty Einstellungen" width="300" height="287" /></a><p class="wp-caption-text">Putty Einstellung</p></div>
<p>Nun muss man sich mit dem Benutzer und Passwort am Server anmelden. Anschließend sich gleich wieder Root-Rechte verpassen. (sudo -s)</p>
<p><strong>3. Pakte installieren</strong></p>
<p>Nun benötigen wir noch einige Pakte damit TYPO3 läuft. Erstmal einen Apache Webserver (gerne auch ngnix &#8211; gehe ich aber in diesem Tutorial nicht darauf ein), PHP5, MySQL und ein paar Helfertools wie Graphicksmagic oder eAccelerator.</p>
<p>Also erstmal die Paketlisten aktualisieren:</p>
<div class="codesnip-container" ># apt-get update</div>
<p>Jetzt die Pakete installieren</p>
<div class="codesnip-container" >sudo apt-get install apache mysql-server php5 php5-mysql php5-gd php5-dev graphicsmagick build-essential</div>
<p> Während der Installation von MySQL_Server  muss man ein Root Passwort vergeben Durch Aufruf der Server-Ip im Browser sehen wir nun, das Apache läuft und dieser uns mit ein &#8220;It works!&#8221; begrüßt.</p>
<p>Im nächsten Teil wird ein V-Host konfiguriert und TYPO3 Leben eingehaucht.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.evibes.de/2011/04/27/howto-wie-man-typo3-auf-ubuntu-10-04-installiert-teil-1-pakete-installieren/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

