<?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>Linux Showroom &#187; administration</title>
	<atom:link href="http://www.linux-showroom.com/topics/administration/feed" rel="self" type="application/rss+xml" />
	<link>http://www.linux-showroom.com</link>
	<description>My daily dosis of linux usage</description>
	<lastBuildDate>Sun, 13 Feb 2011 14:38:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Execute command on every boot</title>
		<link>http://www.linux-showroom.com/2011/02/13/execute-command-on-every-boot.html</link>
		<comments>http://www.linux-showroom.com/2011/02/13/execute-command-on-every-boot.html#comments</comments>
		<pubDate>Sun, 13 Feb 2011 14:38:07 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[boot]]></category>
		<category><![CDATA[command]]></category>
		<category><![CDATA[cron]]></category>
		<category><![CDATA[cron jobs]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[init script]]></category>
		<category><![CDATA[init.d]]></category>
		<category><![CDATA[run]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[start]]></category>
		<category><![CDATA[system]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=70</guid>
		<description><![CDATA[You want to execute a command on every boot but do not want to create an init script? Well, if your *nix system supports cron jobs which is very likely it is your lucky day.

Just open the cron file for the user who in whose name the command is supposed to run.

crontab -e

Add the ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2011/02/13/execute-command-on-every-boot.html">Execute command on every boot</a></p>
]]></description>
			<content:encoded><![CDATA[<p>You want to execute a command on every boot but do not want to create an init script? Well, if your *nix system supports cron jobs which is very likely it is your lucky day.</p>
<p>Just open the cron file for the user who in whose name the command is supposed to run.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">crontab <span style="color: #660033;">-e</span></pre></div></div>

<p>Add the following line to the open cron file and obviously replace <em>YOUR COMMAND</em> with whatever should be run on start-up.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">@</span>reboot YOUR COMMAND</pre></div></div>

<p>Save the changes and now on every boot your command is executed once. Simple as that!</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2011/02/13/execute-command-on-every-boot.html">Execute command on every boot</a></p>
<p class="wp-flattr-button"></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2011/02/13/execute-command-on-every-boot.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Memcache is not cacheing</title>
		<link>http://www.linux-showroom.com/2011/01/18/memcache-is-not-cacheing.html</link>
		<comments>http://www.linux-showroom.com/2011/01/18/memcache-is-not-cacheing.html#comments</comments>
		<pubDate>Tue, 18 Jan 2011 16:27:33 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[Personal note]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Cache]]></category>
		<category><![CDATA[Memcache]]></category>
		<category><![CDATA[memcached]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[scaling]]></category>
		<category><![CDATA[system]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=127</guid>
		<description><![CDATA[So you are using memcached to speed up your system. Than suddenly at some point you notice memcache is not helping anymore but is does not cache the part that has the worst impact on your system. 

That´s what just has happened to me. Why is Memcache not cacheing I asked myself. Well, the ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2011/01/18/memcache-is-not-cacheing.html">Memcache is not cacheing</a></p>
]]></description>
			<content:encoded><![CDATA[<p>So you are using <a href="http://memcached.org/">memcached</a> to speed up your system. Than suddenly at some point you notice memcache is not helping anymore but is does not cache the part that has the worst impact on your system. </p>
<p>That´s what just has happened to me. Why is Memcache not cacheing I asked myself. Well, the default and highly recommend slabs size is 1 MB. Anything above just is not cached. Setting that limit higher with <code>-I Xm</code> (X being an integer) results in a warning which sounds really bad: </p>
<blockquote><p>
Starting memcached WARNING: Setting item max size above 1MB is not recommended!<br />
Raising this limit increases the minimum memory requirements and will decrease your memory efficiency.
</p></blockquote>
<p>Hmm, not so good. Luckily I was able to downsize that particular item so that memcache stores it again.</p>
<p>I am still wondering if serving content from harddisk instead of RAM via memcached could be a good idea. I gotta try it one of these days. What do you think?</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2011/01/18/memcache-is-not-cacheing.html">Memcache is not cacheing</a></p>
<p class="wp-flattr-button"></p> <p><a href="http://www.linux-showroom.com/?flattrss_redirect&amp;id=127&amp;md5=46f4052b110c26f7d32c3a02bfba4539" title="Flattr" target="_blank"><img src="http://www.linux-showroom.com/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2011/01/18/memcache-is-not-cacheing.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Use varnishlog to find hosts which cause most hits</title>
		<link>http://www.linux-showroom.com/2010/12/14/use-varnishlog-to-find-hosts-which-cause-most-hits.html</link>
		<comments>http://www.linux-showroom.com/2010/12/14/use-varnishlog-to-find-hosts-which-cause-most-hits.html#comments</comments>
		<pubDate>Tue, 14 Dec 2010 08:46:13 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[cat]]></category>
		<category><![CDATA[cut]]></category>
		<category><![CDATA[IP]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[sort]]></category>
		<category><![CDATA[traffic]]></category>
		<category><![CDATA[uniq]]></category>
		<category><![CDATA[Varnish]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=123</guid>
		<description><![CDATA[If your Varnish powered server is under constant load and you are wondering who causes that varnishlog is a helpful tool.

Start off by logging IP addresses for a while.
 

varnishlog -c -i RxHeader -I X-Forwarded-For > varnish.log


After you have collected enough information use the following line to find out which IP caused the most ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2010/12/14/use-varnishlog-to-find-hosts-which-cause-most-hits.html">Use varnishlog to find hosts which cause most hits</a></p>
]]></description>
			<content:encoded><![CDATA[<p>If your <strong>Varnish powered server</strong> is under constant load and you are wondering who causes that <strong>varnishlog</strong> is a helpful tool.</p>
<p>Start off by logging IP addresses for a while.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">varnishlog <span style="color: #660033;">-c</span> <span style="color: #660033;">-i</span> RxHeader <span style="color: #660033;">-I</span> X-Forwarded-For <span style="color: #000000; font-weight: bold;">&gt;</span> varnish.log</pre></td></tr></table></div>

<p>After you have collected enough information use the following line to find out <strong>which IP caused the most hits</strong> on your varnish.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">cat</span> varnish.log <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">cut</span> <span style="color: #660033;">-d</span> <span style="color: #ff0000;">' '</span> <span style="color: #660033;">-f</span> <span style="color: #000000;">12</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">sort</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">uniq</span> <span style="color: #660033;">-c</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">sort</span> <span style="color: #660033;">-n</span></pre></td></tr></table></div>

<p><a href="http://www.db.ripe.net/whois">Query the ripe database</a> to find information on the IP addresses.</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2010/12/14/use-varnishlog-to-find-hosts-which-cause-most-hits.html">Use varnishlog to find hosts which cause most hits</a></p>
<p class="wp-flattr-button"></p> <p><a href="http://www.linux-showroom.com/?flattrss_redirect&amp;id=123&amp;md5=2fe1b3a424072ba42de6688b23a0df10" title="Flattr" target="_blank"><img src="http://www.linux-showroom.com/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2010/12/14/use-varnishlog-to-find-hosts-which-cause-most-hits.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Useful shell commands: last</title>
		<link>http://www.linux-showroom.com/2010/02/06/useful-shell-commands-last.html</link>
		<comments>http://www.linux-showroom.com/2010/02/06/useful-shell-commands-last.html#comments</comments>
		<pubDate>Sat, 06 Feb 2010 13:40:11 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[command]]></category>
		<category><![CDATA[commandline]]></category>
		<category><![CDATA[last]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=68</guid>
		<description><![CDATA[Today I will start a new series for linux/*nix newbies called Useful shell commands. Every now and then I will write about one of the powerful commands you'll find on your shell. I will start the series with a command called last.

# last

Calling last on your commandline gives you a list of logins. You ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2010/02/06/useful-shell-commands-last.html">Useful shell commands: last</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Today I will start a new series for linux/*nix newbies called <strong>Useful shell commands</strong>. Every now and then I will write about one of the powerful commands you&#8217;ll find on your shell. I will start the series with a command called <strong>last</strong>.</p>
<p># <strong>last</strong></p>
<p>Calling <em>last</em> on your commandline gives you a list of logins. You will see who is <em>still logged in</em> and who was logged in before from what adress.</p>
<p>You can shorten the list of results with <em>last -n XX</em>. XX being the number of results you want to have displayed, e.g. <em>last -n 5</em> for 5 lines.</p>
<p># <strong>last reboot</strong></p>
<p>Calling <em>last reboot</em> lists the reboots since the log file which tracks all logins was created.</p>
<p>The manual page for last &#8211; <em>man last</em> &#8211; will show you more parameters.</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2010/02/06/useful-shell-commands-last.html">Useful shell commands: last</a></p>
<p class="wp-flattr-button"></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2010/02/06/useful-shell-commands-last.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>High available NFS4 server with drbd 0.8, pacemaker 1.0, heartbeat, openais on OpenSUSE 11.1</title>
		<link>http://www.linux-showroom.com/2009/08/08/high-available-nfs4-server-with-drbd-0-8-pacemaker-1-0-heartbeat-openais-on-opensuse-11-1.html</link>
		<comments>http://www.linux-showroom.com/2009/08/08/high-available-nfs4-server-with-drbd-0-8-pacemaker-1-0-heartbeat-openais-on-opensuse-11-1.html#comments</comments>
		<pubDate>Sat, 08 Aug 2009 14:07:42 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[OpenSuSE]]></category>
		<category><![CDATA[drbd]]></category>
		<category><![CDATA[HAproxy]]></category>
		<category><![CDATA[Heartbeat]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Openais]]></category>
		<category><![CDATA[Pacemaker]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[webserver]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=64</guid>
		<description><![CDATA[For my podcast project I got five new root servers which are all connected internally through a switch. Two of the servers are connected directly over a crossover cable. Those two servers have 3 NICs, the other 2 servers have 2 NICs.

I share the website's HTML, images and other resources through the NFS server ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2009/08/08/high-available-nfs4-server-with-drbd-0-8-pacemaker-1-0-heartbeat-openais-on-opensuse-11-1.html">High available NFS4 server with drbd 0.8, pacemaker 1.0, heartbeat, openais on OpenSUSE 11.1</a></p>
]]></description>
			<content:encoded><![CDATA[<p>For my <a href="http://www.podcast.de">podcast project</a> I got five new root servers which are all connected internally through a switch. Two of the servers are connected directly over a crossover cable. Those two servers have 3 NICs, the other 2 servers have 2 NICs.</p>
<p>I share the website&#8217;s HTML, images and other resources through the NFS server to all five servers. All servers work as <a href="http://www.linux-showroom.com/2008/08/16/apache-and-lighttpd-replaced-by-nginx-for-php-application.html">webservers with nginx and PHP-fpm</a>. Each server also runs one more specific service: database master, solr master, cron jobs / crawler processes, Varnish / HAproxy.</p>
<p>The two directly connected servers share the static website resources over <a href="http://www.drbd.org">drbd</a>. <a href="http://www.clusterlabs.org">Pacemaker</a>, heartbeat and openais secure the high availability of my NFS4 server. Setting this up took quiet a bit of fiddeling as there are how-tos for so many different (and outdated) versions are floating around the internet.</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2009/08/08/high-available-nfs4-server-with-drbd-0-8-pacemaker-1-0-heartbeat-openais-on-opensuse-11-1.html">High available NFS4 server with drbd 0.8, pacemaker 1.0, heartbeat, openais on OpenSUSE 11.1</a></p>
<p class="wp-flattr-button"></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2009/08/08/high-available-nfs4-server-with-drbd-0-8-pacemaker-1-0-heartbeat-openais-on-opensuse-11-1.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>php-fpm runlevel start script for OpenSuSE 11.1</title>
		<link>http://www.linux-showroom.com/2009/07/30/php-fpm-runlevel-start-script-for-opensuse-11-1.html</link>
		<comments>http://www.linux-showroom.com/2009/07/30/php-fpm-runlevel-start-script-for-opensuse-11-1.html#comments</comments>
		<pubDate>Thu, 30 Jul 2009 17:44:34 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[OpenSuSE]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[boot]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[OpenSUSE 11.1]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[PHP-FPM]]></category>
		<category><![CDATA[rc]]></category>
		<category><![CDATA[runlevel]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[Startup]]></category>
		<category><![CDATA[Yast]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=56</guid>
		<description><![CDATA[Nowadays OpenSUSE comes with almost all packages I need to run a fast and reliable webserver. As I have written before I use nginx and php-fpm for our podcast service.

You can get up-to-date packages of nginx through OpenSuSE's build service. I have not yet found a RPM package of php-fpm though. Therefore I compile ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2009/07/30/php-fpm-runlevel-start-script-for-opensuse-11-1.html">php-fpm runlevel start script for OpenSuSE 11.1</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Nowadays OpenSUSE comes with almost all packages I need to run a fast and reliable webserver. As I have written before I use <a href="http://www.linux-showroom.com/2008/08/16/apache-and-lighttpd-replaced-by-nginx-for-php-application.html">nginx and php-fpm</a> for our <a href="http://www.podcast.de">podcast service</a>.</p>
<p>You can get up-to-date packages of <a href="http://nginx.org">nginx</a> through <a href="http://software.opensuse.org/search">OpenSuSE&#8217;s build service</a>. I have not yet found a RPM package of <a href="http://php-fpm.org">php-fpm</a> though. Therefore I compile it myself. This works well and I have the advantage that I can <strong>customize by PHP</strong> package.</p>
<p>But there is also one disadvantage. There is no system runlevel script available this way. So you cannot make use of the rc stuff on OpenSuSE and start PHP at boot time. As I have quiet a few machines to administer I decided to write my own <strong>runlevel script to start php-fpm</strong>. </p>
<p>Looking closer into the stuff that is already delivered with the <em>php-fpm</em> package is a <strong>powerful start script</strong>. I took it as the basis of my script. I had to modify it only in a few places. Big thanks to the author(s)!</p>
<p>It will take a few easy steps to <strong>get php-fpm running</strong> after booting.</p>
<ol>
<li>Download my modified <a href="http://www.linux-showroom.com/script-php-fpm" rel="nofollow">php-fpm script</a> to your server&#8217;s runlevel directory (<em>/etc/rc.d</em>).</li>
<li>Rename the file by removing the file extension (<em>.txt</em>)</li>
<li>Give your superuser (root) rights to execute it.</li>
<li>Open the file <em>php-fpm</em> in your favorite editor (Vim, emacs, joe, &#8230;). </li>
<li>Modify the three lines (php_fpm_BIN=, php_fpm_CONF=, php_fpm_PID=) on top to match your installation directory of php-fpm.</li>
<li>Save and close the file.</li>
<li>Start yast with <em>yast runlevel</em> and switch to expert mode with Alt+x</li>
<li>Activate php-fpm for runlevels 3 and 5 (or whatever suits you). Save your changes with Alt+o. That&#8217;s it!</li>
</ol>
<p>Now your <strong>php-fpm installation starts on boot</strong>. If you ever have to reboot your machine you do not have to think about starting php-fpm manually as the system does it for you.</p>
<p>Let me know if this was helpful for you, if it works and if you have any questions!</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2009/07/30/php-fpm-runlevel-start-script-for-opensuse-11-1.html">php-fpm runlevel start script for OpenSuSE 11.1</a></p>
<p class="wp-flattr-button"></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2009/07/30/php-fpm-runlevel-start-script-for-opensuse-11-1.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>System upgrade openSUSE 11.0 to openSUSE 11.1 with zypper</title>
		<link>http://www.linux-showroom.com/2008/12/20/system-upgrade-opensuse-110-to-opensuse-111-with-zypper.html</link>
		<comments>http://www.linux-showroom.com/2008/12/20/system-upgrade-opensuse-110-to-opensuse-111-with-zypper.html#comments</comments>
		<pubDate>Sat, 20 Dec 2008 16:47:45 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[OpenSuSE]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[command]]></category>
		<category><![CDATA[installation]]></category>
		<category><![CDATA[system]]></category>
		<category><![CDATA[upgrade]]></category>
		<category><![CDATA[zypper]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=28</guid>
		<description><![CDATA[I had to set up a server. The hoster offers openSUSE 11.0 at the moment but no openSUSE 11.1 yet. As I like to go with the latest and greatest I decided to upgrade the system to openSUSE 11.1 after using the hoster's installation image for openSUSE 11.0. I searched on the web how ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2008/12/20/system-upgrade-opensuse-110-to-opensuse-111-with-zypper.html">System upgrade openSUSE 11.0 to openSUSE 11.1 with zypper</a></p>
]]></description>
			<content:encoded><![CDATA[<p>I had to set up a server. The hoster offers openSUSE 11.0 at the moment but no openSUSE 11.1 yet. As I like to go with the latest and greatest I decided to upgrade the system to openSUSE 11.1 after using the hoster&#8217;s installation image for openSUSE 11.0. I searched on the web how a system upgrade should be done this time. (It seems to differ all the time.) I found a zypper command chain. Change the installation reposotories in <em>/etc/zypp/repos.d</em> to the new version and type:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">zypper refresh
zypper dist-upgrade</pre></div></div>

<p><!--adsense--></p>
<p>I did excatly that. It did refresh a few packages but as I guessed immediately not enough. I tried over. It did not help. Here is the solution. Delete all subdirectories in /var/cache/zypper and execute the commands above again.</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2008/12/20/system-upgrade-opensuse-110-to-opensuse-111-with-zypper.html">System upgrade openSUSE 11.0 to openSUSE 11.1 with zypper</a></p>
<p class="wp-flattr-button"></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2008/12/20/system-upgrade-opensuse-110-to-opensuse-111-with-zypper.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ejabberd on GNU/Linux OpenSuSE 11.0</title>
		<link>http://www.linux-showroom.com/2008/11/24/ejabberd-on-gnulinux-opensuse-110.html</link>
		<comments>http://www.linux-showroom.com/2008/11/24/ejabberd-on-gnulinux-opensuse-110.html#comments</comments>
		<pubDate>Mon, 24 Nov 2008 13:41:39 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[ejabberd]]></category>
		<category><![CDATA[erlang]]></category>
		<category><![CDATA[jabber]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[OpenSuSE]]></category>
		<category><![CDATA[server]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=15</guid>
		<description><![CDATA[I heard about the successful usage of ejabberd from weblin's CTO Heiner yesterday at lunch during BarCamp Hamburg 08. 

I was thinking of deploying jabber services for podcast.de for a while now but couldn't decide which server to take. I checked the ejabberd website. The software looks promising. So I give it a try.

smart ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2008/11/24/ejabberd-on-gnulinux-opensuse-110.html">ejabberd on GNU/Linux OpenSuSE 11.0</a></p>
]]></description>
			<content:encoded><![CDATA[<p>I heard about the successful usage of ejabberd from <a href="http://www.weblin.com">weblin</a>&#8216;s CTO Heiner yesterday at lunch during <a href="http://barcamphamburg2008.mixxt.de">BarCamp Hamburg 08</a>. </p>
<p>I was thinking of deploying jabber services for <a href="http://www.podcast.de">podcast.de</a> for a while now but couldn&#8217;t decide which server to take. I checked the <a href="http://www.ejabberd.im">ejabberd website</a>. The software looks promising. So I give it a try.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">smart <span style="color: #c20cb9; font-weight: bold;">install</span> ejabberd</pre></div></div>

<p>Could not find any results. So I check <a href="http://software.opensuse.org/search">OpenSuSE software search</a>. Luckily it lists a source which I add to my smart sources.</p>
<p><span id="more-15"></span></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">smart channel <span style="color: #660033;">--edit</span></pre></div></div>

<p><!--adsense--></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#91;</span>Cyberorg<span style="color: #7a0874; font-weight: bold;">&#93;</span>
<span style="color: #7a0874; font-weight: bold;">type</span> = rpm-md
name = Cyberorg
baseurl = http:<span style="color: #000000; font-weight: bold;">//</span>download.opensuse.org<span style="color: #000000; font-weight: bold;">/</span>repositories<span style="color: #000000; font-weight: bold;">/</span>home:<span style="color: #000000; font-weight: bold;">/</span>cyberorg:<span style="color: #000000; font-weight: bold;">/</span>sugar<span style="color: #000000; font-weight: bold;">/</span>openSUSE_11.0<span style="color: #000000; font-weight: bold;">/</span></pre></div></div>

<p>On to install the <strong>ejabberd</strong> package:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">smart <span style="color: #c20cb9; font-weight: bold;">install</span> ejabberd</pre></div></div>

<p>I get a report that I am still missing a package for <em>erlang</em> as ejabberd is written in <strong>erlang</strong>. I use the OpenSuSE software search again which lists the following source:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#91;</span>NicoK<span style="color: #7a0874; font-weight: bold;">&#93;</span>
<span style="color: #7a0874; font-weight: bold;">type</span> = rpm-md
name = NicoK
baseurl = http:<span style="color: #000000; font-weight: bold;">//</span>download.opensuse.org<span style="color: #000000; font-weight: bold;">/</span>repositories<span style="color: #000000; font-weight: bold;">/</span>home:<span style="color: #000000; font-weight: bold;">/</span>NicoK<span style="color: #000000; font-weight: bold;">/</span>openSUSE_11.0<span style="color: #000000; font-weight: bold;">/</span></pre></div></div>

<p>Now I can install ejabberd: ejabberd-2.0.0-2.11@x86_64<br />
I also need one more package: erlang-R12B4-18.11@x86_64</p>
<p>The beauty of installing pre-compiled RPMs on OpenSuSE. You almost always get a rc-file along with the RPM (for server software that is).</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">rce -<span style="color: #000000; font-weight: bold;">&gt;</span> Tab -<span style="color: #000000; font-weight: bold;">&gt;</span> rcejabberd</pre></div></div>

<p>There it is. Great! Now I want to change the default configuration. I would expect a config file to sit in /etc/sysconfig but ejabberd brings its own directory under /etc/ejabberd where two config files reside: ejabberd.cfg and ejabberdctl.cfg.</p>
<p>I read before that ejabberd.cfg is the heart of ejabberd. So I edit this for local usage only ATM.</p>
<p><!--adsense--></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#123;</span>hosts, <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#123;</span>ip, <span style="color: #7a0874; font-weight: bold;">&#123;</span><span style="color: #000000;">127</span>, <span style="color: #000000;">0</span>, <span style="color: #000000;">0</span>, <span style="color: #000000;">1</span><span style="color: #7a0874; font-weight: bold;">&#125;</span><span style="color: #7a0874; font-weight: bold;">&#125;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#125;</span>.</pre></div></div>

<p>I give it a try:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">rcejabberd start
Starting ejabberd    <span style="color: #000000; font-weight: bold;">done</span></pre></div></div>

<p>Looks like it started. Too bad checking <a href="http://127.0.0.1:5280/admin">http://127.0.0.1:5280/admin</a> does not work. I check for an error in the log dir <strong>/var/log/ejabberd/</strong> just to find out no files have been created. <em>ps aux</em> shows me some erlang stuff is running: <em>/usr/lib64/erlang/erts-5.6.4/bin/epmd -daemon</em> but no jabber process(es) which I would suspect.</p>
<p>I am increasing the loglevel to debug (5):</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#123;</span>loglevel, <span style="color: #000000;">5</span><span style="color: #7a0874; font-weight: bold;">&#125;</span>.</pre></div></div>

<p>No change. I remove <em>-detached</em> in the run script and try again. This time I get debug messages on the shell:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">rcejabberd start
Starting ejabberd Erlang <span style="color: #7a0874; font-weight: bold;">&#40;</span>BEAM<span style="color: #7a0874; font-weight: bold;">&#41;</span> emulator version 5.6.4 <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">source</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">64</span>-bit<span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>smp:<span style="color: #000000;">2</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>async-threads:<span style="color: #000000;">0</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>hipe<span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>kernel-poll:<span style="color: #c20cb9; font-weight: bold;">false</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>
<span style="color: #7a0874; font-weight: bold;">&#123;</span><span style="color: #ff0000;">&quot;init terminating in do_boot&quot;</span>,<span style="color: #7a0874; font-weight: bold;">&#123;</span>undef,<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#123;</span>ejabberd,start,<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#125;</span>,<span style="color: #7a0874; font-weight: bold;">&#123;</span>init,start_it,<span style="color: #000000;">1</span><span style="color: #7a0874; font-weight: bold;">&#125;</span>,<span style="color: #7a0874; font-weight: bold;">&#123;</span>init,start_em,<span style="color: #000000;">1</span><span style="color: #7a0874; font-weight: bold;">&#125;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#125;</span><span style="color: #7a0874; font-weight: bold;">&#125;</span>
Crash dump was written to: erl_crash.dump init terminating <span style="color: #000000; font-weight: bold;">in</span> do_boot<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>    failed</pre></div></div>

<p>At this point I have to give up the experiment as I have no time to fiddle around with erlang problems.</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2008/11/24/ejabberd-on-gnulinux-opensuse-110.html">ejabberd on GNU/Linux OpenSuSE 11.0</a></p>
<p class="wp-flattr-button"></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2008/11/24/ejabberd-on-gnulinux-opensuse-110.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache and lighttpd replaced by nginx for PHP application</title>
		<link>http://www.linux-showroom.com/2008/08/16/apache-and-lighttpd-replaced-by-nginx-for-php-application.html</link>
		<comments>http://www.linux-showroom.com/2008/08/16/apache-and-lighttpd-replaced-by-nginx-for-php-application.html#comments</comments>
		<pubDate>Sat, 16 Aug 2008 19:29:00 +0000</pubDate>
		<dc:creator>Fabio</dc:creator>
				<category><![CDATA[administration]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[backend]]></category>
		<category><![CDATA[HAproxy]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[lighttpd]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[PHP-FPM]]></category>
		<category><![CDATA[Scalability]]></category>
		<category><![CDATA[Settings]]></category>
		<category><![CDATA[Squid]]></category>
		<category><![CDATA[stack]]></category>
		<category><![CDATA[Varnish]]></category>
		<category><![CDATA[webserver]]></category>

		<guid isPermaLink="false">http://www.linux-showroom.com/?p=9</guid>
		<description><![CDATA[A while back I wrote an article Switching from Apache HTTP Server to Lighttpd - Installing Lighttpd. Back then I migrated static stuff to lighttpd but left the dynamic stuff (PHP) with Apache.

I was never really satisfied with the speed of our system under load. I tried and tried. I optimized a lot of ...<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2008/08/16/apache-and-lighttpd-replaced-by-nginx-for-php-application.html">Apache and lighttpd replaced by nginx for PHP application</a></p>
]]></description>
			<content:encoded><![CDATA[<p>A while back I wrote an article <a href="http://www.linux-showroom.com/2007/11/19/switching-from-apache-http-server-to-lighttpd-installing-lighttpd.html">Switching from Apache HTTP Server to Lighttpd &#8211; Installing Lighttpd</a>. Back then I migrated static stuff to lighttpd but left the dynamic stuff (PHP) with Apache.</p>
<p>I was never really satisfied with the speed of our system under load. I tried and tried. I optimized a lot of stuff in the backend and with the database. Most of the time I found a switch to make the system just a bit faster. Read <a href="http://www.webcoder.de/2008/01/15/retrospective-on-three-years-of-seagull-development.html">Retrospective on three years of Seagull development</a> if you are interested in the whole story.</p>
<p><span id="more-9"></span></p>
<p><!--adsense--></p>
<p>In the last couple of weeks I ran out of ideas on where to improve next (without the need of rewriting too much code). I remembered using <a href="http://www.squid-cache.org/">Squid</a> years ago. I had a look at the newest version (3.0) and my interest in Squid stopped pretty soon after reading through the documentation. It was just not the software I needed.</p>
<p>I dived into spreading the load to multiple backends using <a href="http://haproxy.1wt.eu/">HAproxy</a> which by the way has a super active community. Check the mailinglist. The maintainer Willy is doing a great job. Learning about HAproxy I stumbled across the webserver <a href="http://wiki.codemongers.com/Main">nginx</a> (pronounced engine x) numerous times. Learning about nginx I stumbled across the reverse proxy <a href="http://varnish.projects.linpro.no/">Varnish</a> which is the proxy solution I hoped Squid would be. Furtherdown the line I ran into PHP-FPM &#8211; the PHP FastCGI Process Manager &#8211; which should not stay unmentioned.</p>
<p>So I read lots of blog posts, mails from mailinglists, documentation, articles, visited several forums and also learned many new things in a few wikis. So after getting the idea I had my stack together: Varnish -> HAproxy -> nginx -> PHP -> MySQL</p>
<p>Time to test it out! Varnish comes in a relatively uptodate package for my favorite distribution OpenSuSE (currently running 10.3 on 6 systems). HAproxy is available in a fresh version. nginx is theoretically available. I cannot install it though because of a package management conflict. So I downloaded the source for the newest stable version (0.6.3 as time of writing) and compiled it.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>sysoev.ru<span style="color: #000000; font-weight: bold;">/</span>nginx<span style="color: #000000; font-weight: bold;">/</span>nginx-0.6.32.tar.gz
<span style="color: #c20cb9; font-weight: bold;">tar</span> xzvf nginx-0.6.32.tar.gz
<span style="color: #7a0874; font-weight: bold;">cd</span> nginx-0.6.32
.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--prefix</span>=<span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>software<span style="color: #000000; font-weight: bold;">/</span>nginx-0.6.32 <span style="color: #660033;">--user</span>=nginx <span style="color: #660033;">--group</span>=nginx --without-mail_pop3_module --without-mail_imap_module --without-mail_smtp_module
<span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>I did not need to install any extra packages. Frankly spoken I do have all the packages for compilation of C/C++ installed.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>software
<span style="color: #c20cb9; font-weight: bold;">ln</span> <span style="color: #660033;">-s</span> <span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>software<span style="color: #000000; font-weight: bold;">/</span>nginx-0.6.32 nginx</pre></div></div>

<p>I always set a symlink to the currently used package. That way it is easy to replace the package when new versions come out. I can compile and install the new version and just switch the symlink.</p>
<p>Next thing I had to compile was a patched PHP version. So download the sources at <a href="http://www.php.net">php.net</a> and the patches at the <a href="http://php-fpm.anight.org/">PHP-FPM</a> site.</p>
<p>Unpack the PHP source:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">tar</span> xjvf php-5.2.6.tar.bz2</pre></div></div>

<p>Patch the source:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">gzip</span> <span style="color: #660033;">-cd</span> php-5.2.6-fpm-0.5.8.diff.gz <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">patch</span> <span style="color: #660033;">-d</span> php-5.2.6 <span style="color: #660033;">-p1</span></pre></div></div>

<p>Configure PHP (adjust your settings accordingly):</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #007800;">LDFLAGS</span>=<span style="color: #ff0000;">&quot;-L/usr/lib64&quot;</span> .<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--with-curl</span> <span style="color: #660033;">--disable-debug</span> <span style="color: #660033;">--enable-libxml</span> <span style="color: #660033;">--enable-session</span> <span style="color: #660033;">--with-pcre-regex</span> <span style="color: #660033;">--enable-xml</span> <span style="color: #660033;">--with-bz2</span> <span style="color: #660033;">--with-zlib</span> <span style="color: #660033;">--enable-exif</span> <span style="color: #660033;">--enable-inline-optimization</span> <span style="color: #660033;">--enable-soap</span> <span style="color: #660033;">--enable-sockets</span> <span style="color: #660033;">--with-xmlrpc</span> <span style="color: #660033;">--without-pear</span> <span style="color: #660033;">--with-libdir</span>=lib64 <span style="color: #660033;">--with-mysql</span> <span style="color: #660033;">--with-mysqli</span> <span style="color: #660033;">--enable-mbstring</span> <span style="color: #660033;">--with-mcrypt</span> <span style="color: #660033;">--with-mhash</span> <span style="color: #660033;">--with-mime-magic</span> <span style="color: #660033;">--with-jpeg-dir</span>=<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>lib64 <span style="color: #660033;">--with-png-dir</span>=<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>lib64 <span style="color: #660033;">--with-gd</span> <span style="color: #660033;">--enable-gd-native-ttf</span> <span style="color: #660033;">--with-ttf</span> <span style="color: #660033;">--with-freetype-dir</span> <span style="color: #660033;">--enable-ftp</span> <span style="color: #660033;">--enable-zend-multibyte</span> <span style="color: #660033;">--with-openssl</span> <span style="color: #660033;">--enable-force-cgi-redirect</span> <span style="color: #660033;">--with-pcre-regex</span> <span style="color: #660033;">--without-sqlite</span> <span style="color: #660033;">--without-mm</span> <span style="color: #660033;">--enable-fastcgi</span> <span style="color: #660033;">--enable-bcmath</span> <span style="color: #660033;">--enable-fpm</span> <span style="color: #660033;">--quiet</span> <span style="color: #660033;">--prefix</span>=<span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>software<span style="color: #000000; font-weight: bold;">/</span>php5.2.6-fpm</pre></div></div>

<p>Compile and install:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #000000; font-weight: bold;">&amp;</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div>

<p>Adjust the PHP-FPM settings to fit your needs. You can find more info on this and related subjects in the <a href="http://php-fpm.anight.org/docs.html">PHP-FPM documentation</a>.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">vim</span> <span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>software<span style="color: #000000; font-weight: bold;">/</span>php<span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>php-fpm.conf</pre></div></div>

<p>Start PHP-FPM:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>software<span style="color: #000000; font-weight: bold;">/</span>php<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span>php-cgi <span style="color: #660033;">--fpm</span></pre></div></div>

<p>Have a look in the log files:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>software<span style="color: #000000; font-weight: bold;">/</span>php<span style="color: #000000; font-weight: bold;">/</span>logs<span style="color: #000000; font-weight: bold;">/</span>php-fpm.log</pre></div></div>

<p>Now you can connect through your webserver to fast-cgi processes. I use nginx as webserver (see above). Advantages and disadvantes of fast-cgi vs. mod-based approaches et al have been covered elsewhere. For me this makes perfectly sense and works extremly well.</p>
<p><!--adsense--></p>
<p>After playing around with Varnish for a while I decided I do not need HAProxy ATM. Varnish can do all the decisions I need to make based on HTTP headers. I configured Varnish&#8217;s config file (here: vcl.conf) by reading lots of examples on the net and trial and error.</p>
<p>If I find more time and anyone is interested I post more details on the configuration of nginx and Varnish. But for now I want to publish this post as it has been sitting here for a while already.</p>
<p>PS: If people say content is king they are absolutely right. But never forget in the internet speed is Kaiser!</p>
<p><br /><br />
This post originated from the <a href="http://www.linux-showroom.com/feed/">Linux Showroom feed</a>. Please check out <a href="http://www.linux-showroom.com">Linux Showroom</a> for more posts.<br/><br/><a href="http://www.linux-showroom.com/2008/08/16/apache-and-lighttpd-replaced-by-nginx-for-php-application.html">Apache and lighttpd replaced by nginx for PHP application</a></p>
<p class="wp-flattr-button"></p> <p><a href="http://www.linux-showroom.com/?flattrss_redirect&amp;id=9&amp;md5=5e97c38d1f6bb28b8b81fc1e7c99c193" title="Flattr" target="_blank"><img src="http://www.linux-showroom.com/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.linux-showroom.com/2008/08/16/apache-and-lighttpd-replaced-by-nginx-for-php-application.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

