<?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>church of default &#187; Works for Me</title>
	<atom:link href="http://default.io/category/works-for-me/feed/" rel="self" type="application/rss+xml" />
	<link>http://default.io</link>
	<description>entropy jihad</description>
	<lastBuildDate>Tue, 10 Aug 2010 19:55:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>How to backup an A10 Networks AX Series Load Balancer</title>
		<link>http://default.io/2009/11/how-to-backup-an-a10-networks-ax-series-load-balancer/</link>
		<comments>http://default.io/2009/11/how-to-backup-an-a10-networks-ax-series-load-balancer/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 20:22:47 +0000</pubDate>
		<dc:creator>jim</dc:creator>
				<category><![CDATA[Works for Me]]></category>

		<guid isPermaLink="false">http://default.io/?p=218</guid>
		<description><![CDATA[
[jim@ssh ~]$ ssh admin@&#60;your-loadbalancer&#62;
Password:
Last login: Tue Nov 10 13:16:15 2009 from 10.10.24.62
[type ? for help]
AX>en
Password:
AX#conf
AX(config)#backup config tftp://&#60;yourserver&#62;/a10_backup.tar.gz
System files backup succeeded
AX(config)#

Notice you want to supply the .tar.gz suffix yourself.
Then on the receiving server server there&#8217;s a slight trick to unpacking it: its actually a tarball *within* a tarball thats then gzipped.   It also doesn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p><code><br />
[jim@ssh ~]$ ssh admin@&lt;your-loadbalancer&gt;<br />
Password:<br />
Last login: Tue Nov 10 13:16:15 2009 from 10.10.24.62<br />
[type ? for help]<br />
AX>en<br />
Password:<br />
AX#conf<br />
AX(config)#backup config tftp://&lt;yourserver&gt;/a10_backup.tar.gz<br />
System files backup succeeded<br />
AX(config)#<br />
</code><br />
Notice you want to supply the .tar.gz suffix yourself.</p>
<p>Then on the receiving server server there&#8217;s a slight trick to unpacking it: its actually a tarball *within* a tarball thats then gzipped.   It also doesn&#8217;t create a subdirectory for itself so it&#8217;ll explode all over the dir you&#8217;re in when you type the tar command.<br />
<code><br />
[root@nas tftpboot]# ll<br />
total 12<br />
-rw-rw-rw- 1 nobody nobody 11046 Nov 10 15:14 a10_backup.tar.gz<br />
[root@nas tftpboot]# file a10_backup.tar.gz<br />
a10_backup.tar.gz: gzip compressed data, from Unix, last modified: Tue Nov 10 15:14:00 2009<br />
[root@nas tftpboot]# tar zxvf a10_backup.tar.gz<br />
backup_system.tar<br />
[root@nas tftpboot]# tar xvf backup_system.tar<br />
a10data/aflex/<br />
a10data/aflex/mdot-redirect.arl<br />
a10data/bwlist/<br />
a10data/cert/<br />
a10data/cert/mycorp-wildcard.crt<br />
a10data/cert/entrust-L1B-chain.crt<br />
a10data/crl/<br />
a10data/hm/<br />
a10data/hm/bin/<br />
a10data/key/<br />
a10data/key/mycorp-private.key<br />
etc/release<br />
etc/a10_platforms<br />
a10data/etc/enable-passwd.pri<br />
a10data/etc/enable-passwd.sec<br />
a10data/etc/a10enable-passwd<br />
a10data/etc/passwd.pri<br />
a10data/etc/passwd.sec<br />
a10data/etc/a10passwd<br />
a10data/etc/startup-config.pri<br />
a10data/etc/startup-config.sec<br />
a10data/etc/startup-config.profile<br />
a10data/etc/network/ifconfig.eth0<br />
a10data/etc/sysconfig/network<br />
a10data/etc/timezone<br />
a10data/config/<br />
a10data/config/start<br />
a10data/web/partition_logo/<br />
a10data/web/partition_logo/title_logo.png<br />
mnt/cf/a10data/cert/<br />
mnt/cf/a10data/hm/<br />
mnt/cf/a10data/hm/bin/<br />
mnt/cf/a10data/key/<br />
mnt/cf/a10data/etc/enable-passwd.pri<br />
mnt/cf/a10data/etc/enable-passwd.sec<br />
mnt/cf/a10data/etc/a10enable-passwd<br />
mnt/cf/a10data/etc/passwd.pri<br />
mnt/cf/a10data/etc/passwd.sec<br />
mnt/cf/a10data/etc/a10passwd<br />
mnt/cf/a10data/etc/startup-config.pri<br />
mnt/cf/a10data/etc/startup-config.sec<br />
mnt/cf/a10data/etc/startup-config.profile<br />
mnt/cf/a10data/etc/network/ifconfig.eth0<br />
mnt/cf/a10data/etc/sysconfig/network<br />
mnt/cf/a10data/etc/timezone<br />
mnt/cf/a10data/config/<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://default.io/2009/11/how-to-backup-an-a10-networks-ax-series-load-balancer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>more adventures in multipathd</title>
		<link>http://default.io/2009/09/more-adventures-in-multipathd/</link>
		<comments>http://default.io/2009/09/more-adventures-in-multipathd/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 04:59:12 +0000</pubDate>
		<dc:creator>jim</dc:creator>
				<category><![CDATA[Works for Me]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[multipath]]></category>
		<category><![CDATA[multipathd]]></category>
		<category><![CDATA[SAN]]></category>

		<guid isPermaLink="false">http://default.io/?p=129</guid>
		<description><![CDATA[Found this handy tonight, multipathd has an interactive shell you can use by running &#8220;multipathd -k&#8221; which is a flag not documented in the man page.  Actually, no flags are documented in the man page.  You can get a list of the command options by typing help (or generally any command it can&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>Found this handy tonight, <a href="http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5.4/html/DM_Multipath/multipath_config_confirm.html">multipathd has an interactive shell you can use by running &#8220;multipathd -k&#8221;</a> which is a flag not documented in the man page.  Actually, no flags are documented in the man page.  You can get a list of the command options by typing help (or generally any command it can&#8217;t figure out what to do with).  That lead me to the &#8220;fail path&#8221; option which is what I&#8217;m trying to do here, test individual path failures without having to go through the 5 step java gui dance with my fibre switches.</p>
<blockquote><p>
[root@nas ~]# multipathd -k<br />
multipathd> show paths<br />
hcil    dev dev_t pri dm_st   chk_st  next_check<br />
0:2:0:0 sda 8:0   1   [undef] [ready] [orphan]<br />
1:0:0:1 sdb 8:16  1   [active][ready] XXXXXXXX.. 16/20<br />
2:0:0:1 sdd 8:48  1   [active][ready] XXXXX&#8230;.. 11/20
</p></blockquote>
<p>yes as you can see I clearly don&#8217;t have my blacklist setup right.  Now to fail a path its &#8220;fail path $path&#8221; where $path is&#8230; again, no documentation.  Turns out what they want is the &#8220;dev&#8221; column (second one)</p>
<blockquote><p>
multipathd> fail path sdd<br />
ok<br />
multipathd> show paths<br />
hcil    dev dev_t pri dm_st   chk_st   next_check<br />
0:2:0:0 sda 8:0   1   [undef] [ready]  [orphan]<br />
1:0:0:1 sdb 8:16  1   [active][ready]  XXXXX&#8230;.. 10/20<br />
2:0:0:1 sdd 8:48  1   [failed][faulty] X&#8230;&#8230;&#8230; 3/20
</p></blockquote>
<p>Interesting to note, multipathd seems pretty good at its job, as the path is re-enabled within seconds when the checker notices its fine.</p>
<blockquote><p>
Sep 30 00:51:35 nas multipathd: mpath1: fail path 8:48 (operator)<br />
Sep 30 00:51:35 nas kernel: device-mapper: multipath: Failing path 8:48.<br />
Sep 30 00:51:35 nas multipathd: dm-2: add map (uevent)<br />
Sep 30 00:51:35 nas multipathd: dm-2: devmap already registered<br />
Sep 30 00:51:35 nas multipathd: 8:48: mark as failed<br />
Sep 30 00:51:35 nas multipathd: mpath1: remaining active paths: 1<br />
Sep 30 00:51:40 nas multipathd: sdd: readsector0 checker reports path is up<br />
Sep 30 00:51:40 nas multipathd: 8:48: reinstated<br />
Sep 30 00:51:40 nas multipathd: mpath1: remaining active paths: 2<br />
Sep 30 00:51:40 nas multipathd: dm-2: add map (uevent)<br />
Sep 30 00:51:40 nas multipathd: dm-2: devmap already registered
</p></blockquote>
<p>So the good news is failing one path and then the other worked nicely and the server didn&#8217;t freak out and remount the filesystem read-only.</p>
]]></content:encoded>
			<wfw:commentRss>http://default.io/2009/09/more-adventures-in-multipathd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to mount a LUN from a Xiotech Emprise 5000 using multipathd on RHEL or CentOS 5.3</title>
		<link>http://default.io/2009/08/how-to-mount-a-lun-from-a-xiotech-emprise-5000-using-multipathd-on-rhel-or-centos-53/</link>
		<comments>http://default.io/2009/08/how-to-mount-a-lun-from-a-xiotech-emprise-5000-using-multipathd-on-rhel-or-centos-53/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 03:31:34 +0000</pubDate>
		<dc:creator>jim</dc:creator>
				<category><![CDATA[Works for Me]]></category>

		<guid isPermaLink="false">http://default.io/?p=93</guid>
		<description><![CDATA[DO NOT DO THIS
turns out the multipath.conf example from xone is all sorts of wrong, it effectively gets ignored and you&#8217;re using the defaults (which it turns out work ok-ish).  hopefully I&#8217;ll update here when I have two days to blow on the phone support game.

Well if you wanted to you could read the [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p><strong>DO NOT DO THIS</strong><br />
turns out the multipath.conf example from xone is all sorts of wrong, it effectively gets ignored and you&#8217;re using the defaults (which it turns out work ok-ish).  hopefully I&#8217;ll update here when I have two days to blow on the phone support game.
</p></blockquote>
<p>Well if you wanted to you could read the <a href="https://xone.xiotech.com/support/supportmatrix/Adapter_Configuration/RedHat_and_SLES_Multipath_Tools_Guide_for_Emprise_5000.aspx">official xiotech docs</a> which in turn reccomend you <a href="https://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/en-US/RHEL510/DM_Multipath/MPIO_Overview.html">the redhat docs</a>.  That would be a great way to kill a day in frustration while sifting through a lot of noise.  Here&#8217;s how to get a very basic example working quickly:</p>
<h3>1.) make sure you have device-mapper-multipath installed</h3>
<pre>[jim@sql1 ~]$ rpm -qa | grep multi
device-mapper-multipath-0.4.7-23.el5_3.4</pre>
<p>if you do, doesn&#8217;t hurt to yum update it.  if not, install it.</p>
<h3>2.) edit <em><strong>/etc/multipath.conf</strong></em></h3>
<p>first comment out the blacklist lines near the top</p>
<pre>#blacklist {
#        devnode "*"
#}</pre>
<p>then append this to the bottom</p>
<pre>devices {
        device {
                vendor                  "XIOTECH "
                product                 "ISE1400         "
                path_grouping_policy    multibus
                getuid_callout          "/sbin/scsi_id -g -u -d /dev/%n"
                path_checker            tur
                prio_callout              "none"
                path_selector           "round-robin 0"
                failback                    immediate
                no_path_retry           12
                user_friendly_names yes
        }
}</pre>
<h3>3.) setup and prod multipath</h3>
<pre>[jim@sql1 ~]$ sudo /sbin/chkconfig multipathd on
[jim@sql1 ~]$ sudo /etc/init.d/multipathd start
Starting multipathd daemon:
[jim@sql1 ~]$ sudo /sbin/multipath -v2</pre>
<p>notice it returns nothing, the redhat docs say it should, but it doesn&#8217;t.  its just scanning the paths, if you want to see what it has discovered/conifgured run this:</p>
<pre>[jim@sql1 ~]$ sudo /sbin/multipath -ll
mpath1 (36001f93000a63000019b000200000000) dm-2 XIOTECH,ISE1400
[size=100G][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=1][active]
 \_ 2:0:0:1 sdb 8:16  [active][ready]
\_ round-robin 0 [prio=1][enabled]
 \_ 3:0:0:1 sdc 8:32  [active][ready]</pre>
<p>take note of the &#8220;mpath1&#8243; part there</p>
<h3>4.) filesystem stuff time</h3>
<p>format the disk (I&#8217;m not bothering with fdisk/partitions or lvm in this example, complicate as you see fit)</p>
<pre>[jim@sql1 ~]$ sudo /sbin/mkfs.ext3 /dev/mapper/mpath1
&lt;snip&gt;
[jim@sql1 ~]$ sudo mkdir /mnt/xio
[jim@sql1 ~]$ sudo vi /etc/fstab</pre>
<p>and stick this line on the bottom</p>
<pre>/dev/mapper/mpath1      /mnt/xio                ext3         defaults,noatime        1 1</pre>
<p>then you&#8217;re pretty much set, mount it</p>
<pre>[jim@sql1 ~]$ sudo mount /mnt/xio
[jim@sql1 ~]$ cd /mnt/xio/
[jim@sql1 xio]$ ls
lost+found
[jim@sql1 xio]$ sudo dd if=/dev/zero of=./foo bs=8k count=1310720
1310720+0 records in
1310720+0 records out
10737418240 bytes (11 GB) copied, 24.9054 seconds, 431 MB/s
[jim@sql1 xio]$</pre>
]]></content:encoded>
			<wfw:commentRss>http://default.io/2009/08/how-to-mount-a-lun-from-a-xiotech-emprise-5000-using-multipathd-on-rhel-or-centos-53/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to reset the BIOS on a Dell M610 blade to the defaults</title>
		<link>http://default.io/2009/08/how-to-reset-the-bios-on-a-dell-m610-blade-to-the-defaults/</link>
		<comments>http://default.io/2009/08/how-to-reset-the-bios-on-a-dell-m610-blade-to-the-defaults/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 02:55:41 +0000</pubDate>
		<dc:creator>jim</dc:creator>
				<category><![CDATA[Works for Me]]></category>

		<guid isPermaLink="false">http://default.io/?p=89</guid>
		<description><![CDATA[There are (hypothetically) two ways:
in the bios: caps lock + num lock + scroll lock + alt-f
you have to be on the kvm for this to work, or at least I assume, because it didn&#8217;t work over idrac for me
jumper shuffle
shut down the blade, pull it out of the chassis, open it up, find the [...]]]></description>
			<content:encoded><![CDATA[<p>There are (hypothetically) two ways:</p>
<p><strong>in the bios: caps lock + num lock + scroll lock + alt-f</strong></p>
<p>you have to be on the kvm for this to work, or at least I assume, because it didn&#8217;t work over idrac for me</p>
<p><strong>jumper shuffle</strong></p>
<p>shut down the blade, pull it out of the chassis, open it up, find the nvram_clr jumper (see picture), toggle it, put it all back together, boot up, watch for the &#8220;restoring factory defaults&#8221; message (or something like that, I didn&#8217;t get to see it, colo hands-and-eyes guy did), power the blade down again, pull it out, open it up, flip the jumper back, put it together again, re-rack, power up and hit F1&#8230; done.</p>
<p><strong><img class="alignnone size-full wp-image-90" title="onceler6" src="http://default.io/wp-content/uploads/2009/08/onceler6.jpg" alt="onceler6" width="470" height="286" /></strong></p>
<p><strong><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://default.io/2009/08/how-to-reset-the-bios-on-a-dell-m610-blade-to-the-defaults/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Making sense of Dell&#8217;s M610 blade server memory configuration</title>
		<link>http://default.io/2009/04/making-sense-of-dells-m610-blade-server-memory-configuration/</link>
		<comments>http://default.io/2009/04/making-sense-of-dells-m610-blade-server-memory-configuration/#comments</comments>
		<pubDate>Fri, 17 Apr 2009 13:13:17 +0000</pubDate>
		<dc:creator>jim</dc:creator>
				<category><![CDATA[Works for Me]]></category>
		<category><![CDATA[blade server]]></category>
		<category><![CDATA[dell]]></category>
		<category><![CDATA[nehalem]]></category>
		<category><![CDATA[xeon 5500]]></category>

		<guid isPermaLink="false">http://default.io/?p=12</guid>
		<description><![CDATA[Over the last two weeks I&#8217;ve had a number of confrence calls with my Dell sales rep and some engineers about the new Xeon 5500 / &#8220;Nehalem&#8221; based blade servers, and specifically over the memory configurations thereof.  I have learned one thing for certain, this shit is impossible to explain without pictures.
The good news is, [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last two weeks I&#8217;ve had a number of confrence calls with my Dell sales rep and some engineers about the new Xeon 5500 / &#8220;Nehalem&#8221; based blade servers, and specifically over the memory configurations thereof.  I have learned one thing for certain, this shit is impossible to explain without pictures.</p>
<p>The good news is, eventually I stumbeled across this great writeup with pictures on the Dell TechCenter Wiki: <a href="http://www.delltechcenter.com/page/04-08-2009+-+Nehalem+and+Memory+Configurations">Nehalem and Memory Configurations</a></p>
<p>However its still a lot of words, and requires some intepretation to adapt to the M610, so with that in mind here is my explanation in ms-paint form:</p>
<h3>Channels, Banks, and Slots</h3>
<p><img class="alignnone size-full wp-image-13" title="dellram-m610-basic" src="http://default.io/wp-content/uploads/2009/04/dellram-m610-basic.png" alt="dellram-m610-basic" width="654" height="401" /></p>
<h3>The Good Configs</h3>
<p>Read the linked article for why, but the short of it is:</p>
<ul>
<li>you want all your sticks of ram to be the same size</li>
<li>you want to use either 6, 8, or 12 slots at a time</li>
<li>you want to use 4GB or 8GB sticks.  Smaller would add up to less than 3GB-per-core, and given how much ass these kick at vmware that&#8217;d be a weird config.</li>
</ul>
<h3>Wait, what?  Show me</h3>
<h4>6 slots</h4>
<p><img class="alignnone size-full wp-image-20" title="dellram-m610-six" src="http://default.io/wp-content/uploads/2009/04/dellram-m610-six.png" alt="dellram-m610-six" width="654" height="401" /></p>
<ul>
<li>6 x 4GB = 24GB</li>
<li>6 x 8GB = 48GB</li>
<li>can run at 1333MHz or 1066MHz, uses all 3 channels per socket (best memory bandwidth option)</li>
</ul>
<h4> Eight slots</h4>
<p><img class="alignnone size-full wp-image-17" title="dellram-m610-eight" src="http://default.io/wp-content/uploads/2009/04/dellram-m610-eight.png" alt="dellram-m610-eight" width="654" height="401" /></p>
<ul>
<li>8 x 4GB = 32GB</li>
<li>8 x 8GB = 64GB</li>
<li>because two slots per channel are populated can only run up to 1066MHz</li>
</ul>
<p> <br />
<h4>Twelve slots</h4>
<p><img class="alignnone size-full wp-image-19" title="dellram-m610-twelve" src="http://default.io/wp-content/uploads/2009/04/dellram-m610-twelve.png" alt="dellram-m610-twelve" width="654" height="401" /></p>
<ul>
<li>12 x 4GB = 48GB</li>
<li>12 x 8GB = 96GB</li>
</ul>
<h3>The Neckbeard Take? (sorry storagemojo)</h3>
<p>6&#215;8GB for 48GB is probably the sweet spot.  It gives the best memory bandwidth performance and a 6GB-per-core ratio thats a good midrange for virtualization.</p>
<p>NOTE: HUGE CAVEAT! &#8211; 8GB sticks aren&#8217;t available for purchase yet.  So if you plan on running vmware on these, you have a two month wait ahead of you.</p>
<h3>Links</h3>
<p>ran into some other good posts while I was at this, here&#8217;s the links</p>
<ul>
<li><a href="http://www.delltechcenter.com/page/04-06-2009+-+Introduction+to+Nehalem-EP">Dell TechCenter Wiki: Introduction to Nehalem EP</a></li>
<li><a href="http://blogs.sun.com/melvinkoh/entry/nehalem_memory_configuration">Sun, Melvin&#8217;s Grid and HPC Blog, Nehalem Memory Configuration</a></li>
<li><a href="http://blogs.sun.com/jnerl/entry/configuring_and_optimizing_intel_xeon">Sun, JNERL&#8217;S BLOG, Configuring and Optimizing Intel® Xeon Processor 5500 &#038; 3500 Series (Nehalem) Systems Memory</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://default.io/2009/04/making-sense-of-dells-m610-blade-server-memory-configuration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>You can have multiple default routes in linux (centos/rhel5)</title>
		<link>http://default.io/2009/04/you-can-have-multiple-default-routes-in-linux-centosrhel5/</link>
		<comments>http://default.io/2009/04/you-can-have-multiple-default-routes-in-linux-centosrhel5/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 22:19:38 +0000</pubDate>
		<dc:creator>jim</dc:creator>
				<category><![CDATA[Works for Me]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[default gateway]]></category>
		<category><![CDATA[default route]]></category>
		<category><![CDATA[rhel]]></category>

		<guid isPermaLink="false">http://default.io/?p=7</guid>
		<description><![CDATA[Just had to do a &#8220;live&#8221; default route cutover and while I was mostly sure it was gonna work its nice to have it definatively proven now.  You can add the second default gateway, then remove the first, so there&#8217;s never not a default route.  I&#8217;m not sure which one it kept using while they were both [...]]]></description>
			<content:encoded><![CDATA[<p>Just had to do a &#8220;live&#8221; default route cutover and while I was mostly sure it was gonna work its nice to have it definatively proven now.  You can add the second default gateway, then remove the first, so there&#8217;s never not a default route.  I&#8217;m not sure which one it kept using while they were both there, or if it per-packet loadbalances or what, but my ssh sessions didn&#8217;t even hiccup so at the very least it won&#8217;t knock you offline or interupt connections.   Of course this is assuming your upstream devices aren&#8217;t doing any nat/firewall stuff to complicate things.</p>
]]></content:encoded>
			<wfw:commentRss>http://default.io/2009/04/you-can-have-multiple-default-routes-in-linux-centosrhel5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
