<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>The Tech Outfit - Inside the Brains of our Techs</title>
    <link rel="alternate" type="text/html" href="http://blog.techoutfit.net/" />
    <link rel="self" type="application/atom+xml" href="http://blog.techoutfit.net/atom.xml" />
    <id>tag:,2008-06-21:/1</id>
    <updated>2010-01-03T18:44:31Z</updated>
    <subtitle>Our consultants provide in-depth analysis of current technical news, trends, solutions they&apos;ve personally worked on and more.</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Publishing Platform 4.01</generator>

<entry>
    <title>Performance Tuning VMWare Server on Ubuntu Linux</title>
    <link rel="alternate" type="text/html" href="http://blog.techoutfit.net/2010/01/performance-tuning-vmware-serv.html" />
    <id>tag:blog.techoutfit.net,2010://1.11</id>

    <published>2010-01-03T18:38:59Z</published>
    <updated>2010-01-03T18:44:31Z</updated>

    <summary><![CDATA[NOTE:&nbsp; This article originally appeared on fewt@blog at this url:http://www.fewt.com/2008/06/performance-tuning-vmware-server-on.htmlHowever, that URL now returns "SITE CLOSED, SORRY".&nbsp; This article made such an amazing difference in my VMWare setups that I wanted to make sure it was available to all.&nbsp; ON...]]></summary>
    <author>
        <name>Donovan Niesen</name>
        <uri>http://www.thetechoutfit.com</uri>
    </author>
    
        <category term="IT" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="linux" label="linux" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="linuxraid" label="linux raid" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ubuntu" label="ubuntu" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="vmwareserver20" label="vmware server 2.0" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-US" xml:base="http://blog.techoutfit.net/">
        <![CDATA[<b>NOTE:&nbsp; </b>This article originally appeared on fewt@blog at this url:<br /><br />http://www.fewt.com/2008/06/performance-tuning-vmware-server-on.html<br /><br />However, that URL now returns "SITE CLOSED, SORRY".&nbsp; This article made such an amazing difference in my VMWare setups that I wanted to make sure it was available to all.&nbsp; <br /><br /><b>ON WITH THE ARTICLE...</b><br /><br /><br />]]>
        <![CDATA[This write-up aims to provide detail into building and tuning Linux and
VMWare for a Virtual Server solution using 64bit Ubuntu by discussing
my experiences in building this system.<br /><br />Here are the example specs for the new VMWare Server:<br />AMD x2 4200+ 65nm CPU<br />4GB PC2-6400 DDR2 RAM (Dual Channel)<br />2x Seagate Barracuda 7200RPM 250GB SATA 3.0Gb drives<br />ASRock ALiveNF6P-VSTA System Board<br />580W Power Supply<br /><br />Operating System: Ubuntu 7.10 Server 64bit<br /><br />Drives configured as follows:<br /><br /><span style="font-weight: bold;">/dev/sda</span><br />1 - Swap (1GB)<br />2 - md0 (250MB)<br />3 - md1 (231GB)<br /><br /><span style="font-weight: bold;">/dev/sdb</span><br />1 - Swap (1GB)<br />2 - md0 (250MB)<br />3 - md1 (231GB)<br /><br /><span style="font-weight: bold;">/dev/hda</span><br />1 - ext3 (100GB)<br /><br />All MD devices are configured as RAID-1 using Linux Software Raid<br /><br />Device md0 was formatted as ext3 and exists as /boot<br />Device md1 was added to volume group vg00, then Logical Volume ROOT and mounted on /<br /><br />LILO was used, and it is written to both sda and sdb (so the system remains bootable if sda fails)<br /><br />Using
Logical Volume Manager (LVM) for / provides flexability in that I can
add two more 250GB drives as md2, and grow / to 500GB with a few simple
commands (vgextend, lvextend, resize2fs). In addition, using LVM also
provides capabilities to mirror or snapshot volumes. Using Software
Raid instead of the integrated NVidia MediaShield provides better RAID
management flexability, and as both devices are CPU backed since there
is no internal RAID processor on the MCP chips there is really no
performance gain by using the integrated card.<br /><br /><span style="font-weight: bold;">Tuning:</span><br />After
building the system, and installing VMWare I started creating Virtual
Machines. Something that I immediately noticed was that during even
small IO, wait states climbed to 100% CPU and network dropoffs occured,
it was causing connections to the web server VM to drop for even static
content performance was absolutely terrible. I initially thought that
the problem was the Software Raid devices, but I quickly identified
that the problem child was actually problem children and that the RAID
wasn't one of them. I installed a product called monitorix and started
collecting data which was instrumental in identifying the performance
bottlenecks.<br /><br /><span style="font-weight: bold;">Virtual Machine configuration:</span><br />When
creating virtual machines on this platform I elected to us
pre-allocated disks. Using pre-allocated disks reduces disk
fragmentation, and improves overall performance. Additionally, I always
remove the floppy device. Here is an overview of the configurations:<br /><br /><span style="font-weight: bold;">Generic base configuration:</span><br /><br />Linux 32bit and 64bit VMs:<br /><span style="font-size: 85%;">384MB Ram   20GB SCSI disk pre-allocated   1 Ethernet device (bridged)</span><br /><br />Windows VMs:<br /><span style="font-size: 85%;">256MB Ram   8GB SCSI disk pre-allocated   1 Ethernet device (bridged)</span><br /><br />It's
recommended by VMWare that Windows VMs be configured to use IDE,
however in my experience the Virtual IDE devices use tons more CPU time
than the SCSI device. This is due to the emulation level done and lack
of I/O threading in VMWare's IDE controller. I have to assume that this
is a problem with IDE in general, as it's never been very good at
multithreaded I/O (this is one big reason it's never been used for
servers). Additionally, I recommend using the LSILogic controller is it
supports multithreaded IO while the Buslogic controller doesn't.<br /><br />One
of my virtual machines was destined to become a print server, printing
to a USB printer directly connected to the VMWare server. Ubuntu 7.10
doesn't configure USBFS out of the box. This can be corrected by
editing a few files:<br /><br />Add to fstab:<br /><span style="font-size: 85%;">usbfs /proc/bus/usb usbfs auto 0 0</span><br /><br />Edit /etc/init.d/mountdevsubfs.sh, and uncomment the following lines:<br /><br /><span style="font-size: 85%;">#mkdir -p /dev/bus/usb/.usbfs<br />#domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644<br />#ln -s .usbfs/devices /dev/bus/usb/devices<br />#mount --rbind /dev/bus/usb /proc/bus/usb</span><br /><br />This is done by removing the # from the front of each line. Once this is done, go ahead and run the script.<br /><br /><span style="font-size: 85%;">/etc/init.d/mountdevsubfs.sh start</span><br /><br />In
the Virtual Machine configuration, I needed to ensure that the printer
was always connected on startup so I inserted the following
configuration into that Virtual Machine's VMX file:<br /><br /><span style="font-size: 85%;">usb.present = "TRUE"<br />usb.generic.autoconnect = "FALSE"<br />usb.autoConnect.device0 = "0x0000:x0000"<br />usb.autoConnect.device1 = "0x04e8:0x327e"<br />usb.generic.skipsetconfig = "TRUE"</span><br /><br />You
can get the IDs for your devices by issuing an lsusb on the VMWare
Server, this command will output similar to the following:<br /><br /><span style="font-size: 85%;">Bus 002 Device 002: ID 04e8:327e Samsung Electronics Co., Ltd<br />Bus 002 Device 001: ID 0000:0000<br />Bus 001 Device 001: ID 0000:0000</span><br /><br />Additionally,
I had to blacklist usblp on the VMWare Server so the host didn't
connect to the printer making it unavailable to the guest.<br /><br />echo "blacklist usblp" &gt;&gt;/etc/modprobe.d/blacklist<br /><br />As
you can see above I have used the device ID for the Samsung printer, as
well as the USB hub that it's connected to (0000:0000). Now, whenever
the Virtual Machine restarts, it scans the USB bus on the host and
automatically connects those devices. Printing now "just works" after
rebooting. Of course for it to "just work" you also need to configure
CUPS or Windows printer shareing, but that is out of the scope of this
article ;-).<br /><br />After I installed monitorix, I identified multiple
significant performance bottlenecks. I resolved these bottlenecks by
tuning both VMWare and the Linux kernel itself. The difference in
performance is astronomical, and it's a very visible improvement in the
graphs as seen below.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_j-wDivmP2lg/SEmjHAyuOcI/AAAAAAAAACE/hyFINoVCgso/s1600-h/preposttuning.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_j-wDivmP2lg/SEmjHAyuOcI/AAAAAAAAACE/hyFINoVCgso/s320/preposttuning.png" alt="" id="BLOGGER_PHOTO_ID_5208873784897845698" border="0" /></a><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_j-wDivmP2lg/SEmjM3m9KGI/AAAAAAAAACM/F_DBASIXz1E/s1600-h/kern1z.month.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_j-wDivmP2lg/SEmjM3m9KGI/AAAAAAAAACM/F_DBASIXz1E/s320/kern1z.month.png" alt="" id="BLOGGER_PHOTO_ID_5208873885511788642" border="0" /></a><br />To
resolve the bottlenecks, I made all of the following changes to both
VMWare Server, the Virtual Machines and the Linux host itself:<br /><br />Add each of these to /etc/vmware/config:<br /><br />mainMem.useNamedFile
tells VMWare where to put it's temporary workspace file. This file
contains the content of the Virtual Machine memory which is not used.
By default it is placed in the directory with the virtual machine,
however that can seriously impact performance so we'll turn it off.<br /><br /><span style="font-size: 85%;">mainMem.useNamedFile = FALSE</span><br /><br />tmpDirectory is the default path for any temp files. We need to change that to be a shared memory filesystem (in RAM).<br /><br /><span style="font-size: 85%;">tmpDirectory="/dev/shm"</span><br /><br />prefvmx.useRecommendedLockedMemSize
and prefvmx.minVmMemPct tell VMWare to either use a fixed sized memory
chunk or balloon and shrink memory as needed. Since I have 4GB of
memory in this "server" I want to make sure that I use a fixed chunk of
memory to reduce disk IO.<br /><br /><span style="font-size: 85%;">prefvmx.useRecommendedLockedMemSize="TRUE"<br />prefvmx.minVmMemPct="100"</span><br /><br /><br />To tune each Virtual Machine, I installed VMWare tools and then made the following changes to each VMX file:<br /><br />Set the time in the Virtual Machine to the hosts time (I use NTP on the host):<br /><br /><span style="font-size: 85%;">tools.syncTime = "TRUE"</span><br /><br />When I reboot the host, I want to gracefully stop each VM instead of just powering it off:<br /><br /><span style="font-size: 85%;">autostop = "softpoweroff"</span><br /><br />I don't care about collapsing memory into a shared pool, this tells the VM to not share which saves CPU cycles:<br /><br /><span style="font-size: 85%;">mem.ShareScanTotal=0<br />mem.ShareScanVM=0<br />mem.ShareScanThreshold=4096<br />sched.mem.maxmemctl=0<br />sched.mem.pshare.enable = "FALSE"</span><br /><br />This
basically performs the same action as the configuration I put in
/etc/vmware/config by telling the VM to eliminate the temp files and
not to balooning and shrink memory, however it doesn't hurt anything to
have it in both locations:<br /><br /><span style="font-size: 85%;">mainMem.useNamedFile = "FALSE"<br />MemTrimRate = "0"<br />MemAllowAutoScaleDown = "FALSE"</span><br /><br />Additionally,
by default Ubuntu writes an access time stamp to every inode that's
accessed. This is pretty accessive and known to cause bottlenecks in
high I/O scenarios. It doesn't negatively impact the filesystem unless
you care about access time stamps, so in each VM and the VMWare host
host I add "noatime" as an option to all of my mounted disks in
/etc/fstab.<br /><br />In order for the VMWare configuration to work
properly with shared memory, you'll need to increase the default shared
memory size for tmpfs to match the amount of memory in your system.
This can be done by editing /etc/default/tmpfs:<br /><br /><span style="font-size: 85%;">SHM_SIZE=4G</span><br /><br />You can use 'mount -o remount /dev/shm' and 'df -h' to implement and verify the change.<br /><br />Last,
I configure /etc/sysctl.conf on the VMWare Server which configures the
kernel to perform better as a Virtual Server by inserting the following
configuration:<br /><br />vm.swappiness = 0<br />vm.overcommit_memory = 1<br />vm.dirty_background_ratio = 5<br />vm.dirty_ratio = 10<br />vm.dirty_expire_centisecs = 1000<br />dev.rtc.max-user-freq = 1024<br /><br />Lastly,
I disable the tickless kernel option in kernel 2.6.22 which further
reduces the Virtual Machine I/O constraints by reverting back to using
ticks which is better supported by VMWare. This can be done by adding
the following option to the kernel options line in /boot/grub/menu.lst
or /etc/lilo.conf:<br /><br /><span style="font-size: 85%;">nohz=off</span><br /><br />With
all of these options configured, the VMWare server now performs
wonderfully at under 20% host CPU utilization with 6 Virtual Machines
all running various flavors of Windows and Linux.
 ]]>
    </content>
</entry>

<entry>
    <title>Physical to Virtual Server on a Budget</title>
    <link rel="alternate" type="text/html" href="http://blog.techoutfit.net/2008/12/physical-to-virtual-server-on.html" />
    <id>tag:blog.techoutfit.net,2008://1.9</id>

    <published>2008-12-22T11:59:21Z</published>
    <updated>2009-06-15T18:29:47Z</updated>

    <summary><![CDATA[Weeks back, I had assembled a fairly impressive server for hosting virtual machines.&nbsp; It's intended purpose was to consolidate a number of aging servers.&nbsp; Today, I will be describing my physical machine to virtual machine adventures.The MachinesI have created numerous...]]></summary>
    <author>
        <name>Donovan Niesen</name>
        <uri>http://www.thetechoutfit.com</uri>
    </author>
    
    <category term="linux" label="linux" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="linuxraid" label="linux raid" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="raid" label="raid" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="servers" label="servers" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="softwareraid" label="software raid" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="vmware" label="vmware" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="vmwareserver" label="vmware server" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="vmwareserver20" label="vmware server 2.0" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-US" xml:base="http://blog.techoutfit.net/">
        <![CDATA[Weeks back, I had assembled a fairly impressive server for hosting virtual machines.&nbsp; It's intended purpose was to consolidate a number of aging servers.&nbsp; Today, I will be describing my physical machine to virtual machine adventures.<br /><br /><font style="font-size: 1.5625em;">The Machines</font><br /><br />I have created numerous virtual machines from scratch.&nbsp; I have even converted a fair share of Windows boxes to virtual machines with varying success.&nbsp; I knew this project was interesting as these were the servers I needed to move:<br /><br /><ul><li>A Windows XP "server" handling some proprietary data collection applications</li><li>A Debian 3 server running web applications and serving hold music</li><li>Another Debian 3 server acting as a mail server among many other odd maintenance scripts</li><li>A FreeBSD 6 server hosting web applications</li></ul><font style="font-size: 1.5625em;"></font>]]>
        <![CDATA[Weeks back, I had assembled a fairly impressive server for hosting
virtual machines.&nbsp; It's intended purpose was to consolidate a number of
aging servers.&nbsp; Today, I will be describing my physical machine to
virtual machine adventures.<br /><br /><font style="font-size: 1.5625em;">The Machines</font><br /><br />I
have created numerous virtual machines from scratch.&nbsp; I have even
converted a fair share of Windows boxes to virtual machines with
varying success.&nbsp; I knew this project was interesting as these were the
servers I needed to move:<br /><br /><ul><li>A Windows XP "server" handling some proprietary data collection applications</li><li>A Debian 3 server running web applications and serving hold music</li><li>Another Debian 3 server acting as a mail server among many other odd maintenance scripts</li><li>A FreeBSD 6 server hosting web applications</li></ul><font style="font-size: 1.5625em;">The Migration</font><br /><br />First,
I backed up all data on each box.&nbsp; When dealing with old hardware that
has uptime over 700 days, there's often a surprise when you give it a
reboot.<br /><br />I prepared a VM for the XP box using VMWare Converter
which took a number of hours to complete.&nbsp; Luckily this machine only
has one MS Access DB that it stores so it was just a simple task of
moving that database once the virtual machine was running.&nbsp; It should
also be noted that most Windows migrations like this are required to
re-activate as the hardware changes significantly.<br /><br />Having never
done a Linux or FreeBSD physical to virtual (P2V) conversion, I read a
number of sites with various suggestions.&nbsp; It was suggested I simply
clone the box and perform a rescue on it once fired up within the VM.&nbsp;
I initially chose <a href="http://www.clonezilla.org/">Clonezilla</a>
to image the first Linux box.&nbsp; One suggestion I would make is eyeball
your hardware before attempting to clone it.&nbsp; The first time I booted
Clonezilla I didn't realize the server I was converting only had a
quad-speed drive in it.&nbsp; The boot took 15 minutes.&nbsp; I yanked a 52x from
a dead PC and rebooted again in under 3 minutes.&nbsp; <br /><br />The image
creation seemed to go without a hitch.&nbsp; I created an empty VM in VMWare
server, mounted the ISO and attempted to restore the image.&nbsp; Clonezilla
performed half the restoration and then asked for another file that did
not exist.&nbsp; This seemed to be a common issue with this product so I
scrapped it and gave <a href="http://sourceforge.net/projects/g4l">g4l</a> a shot.&nbsp; It just kept getting worse as g4l would only backup a GB of data and then drop back to the menu screen.<br /><br />In
desperation, I grabbed and Acronis True Image Home boot CD and
attempted a backup that way.&nbsp; It created an image without complaining.&nbsp;
I booted off the same CD in VMWare, recovered the image and was able to
boot into my Linux install.&nbsp; Flawless.&nbsp; Both Linux servers cloned using
this method worked without a hitch.<br /><br />The FreeBSD box did not fare
nearly as well.&nbsp; While backing up the server unreadable sector errors
continued to show up.&nbsp; I told Acronis to ignore these sectors however
the restored image still would not boot.&nbsp; The BSD box itself did reboot
so that was left in production.&nbsp; It is running simple LAMP applications
so they can easily be migrated into a more familiar Linux VM.<br /><br /><br />]]>
    </content>
</entry>

<entry>
    <title>Servers on a Budget, Linux Software RAID and VMWare Server 2.0</title>
    <link rel="alternate" type="text/html" href="http://blog.techoutfit.net/2008/09/servers-on-a-budget-linux-soft.html" />
    <id>tag:blog.techoutfit.net,2008://1.8</id>

    <published>2008-09-28T14:08:43Z</published>
    <updated>2008-09-28T17:48:49Z</updated>

    <summary><![CDATA[This week I was tasked with putting together a virtualization solution to host a number of desktop-turned-servers whose plastic cases are aging from beige to yellow.&nbsp; As trusty as the little Linux boxes are, when I cringe at the thought...]]></summary>
    <author>
        <name>Donovan Niesen</name>
        <uri>http://www.thetechoutfit.com</uri>
    </author>
    
        <category term="IT" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="budget" label="budget" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="linux" label="linux" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="linuxraid" label="linux raid" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="raid" label="raid" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="servers" label="servers" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="softwareraid" label="software raid" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="vmware" label="vmware" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="vmwareserver" label="vmware server" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="vmwareserver20" label="vmware server 2.0" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-US" xml:base="http://blog.techoutfit.net/">
        <![CDATA[<span class="mt-enclosure mt-enclosure-image"><img alt="vmware.jpg" src="http://blog.techoutfit.net/vmware.jpg" class="mt-image-left" style="margin: 0pt 20px 20px 0pt; float: left;" height="72" width="187" /></span>This week I was tasked with putting together a virtualization solution to host a number of desktop-turned-servers whose plastic cases are aging from beige to yellow.&nbsp; As trusty as the little Linux boxes are, when I cringe at the thought of a piece of hardware dying in one of those ancient machines, I know its time to be proactive.&nbsp; <br />]]>
        <![CDATA[This week I was tasked with putting together a virtualization solution
to host a number of desktop-turned-servers whose plastic cases are
aging from beige to yellow.&nbsp; As trusty as the little Linux boxes are,
when I cringe at the thought of a piece of hardware dying in one of
those ancient machines, I know its time to be proactive.&nbsp; <br /><br /><b><font style="font-size: 1.5625em;">Servers on a Budget</font></b><br /><br />The
economic climate has already tightened up IT budgets so I had to forego
an HP server as much as I hated to do so.&nbsp; To quote Ferris Bueller, "It
is so choice.&nbsp; If you have the means, I highly recommend picking one
up."&nbsp; So what did I put together instead?&nbsp; Something not too bad,
actually:<br /><br /><ul><li><a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16816101135">Supermicro SYS-6015V-MTB 1U Barebone Server</a></li><ul><li>Supports two Xeon processors</li><li>Up to 16GB of DDR2-667 memory</li><li>4x SATA hotswap bays (w/ 2x more internal SATA bays)</li><li>Dual gigabit LAN</li><li>On-board RAID (fakeraid)<br /></li></ul><li><a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16819117149">Intel Xeon E5410 Harpertown 2.33GHz Quad-Core Processor<br /></a></li><li><a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16820211199">A-Data 4GB (2x2GB) DDR2 667MHz RAM</a></li><li><a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16822148262">4x 250GB Seagate Barracuda 7200.10 SATA 3.0Gb/s drives</a></li></ul>At
the time of this writing this setup cost under $1,400 before
tax/shipping.&nbsp; SuperMicro makes excellent barebone servers.&nbsp; If you're
rolling your own server and are your own support contract, it's hard to
beat the price/features with any other recognizable brand.&nbsp; The only
thing I felt was missing from this configuration was the option for
redundant power supplies and SAS.&nbsp; This was an acceptable trade-off as
the servers being migrated are not mission-critical.<br /><br />The gear
arrived this week, I happily assembled the components and fired it up.&nbsp;
POST was successful, all hardware was detected and smiling away.&nbsp; One
note to anyone new to working with rackmount servers, the fans are <i>loud</i>.&nbsp; If you're not putting them in a server room/closet where the noise won't matter, get tower servers instead.<br /><br /><font style="font-size: 1.5625em;"><b>Linux Software Raid</b></font><br /><br />The
SuperMicro board I chose for this solution touts on-board RAID.&nbsp; While
nifty in a feature list the on-board RAID is useless under Linux as it
is not supported by the kernel.&nbsp; Rather then shell out some $600 for a
hardware RAID controller, I opted for Linux Software RAID.&nbsp; There's
enough power in this server that the extra overhead for RAID will be
barely noticed.<br /><br />The four SATA hot-swap bays make RAID-5 a
perfect candidate.&nbsp; Without giving it too much thought I popped in an
Ubuntu 8.04.1 x64 server CD and started my install.&nbsp; I gave each drive
a partition for RAID and created a RAID-5 array.&nbsp; Wow, that was easy.<br /><br />The
rest of the base system installed without complaint and finally GRUB
tried to install, without success.&nbsp; Hoping for a fluke I retried the
GRUB installation numerous times ignoring the fact that trying the same
process repeatedly expecting different results is a symptom of
insanity.&nbsp; After much pondering and research I determined that a Linux
software RAID-5 is either too difficult or impossible to boot from.<br /><br />In
searching around the server room for a spare drive, I considered just
throwing in another SATA drive for my OS&nbsp; and then using my RAID-5 as
the data partition.&nbsp; The thing I didn't like about that was not having
any redundancy for the OS itself.&nbsp; I'd like to avoid the enormous
single point of failure.&nbsp; Not finding a drive for my quick fix I let
the server be for a day so I could think over my next move.<br /><br />Redundancy,
redundancy... that was my motto for the next couple of days.&nbsp; While
briefly considering buying two more disks to set up a RAID-1 array for
my OS I realized that Linux's software RAID is ridiculously flexible.&nbsp;
I can set up a small 10GB partition and use RAID-1 to mirror that
across all four of the drives and still create a RAID-5 with the left
over space.&nbsp; <br /><br />I partitioned out my OS in a RAID-1, created my
/vms partition in a RAID-5 and GRUB happily installed onto the mirrored
RAID.&nbsp; Upon rebooting everything was happy, my RAIDs synced up.<br /><br /><b>NOTE:</b>&nbsp;
This setup is a clever use of software RAID and while it does provide
some flexible redundancy, should one of these drives fail, to realize
there are two RAIDs to deal with.&nbsp; Plan your documentation accordingly
and practice recovering from failures with this particular
configuration.<br /><br /><font style="font-size: 1.5625em;"><b>VMWare Server 2.0</b></font><br /><br />With
Ubuntu installed and configured as I wanted it, it was time to download
and install VMWare server.&nbsp; I have setup numerous VMWare 1.0.x
configurations and was very comfortable with their feature set.&nbsp; I was
surprised to see that upon downloading VMWare for this setup, 2.0 had
been released.&nbsp; Rather than exciting me this initially annoyed me as I
had tested earlier beta versions of 2.0 and was discouraged by the move
to their web console from the traditional standalone GUI console
applications.&nbsp; In the particular beta I was using, the console seemed
to be a hack of VNC and performance was abysmal.&nbsp; <br /><br />Not wanting
to completely write off the new version, I reluctantly downloaded and
installed, hoping for the best.&nbsp; The VMWare web access panel seemed to
have been polished significantly since my beta experience and was much
more responsive and logically laid out.&nbsp; I built a new VM, selected
another Ubuntu server ISO to install and fired it up.&nbsp; I then opened
the dreaded console and was surprised that it was asking me to install
a Firefox plug-in.&nbsp; The plug-in was roughly 18MB so I assumed this was
something much better than a simple VNC client.&nbsp; Upon rebooting Firefox
and hitting the console again my fears of the old web console
disappeared.&nbsp; The new console is excellent.&nbsp; Performance is where I
expect it to be over an internet connection and the new portability
actually extends the previous generation of VMWare console greatly.&nbsp; <br /><br />The
console will actually show the CPU and memory usage of each host
individually and for the entire host as a whole.&nbsp; This is fantastic for
seeing if you have one hog VM or if you're getting close to the limit
for the host.&nbsp; <br /><br />I don't have a single complaint about VMWare
Server 2.0, in fact I'm now conspiring to upgrade my old 1.0.x
installations to make administration easier on myself.&nbsp; My only nitpick
is that the new console advertises VMWare Infrastructure although
non-intrusively.&nbsp; You can even minimize that pane to ignore the ad
completely.<br /><br /><font style="font-size: 1.5625em;"><b>Next Steps</b></font><br /><br />Am I done?&nbsp; Not even close.&nbsp; Next up:<br /><br /><ul><li>Converting physical machines to virtual machines</li><li>Monitoring these servers and the RAIDs that support them</li><li>The backup plan</li></ul><br />]]>
    </content>
</entry>

<entry>
    <title>Will you go over Comcast&apos;s 250GB bandwidth cap?</title>
    <link rel="alternate" type="text/html" href="http://blog.techoutfit.net/2008/09/will-you-go-over-comcasts-250g.html" />
    <id>tag:blog.techoutfit.net,2008://1.7</id>

    <published>2008-09-22T01:03:40Z</published>
    <updated>2009-06-15T18:19:23Z</updated>

    <summary><![CDATA[We use Comcast's business cable internet service at our office and I quite enjoy the cable service at home.&nbsp; It really is fast.&nbsp; Beyond the bandwidth, the ~20ms ping time over VPN to the office is quite nice.&nbsp; The high...]]></summary>
    <author>
        <name>Donovan Niesen</name>
        <uri>http://www.thetechoutfit.com</uri>
    </author>
    
        <category term="Internet" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="comcast" label="comcast" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="comcastbandwidthcap" label="comcast bandwidth cap" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="internet" label="internet" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-US" xml:base="http://blog.techoutfit.net/">
        <![CDATA[<span class="mt-enclosure mt-enclosure-image"><img alt="comcast.gif" src="http://blog.techoutfit.net/comcast.gif" class="mt-image-left" style="margin: 0pt 20px 20px 0pt; float: left;" width="151" height="42" /></span>We use Comcast's business cable internet service at our office and I quite enjoy the cable service at home.&nbsp; It really <i>is</i> fast.&nbsp; Beyond the bandwidth, the ~20ms ping time over VPN to the office is quite nice.&nbsp; <br /><br />The high bandwidth made it very quick and easy to download updates, ISO images of popular Linux distributions, stream video content and keep all of my home computers up to date.&nbsp; <br /><br />When <a href="http://arstechnica.com/news.ars/post/20080828-its-official-comcast-starts-250gb-bandwidth-caps-october-1.html">Ars Tecnica first published an article about this cap</a> I got to thinking about my bandwidth usage.&nbsp; I know I use a lot of bandwidth but realized I wouldn't be able to know if I was coming near that cap without a proper solution.&nbsp; After spending a few hours researching and finding some interesting solutions for monitoring bandwidth I came up with an obvious question: Shouldn't Comcast be telling me how much I'm using?<br /><br />Starting October 1st, Comcast will begin warning their customers who exceed 250GB in a calendar month and on the second instance of exceeded usage disallow them from the service for one year.&nbsp; Without historical data or even current bandwidth monitoring there will be a number of surprised customers at the end of October.&nbsp; <br /><br />If you're lucky enough to be using Comcast this October, take a look at these monitoring tools:<br /><br /><ul><li>For monitoring a single Windows computer, <a href="http://www.sourceforge.net/projects/freemeter/">Free Meter</a> is good enough.</li><li>For monitoring an entire network, do this at the gateway/firewall level.&nbsp; A Linux box or <a href="http://www.pfsense.com/">pfSense</a> running <a href="http://bandwidthd.sourceforge.net/">bandwidthd</a> will do very nicely.</li></ul>Happy downloading.<br /> ]]>
        
    </content>
</entry>

<entry>
    <title>Google&apos;s Chrome, impressions and thoughts</title>
    <link rel="alternate" type="text/html" href="http://blog.techoutfit.net/2008/09/googles-chrome-impressions-and.html" />
    <id>tag:blog.techoutfit.net,2008://1.6</id>

    <published>2008-09-09T11:32:19Z</published>
    <updated>2008-09-28T17:45:56Z</updated>

    <summary><![CDATA[There are a ton of reviews on Google's Chrome browser out on the web.&nbsp; Anybody care for a Tech Outfit perspective?&nbsp; We take the browser through the paces and compare it against what we use for our day-to-day browsing habits.&nbsp;...]]></summary>
    <author>
        <name>Donovan Niesen</name>
        <uri>http://www.thetechoutfit.com</uri>
    </author>
    
        <category term="Web" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="chrome" label="chrome" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="google" label="google" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="webbrowser" label="web browser" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-US" xml:base="http://blog.techoutfit.net/">
        <![CDATA[<span class="mt-enclosure mt-enclosure-image"><img alt="google-chrome21-50.jpg" src="http://blog.techoutfit.net/google-chrome21-50.jpg" class="mt-image-left" style="margin: 0pt 20px 20px 0pt; float: left;" height="63" width="50" /></span>There are a ton of <a href="http://www.google.com/search?q=google+chrome+review">reviews</a> on Google's Chrome browser out on the web.&nbsp; Anybody care for a Tech Outfit perspective?&nbsp; We take the browser through the paces and compare it against what we use for our day-to-day browsing habits.&nbsp; Will Chrome be good enough to replace our tried and true Firefox?&nbsp; Will Google shape the way we look at web pages?<br /><div><br /></div>]]>
        <![CDATA[<b><font style="font-size: 1.25em;">First Impressions</font></b><br /><br />I prefer to operate in a Linux desktop but have recently picked up an <a href="http://www.acer.com/aspireone">Acer Aspire One</a>
laptop loaded with Windows XP Home.&nbsp; Google's Chrome browser is
currently written for Windows only with Mac OS X and Linux ports coming
eventually.&nbsp; I downloaded installed and launched the browser.<br /><br />The
first thing that I noticed is that the user interface does not take
cues from your overall Windows theme.&nbsp; A color I will call Google Blue
invades the title bar letting you know you're definitely using a Google
product.&nbsp; <br /><br />Aside from the initial color and UI shock, Chrome
interestingly uses the otherwise wasted title bar space for tabbed
browsing.&nbsp;&nbsp; I'm a bit of a screen real-estate crusader which is
especially important on the Aspire One's 1280x600 screen so I keep my
Firefox crammed into one toolbar and will often jump to full screen
mode.&nbsp; Chrome gets a slight leg up on screen real-estate by utilizing
that toolbar. If I could shrink the address bar down a bit there would
be a significant difference.<br /><br />The default page for Chrome is a
nifty beast that shows screenshots of your most visited websites,
recent bookmarks and a search box for your history.&nbsp; This has been
covered in great detail in other reviews so I will not dig any further
on that subject.<br /><br />I had heard many people speak to the speed of
Chrome and didn't expect a vast improvement over my fine-tuned Firefox.
I fired up Chrome next to Firefox and compared loading a number of
simple and complex pages.&nbsp; Chrome definitely has a noticeable speed
improvement, especially in Javascript-heavy and other media-heavy
sites. The browser really feels snappy.<br /><br />Overall I'm content with
the performance of Firefox but one thing I've always noticed is that
with a few complex sites open, adding a new tab isn't as instant as I
would like.&nbsp; To compare, I opened up a number of complex news sites in
Google and kept opening new tabs while the pages were loading.&nbsp; The new
tabs opened just as fast as the first tab.&nbsp; Very impressive.<br /><br />One
page I really wanted to compare that I was unable was my Zimbra mail
client.&nbsp; This webmail client makes very heavy use of AJAX and takes a
little while to load in Firefox and IE.&nbsp; Unfortunately it fell back to
the Standard HTML version when attempting to login so I was unable to
compare.&nbsp; I imagine this has something to do with the application
detecting the browser type and at this point it is unsure if Chrome has
the capabilities it needs.<br /><br /><b><font style="font-size: 1.25em;">Thoughts</font></b><br /><br />With a very impressive first release is it enough to pull Firefox away from my default browser setting?&nbsp; No.&nbsp; Here's why:<br /><br /><ul><li>There are a number of Firefox extensions that I would rather not do without.&nbsp; <br /></li><li>Access to my AJAX-rich Zimbra account is a definite show-stopper.&nbsp; <br /></li><li>While
it makes excellent use of screen real-estate, there is no full-screen
mode for those situations where I just want a little more.&nbsp; </li><li>I would like to see the browser have a more native-look, although I could overlook this if other features were in place</li></ul>With
those nitpicks in mind, Chrome is a great option for people with slower
machines who want a snappier browsing experience.&nbsp; In my world, I know
that I have yet another browser to test websites against (sigh).<br /><br /> ]]>
    </content>
</entry>

<entry>
    <title>College students scrambling for computer support</title>
    <link rel="alternate" type="text/html" href="http://blog.techoutfit.net/2008/09/college-students-scrambling-fo.html" />
    <id>tag:blog.techoutfit.net,2008://1.5</id>

    <published>2008-09-08T02:47:48Z</published>
    <updated>2008-09-28T17:12:14Z</updated>

    <summary><![CDATA[Last year, The Tech Outfit opened an office in Dinkytown, an area in close proximity to the University of Minnesota's Minneapolis campus.&nbsp; The office is inside of another building without a big fancy sign and little to no advertising has...]]></summary>
    <author>
        <name>Donovan Niesen</name>
        <uri>http://www.thetechoutfit.com</uri>
    </author>
    
        <category term="Computer Support" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en-US" xml:base="http://blog.techoutfit.net/">
        <![CDATA[Last year, The Tech Outfit opened an office in Dinkytown, an area in
close proximity to the University of Minnesota's Minneapolis campus.&nbsp;
The office is inside of another building without a big fancy sign and
little to no advertising has been performed in this area.&nbsp; <br /><br />Regardless
of the limited visibility, The Tech Outfit has experienced a large
number of college students requiring computer assistance.&nbsp; While we
surely appreciated the business we were curious to find out why they
were not using the resources on campus. Most students respond that when
they need help, they need it today.&nbsp; On-campus services are often
backed up or hard to find.&nbsp; Unless you know a bright person down the
hall who happens to be around, you're scrambling for help.&nbsp; <br /><br />With convenient on-site services and a handy Dinkytown location, college students are finding their own way to The Tech Outfit.<br /> ]]>
        
    </content>
</entry>

<entry>
    <title>One stubborn mail provider</title>
    <link rel="alternate" type="text/html" href="http://blog.techoutfit.net/2008/09/one-stubborn-mail-provider.html" />
    <id>tag:blog.techoutfit.net,2008://1.4</id>

    <published>2008-09-03T02:20:22Z</published>
    <updated>2008-09-28T17:43:33Z</updated>

    <summary><![CDATA[Two weeks ago my company received an influx of delayed messages when attempting to email clients whose mail servers were lucky enough to reside at Network Solutions.&nbsp; After opening up trouble tickets at both our mail provider and theirs', we...]]></summary>
    <author>
        <name>Donovan Niesen</name>
        <uri>http://www.thetechoutfit.com</uri>
    </author>
    
        <category term="Internet" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en-US" xml:base="http://blog.techoutfit.net/">
        <![CDATA[<span class="mt-enclosure mt-enclosure-image"><img alt="netsol-logo.gif" src="http://blog.techoutfit.net/netsol-logo.gif" class="mt-image-left" style="margin: 0pt 20px 20px 0pt; float: left;" height="29" width="217" /></span>Two weeks ago my company received an influx of delayed messages when attempting to email clients whose mail servers were lucky enough to reside at Network Solutions.&nbsp; After opening up trouble tickets at both our mail provider and theirs', we found that Network Solutions had been a victim of <a href="http://www.mnxsolutions.com/blog/news/network-solutions-under-attack.html">a DDoS attack</a> and took it upon themselves to block the IP range in which our mail server lies.&nbsp; <br /><br />The notice from our own provider went like this:<br /><span class="normal"><br /></span><span class="normal">
<i>Apparently Network Solutions was subject to a DDOS (distributed denial
of services) attack, and responded rather bluntly by blocking large
sections of the Internet, affecting multiple IP transit providers,
including AT&amp;T and Cogent, our primary peering partner.&nbsp; Our
provider advised that Network Solutions would remove the block when
contacted by the individual delegated IP space owner. We have made that
request twice thus far, but remain blocked. Until Network Solutions
removes that block, this situation will continue. We apologize for any
impact this may have on you.&nbsp; If you are also a Network Solutions
customer, we strongly advise you to open a technical support request
with them, and open a ticket with us as well.</i></span>]]>
        <![CDATA[This
was on August 21st.&nbsp; As of this writing (9/2) Network Solutions is
still blocking this IP space.&nbsp; We have asked everyone who was willing
open up tickets with NetSol, but have since had no movement.&nbsp; In the
meantime we've been forced to provide clients with alternate email
addresses in order to stay in contact.&nbsp; Our mail provider seems to have
given up on NetSol and is acquiring new IP addresses for their mail
servers in response to its customers pleas.<br /><br />Another update from our mail provider states that the IPs were, in fact, spoofed:<br /><br /><span class="normal"><br /></span><blockquote><i><span class="normal">As of today, August 28th, our IP range remains
blocked by Network Solutions. Network Solutions continues to block
portions of the AT&amp;T and Cogent networks. As best we can determine
from our contacts with Network Solutions and Cogent, the attack on
Network Solutions consisted of a DDOS attack from spoofed IP addresses.
What that means is that while the attack appeared to originate from
particular IP addresses, those addresses were falsified in the packets.
The true origin of the attack is thus very difficult to determine.
Network Solutions has blocked the spoofed addresses, not the actual
origin of the attack. As the blocked addresses did not in fact
originate the attack, there is nothing Cogent or AT&amp;T can
do/fix/change. Apparently Network Solutions, however, does not intend
to remove the block until they find the true origin of the attack. We
do not know how long this could take.</span></i><br /><br /></blockquote>The
most frustrating part of this whole ordeal is that our own provider
looks like the bad guy when they were essentially denied service to
Network Solutions vast customers. <br />]]>
    </content>
</entry>

</feed>
