What I Accomplished On My Week Off.

In 1785, the Scottish Poet Robert Burns, in his poem “To A Mouse,” wrote:
“The best laid schemes of mice and men
Go often awry,”

That sums up how my week went.

Last week, I had the pleasure of taking a week off to de-stress and recuperate before I move into a new role. My plan was to make the best use of that time in my home lab making updates, diving deep into VMware View, and testing out some new items that caught my eye at VMworld. Things obviously didn’t go quite the way I had hoped.

But in the process, I’ve put my home lab on a more solid footing and even added new capabilities that I wouldn’t have otherwise had.

The problems

The problems I faced in my home lab centered entirely around storage. As part of my lab upgrade process, I planned to upgrade Nexenta to the latest version and add additional solid state drives to the HP xW4400 . I was able to add the drives and do the upgrade, but the ZFS pool that I added them to showed up as being in a degraded state with an error on the SSD drives. After doing a little digging, I realized that this issue was because that machine wasn’t set to use ACHI in the BIOS.

Changing the BIOS on the storage box would require a reinstall, and this is where my problems truely began. When I reinstall Nexenta using the latest version, it started to experience boot loops. It would boot to where the kernel would load, display an error, and then quickly reboot. Reverting the BIOS settings did not resolve the issue, and I was able to boot FreeNAS, a FreeBSD-based appliance OS with ZFS support, from a USB drive.

I figured that there was some odd hardware driver issue that was causing the error. Nexenta is an OS derived from OpenSolaris and it’s descendant Illumos, and while it has fairly broad hardware support, it isn’t as all-encompassing as Windows or Linux, so I decided to try a different machine.

The old lab server in my environment was a Dell PowerEdge T310. This server had been set aside to host a few services like my domain controller after I purchased a used PowerEdge T110 Mk II. Since I wasn’t using the full capabilites of this box, I figured I would move Nexenta and my ZFS pools over to it.

I was surprised when I started experiencing the same issues on this server as I did on my HP workstation. The server would start to boot, display an error, and then quickly reboot after installing the latest version. To make matters worse, the Nexenta Community forums were down for maintenance, which made troubleshooting this issue harder.

After doing a little Googling, I was able to find some information on how to halt the system on an error instead of rebooting. And I was surprised to see that the problem that I was having was caused by my USB keyboard. I switched to a different USB keyboard – same issue. Booted without a keyboard and an attached USB hard drive caused the same error.

Something in the Nexenta USB driver stack was causing the issue, and without the community support forums, I wouldn’t be able to dig deeper into it. I’m not a Unix and Linux expert. That area is way outside of my comfort zone, and I wanted to get it running sooner rather than later.

After digging through my stack of unlabeled CDs, I was able to find a Nexenta disk for an earlier version of 3.1. I was able to install this without any issue and then upgrade to the latest version. This time, everything booted without issue.

Improvements to my lab

Despite the issues with the storage that took most of my week to resolve, I was able to make several significant improvements to my home lab. Those improvements were:

  1. Adding additional gigbabit ports with a 48-port gigabit switch
  2. Improving the overall performance of my storage server by moving it to from a dual-core machine with 2GB of RAM to a quad-core machine with 8GB of RAM
  3. Added two SSDs to my ESXi box
  4. Added an additional SSD to my ZFS pool
  5. Added Fibre Channel between my ESXi box and my Nexenta box

I start a new job this week, and any posts that I would have scheduled are backlogged right now due to the issues I faced. But I have been digging into a new VMware Fling called Web Commander which allows PowerShell scripts to be run from a web interface, and I hope to start having some things ready by the end of the week.

Skills Development and IT

A good friend of mine recently wrote a blog on how to get hired.  Most of the blog posting talks about the interview process and his reflections on the experience performing mock interviews with college students studying IT. 

The main point of the article can be summed up with this sentence near the end of the post:  “Want to know what outdoes a Masters degree and a 4.0 GPA?  Pure, raw, f*cking talent.”

Talent is rarely raw and pure.  It is something that is honed through patience and practice.  It’s not just the successes and failures on projects and teams but applying those lessons you learned.

What everyone does have, though, is potential.  Potential is like a lump of clay or a block of marble.  To the average person, it appears to be nothing extraordinary.  But in the hands of a skilled artist, we get amazing works like Michelangelo’s David or the Venus de Milo

When you think of talent in terms of a career, I often think of job skills.  IT is a career path where one can easily keep their skills sharp and develop new skills.

There are a couple of ways that one can easily develop their technical skills, and anyone coming out of college with the intent of having a career in information technology should be doing some of these early in their career.

One of the easiest ways to expose yourself to new technology or improve your knowledge of existing technology is to read about it.  There are hundreds of books and blogs about every area of information technology.  There is a ton of information that can be gleaned from spending twenty minutes a day reviewing your RSS feeds.

I have 132 blogs in my Google Reader account.  Most are technical blogs.  I know that sounds like a lot, but once you filter through the obvious marketing posts from sites like TechRepublic, there is a lot of good content, and you can usually get through everything by spending 20 minutes per day.

A large chunk of those are also Microsoft blogs.  It seems like every product team at Microsoft has at least one official blog, and unlike many other vendor blogs that I’ve followed, the content usually seems to be geared towards technical readers.  Two good examples are the Exchange Team blog and the Ask the Directory Services Team blog.

Aside from vendor blogs, there is a lot of good community generated content.  I could list off a large number of blogs by other systems administrators that I consider good sources on a variety of topics, but then this would turn into a blog about other good blogs.

Another good source of content are sites like Server Fault and Stack Overflow.  Server Fault and Stack Overflow are a pair of websites that are geared towards IT Pros and programmers where users can turn to for community advice by asking questions about problems, projects, and how to handle different situations.

Technology certifications are usually offered by vendors to certify that someone has a level of familiarity with their products.  For an experienced IT professional, it proves that you know something, and it can help round out your knowledge of a particular product.  For someone just entering the workforce, it can give you some hands-on knowledge.

Entry-level certification often involves one of two paths:  self-study or classroom.  I tend to focus more on the self-study, and this is usually the cheaper option for someone who doesn’t have a company paying for a week-long bootcamp.

Hands-on Experience
When I say hands-on experience, I don’t mean the kind of experience you get when someone is paying for your time, or when you are volunteering for an organization.  I mean the kind you get when you experiment on your own time.  In my opinion, this is probably the best way to learn about technology. 

The nice thing about IT is that you can easily get experience on enterprise-grade hardware and software.  Dell offers decent entry-level tower servers for $500-$600.  A Microsoft Technet Plus subscription runs about $150 for the lowest level package, and VMware and other vendors offer free versions of their enterprise software that allow a user to learn the basics of the system even if they are functionally crippled.

And you can’t forget about Linux and the other open-source *nixes and software packages.

It basically comes down to this – if you want to be a database administrator, you should be learning about databases by building them.  If you want to be a Linux administrator, you should be setting up Linux servers.  It pays off when you can go into an interview and explain a complicated problem that you solved on your personal network and what it taught you.

Looking for CCNA Study Resources

One of my long-time personal goals has been to complete my CCNA.  I took the first half of the exam in May of 2009.  I’m about halfway through the book for the 2nd half of the exam, and that puts me knee-deep in IP Routing and routing protocols.
Getting hands-on experience with the switching section (includes VLANs and Trunking) isn’t too difficult as I have a Cisco 2950 sitting in my basement as part of my home network.  It’s the routing part that I worry about as I would like to have a little more hands-on experience as the exam includes questions where you troubleshoot simulated networks using actual device commands.

I found a tool that emulates router IOS images, provided that I can acquire them.  However, most of the labs I have seen seem to cover CCNP or CCIE topics like MPLS and BGP.

Does anyone know of any resources that I can use for studying?