<?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>Berk Ulsoy</title>
	<atom:link href="http://blog.ulsoy.org/lang/en-us/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.ulsoy.org</link>
	<description>Completely Personal Thoughts</description>
	<lastBuildDate>Mon, 19 Oct 2009 18:28:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en-us</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Asus G50vt &#8211; Ubuntu 9.10 Karmic Koala (64-bit)</title>
		<link>http://blog.ulsoy.org/lang/en-us/2009/10/19/asus-g50vt-ubuntu-9-10-karmic-koala-64-bit</link>
		<comments>http://blog.ulsoy.org/lang/en-us/2009/10/19/asus-g50vt-ubuntu-9-10-karmic-koala-64-bit#comments</comments>
		<pubDate>Mon, 19 Oct 2009 18:27:37 +0000</pubDate>
		<dc:creator>berk</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.ulsoy.org/?p=69</guid>
		<description><![CDATA[Hi,
My recent toy (actually 1 year old) is Asus G50vt gaming laptop. It is a perfect choice for people who need high resolutions like 1680&#215;1050, good cpu and graphics adapter with hdmi output and tolerable weight.
Ubuntu Jaunty Jackalope and Karmic Koala runs perfect on this. Come and see:

Asus did well with this product. Personally I [...]]]></description>
			<content:encoded><![CDATA[<p>Hi,<br />
My recent toy (actually 1 year old) is <a href="http://www.asus.com/product.aspx?P_ID=fdhHRbJtRlOCqy5C">Asus G50vt</a> gaming laptop. It is a perfect choice for people who need high resolutions like 1680&#215;1050, good cpu and graphics adapter with hdmi output and tolerable weight.</p>
<div class="wp-caption alignnone" style="width: 510px"><img title="Asus G50vt" src="http://www.asus.com/websites/global/products/fdhHRbJtRlOCqy5C/JpVzumI7hSl7pfmr_500.jpg" alt="Asus G50vt" width="500" height="500" /><p class="wp-caption-text">Asus G50vt</p></div>
<p>Ubuntu Jaunty Jackalope and Karmic Koala runs perfect on this. Come and see:<br />
<span id="more-69"></span><br />
Asus did well with this product. Personally I have no problem with its performance or quality. The chassis is firm. It looks and feels endurable and artistic. The price is totally acceptable for this (1600$ at Nov 2008).</p>
<p>The specs are:</p>
<table style="width: 892px; height: 404px;" border="0">
<tbody>
<tr>
<td>Processor</td>
<td>Intel(R) Core(TM)2 Duo CPU     T9400  @ 2.53GHz</td>
</tr>
<tr>
<td>Memory</td>
<td>4 GB DDR2 800Mhz</td>
</tr>
<tr>
<td>Display Adapter</td>
<td>NVidia GeForce 9800M GS 512MB</td>
</tr>
<tr>
<td>Screen</td>
<td>1680&#215;1050</td>
</tr>
<tr>
<td>Storage</td>
<td>2&#215;250MB 7200RPM SATA</td>
</tr>
<tr>
<td>Optic Drive</td>
<td>DVD-RW Multi Layer</td>
</tr>
<tr>
<td>Card Reader</td>
<td>8 in 1 card reader, SD,MMC,MS,MS-Pro,mini SD w/ adapter,MS-Duo,MS-Pro Duo via adapter</td>
</tr>
<tr>
<td>Network</td>
<td>Intel® PRO/Wireless WiFi link 5100, RTL8111/8168B, Bluetooth</td>
</tr>
<tr>
<td>Slots</td>
<td>1 x Microphone-in jack<br />
1 x Headphone-out jack<br />
1 x VGA port/Mini D-sub 15-pin for external monitor<br />
4 x USB 2.0 ports<br />
1 x IEEE 1394 port<br />
1 x RJ45 LAN Jack for LAN insert<br />
1 x HDMI<br />
1 x E-SATA<br />
1 x TV Antenna Input(optional)</td>
</tr>
<tr>
<td>Audio</td>
<td>Built-in Azalia compliant audio chip, with 3D effect &#38; full duplex<br />
Support Dolby® Home Theater<br />
Altec Lansing® co-brand speakers</td>
</tr>
<tr>
<td>Weight</td>
<td>3.3kg</td>
</tr>
<tr>
<td>Others</td>
<td>Numeric keypad, OLED display, 2M Video Camera</td>
</tr>
</tbody>
</table>
<p>Of course I do not forget lspci</p>
<p><code><br />
00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub (rev 07)<br />
00:01.0 PCI bridge: Intel Corporation Mobile 4 Series Chipset PCI Express Graphics Port (rev 07)<br />
00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 03)<br />
00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 03)<br />
00:1a.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 03)<br />
00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 03)<br />
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 03)<br />
00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 03)<br />
00:1c.1 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 2 (rev 03)<br />
00:1c.2 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 3 (rev 03)<br />
00:1c.5 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 (rev 03)<br />
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 03)<br />
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 03)<br />
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 03)<br />
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 03)<br />
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 93)<br />
00:1f.0 ISA bridge: Intel Corporation ICH9M-E LPC Interface Controller (rev 03)<br />
00:1f.2 RAID bus controller: Intel Corporation Mobile 82801 SATA RAID Controller (rev 03)<br />
01:00.0 VGA compatible controller: nVidia Corporation G94 [GeForce 9800M GS] (rev a1)<br />
03:00.0 Network controller: Intel Corporation Wireless WiFi Link 5100<br />
06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)<br />
07:01.0 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 05)<br />
07:01.1 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 22)<br />
07:01.2 System peripheral: Ricoh Co Ltd R5C843 MMC Host Controller (rev 12)<br />
07:01.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 12)<br />
07:01.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev ff)<br />
</code></p>
<p>I used Jaunty Jackalope and now it is running Karmic Koala for months. Here are the notes:</p>
<p><strong>INSTALLATION</strong></p>
<ul>
<li>If you have 2 disk configuration, you can use FakeRAID for RAID1 or RAID0 configuration without putting much effort. It will definitely boost performance with RAID0 but you have take extra care since loss of a disk will mean complete data loss. If you also want to use bundled Windows Vista with better performance, you should really consider this. In this case, you will need to use alternative installer cd instead of regular Ubuntu installer because regular installer does not include support for booting from dmraid devices</li>
<li>If you want to use FakeRAID, note that GRUB2 does not support it yet. You will need to use GRUB instead.</li>
<li><span style="background-color: #ffffff;">Regular installation media works ok if you do not want to use FakeRAID</span></li>
</ul>
<p><strong>HARDWARE DETECTION</strong></p>
<ul>
<li><span style="background-color: #ffffff;"><strong><span style="font-weight: normal; background-color: #ffffff;">Ubuntu automatically discovers every single hardware component, function keys and uses them. You do not need to make any Xorg configuration at all. (Thanks <a href="http://en.wikipedia.org/wiki/RandR">XRandR</a>) I recommend enabling restricted drivers when Ubuntu asks for it.</span></strong></span></li>
<li>NVidia&#8217;s original binary driver is unable to process sound through HDMI interface. Since we also have SPDIF, it is not a huge problem.</li>
<li>OLED driver is also included in the staging drivers area and it is available with Ubuntu. You can check <a href="http://lapsus.berlios.de/asus_oled.html" target="_blank">here</a> about what can do with this toy.</li>
<li>You may hear speakers still running when headphone is plugged. You can add following option to /etc/modprobe.d/alsa-base.conf&#124;<code>options snd-hda-intel power_save=10 power_save_controller=N model=g71v</code></li>
<li>Traditionally, hibernating is not stable but standby works ok.</li>
</ul>
<p>This is a screenshot from my desktop, running KDE 4.3</p>
<p><img class="alignnone size-full wp-image-74" title="my destop" src="http://blog.ulsoy.org/wp-content/uploads/2009/10/800.jpg" alt="my destop" width="800" height="500" /></p>
<p>Here is the <a href="http://blog.ulsoy.org/wp-content/uploads/2009/10/1680.jpg" target="_blank">full size</a></p>
<p>I would like to conclude by telling that this is a good Asus product with components working with at least Ubuntu 9.04 and 9.10. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ulsoy.org/lang/en-us/2009/10/19/asus-g50vt-ubuntu-9-10-karmic-koala-64-bit/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>(Un)Support of Sony Vaio by Sony and Microsoft</title>
		<link>http://blog.ulsoy.org/lang/en-us/2009/07/25/unsupport-of-sony-vaio-by-sony-and-microsoft</link>
		<comments>http://blog.ulsoy.org/lang/en-us/2009/07/25/unsupport-of-sony-vaio-by-sony-and-microsoft#comments</comments>
		<pubDate>Sat, 25 Jul 2009 19:57:52 +0000</pubDate>
		<dc:creator>berk</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.ulsoy.org/?p=63</guid>
		<description><![CDATA[I have an old Sony Vaio VGN-BX570B. I used it with Ubuntu for many years. The only missing hardware was fingerprint reader and this was definitely not a blocker.
I left this old friend alone when I got my new Asus G50Vt, until now.

I wanted to test Windows 7 RC with my old Vaio. The installation [...]]]></description>
			<content:encoded><![CDATA[<p>I have an old Sony Vaio VGN-BX570B. I used it with Ubuntu for many years. The only missing hardware was fingerprint reader and this was definitely not a blocker.<br />
I left this old friend alone when I got my new Asus G50Vt, until now.</p>
<p><span id="more-63"></span></p>
<p>I wanted to test Windows 7 RC with my old Vaio. The installation did not take more than 35 minutes, which good for such an hardware. However, Windows failed to use following devices:</p>
<ul>
<li>Wireless network adapter (Inter ProWireless)</li>
<li>ATI Display adapter</li>
<li>Internal USB camera</li>
<li>Bluetooth</li>
<li>Fingerprint reader</li>
<li>SD card reader</li>
</ul>
<p>This was the first disappointment. Windows traditionally fails to use some hardware automatically but I expected more from Windows 7. We are in 2009 and we deserve more.</p>
<p>I browsed to http://esupport.sony.com to find drivers. Unfortunately there is only a few Windows Vista Business drivers and Intel ProWireless is not one of them.</p>
<p>Since Windows XP drivers do not work with Windows 7, my adventure with it ended shortly.</p>
<p>For over ten years, I keep hearing &#8220;Linux does not support much hardware&#8221; from dinosaurs. </p>
<p>Linux -believed to run fewer hardware- is able to use all of these hardware (still except fingerprint reader) I am able to use this laptop with the latest advanced kernels and software, without any problem.</p>
<p>On the other hand, billions of dollars Microsoft + Sony brotherhood can not provide me a install-and-go operating system or new drivers for new advanced operating systems. They force me to use 8 year old and ugly Windows XP.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ulsoy.org/lang/en-us/2009/07/25/unsupport-of-sony-vaio-by-sony-and-microsoft/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why zealots are extremely harmful for Desktop Linux</title>
		<link>http://blog.ulsoy.org/lang/en-us/2009/06/26/why-zealots-are-extremely-harmful-for-desktop-linux</link>
		<comments>http://blog.ulsoy.org/lang/en-us/2009/06/26/why-zealots-are-extremely-harmful-for-desktop-linux#comments</comments>
		<pubDate>Fri, 26 Jun 2009 13:49:30 +0000</pubDate>
		<dc:creator>berk</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[free software]]></category>

		<guid isPermaLink="false">http://blog.ulsoy.org/?p=52</guid>
		<description><![CDATA[Zealots are everywhere..Trying to do things in their very own unique way..But are they harmful to for the software they like ? Are they pushing people away from Linux involuntarily ? Let's see...]]></description>
			<content:encoded><![CDATA[<p>Like most other software, there are serious number of zealots who obsessively love Linux. So far ok, the obsession is something personal and does not affect no one directly. However, these people are often considered as good users and most people judge <a href="http://en.wikipedia.org/wiki/Linux">Linux</a> experience by looking at how they use it.</p>
<p><span id="more-52"></span></p>
<p>Consider a typical zealot and his/her friends. (Are any female Linux zealot anyway ?) I will write some cases and they do happen somewhere in the world.</p>
<p>Our command prompt obsessive zealot comes to a friend&#8217;s home and asks for wireless network parameters. Once he gets, he runs series of iwconfig, wpa_supplicant and ifconfig commands to connect. He writes a profile for this network by hand and tests it. It takes about 10-15 minutes. He does not use simple network connection applets of Gnome/Kde. He does this because he is obsessed with running minimal applications on a 4GB laptop. Do you know what his friends think about now ? &#8220;It takes running some cryptic commands and 15 minute just to connect to a network using Linux&#8221;. This is the only experience they have ever seen. They will judge Linux by this from now on..</p>
<p>A friend of our zealot is curious about Linux and wants to try. As a trusted and renown friend, our zealot is happy to get a chance to win another user. They met at home at night, order some pizza and our zealot starts installing <a href="http://www.gentoo.org">Gentoo</a> or <a href="http://www.slackware.com">Slackware</a>. (Or some other enduser disoriented distribution)</p>
<p>- Hey, what&#8217;s that Slackware/Gentoo thing ? I always hear about <a href="http://www.ubuntu.com">Ubuntu</a>, why do not we just install it ?<br />
- This is the one I use. By using this, you will have the absolute control on your system. You will make sure that it runs only what you want and they will be compiled for the best performance<br />
- Cool</p>
<p>Now our zealot runs cfdisk and some other text based tools to organize disk. He carefully setups partitions and language configurations. He selects every package individually and 3 hours has already passed. Now the new user thinks that he can never do this by himself. Our lovely zealot has prevented his friend to experience nice and short gui installers of Ubuntu or Fedora based distributions. </p>
<p>Now the system has been installed and our zealot carefully checks for hardware components. He grabs the latest vanilla kernel and select modules one by one. It takes another 3 hour to make a fitting kernel image for that computer. He assures that this will give the best performance and he does not tell what will happen if the user tries to connect a different hardware. He gains may be 3-5% in performance but he loses flexibility of having thousands of hardware drivers which are ready to plug and play.</p>
<p>When it is 3 A.M, the system is ready to run, at last. Thanks to our zealot. Now the users asks for some applications. Our zealot grabs source files and compiles by setting configure flags according to his own taste. He quickly mentions about the compilers, source files etc to his friend, who has absolutely no idea what a programming language is..Our zealot thinks he can install better software although there are tens of thousands of testers and developers who create one-click-install packages which are tuned and tested.</p>
<p>Our unlucky user tries to use Linux for a week. He can not change display properties because most of them were handwritten to xorg.conf although it is not required in most cases. He barely remembers how to compile a program and fails trying to install something. At last, he does not access his external disks easily because our zealot does not let hal and udev run because he thinks they are not necessary..</p>
<p>This is completely harmful to free software society. These kind of people should stop and think about what they are doing. If you want to help, do not try to consider end users like yourself. Consider them as babies and give what they want. Give them a system which can use most of the connected hardware, easily play media, and watch videos on YouTube. Ordinary users do not need to run tiny window managers. They do not need to know about source code or build system. </p>
<p>Just show them installing the system by clicking next. Then explain that backing up is as easy as archiving home directory. Lastly, instruct to use package manager to search, install and uninstall applications by clicking their name.</p>
<p>If you will not do this, just let those users use other operating systems. Creating a negative image of desktop Linux experience is the last thing we want. Right ?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ulsoy.org/lang/en-us/2009/06/26/why-zealots-are-extremely-harmful-for-desktop-linux/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free Software vs. Microsoft in the Cloud of Web Servers</title>
		<link>http://blog.ulsoy.org/lang/en-us/2009/04/29/free-software-vs-microsoft-in-the-cloud-of-web-servers</link>
		<comments>http://blog.ulsoy.org/lang/en-us/2009/04/29/free-software-vs-microsoft-in-the-cloud-of-web-servers#comments</comments>
		<pubDate>Wed, 29 Apr 2009 11:14:33 +0000</pubDate>
		<dc:creator>berk</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[free software]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false">http://blog.ulsoy.org/?p=32</guid>
		<description><![CDATA[There are some web sites providing reports on web server software usage in the internet. One of the most populer is Netcraft with their infamous web server survey. In this post, I would like to talk more about decisions made by highest traffic sites and countries rather than cumulative results.
I&#8217;ve collected the list of the [...]]]></description>
			<content:encoded><![CDATA[<p>There are some web sites providing reports on web server software usage in the internet. One of the most populer is <a href="http://www.netcraft.com">Netcraft</a> with their infamous web server survey. In this post, I would like to talk more about decisions made by highest traffic sites and countries rather than cumulative results.</p>
<p>I&#8217;ve collected the list of the top sites from <a href="http://www.alexa.com">Alexa</a>. They provide a csv file ordered by ranking. Then I used a tiny script to collect Server header from top 15000 sites. After that, I used libgeo-ipfree-perl package to guess geographic location of sites. The numbers may not be exact but enough to give very strong idea.</p>
<p><span id="more-32"></span></p>
<p>There are some points that I should say:</p>
<ul>
<li>Geographical location has been found based on ip/country match. It may not be 100% correct</li>
<li>Some sites does not include Server header and some of them just give incorrect information. (about 900 in total) It does not make the site more secure, and  I do not think it will make any difference in percentages. It is possible to modify Server header in all important web server software</li>
<li>Only for the Top 100, I used Netcraft for the information about missing 8 servers.</li>
<li>Of course there are cache engines, other web servers and proxies but their numbers are just neglectable</li>
<li>Apache-Coyote has also some usage but I omit to make graphs simpler. It does not have affect on the idea of this work</li>
<li>The numbers in the charts are not percentages but the actual server numbers. For the country pie charts, I also omit unknown servers if there are many (not much indeed)</li>
<li>For the countries, I only checked those who has at least 5 sites in Top 15000</li>
</ul>
<h3>Top 100 Sites</h3>
<p>We see a clean win for <a href="http://httpd.apache.org">Apache</a>. This is the most important and marginal output. If you look at only Netcraft&#8217;s deployed server counts, <a href="http://www.microsoft.com">Microsoft</a> IIS seems only 15% behind Apache. However when we check the best of the best, the busiest web sites in the Internet, we see that Microsoft IIS is far behind Apache. Besides, <a href="http://nginx.net">nginx</a> is only a few sites behind of IIS. The names of the sites running IIS are also notable:</p>
<p><a href="http://www.live.com">www.live.com</a> (Microsoft)<br />
<a href="http://www.msn.com">www.msn.com</a> (Microsoft)<br />
<a href="http://www.myspace.com">www.myspace.com</a><br />
<a href="http://www.microsoft.com">www.microsoft.com</a> (Microsoft ..ehh)<br />
<a href="http://www.doubleclick.com">www.doubleclick.com</a><br />
<a href="http://www.go.com">www.go.com</a><br />
<a href="http://www.conduit.com">www.conduit.com</a><br />
<a href="http://espn.go.com">espn.go.com</a></p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20for%20Top%20100%20Sites&#038;cht=p3&#038;chd=t:45,8,18,6,3&#038;chds=0,45&#038;chs=500x200&#038;chl=Apache%20%20%2045&#124;IIS%20%20%208&#124;GWS%20%20%2018&#124;nginx%20%20%206&#124;lighthttpd%20%20%203" alt="Top 100 Sites" /></p>
<p>In the previous year, Google has changed their Apache server headers to GWS. GWS is a modified version of Apache and if we combine this number with plain Apache  deployments, the difference increases.</p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20for%20Top%20100%20Sites%20(Apache%20forks%20combined)&#038;cht=p3&#038;chd=t:45,8,6,3&#038;chds=0,63&#038;chs=500x200&#038;chl=Apache%20%20%2063&#124;IIS%20%20%208&#124;nginx%20%20%206&#124;lighthttpd%20%20%203" alt="Top 100 Sites" /></p>
<h3>Top 1000 Sites</h3>
<p>We still have same aggressive percentage of Apache and its derivatives</p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20for%20Top%201000%20Sites&#038;cht=p3&#038;chd=t:487,131,72,64,29&#038;chds=0,487&#038;chs=500x200&#038;chl=Apache%20%20%20487&#124;IIS%20%20%20131&#124;nginx%20%20%2072&#124;GWS%20%20%2064&#124;lighthttpd%20%20%2029" alt="Top 1000 Sites" /></p>
<h3>Top 10000 Sites</h3>
<p>As the number increases to 10000, Microsoft IIS gains some more points. </p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20for%20Top%2010000%20Sites&#038;cht=p3&#038;chd=t:5475,1714,717,107,246,128&#038;chds=0,5475&#038;chs=500x200&#038;chl=Apache%20%20%205475&#124;IIS%20%20%201714&#124;nginx%20%20%20717&#124;GWS%20%20%20107&#124;lighthttpd%20%20%20246&#124;IBM%20HTTP%20Server%20128" alt="Top 10000 Sites" /></p>
<h3>Top 15000 Sites</h3>
<p>The scheme does not change very much. Even we include rather low traffic sites, the winner is Apache </p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20for%20Top%2015000%20Sites&#038;cht=p3&#038;chd=t:8347,2642,1077,116,356,178&#038;chds=0,5475&#038;chs=500x200&#038;chl=Apache%20%20%208347&#124;IIS%20%20%202642&#124;nginx%20%20%201077&#124;GWS%20%20%20116&#124;lighthttpd%20%20%20356&#124;IBM%20HTTP%20Server%20178" alt="Top 15000 Sites" /></p>
<h3>Choices based on countries</h3>
<p>It is also interesting to check which countries prefer which software. Although open source software dominates in the world, we can notice some local differences.</p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20US%20for%20Top%2015000&#038;cht=p3&#038;chd=t:4098,1118,341,137&#038;chds=0,4098&#038;chs=500x200&#038;chl=Apache%20%20%204098&#124;IIS%20%20%201118&#124;nginx%20%20%20341&#124;lighthttpd%20%20%20137" alt="" /></p>
<p>This is one of the most important graph since most of the high traffic web sites are originated from the US. Although IIS seems closing the gap in the world scale, Apache is certainly preferred much more than IIS in here.</p>
<p>The picture changes when we move to Europe. Finland, Norway, Ukraine, Slovakia, Austria, Bulgaria, Romaina, Hungary, Ireland, Luxembourg, Portugal seem to use only open source web server software in Top 15000. Some other notable countries are here:</p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Sweden%20in%20Top%2015000&#038;cht=p3&#038;chd=t:38,12,10,7&#038;chds=0,38&#038;chs=500x200&#038;chl=Apache%20%20%2038&#124;IIS%20%20%2012&#124;nginx%20%20%2010&#124;lighthttpd%20%20%207" alt="" /></p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Netherlands%20in%20Top%2015000&#038;cht=p3&#038;chd=t:299,29,94,29&#038;chds=0,299&#038;chs=500x200&#038;chl=Apache%20%20%20299&#124;IIS%20%20%2029&#124;nginx%20%20%2094&#124;lighthttpd%20%20%2029" alt="" /></p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Germany%20in%20Top%2015000&#038;cht=p3&#038;chd=t:562,49,75,47&#038;chds=0,562&#038;chs=500x200&#038;chl=Apache%20%20%20562&#124;IIS%20%20%2049&#124;nginx%20%20%2075&#124;lighthttpd%20%20%2047" alt="" /></p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20France%20in%20Top%2015000&#038;cht=p3&#038;chd=t:376,60,10,13&#038;chds=0,376&#038;chs=500x200&#038;chl=Apache%20%20%20376&#124;IIS%20%20%2060&#124;nginx%20%20%2010&#124;lighthttpd%20%20%2013" alt="" /></p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20UK%20in%20Top%2015000&#038;cht=p3&#038;chd=t:318,123,35,11,13&#038;chds=0,318&#038;chs=500x200&#038;chl=Apache%20%20%20318&#124;IIS%20%20%20123&#124;nginx%20%20%2035&#124;lighthttpd%20%20%2011&#124;Zeus%20%20%2013" alt="" /></p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Russia%20in%20Top%2015000&#038;cht=p3&#038;chd=t:101,34,258&#038;chds=0,318&#038;chs=500x200&#038;chl=Apache%20%20%20101&#124;IIS%20%20%2034&#124;nginx%20%20%20258&#124;" alt="" /></p>
<p>Japan has also notable Apache usage:</p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Japan%20in%20Top%2015000&#038;cht=p3&#038;chd=t:617,57&#038;chds=0,617&#038;chs=500x200&#038;chl=Apache%20%20%20617&#124;IIS%20%20%2057" alt="" /></p>
<p>Also, there are some countries which prefer Microsoft IIS over Apache and other open source solutions<br />
Argentina, Chile, Bermuda, Egypt have only Microsoft based sites in Top 15000.</p>
<p>China is also an important Microsoft user although it has the highest rate for software piracy along with Russia and Thailand.</p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20China%20for%20Top%2015000&#038;cht=p3&#038;chd=t:328,453,120,16&#038;chds=0,453&#038;chs=500x200&#038;chl=Apache%20%20%20328&#124;IIS%20%20%20453&#124;nginx%20%20%20120&#124;lighthttpd%20%20%2016" alt="" /></p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Israel%20in%20Top%2015000&#038;cht=p3&#038;chd=t:11,18,8&#038;chds=0,18&#038;chs=500x200&#038;chl=Apache%20%20%2011&#124;IIS%20%20%2018&#124;nginx%20%20%208" alt="" /></p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Vietnam%20in%20Top%2015000&#038;cht=p3&#038;chd=t:27,40&#038;chds=0,40&#038;chs=500x200&#038;chl=Apache%20%20%2027&#124;IIS%20%20%2040" alt="" /></p>
<p>Here is Iran, where everything from US is considered to be demonic, except Microsoft. Business is business anyway..</p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Iran%20in%20Top%2015000&#038;cht=p3&#038;chd=t:10,23&#038;chds=0,23&#038;chs=500x200&#038;chl=Apache%20%20%2010&#124;IIS%20%20%2023" alt="" /></p>
<p>And lastly, my own country Turkey</p>
<p><img src="http://chart.apis.google.com/chart?chtt=Web%20server%20software%20in%20Turkey%20in%20Top%2015000&#038;cht=p3&#038;chd=t:42,62&#038;chds=0,62&#038;chs=500x200&#038;chl=Apache%20%20%2042&#124;IIS%20%20%2062" alt="" /></p>
<h3>Conclusion</h3>
<p>After all these, there is not much need for a conclusion but I will write anyway</p>
<ul>
<li>Open source platforms (mainly Linux) and Apache (with derivatives) are the most preferred combination for high traffic web sites.period.</li>
<li>nginx performed relatively well and it is a rising star. In some countries, it is used more than Microsoft IIS</li>
<li>Usage of Microsoft IIS increases as we move away from Top 100</li>
<li>Free software in web services has well adopted in most European countries and United States</li>
<li>Some countries develop technology and some consume it. It is noticable that, countries which are well-known for their technology leadership also prefer using Free Software in their busiest web services. Consumers lack vision, knowledge, qualified engineers and in my opinion, this affects the platform decision.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.ulsoy.org/lang/en-us/2009/04/29/free-software-vs-microsoft-in-the-cloud-of-web-servers/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Torturing candidates, powered by Prometric</title>
		<link>http://blog.ulsoy.org/lang/en-us/2009/04/08/torturing-candidates-powered-by-prometric</link>
		<comments>http://blog.ulsoy.org/lang/en-us/2009/04/08/torturing-candidates-powered-by-prometric#comments</comments>
		<pubDate>Wed, 08 Apr 2009 14:11:23 +0000</pubDate>
		<dc:creator>berk</dc:creator>
				<category><![CDATA[Berk Ulsoy]]></category>

		<guid isPermaLink="false">http://blog.ulsoy.org/?p=29</guid>
		<description><![CDATA[Prometric is the leading company for testing and certification services. There are many test centers in the world for Prometric. The exam registration is very simple. The process consists of logging in as a candidate and choose appropriate exam/city/test center/date. The problem comes after this.

A month ago, I registered for 1z0-047 , Oracle SQL exam [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.prometric.com">Prometric</a> is the leading company for testing and certification services. There are many test centers in the world for Prometric. The exam registration is very simple. The process consists of logging in as a candidate and choose appropriate exam/city/test center/date. The problem comes after this.</p>
<p><span id="more-29"></span></p>
<p>A month ago, I registered for 1z0-047 , Oracle SQL exam for a step towards OCA (Oracle Certified Associate). I choosed the nearest test center in Istanbul. For those who may not know, Istanbul city area is longer 100km..So it is very important to choose the nearest test center. (It was still 20km away from my work location anyway)</p>
<p>Me and a friend of mine were registered for the same exam at same date/time. When we get to the test center (Basarisoft), we were told there there is only &#8220;one&#8221; computer and we must wait for each other. Since there was no other option, we accepted.</p>
<p>&#8220;Testing Center&#8221; was more like a prison cell. Imagine a room with a small desk, uncomfortable chair, tiny window on top. Two people can barely stand in the room. This was the testing center indeed. Prometric&#8217;s testing server was under the desk with cover open! So called &#8220;window&#8221; was towards a wall. Nobody asked for an id card, cell phones or laptop. They left us alone and never come back.</p>
<p>I filled out a form in Prometric&#8217;s site but nothing happens.</p>
<p>Next time for 1z0-042 (OCA), I decided to change my test center. There was another center, Komdatasoft, which I used 5 years ago. It was very professional but far from me. I noticed that the company moved according to Prometric&#8217;s list of testing center and I choosed it.</p>
<p>When I got to the location, people at the reception desk told me that there is no such company there. I checked by myself to make sure and called Prometric for help.</p>
<p>The guy on the helpdesk was quite surprised when I explained the situation and I&#8217;m afraid he did not believe me in the beginning. He told me that he will call the testing center to verify.</p>
<p>A few minutes later, helpdesk said that no one was actually answering the phone. They compensated this by granting a free exam ticket. I managed to have my exam at last.</p>
<p>What I do not understand about all these, what kind of testing company have absolutely no idea about its testing centers. Prometric does not even know if their test center is alive. When I check the site list, I can still see this ghost testing center.</p>
<p>As a candidate, I expect to see a certain level of standard in testing centers. </p>
<p>This is totally unacceptable and irrespectful. Thanks Prometric! I could not imagine worse..</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ulsoy.org/lang/en-us/2009/04/08/torturing-candidates-powered-by-prometric/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Upgrading to Ubuntu 9.04 Jaunty Jackalope Using a DMRAID Device</title>
		<link>http://blog.ulsoy.org/lang/en-us/2009/03/28/upgrading-to-ubuntu-904-jaunty-jackalope-using-a-dmraid-device</link>
		<comments>http://blog.ulsoy.org/lang/en-us/2009/03/28/upgrading-to-ubuntu-904-jaunty-jackalope-using-a-dmraid-device#comments</comments>
		<pubDate>Sat, 28 Mar 2009 19:37:43 +0000</pubDate>
		<dc:creator>berk</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[jaunty]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.ulsoy.org/?p=25</guid>
		<description><![CDATA[I am getting older. Once I was jumping in to the hell of alpha packages to use a new distribution. Now I found myself waiting for the Beta at least. Jaunty Jackalope Beta has been announced a fews days ago and it is downloadable for all variants of Ubuntu. Hooraaay, so far..
I am using an [...]]]></description>
			<content:encoded><![CDATA[<p>I am getting older. Once I was jumping in to the hell of alpha packages to use a new distribution. Now I found myself waiting for the Beta at least. Jaunty Jackalope Beta has been announced a fews days ago and it is downloadable for all variants of Ubuntu. Hooraaay, so far..</p>
<p>I am using an <a href="http://www.asus.com/Product.aspx?P_ID=fdhHRbJtRlOCqy5C&#038;content=specifications">Asus G50vt</a>. It is a wonderful laptop with many features. It also includes Intel&#8217;s <a href="https://help.ubuntu.com/community/FakeRaidHowto">fake raid</a> and I use it to stripe two internal disks.</p>
<p>I upgraded my Intrepid Ibex using &#8220;update-manager -d&#8221; command, the recommended way from Ubuntu. It oversimplifies the whole distribution upgrade. It activates the propoer repositories, downloads and installs packages, but with a single dirty problem.</p>
<p>The version of dmraid in the Jaunty Jackalope Beta is now rc15-4 and it does not recognize Intel RAIDs. Therefore, initrd is unable to activate the volume. The solution is to download the latest version (currently rc15-6) from Jaunty repositories along with dependencies and install it. Installation will update the initrd image so you do not have to do it. To boot and access the system, you can use the <a href="http://releases.ubuntu.com/releases/9.04/">alternate install cd</a> Strangely, it will recognize those volumes but not your own dmraid.</p>
<p>Now you have your volume again..</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ulsoy.org/lang/en-us/2009/03/28/upgrading-to-ubuntu-904-jaunty-jackalope-using-a-dmraid-device/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using VMWare-Server 1.0.8 on Ubuntu 8.10 Intrepid Ibex</title>
		<link>http://blog.ulsoy.org/lang/en-us/2009/01/26/using-vmware-server-108-on-ubuntu-810-intrepid-ibex</link>
		<comments>http://blog.ulsoy.org/lang/en-us/2009/01/26/using-vmware-server-108-on-ubuntu-810-intrepid-ibex#comments</comments>
		<pubDate>Mon, 26 Jan 2009 21:00:11 +0000</pubDate>
		<dc:creator>berk</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">https://test.ulsoy.org/?p=14</guid>
		<description><![CDATA[
I was trying out new VMWare Server 2.0 for some time. It really has some nice features which I really miss. Check here for the list.
However, it has one big nasty problem:
It is totally unusable.
Right. I am not exaggerating. I am not trying to smash it. I wish I could say something better but it [...]]]></description>
			<content:encoded><![CDATA[<p>
I was trying out new <a href="http://www.vmware.com">VMWare Server 2.0</a> for some time. It really has some nice features which I really miss. Check <a href="http://www.vmware.com/products/server/features.html">here</a> for the list.<br />
However, it has one big nasty problem:</p>
<p>It is totally unusable.</p>
<p>Right. I am not exaggerating. I am not trying to smash it. I wish I could say something better but it is really hard.</p>
<p>Just like everybody complains, this version does not have a management console client. This would not be a problem if the proposed method was working ok. Now, vmware server users have to use web browsers to manage their guests.<br />
<br />
During first connection attempt, VMWare tries to install a plugin to your favourite web browser to get the console. The problem is, sometimes it takes a minute to get in to the console. If you are lucky enough, you can click a couple ofthings. If you press ctrl+alt to exit, you may again wait some time.</p>
<p>This is totally unacceptable. I installed the software on 3 different systems and all of them behaved similar. Then I decided to return to 1.0.8.<br />
My systems are running 64-bit Ubuntu Intrepid Ibex 8.10.<br />
<br />
Due to the changes in 2.6.27, VMWare Server 1.0.8 does not install by itself. In order to do, followings steps should be taken:</p>
<ul>
<li>Install g++ build-essentials linux-source-2.6.27 linux-headers-2.6.27-11-server ia32-libs inetutils-inetd kernel-package packages
<li>Get the patch:
<div id="aa">
wget http://www.insecure.ws/warehouse/vmware-update-2.6.27-5.5.7-2.tar.gz
</div>
<li>Untar the vmware server archive and start the installation with vmware-install.pl. Answer the questions as you like but when it asks to continue with vmware-config.pl, say no
<li>Untar the update. Change directory to it, and run runme.pl. It will patch kernel modules and continue with vmware-config.pl
<li>If the installation fails after printing &#8220;Generating SSL Certificates&#8221;, touch /etc/vmware/ssl/rui.key and /etc/vmware/ssl/rui.crt files
<li>Installation should finish without an error now. However you will be surprised when you see that you can not login via console, even if you enter correct password<br />
Intrepid Ibex changed the default password hashing algorithm from md5 to sha512 and PAM clients used by VMWare Server does not use sha512. Open /etc/pam.d/common-passwd and change sha512 in the password line to md5. Do not forget to reset your password to make sure that shadow contains md5, not sha512 hashes.
</ul>
<p>
This should be enough, normall. If the system is 32 bit, it is also possible to use the systems own pam libraries instead of VMWare&#8217;s to be able to use sha512 passwords.</p>
<p>I hear some of you saying &#8220;Why don&#8217;t you just use <a href="http://kvm.qumranet.com">KVM</a> and say goodbye to all those ?&#8221; If you have to share the administration of the system, it is better to use a software that everyone can easily use. It should be admitted that, even there are GUIs for KVM, it is not as easy as VMWare and VMWare makes more people happy using non-critical/non-production systems. (I do not want to be called at Sunday just because that I am the only one who can manage KVM. Yes, I am bad <img src='http://blog.ulsoy.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ulsoy.org/lang/en-us/2009/01/26/using-vmware-server-108-on-ubuntu-810-intrepid-ibex/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>4 node GFS+IPVSADM cluster with Ubuntu Linux</title>
		<link>http://blog.ulsoy.org/lang/en-us/2008/10/30/4-node-gfsipvsadm-cluster-with-ubuntu-linux</link>
		<comments>http://blog.ulsoy.org/lang/en-us/2008/10/30/4-node-gfsipvsadm-cluster-with-ubuntu-linux#comments</comments>
		<pubDate>Thu, 30 Oct 2008 19:46:01 +0000</pubDate>
		<dc:creator>berk</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gfs]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">https://test.ulsoy.org/?p=3</guid>
		<description><![CDATA[<p>                                                                                          
Linux and Open Source world has vast array of technologies to fit our needs. In these pages, I will define steps to build 4 node GFS cluster with LVS. Unfortunately there is not much howtos or guides to setup similar environments.
<br />                                                                                                                                                                                                                                
GFS is developed by <a href="http://www.redhat.com">Redhat</a> and GFS configuration can be most easily done using GUI tools in Redhat Enterprise Linux. However, there are many reasons to deploy a <a href="http://www.debian.com">Debian</a>/<a href="http://www.ubuntu.com">Ubuntu</a> instead of Redhat. (I will not discuss them here)                                                                                                                                              
This setup has been tested on following hardware:                                                                                                                                                                                            
<ul>                                                                                                                                                                                                                                         
<li>4x HP Compaq DL380 G5</li>                                                                                                                                                                                                               
<li>Intel Xeon quad core</li>                                                                                                                                                                                                                
<li>16 GB RAM</li>                                                                                                                                                                                                                           
<li>2 x 146 GB SCSI internal disk</li>                                                                                                                                                                                                       
<li>2 x Qlogic HBA</li>                                                                                                                                                                                                                      
<li>2 x Gigabit Ethernet</li>                                                                                                                                                                                                                
<li>MSA 2000 with 2x controllers</li>                                                                                                                                                                                                        
<li>2x Fibre Switch</li>                                                                                                                                                                                                                     
</ul>                                                                                                                                                                                                                                        
<br />                                                                                                                                                                                                                                       
Our environment will end up having following features:                                                                                                                                                                                       

<ul>
<li>All servers, running Ubuntu Hardy Heron 8.04 LTS 64-bit edition (Openvz enabled kernel)</li>
<li>MSA2000 configured as single RAID6 drive</li>                                               
<li>GFS cluster setup with simple config, including quorum device and simple fencing</li>       
<li>RAID6 drive formatted as LVM volume and shared between 4 nodes using GFS</li>               
<li>LVS+Heartbeat to setup ip failover for web and mysql services</li>                          
<li>Network interfaces are bonded to provide redundancy</li>                                    
<li>Two nodes will run web server and the other two nodes will use <a href="http://www.mysql.com">mysql</a></li> (db1, db2, web1, web2)
<li>Use OpenVZ for virtualization</li>                                                                                                 
</ul>                                                                                                                                  
</p>                                                                                                                                   
<br />                                                                                                                                 ]]></description>
			<content:encoded><![CDATA[<p>
Linux and Open Source world has vast array of technologies to fit our needs. In these pages, I will define steps to build 4 node GFS cluster with LVS. Unfortunately there is not much howtos or guides to setup similar environments.<br />
<br />
GFS is developed by <a href="http://www.redhat.com">Redhat</a> and GFS configuration can be most easily done using GUI tools in Redhat Enterprise Linux. However, there are many reasons to deploy a <a href="http://www.debian.com">Debian</a>/<a href="http://www.ubuntu.com">Ubuntu</a> instead of Redhat. (I will not discuss them here)<br />
This setup has been tested on following hardware:</p>
<ul>
<li>4x HP Compaq DL380 G5</li>
<li>Intel Xeon quad core</li>
<li>16 GB RAM</li>
<li>2 x 146 GB SCSI internal disk</li>
<li>2 x Qlogic HBA</li>
<li>2 x Gigabit Ethernet</li>
<li>MSA 2000 with 2x controllers</li>
<li>2x Fibre Switch</li>
</ul>
<p>
Our environment will end up having following features:</p>
<ul>
<li>All servers, running Ubuntu Hardy Heron 8.04 LTS 64-bit edition (Openvz enabled kernel)</li>
<li>MSA2000 configured as single RAID6 drive</li>
<li>GFS cluster setup with simple config, including quorum device and simple fencing</li>
<li>RAID6 drive formatted as LVM volume and shared between 4 nodes using GFS</li>
<li>LVS+Heartbeat to setup ip failover for web and mysql services</li>
<li>Network interfaces are bonded to provide redundancy</li>
<li>Two nodes will run web server and the other two nodes will use <a href="http://www.mysql.com">mysql</a></li>
<p> (db1, db2, web1, web2)</p>
<li>Use OpenVZ for virtualization</li>
</ul>
<p>
<span id="more-3"></span></p>
<p>
Fun, right ? Ok, I will summarize MSA 2000.</p>
<p>MSA 2000 can be configured using serial console or web management gui. I recommend using serial console just for setting up ip address and continue with its nice web gui. I also recommend reading basic information about volumes (physical-logical) and RAID systems. I preferred using RAID6 because I need to maximize disk space while maintaining safety. RAID5 is not the best option because it can not deal with 2 broken disks and its performance is awful when single disk fails. Using RAID6 we can still stand with 2 disk failues and we will still have acceptable performance. If performance is more important than the storage size, RAID 0+1 is more suitable.                                                    </p>
<p>HP delivers servers with hardware raid capability and you will most probably have two mirrored disks. Leave those, it will not have a negative effect on the performance and you will gain important redundancy against our old, crappy hard disk technology.                                                                                                                                                                                                                             </p>
<ol>
<li>
Download Ubuntu Hardy Heron 8.04 64-bit server edition and burn the image. Boot the system with the cd, verify the content on the cdrom and start the installation. Make a base installation with minimal packages. We can continue using updated packages in the repositories.<br />
<br /> <br />
If you plan adding new local disks to hosts, you can choose to have an LVM managed disk during partitioning step. If you do not, you can just select ext3 as local partition.                                                                </p>
<p>Here, some might say that you should make separate partitions for /boot, /var, /home or /usr. Here are some basic rules:</p>
<ul>
<li>Do not make /boot  a separate partition unless you have a real good reason</li>
<li>Do not make /var a separate partition. Some applications (like mysql) put database files under /var/lib. (Or you can have mail queue under /var/spool/)  In that case, put that specific directory on another partition, not whole /var.</li>
<li>You should make /home a different partition if you intend to use home directories a lot. <br /> <br />
The point is to be able to use one single backup file restore all the necessary files in case of a disaster. After more than 10 years, I can say that I see no advantage of having separate /var or /usr but I faced many problems</li>
</ul>
<li>Setup network parameters during the installation. Provide http proxy if necessary
<p>      After the installation. Open /etc/apt/sources.list</p>
<div id="aa">
      vi /etc/apt/sources.list
</div>
<p>      Change contents of the file like this:</p>
<div id="aa">
      deb http://us.archive.ubuntu.com/ubuntu/ hardy main restricted universe multiverse<br />
      deb-src http://us.archive.ubuntu.com/ubuntu/ hardy main restricted universe multiverse<br />
      deb http://security.ubuntu.com/ubuntu/ hardy-security restricted main multiverse universe<br />
      deb-src http://security.ubuntu.com/ubuntu/ hardy-security restricted main multiverse universe<br />
      deb http://us.archive.ubuntu.com/ubuntu/ hardy-updates restricted main multiverse universe<br /> <br />
      deb-src http://us.archive.ubuntu.com/ubuntu/ hardy-updates restricted main multiverse universe
</div>
<p>      This will make sure that the system will fetch the updated and security packages. You can also add hardy-proposed and hardy-backports to have more recent packages. However, once you have the system up and running, do not install updates other than security, unless necessary                                                                                                                                                                                                  </p>
<p>      Update the package cache and make an upgrade:</p>
<div id="aa">
      apt-get update<br /> <br />
      apt-get upgrade<br /> 
</div>
<li>Now run tasksel and select OpenSSH server. If you want to have a desktop environment, also select Ubuntu Desktop. Tasksel will install all the required packages. I will not focus on installation of web server or database packages. It quite depends on needs and taste. So I&#8217;m stepping in to other stuff.</li>
<li>
Set up serial console for remote access. ilo2 requires additional license in order to provide remote console functionality via browser. However, you can still have a serial console using virtual serial port.<br /> <br />
First we need to create a serial port listener. Since Ubuntu uses upstart as the init replacement, we will not use old inittab. Open /etc/event.d/ttyS0 and write:                                                                           </p>
<div id="aa">
ttyS0 &#8211; getty</p>
<p>start on runlevel 2<br />
start on runlevel 3<br />
start on runlevel 4<br />
start on runlevel 5</p>
<p>stop on runlevel 0<br />
stop on runlevel 1<br />
stop on runlevel 6</p>
<p>respawn<br />
exec /sbin/getty -L 115200 ttyS0 vt102
</p></div>
<p>Let root login from the serial console. Open /etc/securetty and enter ttyS0</p>
<p>Now edit /boot/grub/menu.lst to tell grub to use ttyS0 during boot up phase</p>
<div id="aa">
serial &#8211;unit=0 &#8211;speed=115200 &#8211;word=8 &#8211;parity=no &#8211;stop=1<br />
terminal &#8211;timeout=10 serial console
</div>
<p>And lastly, append following to the end of the each kernel line in /boot/grub/menu.lst</p>
<div id="aa">
console=ttyS0 console=tty0
</div>
</li>
<li>Install multipath-tools. Ubuntu kernels already include support for Multipathed IO. This allows us to connect to the storage array using two different physical paths. We can have redundancy for failover or we can distribute I/O load between the paths
<p>      My /etc/multipath.conf looks like:</p>
<div id="aa">
<pre>
defaults {
udev_dir /dev
user_friendly_names yes
}
blacklist {
devnode "cciss"
devnode "fd"
devnode "hd"
devnode "md"
devnode "sr"
devnode "scd"
devnode "st"
devnode "ram"
devnode "raw"
devnode "loop"
}
multipaths {
multipath {
wwid 3600c0ff000d56f978446734801000000
alias san1
}
}
device {
vendor "HP"
model "MSA2*"
path_grouping_policy multibus
getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
selector "round-robin 0"
rr_weight uniform
prio_callout "/bin/true"
path_checker tur
hardware_handler "0"
failback immediate
no_path_retry 12
rr_min_io 100
}
</pre>
</div>
<p>      If we had other devices in the path which we do not want to include, we would have a blacklist section. Examples for this section is included in the default config file. My path_grouping_policy is failover. You can also use other policies to distribute load, such as multibus                                                                                                                                                                                                 </p>
<p>      Start multipathing daemon by running /etc/init.d/multipath-tools start . Then run multipath -ll (Double L) . You should see like this:</p>
<div id="aa">
<pre>
root@node1:~# multipath -ll
san1 (3600c0ff000d56f978446734801000000) dm-0 HP      ,MSA2212fc
[size=820G][features=0][hwhandler=0]
\_ round-robin 0 [prio=0][active]
  \_ 0:0:0:0 sda        8:0   [active][ready]
\_ round-robin 0 [prio=0][enabled]
  \_ 1:0:0:0 sdb        8:16  [active][ready]
</pre>
</div>
<p>      If you see only one path, then your fibre switches may need configuration or you may have problems in cabling. All nodes should be able to see the device. Now we can mount the disk on one of the nodes but we must not use it on the other nodes concurrently, for now.</li>
<li>You should be able to see the disk on the storage array by now. You have to see as many as physical disks as you created in the management GUI of the MSA 2000. <br /> <br />
Note: For kernel versions < 2.6.19, qla2xxx drivers include failover capability. However, the driver does not work with newer kernels due to serious changes in kernel structs. Newer versions of the driver omits this capability and recommends using multipath-tools. I recommend sticking with the newest kernels.                                                                                                                                                                    </p>
<ul>
<li>Run cfdisk against the shared disk</li>
<li>Create an LVM partition. The size is up to you, I will continue with one gigantic partition</li>
<li>Create another partition for cluster quorum disk. ~10MB is enough and the type can be Linux</li>
<li>Save and exit. (You may need to reboot or run partprobe to let the kernel see the changes directly)</li>
<li>First create a physical volume. We will put our volume groups in it.
<div id="aa">
            pvcreate /dev/mapper/san1-part1<br /> 
</div>
</li>
<li>Create and activate a volume group. We will put our logical volumes in it
<div id="aa">
            vgcreate vgname /dev/mapper/san1-part1<br /> <br />
            vgchange -a y vgname<br /> 
</div>
</li>
<li>Create  logical volume using all available space
<div id="aa">
            vgdisplay vgname|grep &#8220;Total PE&#8221;<br /> <br />
            lvcreate -l usetotalpehere vgname -n lvname<br /> 
</div>
</li>
<li>Create your favourite file system using the new logical volume. The path will look like:
<div id="aa">
            mkfs /dev/mapper/lvname<br /> 
</div>
</li>
</ul>
<li>Now we will configure GFS2 cluster. First, we have to install required packages on all the nodes.
<div id="aa">
      apt-get install gfs2-tools gfs-tools cman clvm
</div>
<p>      Add following modules to /etc/modules</p>
<div id="aa">
<pre>
loop
lp
rtc
fuse
gfs
lock_dlm
ip_vs_ftp
ip_vs_lblc
ip_vs_lc
ip_vs_wlc
ip_vs_lblcr
ip_vs_nq
ip_vs_wrr
ip_vs_sh
ip_vs_dh
ip_vs_sed
ip_vs_rr
bonding
</pre>
</div>
<p>Run modprobe against all these modules to load them in to the kernel<br />
<br /> <br />
Create GFS2 (or GFS, whichever you want. GFS2 is still experimental) volume. Parameter j defines the number of journals. Normally, every node must have one. We have to use Distributed Lock Manager for lock management.</p>
<div id="aa">
mkfs -t gfs2 -p lock_dlm -j 4 /dev/mapper/lvname
</div>
<p>Setup /etc/lvm2/lvm.conf by defining following values</p>
<div id="aa">
locking_type = 2<br />
fallback_to_clustered_locking = 0<br />
fallback_to_local_locking = 0<br />
locking_library = &#8220;liblvm2clusterlock.so&#8221;
</div>
<p>We should never fallback to another locking mechanism otherwise we can harm the data integrity. </p>
<p>Now, we have to create our quorum disk. Basically, quorum disk is accessed by all nodes frequently to write timestamped &#8220;I am here&#8221; messages. If an alive message is not seen for specified time, that node is considered to be dead and fenced from the storage. Quorum disk is extremely important for data consistency. It must reside on a physical partition and all nodes musth have access to it. Quorum can not be on a LVM volume because accessing to cluster LVM requires cluster membership. Initialize the quorum disk:                                                                                                                                                                                             </p>
<div id="aa">
mkqdisk /dev/mapper/san1-part2
</div>
<p>Open /etc/cluster/cluster.conf and define the GFS cluster. Ideally, all nodes should have at least one working fencing method. Otherwise, it might not be possible to prevent data corruption. The best fencing methods are power related ones. Since I only have a ilo2 port, I send  poweroff signal through it. It is also possible to run scripts which login to fiber switch and shutdown a specific port.                                                                           </p>
<div id="aa">
<xmp><br />
<?xml version="1.0"?><br />
 <cluster name="mycluster" config_version="1"><br />
  <cman expected_votes="5" two_nodes="0" cluster_id="777"><br />
 </cman><br />
 <clusternodes><br />
  <clusternode name="node1" nodeid="1" votes="1"><br />
   <fence><br />
    <method name="ilo"><br />
     <device name="ilo_node1"/><br />
    </method><br />
   </fence><br />
 </clusternode>                                           </p>
<p> <clusternode name="node2" nodeid="2" votes="1"><br />
  <fence><br />
   <method name="ilo"><br />
    <device name="ilo_node2"/><br />
   </method><br />
  </fence><br />
 </clusternode><br />
 <clusternode name="node3" nodeid="3" votes="1"><br />
  <fence><br />
   <method name="ilo"><br />
    <device name="ilo_node3"/><br />
   </method><br />
  </fence><br />
 </clusternode><br />
 <clusternode name="node4" nodeid="4" votes="1"><br />
  <fence><br />
   <method name="ilo"><br />
    <device name="ilo_node4"/><br />
   </method><br />
  </fence><br />
 </clusternode><br />
</clusternodes><br />
<quorumd device="/dev/mapper/san1-part1" votes="4" stop_cman="1"><br />
 <heuristic program="/bin/true" score="1" interval="2" tko="3"/><br />
</quorumd>                                                       </p>
<p><fence_daemon post_join_delay="5" clean_start="1"/><br />
 <fencedevices><br />
  <fencedevice name="ilo_node1" agent="fence_ilo" ipaddr="192.168.25.223" login="Administrator" passwd="1234" action="off"/><br />
  <fencedevice name="ilo_node2" agent="fence_ilo" ipaddr="192.168.25.224" login="Administrator" passwd="1234" action="off"/><br />
  <fencedevice name="ilo_node3" agent="fence_ilo" ipaddr="192.168.25.221" login="Administrator" passwd="1234" action="off"/><br />
  <fencedevice name="ilo_node4" agent="fence_ilo" ipaddr="192.168.25.222" login="Administrator" passwd="1234" action="off"/><br />
 </fencedevices><br />
</cluster><br />
</xmp>
</div>
</li>
<li>Setup bonding for ethernet interface.<br /> <br />
Normally, I recommend having 4 ethernet interfaces for maximum reliability. Since we have 4 nodes, we can not just use cross cables or serial cables for cluster interconnect. We have to connect to a switch and switches can fail anytime. Therefore, two of the four interfaces must be bonded in failover mode to in order to make sure that even if one link/switch fails cluster traffic can still survive. This extremely vital. Cluster interconnect will not only carry heartbeat messages, but also provide transport for distributed lock manager. If distributed lock manager losts connectivity, the node will lost its access to global storage. <br /> <br />
Bonding setup is extremely simple. Just configure /etc/network/interfaces file like this:                                                                                                                                                    </p>
<div id="aa">
<pre>
auto bond0
iface bond0 inet static
        address x.y.z.t
        netmask a.b.c.d
        gateway q.w.e.r
        slaves eth0 eth1
</pre>
<p>Of course you will need another similar section for bond1
</p></div>
<p>Later, it is possible to check the status from /proc/net/bonding/bond0</p>
<div id="aa">
<pre>
Ethernet Channel Bonding Driver: v3.2.3 (December 6, 2007)

Bonding Mode: fault-tolerance (active-backup) (fail_over_mac)
Primary Slave: None
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 100
Down Delay (ms): 100                                         

Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:1e:0b:d3:f2:34

Slave Interface: eth1
MII Status: down
Link Failure Count: 0
Permanent HW addr: 00:1e:0b:d3:f2:32
</pre>
</div>
</li>
<li>Reboot all nodes. If everything is correct and there is no network issue, all nodes should join to the cluster. Cluster memberships can be checked by running cman_tool nodes. </li>
<p>Now we can continue with setting up heartbeat for web and sql services. Before this, all ip address should be planned and entered to all /etc/hosts files on all nodes.</p>
<li>Setup Linux IP cluster
<ul>
<li>Install required packages for ip cluster. apt-get install heartbeat2 ipvsadm ldirectord</li>
<li>
Tune kernel parameters for cluster operation and reboot all nodes. Note that if any of the interfaces is missing, you will probably have issues in ipvs cluster.</p>
<div id="aa">
<pre>
net.ipv4.conf.default.rp_filter=1
net.ipv4.conf.all.rp_filter=1
net.ipv4.ip_forward=1
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth1.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.eth0.arp_announce = 2
net.ipv4.conf.eth1.arp_announce = 2
net.ipv4.conf.bond0.proxy_arp = 1
</pre>
</div>
</li>
<li>Edit /etc/ha.d/ha.cf<br />
Three lines are most important in this file.</p>
<div id="aa">
<pre>
ucast bond0 x.y.z.t
node web1
node web2
</pre>
<p>ucast line defines interface for heartbeat checks and destination ip address. node lines define the hostnames of the heartbeat nodes.
</p></div>
</li>
<li>Edit /etc/ha.d/haresources. Define ldirectord module for cluster ip. The line must be same in both nodes of the cluster. For example, following line must be used on both db1 and db2.
<div id="aa">
<pre>
web1    ldirectord::ldirectord.cf LVSSyncDaemonSwap::master IPaddr2::clusteripaddress/netmaskslashnotation/bond0/broadcastaddress
</pre>
</div>
</li>
<li>Edit /etc/ha.d/ldirectord.conf. Here we define two real servers  with different weights. manual of ipvsadm explains all load balancing algorithms in detail. In this setup, we create an pure active/passive balancing using sed scheduler. Checktype is only connect but it is possible to send http requests and check for return values.
<div id="aa">
<pre>
checktimeout=10
checkinterval=1
autoreload=yes
logfile="local0"

virtual = tomcat:8080
        service = http
        real = web1:8080 gate 65535
        real = web2:8080 gate 1
        checktype = connect
        scheduler = sed
        protocol = tcp
</pre>
</div>
</li>
<li></li>
</ul>
</li>
<li>Create a new openvz based virtual server. You can check <a href="http://wiki.openvz.org/Debian_template_creation">here</a> for a template creation howto if you do not already have one</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://blog.ulsoy.org/lang/en-us/2008/10/30/4-node-gfsipvsadm-cluster-with-ubuntu-linux/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 1.565 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-03-08 14:33:14 -->
