<?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>Pervasive Code &#187; raid</title>
	<atom:link href="http://www.pervasivecode.com/blog/category/raid/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pervasivecode.com/blog</link>
	<description>Jamie Flournoy's Software Development Blog</description>
	<lastBuildDate>Mon, 26 Jul 2010 05:29:53 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Save power and heat: spin down backup drives when idle</title>
		<link>http://www.pervasivecode.com/blog/2008/05/15/save-power-and-heat-spin-down-backup-drives-when-idle/</link>
		<comments>http://www.pervasivecode.com/blog/2008/05/15/save-power-and-heat-spin-down-backup-drives-when-idle/#comments</comments>
		<pubDate>Fri, 16 May 2008 00:48:16 +0000</pubDate>
		<dc:creator>Jamie Flournoy</dc:creator>
				<category><![CDATA[raid]]></category>
		<category><![CDATA[servers]]></category>

		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2008/05/15/save-power-and-heat-spin-down-backup-drives-when-idle/</guid>
		<description><![CDATA[Here&#8217;s a tip for those of you who, like me, back up your data to hard disks instead of tapes. Backing up to the same hard disk doesn&#8217;t protect you much (if the disk failed, you&#8217;d lose the data and the backup at once), so presumably you&#8217;re backing up to a separate physical drive. That [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a tip for those of you who, like me, back up your data to hard disks instead of tapes. Backing up to the same hard disk doesn&#8217;t protect you much (if the disk failed, you&#8217;d lose the data and the backup at once), so presumably you&#8217;re backing up to a separate physical drive. That means that the backup drive need not spin 24/7. Instead, it only needs to spin at backup time.<br />
<span id="more-69"></span><br />
Fortunately most disks can be told to spin down when idle, like laptop drives do. For the main disks of a server this is probably not worth the trouble, but for backup drives it can save you a lot of power and heat. Excessive heat kills hard drives, so this can also prolong the life of your backup drive.</p>
<p>On Linux this is accomplished with hdparm:</p>
<pre>sudo hdparm -S 6 /dev/sda</pre>
<p>The numeric value is on a nonlinear scale, so <code>man hdparm</code> and read about the -S option to make sure you pick the value you intended.</p>
<p>You can check the current status (active or standby) like this:</p>
<pre>sudo hdparm -C /dev/sda</pre>
<p>Gotchas:<br />
External drives aren&#8217;t managed directly by the kernel, so hdparm won&#8217;t work on them. My hardware RAID card won&#8217;t pass through these commands. Linux RAID will not pass these commands through, though you may be able to apply the commands individually to RAID set members (which is what I was able to do).</p>
<p>I don&#8217;t know how to do this on a per-drive basis on Mac OS X (<code>pmset</code> apparently affects every drive on the system), or at all on Windows. If you know feel free to post a comment explaining how it&#8217;s done.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pervasivecode.com/blog/2008/05/15/save-power-and-heat-spin-down-backup-drives-when-idle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Athlon64 3500+ to Opteron 175 upgrade notes</title>
		<link>http://www.pervasivecode.com/blog/2008/03/01/athlon64-3500-to-opteron-175-upgrade-notes/</link>
		<comments>http://www.pervasivecode.com/blog/2008/03/01/athlon64-3500-to-opteron-175-upgrade-notes/#comments</comments>
		<pubDate>Sun, 02 Mar 2008 00:36:42 +0000</pubDate>
		<dc:creator>Jamie Flournoy</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[photos]]></category>
		<category><![CDATA[raid]]></category>
		<category><![CDATA[servers]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2008/03/01/athlon64-3500-to-opteron-175-upgrade-notes/</guid>
		<description><![CDATA[In short, gain with minimal pain, a couple of small hitches. I went single-core to dual-core with a drop-in replacement CPU and it was almost as easy as replacing the batteries in a flashlight.

My main home server is getting old. It was bought in September of 2004, and featured an Athlon64 3500+ processor, 1GB of [...]]]></description>
			<content:encoded><![CDATA[<p>In short, gain with minimal pain, a couple of small hitches. I went single-core to dual-core with a drop-in replacement CPU and it was almost as easy as replacing the batteries in a flashlight.</p>
<p><span id="more-61"></span></p>
<p>My main home server is getting old. It was bought in September of 2004, and featured an Athlon64 3500+ processor, 1GB of RAM, and a heap of hard disks. It&#8217;s still very fast as a file server, and has 3GB RAM now, so other responsibilities (backups, virus and spam filtering of email, etc.) are handled quite quickly too. However, I&#8217;m starting to do more server virtualization for work purposes (test environments with various OS and app configurations) on this server, so I figured it&#8217;d be nice to catch up to a more recent CPU that had multiple cores.</p>
<p>The Socket 939 processor line from AMD is almost phased out now. Upgrading to a new Socket AM2 CPU would mean a new motherboard, and based on the churn in the PC industry, that might lead to some serious cascading upgrades.</p>
<p>For example, the motherboard in this system died a couple of years ago, and it turned out that the PC industry switched to a new type of power connector, so I ended up having to also buy a new power supply also. At the same time, I had to rearrange hard disks because some were attached via a pair of PCI ATA-133 cards, but there were only 3 PCI slots on the new motherboard, and I also had a 3ware 8006-LP (SATA RAID) card, and a video card, fighting for room in those 3 slots. Fun!</p>
<p>The PC enthusiast solution to this sort of problem is apparently to buy a shiny new computer every year, full of brand new parts that match. That would be simple, but would cost about five times as much as what I&#8217;ve done. I was keen to keep the cascade of surprise upgrades to a minimum, which meant trying to stay with Socket 939, and maintaining the same clock rate.</p>
<p>Luckily the Opteron 175 fit the bill exactly: 2.2GHz, Socket 939, dual core, and about $150. That&#8217;s right in my price range for a non-critical but noticeable speed upgrade.</p>
<p>I bought it from Newegg, who by the way rock utterly. It showed up promptly and I opened it up, and&#8230; ugh. A new style of plug for the heatsink fan? Hmm, can I use the old heatsink? Maybe&#8230; but the new one looks much fancier. (The new one is on the left and the old one is on the right.)</p>
<p><img src="/images/socket939/new_and_old_heatsinks.jpg" width="492" height="369" /></p>
<p>Note the <a href="http://en.wikipedia.org/wiki/Heat_pipe">heat pipe</a>:</p>
<p><img src="/images/socket939/new_heatsink_side.jpg" width="256" height="192" /></p>
<p>It was pretty obvious what the copper tubing was for, but I didn&#8217;t know about the cool capillary circulation aspect (no pump!) nor that this had become mainstream technology for low-end coolers. Nifty.</p>
<p>Also notice that the new one (in the first photo alongside the old one) has pre-applied thermal paste. It&#8217;s the light gray square in the middle. I wiped most of the paste off of the old one, in anticipation of maybe needing to re-apply new paste and use it again due to the 3 vs. 4 pin problem.</p>
<p>Some reading about this plug switchover led me to believe that the 4th pin was optional and that the new plug was designed to fit into old-style plugs as needed. I tried it and it worked fine.</p>
<p>Here&#8217;s the socket with no CPU in it; you can see the white 3-pin connector labeled &#8220;CPU FAN&#8221; in the upper right corner.</p>
<p><img src="/images/socket939/socket_939_empty.jpg" width="433" height="569" /></p>
<p>And here is a close-up of the 4-pin cable plugged into the 3-pin connector, overhanging a large screw. Note that the right side of the plug has two plastic ridges designed to force you to plug it in the right way. Clever!</p>
<p><img src="/images/socket939/after_installation.jpg" width="333" height="457" /></p>
<p>Still, if you fail to plug the CPU fan in and the CPU overheats and dies, you void your warranty, so I&#8217;m glad I checked before just plugging it in and hoping it&#8217;d work.</p>
<p>I thought about the conventional wisdom, which is first that &#8220;box coolers&#8221; (the CPU coolers that come in the box with CPUs from the manufacturer) are lame, and second that overclocking an Opteron 175 works well. Given that I have no intention of overclocking this thing, I figured that the box cooler would be fine.</p>
<p>After I put the server back together, I ran two instances of <code>burnK7</code> (from the <a href="http://packages.ubuntu.com/gutsy/cpuburn">cpuburn package</a>) for a little over an hour, to keep both cores super busy. <code>burnK7</code>&#8217;s mission in life is to make your CPU temperature as hot as possible. The temperature never exceeded 57C for either core, compared to an idle temperature of 37C. The ambient temperature was 69F, and the case is not particularly fancy (2 fans in, 1 out, plus one in the power supply), so I&#8217;d have to say that the box cooler and preinstalled thermal paste are fine.</p>
<p>Overclockers may disagree and favor fancier coolers, but from experience I know that in this server, the hard disks are more likely to overheat on a hot day. I added an external desk fan to this server&#8217;s rack last year to resolve that problem, which was caused mainly by poor external air circulation.</p>
<p>A couple of things went more easily than I had expected. First, when researching this upgrade I found that (at least for Ubuntu Gutsy, possibly for other Linux releases or distros) there regular AMD64 kernel has SMP support. So, no OS tweaking was required to support the Opteron 175&#8217;s dual cores. Second, VMware Server recognized the second CPU and used both CPUs when I ran some tests on two uniprocessor virtual servers. Interestingly, <code>/proc/cpuinfo</code> on a virtualized Linux server shows the right CPU name for what is a dual-core CPU, but only lists one core, which matches the VMware configuration for that virtual server.</p>
<p>VMware did complain in a couple of cases about the different CPU feature set, when resuming suspended VMs. You can dismiss the message and run the VM, and that works, but it warns each time in my case because they are set up as locked snapshots (always restoring from the point where it was originally suspended, before the CPU upgrade).</p>
<p>This is minor, and the fix to make the warnings go away is quick: resume the VM from the old snapshot (dismissing the warning message), unlock the snapshot, make a new snapshot, lock that, and suspend (or power off) the VM. Now when you resume it in the future the warning will not appear. That&#8217;s simple to do, but it wasn&#8217;t 100% seamless, so I thought I&#8217;d mention it. I am glad that there was a warning, though; that would have helped if there had been an actual problem caused by the CPU change. In my opinion VMware does exactly the right thing.</p>
<p>So, all in all this was a very pleasant upgrade; quick, cheap, and effective (for server workloads which parallelize easily, this server is almost twice as fast as before).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pervasivecode.com/blog/2008/03/01/athlon64-3500-to-opteron-175-upgrade-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu Linux 7.10 &#8220;Gutsy Gibbon&#8221; Upgrade Report</title>
		<link>http://www.pervasivecode.com/blog/2007/12/28/ubuntu-linux-710-gutsy-gibbon-upgrade-report/</link>
		<comments>http://www.pervasivecode.com/blog/2007/12/28/ubuntu-linux-710-gutsy-gibbon-upgrade-report/#comments</comments>
		<pubDate>Fri, 28 Dec 2007 19:37:13 +0000</pubDate>
		<dc:creator>Jamie Flournoy</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[raid]]></category>
		<category><![CDATA[servers]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/12/28/ubuntu-linux-710-gutsy-gibbon-upgrade-report/</guid>
		<description><![CDATA[A few weeks ago I updated to the latest version of Ubuntu Linux. This is the 7.10 (meaning October 2007) release, called &#8220;Gutsy Gibbon&#8221;. I encountered a couple of serious issues early on, but now that these are resolved things are running well. I&#8217;ll describe the issues and solutions so that anyone else encountering them [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago I updated to the latest version of Ubuntu Linux. This is the 7.10 (meaning October 2007) release, called &#8220;Gutsy Gibbon&#8221;. I encountered a couple of serious issues early on, but now that these are resolved things are running well. I&#8217;ll describe the issues and solutions so that anyone else encountering them can easily overcome them.<br />
<span id="more-54"></span></p>
<p>I used the instructions on the <a href="https://help.ubuntu.com/community/GutsyUpgrades?highlight=%28upgrade%29#head-f2435a45758bb5836f8e5b87e90045463f8c6ec7">GutsyUpgrades</a> page of the Ubuntu help wiki, under the heading &#8220;Network upgrade for Ubuntu servers (recommended)&#8221;. This is the command-line way of doing things, which is appropriate for administering a remote server via SSH. There are two steps: install the updater, and run the updater. That&#8217;s pretty slick.</p>
<p>Unfortunately as usual with Debian based releases there are many cases (a dozen or so) where the simple act of updating a package from an old version to a new version causes the installer to plead for human guidance. I find it irritating that if you change the default configuration at all, it cannot simply merge your changes into the new config file and continue. You have to do that manually. This is tedious, but not a really big issue.</p>
<p>In my case I had to manually merge apache2.conf, php.ini, and dovecot.conf because I had made a single line change in each file.</p>
<p>Upon reboot there were vast numbers of error messages, which I ultimately determined to have been caused by <a href="https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.22/+bug/115616">this issue</a>. Removing <code>evms</code> solved the problem, and now there&#8217;s a <a href="https://wiki.ubuntu.com/Evms">special page about <code>evms</code> and why it&#8217;s no longer supported</a>. Based on my reading of that page I suspect that there may be a new version of the Gutsy Gibbon updater that actually helps you by suggesting that you get rid of <code>evms</code> proactively to prevent this problem. Nice! Anyway my fix was simply to wait until the system had booted (slowly, with lots of error messages) and to carefully type in <code>apt-get remove evms</code> which I couldn&#8217;t even see as I typed because of the flood of error messages. Once that was done that problem went away completely.</p>
<p>I had a separate problem which was that the kernel has re-named the devices for my hard disks, which made a couple of my drives appear not to be recognized by the system. I use Linux Software RAID for a single mirrored volume, and for some reason it couldn&#8217;t use the volume UUID to figure out where the drives had gone. After recompiling a custom kernel using <a href="http://ubuntuforums.org/showthread.php?t=311158">these excellent instructions</a> to try and resolve <a href="https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.22/+bug/157909">this issue</a> (which turned out to be a red herring), I found out that I was on the wrong track. (But I also found out that it only takes 56 minutes to compile a kernel on my server, which isn&#8217;t too bad.) I read dmesg extremely carefully and figured out what had happened. Some work with mdadm told the software RAID manager how to find the components of my RAID mirror and all was well with that. My understanding is that since /etc/fstab includes UUIDs now, drives moving around shouldn&#8217;t cause problems like this, so maybe this is a problem specific to the Software RAID system. Other drives moved but were located and mounted properly, with no need for manual intervention.</p>
<p>Finally, I had to update to VMWare Server 1.0.4, which is the first version that supports the kernel included with Gutsy Gibbon (2.6.22-14-server).</p>
<p>Now that all this is behind me I can say that for servers it&#8217;s a decent update; I have no experience with it as a desktop. If you have any doubts you can probably skip this one and wait for the next <a href="https://wiki.ubuntu.com/LTS">LTS</a> release. But if you do plan to upgrade, just make sure to remove <code>evms</code> first and look in the /dev/sd_ range for any hard drives that seem to have disappeared.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pervasivecode.com/blog/2007/12/28/ubuntu-linux-710-gutsy-gibbon-upgrade-report/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Looking forward to LinuxWorld Expo SF 2007</title>
		<link>http://www.pervasivecode.com/blog/2007/07/27/looking-forward-to-linuxworld-expo-sf-2007/</link>
		<comments>http://www.pervasivecode.com/blog/2007/07/27/looking-forward-to-linuxworld-expo-sf-2007/#comments</comments>
		<pubDate>Sat, 28 Jul 2007 02:58:52 +0000</pubDate>
		<dc:creator>Jamie Flournoy</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[databases]]></category>
		<category><![CDATA[gfs]]></category>
		<category><![CDATA[nfs]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[raid]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[ruby on rails]]></category>
		<category><![CDATA[servers]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[vmware]]></category>
		<category><![CDATA[xen]]></category>
		<category><![CDATA[zfs]]></category>

		<guid isPermaLink="false">http://www.pervasivecode.com/blog/2007/07/27/looking-forward-to-linuxworld-expo-sf-2007/</guid>
		<description><![CDATA[Last year I was doing mobile development and there was interesting Linux-as-smartphone-OS stuff going on. Now I&#8217;m doing Ruby on Rails development and there&#8217;s interesting server grid stuff going on. Here&#8217;s what I&#8217;m looking forward to finding out more about (all of these are things I&#8217;ve been watching or directly researching already):

Xen:
Xen seems to have [...]]]></description>
			<content:encoded><![CDATA[<p>Last year I was doing mobile development and there was interesting Linux-as-smartphone-OS stuff going on. Now I&#8217;m doing Ruby on Rails development and there&#8217;s interesting server grid stuff going on. Here&#8217;s what I&#8217;m looking forward to finding out more about (all of these are things I&#8217;ve been watching or directly researching already):<br />
<span id="more-36"></span><br />
<b>Xen</b>:<br />
<a href="http://www.xensource.com/products/xen/">Xen</a> seems to have eclipsed <a href="http://www.vmware.com/">VMware</a> as the standard low-cost virtualization solution, and virtualization looks like a giant sysadmin time saver for people like me who want to start dirt cheap (tens of dollars / month for a single Xen VPS) and potentially have dozens of servers in multiple data centers a few months later. I&#8217;d like to see what people are doing with it, especially along the lines of turning distro ISOs into preinstalled Xen images, and making tools to ease the creation and deployment of existing custom Xen images.</p>
<p><b>GFS, ZFS:</b><br />
I&#8217;m also interested in distributed filesystems like <a href="http://www.redhat.com/software/rha/gfs/">GFS</a>. I was under the impression until a few months ago that <a href="http://www.linuxinsight.com/ols2006_why_nfs_sucks.html">gross ugly NFS</a> was still the state of the art, but apparently somebody has finally addressed that. <em>Correction: GFS is a SAN filesystem, not a distributed filesystem, so it isn&#8217;t really comparable with NFS.</em><br />
<a href="http://www.opensolaris.org/os/community/zfs/">ZFS</a> is also interesting, because RAID has turned out to be complicated and expensive, mainly because it has to provide a transparent abstraction of a simple low-level block device. In classic time-sharing situations where many users run many applications on one volume that made more sense than it does now, where many users share one clustered application that has one dominant usage pattern across a large number of servers, each of which has several disks. The smaller set of requirements means that you can customize the clustered storage behavior and get major cost and performance savings, and ZFS seems to be a really good halfway point between application-level 100% custom clustered storage code, and kernel or hardware-level 100% generic RAID. The goal here would be to have dozens of cheap servers with several cheap drives each connected to cheap (motherboard-based) controllers, with HA and parallelization provided in software. </p>
<p><b>PostgreSQL:</b><br />
Also I&#8217;m becoming a total <a href="http://www.postgresql.org/">PostgreSQL</a> weenie and I want to see how they&#8217;re presenting themselves, and who&#8217;s making closed-source enterprise add-ons, esp. since Sun is increasingly investing in PostgreSQL (in a way that benefits the PostgreSQL community, not just Sun and Sun&#8217;s customers). Sun&#8217;s wagon is no longer hitched to Oracle on Solaris on SPARC, and the open stack of PostgreSQL on Linux (or Solaris) on x86 is proving to be extremely cost effective without sacrificing features, data integrity, or SMP scalability (as has been the case with MySQL). I think the &#8220;who&#8217;s the big fast fancy database of choice&#8221; tipping point from Oracle-&gt;PostgreSQL is already here and the world just hasn&#8217;t fully recognized that yet. The only thing left is built-in multimaster clustering (there&#8217;s <a href="http://www.pgcluster.org/">PGCluster</a> but it doesn&#8217;t look like a healthy project, and it&#8217;s not built in) but I think that&#8217;s just a matter of time now, since it&#8217;s such a desirable feature for the kind of customers Sun is courting.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pervasivecode.com/blog/2007/07/27/looking-forward-to-linuxworld-expo-sf-2007/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
