<?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>Blue Heaven</title>
	<atom:link href="http://blueheaven.ws/feed/" rel="self" type="application/rss+xml" />
	<link>http://blueheaven.ws</link>
	<description>..</description>
	<lastBuildDate>Wed, 04 Aug 2010 09:10:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Routerstation Pro Backfire Nightlies!</title>
		<link>http://blueheaven.ws/2010/08/04/routerstation-pro-backfire-nightlies/</link>
		<comments>http://blueheaven.ws/2010/08/04/routerstation-pro-backfire-nightlies/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 09:09:12 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[embedded]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[installation]]></category>
		<category><![CDATA[nightly]]></category>
		<category><![CDATA[openwrt]]></category>
		<category><![CDATA[osuosl]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[routerstation]]></category>
		<category><![CDATA[routerstation pro]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/?p=268</guid>
		<description><![CDATA[That&#8217;s right boys and girls. I&#8217;ve started compiling RouterStation Pro OpenWRT nightly builds for all punks who like to live on the edge. From my testing these images are rather stable, and aren&#8217;t prone to consistent or serious issues. Since &#8230; <a href="http://blueheaven.ws/2010/08/04/routerstation-pro-backfire-nightlies/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>That&#8217;s right boys and girls.  I&#8217;ve started compiling RouterStation Pro OpenWRT nightly builds for all punks who like to live on the edge.  From my testing these images are rather stable, and aren&#8217;t prone to consistent or serious issues.  Since this changes nightly your mileage may vary.</p>
<p>Go get your nightly builds <a href="http://files.blueheaven.ws/openwrt/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/08/04/routerstation-pro-backfire-nightlies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Upgrading GuruPlug Kernels</title>
		<link>http://blueheaven.ws/2010/08/04/upgrading-guruplug-kernels/</link>
		<comments>http://blueheaven.ws/2010/08/04/upgrading-guruplug-kernels/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 09:02:45 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[embedded]]></category>
		<category><![CDATA[guruplug]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[installation]]></category>
		<category><![CDATA[osuosl]]></category>
		<category><![CDATA[u-boot]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/?p=259</guid>
		<description><![CDATA[I recently had more time to investigate my earlier problems with the GuruPlug.  The problem was discovered by some people on the plugcomputer.org forum.  The problem stock U-Boot is that is incorrectly reports the arcNumber.  The solution then, is to &#8230; <a href="http://blueheaven.ws/2010/08/04/upgrading-guruplug-kernels/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I recently had more time to investigate my earlier problems with the GuruPlug.  The problem was discovered by <a href="http://plugcomputer.org/plugforum/index.php?topic=1722.0">some</a> <a href="http://plugcomputer.org/plugforum/index.php?topic=1669.0">people</a> on the plugcomputer.org forum.  The problem stock U-Boot is that is incorrectly reports the arcNumber.  The solution then, is to upgrade U-boot!</p>
<p>After a failed flashing attempt(don&#8217;t attempt to tftp flash u-boot.kwb from within U-Boot!) I needed to use JTAG combined with the included JTAG adapter.  To do this, make sure that the UART cable is unplugged, and the JTAG cable is plugged in(unplug/replug the USB adapter just to be safe).  First grab the <a href="http://plugcomputer.org/plugwiki/index.php/File:Guruplug-installer.tar.gz">guruplug-installer</a> package, then grab a known-good copy of <a href="http://plugcomputer.org/index.php/us/resources/downloads?func=fileinfo&amp;id=71">U-Boot</a>.</p>
<p><code><br />
$ cd Downloads/<br />
$ tar zxvf Guruplug-installer.tar.gz<br />
$ cd guruplug-installer<br />
$ sudo ./runme.sh ../uboot.guruplug.bin<br />
(lots of scrolling text)<br />
</code></p>
<p>At this point U-Boot is restored, and all that&#8217;s needed is to upload a new kernel(and maybe rootfs).  Your old kernel won&#8217;t work with this new version of U-Boot, so make sure that you have a kernel compiled and ready to use.  If you don&#8217;t feel like patching(and manually fixing the failed patches) I&#8217;ve provided a 2.6.34 kernel for you, complete with modules.  To upload the new kernel you&#8217;re going to need to attach your GuruPlug to your network with it&#8217;s top-facing ethernet interface(near eSATA port).</p>
<p>After attaching the UART cable to the GuruPlug again(and unplugging JTAG, then unplugging/replugging the USB), you&#8217;ll need to connect to it with a serial console.  On Linux it&#8217;s enumerated as /dev/ttyUSB0.  My favorite program to do this is simply screen.  Start it by issuing the command &#8216;sudo screen /dev/ttyUSB0 115200&#8242;.  Afterwards, hit &#8216;Enter&#8217; a few times to get some output.  If no output comes out, power-cycle the Guruplug without removing the UART cable.  Press &#8216;Esc&#8217; to pause it&#8217;s automatic booting.  This should drop you off at a U-Boot prompt.</p>
<p>To send the kernel over, you&#8217;ll have to have a TFTP server set up reachable from the Ethernet cable plugged in to the Guruplug(on Gentoo I used net-ftp/tftp-hpa), issue the following into your working serial prompt:</p>
<p><code><br />
setenv serverip 192.168.1.2<br />
setenv ipaddr 192.168.1.222<br />
</code><br />
Set the &#8216;serverip&#8217; variable to the IP address of the TFTP server.  Set the &#8216;ipaddr&#8217; variable to a free IP address on your network.  Then issue the following commands:</p>
<p><code><br />
tftp 0x6400000 kernelImageName<br />
nand erase 0x100000 0x400000<br />
nand write.e 0x6400000 0x100000 0x400000<br />
</code></p>
<p>From here you can type &#8216;reboot&#8217; to restart the plug and let it boot automatically.  Hopefully everything should come up, albeit with some errors along the way(these are due to missing kernel modules).  Copy the <a href="#">modules</a> to a USB stock, or wget them on the live plug, then untar them into /lib/modules/2.6.34/.  Afterwards, reboot and you should have a happy plug!</p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/08/04/upgrading-guruplug-kernels/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Defcon Badge Hackery</title>
		<link>http://blueheaven.ws/2010/08/01/defcon-badge-hackery/</link>
		<comments>http://blueheaven.ws/2010/08/01/defcon-badge-hackery/#comments</comments>
		<pubDate>Sun, 01 Aug 2010 21:32:59 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[corbin simpson]]></category>
		<category><![CDATA[Defcon]]></category>
		<category><![CDATA[Defcon badge]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[osuosl]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/2010/08/01/defcon-badge-hackery/</guid>
		<description><![CDATA[Some of the OSUOSL employees attended the recent DefCon 18 conference.  One of the more uncommon features was the conference badge. In addition to being a ticket for entry into the conference,  it&#8217;s also a hackable piece of hardware complete &#8230; <a href="http://blueheaven.ws/2010/08/01/defcon-badge-hackery/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="display:block;margin-right:auto;margin-left:auto;" alt="image" src="http://blueheaven.ws/wp-content/uploads/2010/08/wpid-IMG_20100801_150459.jpg" /></p>
<p>Some of the OSUOSL employees attended the recent DefCon 18 conference.  One of the more uncommon features was the conference badge.</p>
<p>In addition to being a ticket for entry into the conference,  it&#8217;s also a hackable piece of hardware complete with 128&#215;32 LCD screen, and microprocessor.  The source code for the badge is available online.</p>
<p>Corbin Simpson, a developer at the OSU Open Source Lab spent a large portion of his time at the conference developing and uploading new software onto his badge.  His first badge hacking project was to upload new images to show his appreciation for the lab.</p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/08/01/defcon-badge-hackery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Restoring GuruPlugs</title>
		<link>http://blueheaven.ws/2010/05/20/restoring-guruplugs/</link>
		<comments>http://blueheaven.ws/2010/05/20/restoring-guruplugs/#comments</comments>
		<pubDate>Thu, 20 May 2010 05:29:30 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[ARM]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[u-boot]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/?p=255</guid>
		<description><![CDATA[I&#8217;ve recently taken ownership of a GuruPlug, and naturally the first thing I tried to do when I got it was to install Gentoo on it.  I first went to build a kernel using the GuruPlug patches on a vanilla &#8230; <a href="http://blueheaven.ws/2010/05/20/restoring-guruplugs/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently taken ownership of a GuruPlug, and naturally the first thing I tried to do when I got it was to install Gentoo on it.  I first went to build a kernel using the GuruPlug patches on a vanilla 2.6.34 kernel, which ended up disasterous.  I applied the patches, however the kernel ended up not booting.</p>
<p>At which point I decided I wanted to try to restore the original kernel, so that I would at least have a working system with which to test.  Therein lied the rub.  The files posted <a href="http://plugcomputer.org/plugwiki/index.php/Reflashing_images_on_the_GuruPlug">here</a> are completely broken.<span id="more-255"></span></p>
<p>Thankfully, a friend of mine also ordered a GuruPlug.  So I grabbed his images. Here&#8217;s how to ACTUALLY restore your GuruPlug if you flash a bad kernel to it.</p>
<p>Download the extracted <a href="http://files.blueheaven.ws/guruplug/vanilla/uImage.gz">uImage</a>.  This was created by the command &#8216;dd if=/dev/mtdblock1 of=uImage&#8217;.</p>
<p>Download the <a href="http://openplug.org/index.php/us/resources/downloads?func=fileinfo&amp;id=78">rootfs</a> from the PlugComputer wiki.</p>
<p>Download the kernel 2.6.32 <a href="http://files.blueheaven.ws/guruplug/vanilla/modules.tar.bz2">modules</a>.</p>
<p>Boot your GuruPlug with serial attached and enter the u-boot interface by interrupting it with a keyboard press.</p>
<p>Make sure that you&#8217;re running a tftp server.  Inside your tftp root, gunzip the uImage.<br />
<code><br />
bkero@ponderosa ~ $ gunzip uImage.gz<br />
bkero@ponderosa ~ $ sudo mv uImage /var/tftp/<br />
bkero@ponderosa ~ $ mv rootfs.ubi.img /var/tftp/<br />
</code></p>
<p>Ensure that an ethernet interface is run between your server and your GuruPlug.  Set your server&#8217;s IP to 192.168.2.1.</p>
<p><code><br />
Marvell&gt;&gt; setenv ipaddr 192.168.2.2<br />
Marvell&gt;&gt; setenv serverip 192.168.2.1<br />
Marvell&gt;&gt; tftp 0x6400000 uImage<br />
Marvell&gt;&gt; nand erase 0x100000 0x400000<br />
Marvell&gt;&gt; nand write.e 0x6400000 0x100000 0x400000</code></p>
<p>Now your kernel should be flashed to the GuruPlug.  Time to upload the rootfs.</p>
<p><code><br />
Marvell&gt;&gt; tftp 0x6400000 rootfs.ubi.img<br />
# This will take a few minutes.  Get a beer.<br />
Marvell&gt;&gt; nand erase 0x500000 0x1fb00000<br />
Marvell&gt;&gt; nand write.e 0x6400000 0x500000 0x(number of hex bytes flashed)<br />
Marvell&gt;&gt; setenv filesize B940000<br />
Marvell&gt;&gt; setenv fileaddr 6400000<br />
Marvell&gt;&gt; saveenv<br />
Marvell&gt;&gt; reset</code></p>
<p>At this point your useless GuruBrick should reboot and become a useful GuruPlug again!  You&#8217;re almost out of the woods.  Once you boot up you&#8217;ll notice that you&#8217;re missing a lot of modules, causing a lot of errors on bootup.  We&#8217;ll need to reinstall the /lib/modules/2.6.32-stuff directory.  Luckily, we have that packaged.</p>
<p><code><br />
guruplug-debian:~# apt-get install bzip2<br />
guruplug-debian:~# wget http://code.corbinsimpson.com/modules.tar.bz2<br />
guruplug-debian:~# cd /<br />
guruplug-debian:/# tar xvjpf /root/modules.tar.bz2<br />
guruplug-debian:/# reboot</code></p>
<p>This should restore your GuruPlug to it&#8217;s original functionality!</p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/05/20/restoring-guruplugs/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>RouterStation Pro OpenWRT upgrade</title>
		<link>http://blueheaven.ws/2010/05/10/routerstation-pro-openwrt-upgrade/</link>
		<comments>http://blueheaven.ws/2010/05/10/routerstation-pro-openwrt-upgrade/#comments</comments>
		<pubDate>Mon, 10 May 2010 20:30:15 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[embedded]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[openwrt]]></category>
		<category><![CDATA[osuosl]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[routerstation]]></category>
		<category><![CDATA[routerstation pro]]></category>
		<category><![CDATA[subversion]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/?p=248</guid>
		<description><![CDATA[In an effort to upgrade my network from the aging&#8211;and failing WRT54G&#8217;s, I purchased a RouterStation Pro.  A RouterStation Pro is an embedded Linux board with some impressive hardware specs.  The part that appealed to me was the 3 Mini-PCI &#8230; <a href="http://blueheaven.ws/2010/05/10/routerstation-pro-openwrt-upgrade/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In an effort to upgrade my network from the aging&#8211;and failing WRT54G&#8217;s, I purchased a <a title="RouterStation Pro" href="http://www.ubnt.com/rspro">RouterStation Pro</a>.  A RouterStation Pro is an embedded Linux board with some impressive hardware specs.  The part that appealed to me was the 3 Mini-PCI slots that allowed me to use wireless cards that had support in the Linux kernel.  There&#8217;s a large portion of 802.11N routers that are using Broadcom chipsets which are only supported by a proprietary blob(wl.ko).</p>
<p>The RouterStation Pro comes preloaded with a relatively old installation of OpenWRT Kamikaze.  Being a sucker for bleeding-edge software, I definitely wanted to check out code from the main Subversion repository to get it up-to-date as far as development goes.  Here&#8217;s how I did it.</p>
<p><span id="more-248"></span></p>
<pre>bkero@ponderosa ~ $ svn co svn://svn.openwrt.org/openwrt/branches/backfire
bkero@ponderosa ~ $ cd backfire
bkero@ponderosa ~/backfire $ make menuconfig
</pre>
<p>Now you select some options to specify that we are building an OpenWRT image for a RouterStation Pro:</p>
<pre>Target System (Ateros AR71xx/AR7240/AR913x)
Target Profile (Ubiquiti RouterStation Pro)
</pre>
<p>Select the Exit option by pressing the right arrow key, then hit Enter.  Save the config, then:</p>
<pre>bkero@ponderosa ~/backfire $ make -j4
</pre>
<p>Adjust -j4 for the number of cores in your box(n+1 or n*2) are popular.  This is going to take quite a while, so go to lunch or watch some more Star Trek.</p>
<p>If all goes well, you should have several image files ready.</p>
<pre>bkero@ponderosa ~/backfire $ ls bin/ar71xx/
md5sums
openwrt-ar71xx-rootfs.tar.gz
openwrt-ar71xx-root.jffs2-128k
openwrt-ar71xx-root.jffs2-64k
openwrt-ar71xx-root.squashfs
openwrt-ar71xx-root.squashfs-4k
openwrt-ar71xx-ubnt-rspro-jffs2-factory.bin
openwrt-ar71xx-ubnt-rspro-jffs2-sysupgrade.bin
openwrt-ar71xx-ubnt-rspro-squashfs-factory.bin
openwrt-ar71xx-ubnt-rspro-squashfs-sysupgrade.bin
openwrt-ar71xx-uImage-gzip.bin
openwrt-ar71xx-uImage-lzma.bin
openwrt-ar71xx-vmlinux.bin
openwrt-ar71xx-vmlinux.elf
openwrt-ar71xx-vmlinux.gz
openwrt-ar71xx-vmlinux.lzma
packages</pre>
<p>We&#8217;re concerned with the file &#8220;openwrt-ar71xx-ubnt-rspro-squashfs-factory.bin&#8221;.  Make sure the box you&#8217;re doing this on has the &#8216;tftp&#8217; package installed.  A second ethernet interface would also be helpful.</p>
<p>Unplug your RouterStation Pro.  Hold the reset button down and plug the power back in.  Hold the reset button down until the RF LED on the front of the board becomes solid.  Plug a computer into the WAN port of your RouterStation Pro.  For some reason it brings up 192.168.1.20 on the WAN port, and the LAN ports become unused.</p>
<pre>bkero@ponderosa ~/openwrt/backfire.rspro/bin/ar71xx $ tftp 192.168.1.20
tftp&gt; binary
tftp&gt; put openwrt-ar71xx-ubnt-rspro-squashfs-factory.bin
Sent 2949120 bytes OK.
tftp&gt; quit
</pre>
<p>Give your router 10 minutes for the recovery process to run.  Plug your computer back into a LAN port and try pinging 192.168.1.20(the default IP).  Mine didn&#8217;t come back up alright with the default configuration settings, so I had to hold the reset button down for 20 seconds(LEDs on the board will change).  Afterwards, the router was up and pingable/telnetable at 192.168.1.20.   Telnet in and you&#8217;ll be presented with a default installation of OpenWRT.</p>
<p>Right now the system will be probably useless for you.  To install a familiar web interface for configuration, simply install luci:</p>
<pre>root@rspro:~$ opkg install luci
root@rspro:~$ passwd
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
root@rspro:~$ /etc/init.d/uhttpd enable
root@rspro:~$ /etc/init.d/uhttpd start
Starting uhttpd... OK
</pre>
<p>Now point your browser at http://192.168.1.20, and login!</p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/05/10/routerstation-pro-openwrt-upgrade/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Chrome private browsing mode flawed</title>
		<link>http://blueheaven.ws/2010/05/02/chrome-private-browsing-mode-flawed/</link>
		<comments>http://blueheaven.ws/2010/05/02/chrome-private-browsing-mode-flawed/#comments</comments>
		<pubDate>Sun, 02 May 2010 16:13:48 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[bugs]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[chromium]]></category>
		<category><![CDATA[incognito]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[private browsing]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/?p=245</guid>
		<description><![CDATA[My friend chizu just brought it to my attention that the private browsing mode &#8220;Incognito&#8221; in Google Chrome has a serious flaw.  If you use the browser&#8217;s zoom functionality to increase the size of pictures or text, the browser will &#8230; <a href="http://blueheaven.ws/2010/05/02/chrome-private-browsing-mode-flawed/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My friend chizu just brought it to my attention that the private browsing mode &#8220;Incognito&#8221; in Google Chrome has a serious flaw.  If you use the browser&#8217;s zoom functionality to increase the size of pictures or text, the browser will record the domain in your Preferences file.  One of Chromium&#8217;s maintainers has marked the bug &#8216;WONTFIX&#8217; citing that it is actually a feature of Google Chrome and deemed acceptable by the UI developers.</p>
<p>Looks like I&#8217;ll be going back to my real incognito mode of simply using another firefox profile and deleting it afterwards.</p>
<p><a title="Link to the bug" href="http://code.google.com/p/chromium/issues/detail?id=38244" target="_blank">Link to the  bug</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/05/02/chrome-private-browsing-mode-flawed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Munin-cron overlap fix</title>
		<link>http://blueheaven.ws/2010/04/30/munin-cron-overlap-fix/</link>
		<comments>http://blueheaven.ws/2010/04/30/munin-cron-overlap-fix/#comments</comments>
		<pubDate>Fri, 30 Apr 2010 18:58:35 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[cron]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[load]]></category>
		<category><![CDATA[monitoring]]></category>
		<category><![CDATA[munin]]></category>
		<category><![CDATA[osuosl]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/?p=236</guid>
		<description><![CDATA[Recently I&#8217;ve migrated my munin instance onto a Linode virtual machine. Having fewer resources was a potential source of problems. One of the problems that I ran into early on was that sometimes a munin-cron run would still be executing &#8230; <a href="http://blueheaven.ws/2010/04/30/munin-cron-overlap-fix/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve migrated my munin instance onto a Linode virtual machine.  Having fewer resources was a potential source of problems.<br />
One of the problems that I ran into early on was that sometimes a munin-cron run would still be executing when another munin-cron was scheduled to start.  This caused many contention issues, ridiculous load(35+), and once caused a reboot of the VM.</p>
<p>One solution I tried was to turn up the time between tests from 5 minutes to 10 minutes.  This still had generated problems, as munin-cron runs still weren&#8217;t done after 10 minutes, and any greater time between polls meant subpar graph granularity.</p>
<p>My final solution was to modify munin&#8217;s cron entry to the following:</p>
<p><code><br />
*/7 * * * *     munin test \( ! "$(pidof /usr/bin/munin-cron)" \) &amp;&amp; test -x /usr/bin/munin-cron &amp;&amp; nice -19 /usr/bin/munin-cron<br />
</code></p>
<p>I ran a test to see if there&#8217;s still a PID active from munin-cron, and if not check to see if the munin-cron executable exists.  If it does exist, run a munin-cron job with the nicest setting possible.</p>
<p>This has solved the problem while still keeping granular graphs, and has significantly reduced the load on the virtual machine.<code><br />
load average: 0.09, 0.42, 0.38<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/04/30/munin-cron-overlap-fix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache Retreat 2010 Picture gallery</title>
		<link>http://blueheaven.ws/2010/04/13/apacheretreat2010/</link>
		<comments>http://blueheaven.ws/2010/04/13/apacheretreat2010/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 20:58:27 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[apache]]></category>
		<category><![CDATA[ireland]]></category>
		<category><![CDATA[retreat]]></category>
		<category><![CDATA[wicklow]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/2010/04/13/ireland-trip/</guid>
		<description><![CDATA[I&#8217;ve recently come back from the Apache Retreat 2010. Here are some pictures that I took!]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently come back from the Apache Retreat 2010.  Here are some pictures that I took!<br />
<span id="more-230"></span><br />

<div class="ngg-galleryoverview" id="ngg-gallery-6-230">


	<!-- Piclense link -->
	<div class="piclenselink">
		<a class="piclenselink" href="javascript:PicLensLite.start({feedUrl:'http://blueheaven.ws/wp-content/plugins/nextgen-gallery/xml/media-rss.php?gid=6&amp;mode=gallery'});">
			[View with PicLens]		</a>
	</div>
	
	<!-- Thumbnails -->
		
	<div id="ngg-image-280" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091287.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091287.thumb" alt="P4091287.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091287.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-281" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091288.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091288.thumb" alt="P4091288.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091288.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-282" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091289.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091289.thumb" alt="P4091289.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091289.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-283" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091290.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091290.thumb" alt="P4091290.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091290.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-284" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091291.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091291.thumb" alt="P4091291.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091291.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-285" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091292.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091292.thumb" alt="P4091292.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091292.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-286" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091293.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091293.thumb" alt="P4091293.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091293.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-287" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091294.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091294.thumb" alt="P4091294.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091294.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-288" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091295.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091295.thumb" alt="P4091295.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091295.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-289" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091296.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091296.thumb" alt="P4091296.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091296.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-290" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091297.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091297.thumb" alt="P4091297.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091297.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-291" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091298.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091298.thumb" alt="P4091298.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091298.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-292" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091299.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091299.thumb" alt="P4091299.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091299.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-293" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091300.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091300.thumb" alt="P4091300.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091300.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-294" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091301.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091301.thumb" alt="P4091301.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091301.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-295" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091302.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091302.thumb" alt="P4091302.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091302.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-296" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091303.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091303.thumb" alt="P4091303.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091303.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-297" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091304.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091304.thumb" alt="P4091304.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091304.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-298" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091305.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091305.thumb" alt="P4091305.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091305.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-299" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/P4091306.thumb.jpg" title=" " class="shutterset_set_6" >
								<img title="P4091306.thumb" alt="P4091306.thumb" src="http://blueheaven.ws/wp-content/gallery/apacheretreat2010/thumbs/thumbs_P4091306.thumb.jpg" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 	 	
	<!-- Pagination -->
 	<div class='ngg-navigation'><span>1</span><a class="page-numbers" href="http://blueheaven.ws/2010/04/13/apacheretreat2010/?nggpage=2">2</a><a class="page-numbers" href="http://blueheaven.ws/2010/04/13/apacheretreat2010/?nggpage=3">3</a><a class="page-numbers" href="http://blueheaven.ws/2010/04/13/apacheretreat2010/?nggpage=4">4</a><span>...</span><a class="page-numbers" href="http://blueheaven.ws/2010/04/13/apacheretreat2010/?nggpage=13">13</a><a class="page-numbers" href="http://blueheaven.ws/2010/04/13/apacheretreat2010/?nggpage=14">14</a><a class="page-numbers" href="http://blueheaven.ws/2010/04/13/apacheretreat2010/?nggpage=15">15</a><a class="next" id="ngg-next-2" href="http://blueheaven.ws/2010/04/13/apacheretreat2010/?nggpage=2">&#9658;</a></div> 	
</div>

</p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/04/13/apacheretreat2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Part III: Munin[node] in cfEngine</title>
		<link>http://blueheaven.ws/2010/03/07/part-iii-muninnode-in-cfengine/</link>
		<comments>http://blueheaven.ws/2010/03/07/part-iii-muninnode-in-cfengine/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 23:55:06 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[centos]]></category>
		<category><![CDATA[cfengine]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[munin]]></category>
		<category><![CDATA[munin-node]]></category>
		<category><![CDATA[osuosl]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/?p=198</guid>
		<description><![CDATA[At work we use munin and cfEngine extensively, therefore it is accurate to assume that we have a tight-knit setup that allows us to scale munin-node to all hosts in cfEngine, and have the munin-master configured through it as well. &#8230; <a href="http://blueheaven.ws/2010/03/07/part-iii-muninnode-in-cfengine/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>At work we use munin and cfEngine extensively, therefore it is accurate to assume that we have a tight-knit setup that allows us to scale munin-node to all hosts in cfEngine, and have the munin-master configured through it as well.  This post describes our configuration, and how it takes place.<span id="more-198"></span></p>
<p>A tarball of all relevant files can be found <a href="http://www.blueheaven.ws/files/munin.tar.gz">here</a>.</p>
<p>All files are hereby released under the GNU Public License version 2, and are apparently copyrighted by Oregon State University.</p>
<p>There are 2 major parts to this system.  The first is the cf.classes file, which simply describes which hosts belong in each class.  The relevant classes are as follows:<br />
<code><br />
service_munin_host  = ( larch )<br />
service_munin_node  = ( binhost columbia coos fir fraxinus g1 g2 g3 g4 )<br />
package_munin_node  = ( service_munin_node www_phpbb_com )<br />
</code></p>
<p>The second part is the cf.munin file, which holds all the rules that each host should follow.  Included are several support files that do such things as generate the munin.conf file, since that is difficult to do by hand.</p>
<p>If you have any questions about how it&#8217;s implemented, feel free to drop me a line on IRC and I can help explain things to you.</p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/03/07/part-iii-muninnode-in-cfengine/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Part II: The Munin-master</title>
		<link>http://blueheaven.ws/2010/03/07/part-ii-the-munin-master/</link>
		<comments>http://blueheaven.ws/2010/03/07/part-ii-the-munin-master/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 23:54:59 +0000</pubDate>
		<dc:creator>bkero</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[monitoring]]></category>
		<category><![CDATA[munin]]></category>
		<category><![CDATA[osuosl]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blueheaven.ws/?p=196</guid>
		<description><![CDATA[Hopefully you&#8217;ve read the first part(Munin-Node), and have one or more nodes already configured. It&#8217;s alright if the munin-node is running on the same machine as the munin-master. The master is more of a pain to set up than the &#8230; <a href="http://blueheaven.ws/2010/03/07/part-ii-the-munin-master/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Hopefully you&#8217;ve read the first part(Munin-Node), and have one or more nodes already configured.  It&#8217;s alright if the munin-node is running on the same machine as the munin-master.  The master is more of a pain to set up than the client, and could require significantly more debugging.<span id="more-196"></span></p>
<p>First off, you&#8217;re going to have to install the munin package.  You&#8217;ll also need to have a web server installed, I prefer apache:<br />
<code><br />
# For Gentoo,<br />
emerge munin apache<br />
# For CentOS/Fedora<br />
yum install munin apache<br />
# For Debian<br />
aptitude install munin apache<br />
</code></p>
<p>Gentoo and CentOS both install the HTTP root in /var/www/localhost/htdocs/munin.  After setup, the graphs will be available at http://localhost/munin</p>
<p>Debian requires a bit more attention.  Debian munin installs the HTTP root in /var/www/munin. so after the setup, a vhost will have to be created to access it.  To do this(on Gentoo) I created an apache vhost file, /etc/apache2/vhosts.d/08_munin.conf.  On Debian, the file is the same but the path is different, /etc/apache2/sites-available/08munin<br />
<code><br />
<VirtualHost *:80><br />
    ServerAdmin root@localhost<br />
    ServerName munin.blueheaven.ws<br />
    DocumentRoot /var/www/localhost/htdocs/munin<br />
    <Directory /><br />
        Options FollowSymLinks<br />
        AllowOverride None<br />
        Order allow,deny<br />
        Allow from all<br />
    </Directory><br />
    # Possible values include: debug, info, notice, warn, error, crit,<br />
    # alert, emerg.<br />
    LogLevel warn<br />
    ServerSignature On<br />
</VirtualHost><br />
</code></p>
<p>If you set up the Vhost, you&#8217;ll need to create the appropriate DNS entry, and kick apache.<br />
<code><br />
/etc/init.d/apache2 reload<br />
</code></p>
<p>Now we have to deal with the configuration of munin itself.  There&#8217;s only one file for the munin-master configuration, and it resides at /etc/munin/munin.conf.  <strong>Note</strong>: Depending on your operating system, these paths might be different!<br />
<code><br />
dbdir   /var/lib/munin<br />
htmldir /var/www/localhost/htdocs/munin<br />
logdir  /var/log/munin<br />
rundir  /var/run/munin<br />
tmpldir /etc/munin/templates<br />
[ponderosa]<br />
    address 127.0.0.1<br />
[colo;fortress.dionysian-mind.net]<br />
    address 10.0.9.252<br />
[colo;maetel.dionysian-mind.net]<br />
    address 10.0.9.3<br />
</code><br />
Each section beginning with a hostname, such as &#8220;[ponderosa]&#8221; is a munin-node reached at the address attribute.  To group hosts you may prefix them with a a group name followed by a semicolon, such as &#8220;[colo;maetel.dionysian-mind.net]&#8220;.  This will make more sense when you actually see the HTML pages.</p>
<p><strong>There is no munin-master daemon</strong>!  The munin master is a cron job run by the munin user and resides at /var/spool/cron/crontabs/munin.  This file is installed when munin is installed through your package manager.</p>
<p>Ideally that&#8217;s all you&#8217;ll have to do to set the munin-node up.  You could wait 5 minutes and check http://localhost/munin to see if the graphs are generated correctly, or you could try running things by hand to make sure they work properly.  Under no circumstances run this as root, you&#8217;ll screw up your permissions.  To run the munin cron job by hand:<br />
<code><br />
sudo su - munin<br />
/usr/bin/munin-cron<br />
</code></p>
<p>If for some reason the master refuses to work, inspect the logs located in /var/log/munin.  Additionally you may netcat/telnet to the node in the same way references in Part I.</p>
<p>If all goes well you should be able to load up http://localhost/munin and view your pretty graphs!  If your organization uses cfEngine continue on to <a href="http://blueheaven.ws/2010/03/07/part-iii-muninnode-in-cfengine/">Part III</a> to learn about how we use Munin at the OSUOSL.</p>
]]></content:encoded>
			<wfw:commentRss>http://blueheaven.ws/2010/03/07/part-ii-the-munin-master/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
