<?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>Racker Hacker &#187; general advice</title>
	<atom:link href="http://rackerhacker.com/tag/general-advice/feed/" rel="self" type="application/rss+xml" />
	<link>http://rackerhacker.com</link>
	<description>Words of wisdom from a server administrator</description>
	<lastBuildDate>Wed, 16 May 2012 12:55:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Getting a Technical Job at Rackspace</title>
		<link>http://rackerhacker.com/2012/04/09/getting-a-technical-job-at-rackspace/</link>
		<comments>http://rackerhacker.com/2012/04/09/getting-a-technical-job-at-rackspace/#comments</comments>
		<pubDate>Mon, 09 Apr 2012 14:00:56 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[interview]]></category>
		<category><![CDATA[rackspace]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=3286</guid>
		<description><![CDATA[You've probably noticed that the blog has slowed down a bit recently. Part of the slowdown is due to an uptick in work required to get OpenStack Nova and its related software up and running at Rackspace for Cloud Servers and another part of it is a severe case of writer's block. I threw out [...]<p><a href="http://rackerhacker.com/2012/04/09/getting-a-technical-job-at-rackspace/">Getting a Technical Job at Rackspace</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>You've probably noticed that the blog has slowed down a bit recently.  Part of the slowdown is due to an uptick in work required to get <a href="http://www.openstack.org/">OpenStack</a> <a href="http://nova.openstack.org/">Nova</a> and its related software up and running at <a href="http://rackspace.com/">Rackspace</a> for <a href="http://www.rackspace.com/cloud/cloud_hosting_products/servers/">Cloud Servers</a> and another part of it is a severe case of writer's block.  I threw out some questions on Twitter about the topics people would like to see covered in some new posts and a commonly requested topic was employment at Rackspace.</p>
<p><a href="http://rackerhacker.com/wp-content/uploads/2012/04/boromir_rackspace_job.jpg"><img src="http://rackerhacker.com/wp-content/uploads/2012/04/boromir_rackspace_job-300x176.jpg" alt="Boromir - One Does Not Simply Get a Job at Rackspace" title="Boromir - One Does Not Simply Get a Job at Rackspace" width="300" height="176" class="alignright size-medium wp-image-3287" /></a><em>First things first, getting a job at Rackspace isn't easy.</em>  We don't <em>intentionally</em> make the process difficult.  It's just that the work we do is unique and demanding.</p>
<p>We work in a fast-paced, extremely dynamic team-centric environment.  While some people in the company work in extremely small teams or sometimes all by themselves, that's pretty few and far between.  We look for people who can survive and flourish in this atmosphere and we look for people who can do it all while working as a team.  Even with all of this hustle and bustle, we still remember why we're doing it: <strong>the pursuit of Fanatical Support for our customers</strong>.</p>
<p>Another thing to keep in mind is that there's no true secret for making it through the application process.  There's no magic combination of skills or "silver bullet" that will scoot you through.  Every candidate is reviewed individually for each position.  There have been several times at the end of an interview where we've gotten together and said: "Wow, this candidate is solid, but they're just not right for this position.  Let's find the right spot and see if there's a spot open."  We look for the right candidate for the right position at the right time.</p>
<p>One of the best ways to get ahead in the screening or interview process is to do a little homework about Rackspace and the products we offer.  Much of this is covered in a <a href="/2011/05/02/do-your-homework-before-a-technical-interview/">post I wrote in 2011</a>.  You'll go into the interviews with more confidence and it will be much more obvious that you're really interested in the position.</p>
<p>Don't be discouraged if the process takes a little longer than you expected.  When I was hired in 2006, I went through two phone pre-screens and then three back-to-back interviews in person.  Things have changed a little since then and I've heard of some candidates receiving two to three pre-screens via telephone and then one or two interviews in person.  The additional screening and interviews may be due to Rackers trying to find the right fit for a particular applicant.  As I said previously, we look for the right fit for each applicant.  We may consider you for a different position than you applied for if we feel like your skill set or personality fits that role better.</p>
<p>A very common question is what to wear to a Rackspace interview.  It's confusing to know exactly what's expected since we have Rackers in the building wearing everything from suits to flip-flops.  This is where you really have to go with your gut.  Interviewing for a customer-facing sales position while wearing a hoodie and shorts is probably going to bring a suboptimal result.  Keep in mind that there's really nothing negative about overdressing (but keep your tuxedo in the closet, seriously).  I wore a shirt and tie for my interviews in 2006 but my tie got caught in the car door and was shredded.  After a lot of cursing, I took off the tie and decided to wing it with my dress shirt.  Nobody ever said a word about it.</p>
<p>Remember to be flexible during the interviews.  You might be asked to draw a solution on a whiteboard or think through a really complicated situation.  Roll with it and keep your confidence up.  When you don't know something, admit it, but then talk about how you'd research an answer.</p>
<p>There's one last thing to keep in mind and it's really critical.  If you're ever asked about how you would solve a problem or how you solved a problem in the past, <strong>don't divulge any information which is confidential or proprietary to your current company</strong>.  Just tell the interviewers that you've solved the solution in the past but you'll need to keep things vague to maintain confidentiality.  We will definitely understand and we will encourage you to maintain that confidentiality.</p>
<p>Leave your comments if you have any!  I'll be glad to answer any questions you have.</p>
<p><a href="http://rackerhacker.com/2012/04/09/getting-a-technical-job-at-rackspace/">Getting a Technical Job at Rackspace</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2012/04/09/getting-a-technical-job-at-rackspace/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Why technical people should blog (but don&#039;t)</title>
		<link>http://rackerhacker.com/2012/03/30/why-technical-people-should-blog-but-dont/</link>
		<comments>http://rackerhacker.com/2012/03/30/why-technical-people-should-blog-but-dont/#comments</comments>
		<pubDate>Fri, 30 Mar 2012 14:30:45 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[red hat]]></category>
		<category><![CDATA[rhca]]></category>
		<category><![CDATA[sysadmin]]></category>
		<category><![CDATA[writing]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=3179</guid>
		<description><![CDATA[I originally wrote this post for the Rackspace Blog but I decided to post it here in case some of my readers might have missed it. Please feel free to leave your comments at the end of the post. Sometimes people talk to me about posts I've written on my blog, or posts they wish [...]<p><a href="http://rackerhacker.com/2012/03/30/why-technical-people-should-blog-but-dont/">Why technical people should blog (but don't)</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p><em style="color: grey;">I originally wrote this post for the <a href="http://www.rackspace.com/blog/why-technical-people-should-blog-but-dont/">Rackspace Blog</a> but I decided to post it here in case some of my readers might have missed it.  Please feel free to leave your comments at the end of the post.</em></p>
<hr />
Sometimes people talk to me about posts I've written on my blog, or posts they wish I would write. At some point during the discussion, I'll almost always ask the person why they don't start up their own blog or contribute to someone else's. Very few people actually seem interested when I probe them about writing posts on technical topics.</p>
<p>My mother was always the one who told me (and her students) that everyone has a story. She said that writing could be therapeutic in ways you probably won't consider until you've written something that someone else enjoys. Just as software developers exist to write software for their users, writers exist to write stories for their readers. There's nothing that says technical people can't become excellent writers who inspire others to learn and share their knowledge with others.</p>
<p>The goal of this post is to encourage technical people to enjoy writing, write efficiently and feel comfortable doing it. I'll roll through some of the most common responses I've received about why technical people don't blog about what they know.</p>
<blockquote><p>I don't think I'm really an expert on anything. I'm not an authority on any topic I can think of.</p></blockquote>
<p>I'm leading off with this response because it's the most critical to refute. If you don't take away anything else from this post, let it be this: you don't need to be an expert on a topic to write about it.</p>
<p>You can find examples of this by rolling through some of the posts on my blog. I'd consider myself to be an expert on one, maybe two topics, but I've written over 450 posts in the span of just over five years. I certainly didn't write all of those about the one or two topics I know best.</p>
<p>Write about what you know and don't be afraid to do a little research to become an authority on something. A great example of this was my post, entitled "<a href="/2012/02/02/kerberos-for-haters/">Kerberos for haters</a>." I had almost no expertise in Kerberos. In fact, I couldn't even configure it properly for my RHCA exam! However, I did a ton of research and began to understand how most of the pieces fit together. Many other people were just as confused and I decided to pack all of the knowledge I had about Kerberos into a blog post. Positive and negative feedback rolled in and it was obvious that my post taught some readers, inspired some others and angered a few.</p>
<p>What a great way to lead into the next response:</p>
<blockquote><p>What if I say something that isn't correct? I'll look like an idiot in front of the whole internet!</p></blockquote>
<p>Been there, done that. Every writer makes errors and comes up with bad assumptions at least once. Readers will call you out on your mistakes (some do it delicately while others don't) and it's your duty to correct your post or correct the reader. I've written posts with errors, and I've gotten a little lazy on my fact-checking from time to time. As my middle school journalism teacher always reminded me, the most important part of a mistake is what you do to clean it up and learn from it.</p>
<p>In short: you'll make mistakes. As long as you've done your due diligence to minimize them and respond to them promptly, your readers should forgive you.</p>
<p>Speaking of errors:</p>
<blockquote><p>I'm great at a command prompt but my spelling and grammar are awful. I write terribly.</p></blockquote>
<p>This is easily fixed. If you're one of those folks who live the do-it-yourself type of lifestyle, pick up a copy of <a href="http://en.wikipedia.org/wiki/The_Elements_of_Style"><em>The Elements of Style</em></a> by Strunk &#038; White. There are free PDF versions online or you can borrow one from your nearest journalist. No matter the situation you're in, this book has details about where punctuation should and shouldn't be, how to structure sentences and paragraphs, and how to properly cite your sources (really vital for research posts).</p>
<p>Hauling around a copy of an ultra-dry reference book may not be your thing. If that's the case, find someone you know who has a knack for writing. You can usually find helpful folks in marketing or corporate communications in most big companies who will take your post and return it covered in red ink ready for corrections (thanks, Garrett!). I've even <a href="http://fiverr.com/categories/all/tags/proofreading/order/latest/pages/1">spotted some folks on Fiverr</a> who will do this for as low as $5.</p>
<p>I'll wrap up with the second most common response:</p>
<blockquote><p>I don't know who I'm writing for? What if I write about something simple and the really technical folks think I'm a noob? What if I write something crazy complex and it goes over most people's heads?</p></blockquote>
<p>I've done both of these. Most Linux system administrators worth their salt know how to add and remove iptables rules, and they'd consider it to be pretty trivial work. Would it surprise you to know that out of over 450 posts, my post about <a href="/2007/02/09/delete-single-iptables-rules/">deleting a single iptables rule</a> is in the top five most accessed posts per month? I receive just over 11 percent of my monthly hits to this post. People are either learning from it or they can't remember how to delete the rule and they want to use the post as a quick reference. Either way, the post is valuable to many people even if I think it's the simplest topic possible.</p>
<p>On the flip side, I went nuts and wrote up a <a href="/redundant-cloud-hosting-configuration-guide/">complete how-to</a> for a redundant cloud hosting configuration complete with LVS, glusterfs, MySQL on DRBD, memcached, haproxy and ldirectord. I thought it would be valuable knowledge to a few folks but that it might sail over the heads of most of my readers. Again, I was wrong. The post is constantly in the top 10 most visited posts on the blog and I've probably received more feedback via comments, email and IRC about that post than any other. Once again, a post I thought would be mostly useless turned into a real conversation starter.</p>
<p><b>Let's conclude and wrap up.</b> Keep these things in mind if you feel discouraged about writing:</p>
<ul>
<li>Write about what interests you whether you're an expert on it or not</li>
<li>Don't be afraid to fail</li>
<li>Be responsive to your readers</li>
<li>Even if you think nobody will read your post, write it</li>
<li>Always ensure your voice shines through in your writing — this is what makes it special and appealing</li>
</ul>
<p><a href="http://rackerhacker.com/2012/03/30/why-technical-people-should-blog-but-dont/">Why technical people should blog (but don't)</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2012/03/30/why-technical-people-should-blog-but-dont/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Preparing for Red Hat Exams</title>
		<link>http://rackerhacker.com/2012/02/28/preparing-for-red-hat-exams/</link>
		<comments>http://rackerhacker.com/2012/02/28/preparing-for-red-hat-exams/#comments</comments>
		<pubDate>Tue, 28 Feb 2012 21:35:28 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[red hat]]></category>
		<category><![CDATA[sysadmin]]></category>
		<category><![CDATA[virtualization]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=3107</guid>
		<description><![CDATA[I originally wrote this post for the Rackspace Blog but I've posted it here just in case anyone following my blog's feed finds it useful. Feel free to share your feedback! Getting yourself ready for any type of examination is usually a stressful experience that involves procrastination and some late nights leading up to the [...]<p><a href="http://rackerhacker.com/2012/02/28/preparing-for-red-hat-exams/">Preparing for Red Hat Exams</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p><em style="color: grey;">I originally wrote this post for the <a href="http://www.rackspace.com/blog/preparing-for-red-hat-exams/">Rackspace Blog</a> but I've posted it here just in case anyone following my blog's feed finds it useful.  Feel free to share your feedback!</em></p>
<p>Getting yourself ready for any type of examination is usually a stressful experience that involves procrastination and some late nights leading up to the test. Every time I take one, I always say to myself, “I’m really going to get ahead of this next time and study early. This last minute stuff is terrible.” But I always forget all of this as the next exam rolls around.</p>
<p>Quick note: As you read through the remainder of the post, you may wonder why some of it is a bit vague. Every Red Hat test taker is under a NDA to prevent disclosure of test information that may reduce the security of the exam itself. Penalties start with losing credit for the exams previously taken and they can escalate up to legal action. I hope you’ll understand why I’m not able to go into details about certain portions of the Red Hat examinations.</p>
<p>I’ve taken seven Red Hat exams already: two for the RHCE and five for the RHCA. These tests certainly aren’t easy, but there are some good guidelines and tips you can use to make your studying efforts less stressful and more productive. Without further ado, here are my recommendations for prospective Red Hat examinees:</p>
<h4>Build a flexible study environment</h4>
<p>This is critical. You’ll need some spare servers or some available virtual machines to practice the objectives on each exam. However, don’t feel like you need to spend the money on a Red Hat subscription to get your studying done. Most of the test objectives on the majority of exams can be completed with very similar Linux distributions, like Scientific Linux or CentOS. Look for a version of the distribution that is closest to what you’ll be tested on at exam time. Your study environment should meet some basic criteria:</p>
<ul>
<li>You should be able to quickly build and tear down servers or virtual machines</li>
<li>Keep the latency to your environment low to avoid getting frustrated</li>
<li>Use applications like VirtualBox, VMWare Fusion/Workstation to practice on your own computer</li>
<li>Consider using VMs from cloud providers if you’re under a time crunch</li>
</ul>
<p>Some exams may require some bare-metal access to the server itself (especially <a href="https://www.redhat.com/courses/ex442_red_hat_enterprise_system_monitoring_and_performance_tuning_expertise_exam/">EX442</a>), so keep that in mind when you’re looking for a good practice environment. You may need some specific network or storage setups for some exams (as with <a href="https://www.redhat.com/courses/ex436_red_hat_enterprise_clustering_and_storage_management_expertise_exam/">EX436</a>). If you’re not sure what you need, be sure to ask your instructor or someone else you know who has taken the exam already.</p>
<h4>Prioritize doing over reading</h4>
<p>The Red Hat exams are all hands-on, practical exams. You won’t find any essays or multiple-choice questions in these exams. Although the materials from Red Hat are full of good information, reading this information can only get you so far. You need to practice setting up the services on your own to be fully prepared for the test. If you’re not pressed for time, reading through the book can give you some details about the lab sequences, which you might miss by solely reading through labs themselves.</p>
<h4>Research the why, not the what, to remember</h4>
<p>This is especially important for the RHCA exam track. You may find that there is a ton of material to cover for the exam and that it’s difficult to remember each command to bring a certain service online or to repair a problem. Instead of thinking through the problem as “first, I do this, then I do this”, try to understand why each step is important in the first place.</p>
<p>Here’s a good example. I’ll be the first one to admit that Kerberos drives me crazy. I’ve even <a href="http://rackerhacker.com/2012/02/02/kerberos-for-haters/">written posts</a> about it. The commands seemed really archaic, the daemons didn’t make sense, and the lack of readline support in the Kerberos tools made me want to throw my computer out the window (come on, MIT!). I put my class materials aside, went to Google in a browser, and started researching Kerberos.</p>
<p>I read some of MIT’s documentation, ventured over to Wikipedia, and poked at some of the documentation within the Kerberos RPM packages. After a while, I began to realize how it all fit together. “Okay,” I thought to myself, “I need principals in a keytab to do these things, but I need to have a database for the admin stuff first.” Suddenly, the order of things in my head wasn’t just memorized any longer. The process of operations seemed to make logical sense because I fully understood how the pieces of a Kerberos infrastructure fit together.</p>
<p>If you start to get discouraged, take a break and learn more about why you’re doing what you’re doing. Once it becomes second nature, working through the problems on the exam becomes much easier.</p>
<h4>Lean on your available resources</h4>
<p>Don’t forget that there are other knowledgeable folks available to talk to when you get bogged down. Lean on other RHCE’s, RHCA’s, or experienced Linux users to get the answers or explanations you need. If you already have a Red Hat certification, head over to the <a href="https://certforums.redhat.com/login.php">Red Hat Certification Forums</a> and meet up with other examinees that are discussing test preparation.</p>
<p>Also, you’ll find some knowledgeable (but sometimes snarky or quirky) people on IRC who are eager to point you in the right direction. Try the #rhel, #centos, or #fedora channels if you’re struggling through the configuration of a certain service. Many Linux users may roll their eyes about it, but Twitter is also a pretty good way to reach out to people who have a lot of Linux experience.</p>
<h4>Summary</h4>
<p>Remember to lean on the knowledge of others, get hands-on with the test objectives and do your research when you’re frustrated. The exams from Red Hat are generally difficult and cover a lot of material, but with the right amount of preparation and determination you can pass the exams and get the certifications you want.</p>
<p><a href="http://rackerhacker.com/2012/02/28/preparing-for-red-hat-exams/">Preparing for Red Hat Exams</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2012/02/28/preparing-for-red-hat-exams/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Looking back at the long road to becoming a Red Hat Certified Architect</title>
		<link>http://rackerhacker.com/2012/02/13/looking-back-at-the-long-road-to-becoming-a-red-hat-certified-architect/</link>
		<comments>http://rackerhacker.com/2012/02/13/looking-back-at-the-long-road-to-becoming-a-red-hat-certified-architect/#comments</comments>
		<pubDate>Mon, 13 Feb 2012 15:00:41 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[certifications]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[rackspace]]></category>
		<category><![CDATA[red hat]]></category>
		<category><![CDATA[rpm]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=3058</guid>
		<description><![CDATA[The grades came back last Friday and I've passed the last exam in the requirements to become a Red Hat Certified Architect (RHCA). I was fortunate enough to be part of Rackspace's RHCA pilot program and we took our first exam back at the end of 2010. It's definitely a good feeling to be finished [...]<p><a href="http://rackerhacker.com/2012/02/13/looking-back-at-the-long-road-to-becoming-a-red-hat-certified-architect/">Looking back at the long road to becoming a Red Hat Certified Architect</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>The grades came back last Friday and I've passed the last exam in the requirements to become a <a href="http://www.redhat.com/training/certifications/rhca/">Red Hat Certified Architect (RHCA)</a>.  I was fortunate enough to be part of Rackspace's RHCA pilot program and we took our first exam back at the end of 2010.  It's definitely a good feeling to be finished and I'm definitely ready to give back some knowledge to the readers of this blog.</p>
<p><strong>First things first:</strong> there are going to be many part of this post which probably aren't as specific as you'd like.  A lot of that is due to the NDA that all Red Hat examinees agree to when they take an exam.  We aren't allowed to talk about what was on the exam or our experiences during the exam.  If we do, penalties range from smaller things like losing certifications all the way up to serious stuff like legal action.  It goes without saying that I want to protect the security of the exams, I don't want to lose my certifications, and I don't want to hire a lawyer.  Please try to keep this in mind if you yearn for more specifics than I'm able to give.</p>
<p><strong>Red Hat Certified Engineer</strong><br />
The <a href="http://www.redhat.com/training/courses/ex200/examobjective">RHCSA</a> and <a href="http://www.redhat.com/training/courses/ex300/examobjective">RHCE</a> exams are the first step on the path to the RHCA.  You can't take any of the RHCA prerequisite exams without it.  These exams cover a really broad spectrum of material including apache configuration, NFS, iptables and mail services.  The two links above will take you to the exam objectives for each exam.</p>
<p>I've always recommended the RHCE exam for Linux administrators who are trying to sharpen their skills and get to the next level whether they use Red Hat or not.  The exam covers a lot of good material that makes a solid foundation for any Linux user without throwing in too many Red Hat-specific knowledge.</p>
<p>The exam (like all Red Hat exams) is fully practical.  There are no multiple choice questions or essays.  You'll have to meet all of the objectives by logging into a local Red Hat system and making the system do what it needs to do.</p>
<p>Quick tips for the RHCSA/RHCE exams:</p>
<ul>
<li>Keep your eye on the clock. Time can really get away from you if you get stuck in the weeds on a problem that should be relatively straightforward.</li>
<li>Leave time at the end to check your work.  When you set up a lot of services, it's inevitable that you might configure a service for one problem that breaks the functionality required by a problem you completed already.</li>
<li>Always reboot before you leave.  We all forget to use <code>chkconfig</code> when we're in a hurry.</li>
<li>Practice, practice, practice.  There's not one objective on this exam that you can't test in a VM on your own.</li>
</ul>
<p><strong>Red Hat Enterprise System Monitoring and Performance Tuning</strong><br />
Our group at Rackspace started off with <a href="http://www.redhat.com/training/courses/ex442/examobjective">EX442</a> and it was a very difficult way to start off the RHCA track.  Take a look at the objectives and you'll see that much of the exam is related to tweaking system performance and then monitoring that performance with graphs and raw data.  You'll have to turn a lot of knobs on the kernel and you'll need to know where to store these configurations so they'll be persistent.</p>
<p>In addition, the objective regarding TCP buffers and related settings is a real challenge.  You'll have to wrestle with some math that appears to be relatively simple, but can get confusing quickly.  Some of the settings can't really be checked to know if your setting is correct.  The objectives mention tuning disk scheduling -- you don't really have the time or tools to know if your setting is ideal.</p>
<p>Quick tips for EX442:</p>
<ul>
<li>Use the documentation available to you. Install the <code>kernel-doc</code> package while you practice and during the exam.</li>
<li>Be careful with your math.  You have a Linux machine in front of you!  Don't forget about <code>bc</code>.</li>
<li>Watch your units.  Know the difference between a kilobyte (KB) and a kibibyte (KiB).</li>
<li>Make comments in files where you adjust kernel configurations.  It will help you keep track of which question the kernel adjustment is meant to satisfy.</li>
</ul>
<p><strong>Red Hat Enterprise Storage Management</strong><br />
I'm surprised to say this now, but I actually enjoyed <a href="http://www.redhat.com/training/courses/ex436/examobjective">EX436</a>.  I've always used other clustering tools like heartbeat and pacemaker, but I've never had the need to use the Red Hat Cluster Suite.  Although RHCS definitely has a lot of quirks and rough edges, it's pretty solid once you get familiar with the GUI and command line tools.</p>
<p>You get the opportunity to mess around with some pretty useful technology like iSCSI, GFS, and clustered LVM.  These are things that you're probably already using or will be using soon in a large server environment.  The web interface for RHCS is quite peculiar and you may find yourself wanting to put your fist through the screen when you're staring down the endless animated GIFs when the cluster is syncing its configuration.  Do your best to be patient because you certainly don't want to short circuit the cluster sync.</p>
<p>Quick tips for EX436:</p>
<ul>
<li>Be patient.  You'll feel like the RHCS web interface is mocking you when you're pressed for time.</li>
<li>Watch the clock.  It's extremely easy to burn a lot of time on this exam if you get stuck on a particular problem.</li>
<li>Double check your entries in the web interface.  Make sure you're doing things in the right order and that you've set up the prerequisites before adding services to the cluster.  If you get it wrong, you could put your cluster into a weird state.</li>
<li>Use man pages.  If you don't mess with GFS a lot, the man pages will save you in a pinch.</li>
</ul>
<p><strong>Red Hat Enterprise Deployment and Systems Management</strong><br />
If there's one exam where time management is critical, it's <a href="http://www.redhat.com/training/courses/ex401/examobjective">EX401</a>.  Importing data into the Satellite Server takes quite a bit of time and there's almost nothing you can do to speed it up.  It probably goes without saying, but as with most long-running tasks, you'll want to run it in screen.  The last thing you'd ever want is to abort the import due to an errant click or CTRL-C (I did it while practicing -- it's aggravating).</p>
<p>There are other test objectives which you can either complete or partially complete while you wait for the import to finish.</p>
<p>Also, take the time to really dig into the Satellite Server web interface while your practicing for the exam.  Knowing where to find the most common configuration items will really save some time when you're in the exam.  You can sometimes get pretty bogged down in the interface so don't forget to use multiple tabs to keep your work organized.</p>
<p>I felt like this exam was the easiest out of the bunch since you could go back and test every single question with good time management.  <em>Did I mention how important time management was on this exam already?</em>  If I forgot to mention it earlier, be sure to focus on time management for this test.</p>
<p>Quick tips for EX401:</p>
<ul>
<li>Time management will make or break you on this test.  Keep an eye on the clock and make sure you've done absolutely every piece of the exam that you can while you wait for the server to do its work.</li>
<li>Scour the web interface.  Keep a mental map in your mind where the big chunks of configuration items are.</li>
<li>Go back and test everything.  If you manage your time well, you should have enough time to verify each and every objective on this exam.</li>
</ul>
<p><strong>Red Hat Enterprise Directory Services and Authentication</strong><br />
At first, <a href="http://www.redhat.com/training/courses/ex423/examobjective">EX423</a> looks pretty straightforward.  Red Hat's authentication configuration tools make LDAP authentication setup pretty easy.  However, this exam comes with a lot of curveballs.</p>
<p>The GUI interface for the Directory Services component is a little frustrating to use.  I found that the GUI stopped responding to keyboard input occasionally unless I clicked on another window and came back.  If you misconfigure the SSL certificates in the interface, your LDAP server is down for the count.  If you don't input the correct data into the setup scripts at the beginning, you might not notice it until much later when it's either too difficult to dig yourself out of the hole or it's too late to start over with a clean configuration.</p>
<p>I didn't feel pressed for time on this exam too much and that was pretty refreshing after taking the EX401 test.  It's extremely critical to watch what you type and click on this exam.  Some mistakes can be quickly corrected while others may require you to blow away the LDAP server configuration and re-provision the whole thing.</p>
<p>Quick tips for EX423:</p>
<ul>
<li>Always watch what you're typing.  A simple mistake can lead to confusion or bigger issues down the road.</li>
<li>Don't ignore the LDIF objectives.  As you practice, you'll find that manipulating LDIF files is a little more involved than you expected.</li>
<li>Practice starting over.  Throw out your Directory Services configuration and get the experience of what it's like to start over and get back in the game.</li>
</ul>
<p><strong>Red Hat Enterprise Security: Network Services</strong><br />
There's no sugar coating it -- <a href="http://www.redhat.com/training/courses/ex333/examobjective">EX333</a> is a beast.  It's a six hour exam broken into two three-hour chunks.  It covers a ton of material and I refer to it as "the RHCE on steroids."  You might argue that I thought it was hard since it was the last test and I was ready to be finished, but I really think this exam is a tough one.</p>
<p>Practicing for the Kerberos and DNS objectives was the hardest for me.  I just couldn't understand Kerberos, no matter how hard I tried.  The realization that I would really have to learn it soon set in.  I dug into the Kerberos design documentation on MIT's site, read the summaries on Wikipedia, and scoured the documentation available in the Kerberos RPM packages.  Once I understood <em>why</em> Kerberos is set up the way it is and <em>why</em> the security measures are present, everything began to come together.  I was able to remember the steps not because I was memorizing them, but because I understood how Kerberos worked.</p>
<p>When you're working through the DNS objectives, keep an eye out for punctuation.  I blew through a good 20 minutes in what seemed like the blink of an eye when I forgot a period in my TSIG key configuration while studying.  Make sure you use the resources available to you, like <code>system-config-bind</code> and sample configs in <code>/usr/share/doc/bind*/examples/</code>.  Get to know commands like <code>dig</code> really well.</p>
<p>If you're overwhelmed by OpenSSL's command line syntax, check out the <code>/etc/pki/tls/misc/CA</code> script.  There are some handy comments at the top of the script that explain how to use it.  You can also pluck OpenSSL commands right out of the script if you need to run them yourself.</p>
<ul>
<li>Don't just memorize.  Do some research to understand how everything fits together.</li>
<li>Manage your time.  DNS and Kerberos have lots of small nuances that can become time sinks when done incorrectly.</li>
<li>Use the available documentation and tools.  Try practicing without study materials so that you're forced to use the docs and tools available within the server.</li>
</ul>
<p><b>Ranking the exams</b><br />
A couple of folks on Twitter asked me to rank the exams from most difficult to least difficult.  Keep in mind that these are a little subjective since I was more familiar with some objectives than others for certain tests.</p>
<ul>
<li><b>EX333 - Enterprise Security: Network Services:</b> a tubload of material and a very long exam</li>
<li><b>EX442 - System Monitoring and Performance Tuning:</b> very difficult to check your work, lots of calculations</li>
<li><b>EX423 - Directory Services and Authentication:</b> not a lot of material to cover, but tons of curveballs</li>
<li><b>EX436 - Storage Management:</b> the web interface made things much easier, lots of documentation available</li>
<li><b>EX401 - Deployment and Systems Management:</b> every objective can be tested, I build RPM's already</li>
</ul>
<p><a href="http://rackerhacker.com/2012/02/13/looking-back-at-the-long-road-to-becoming-a-red-hat-certified-architect/">Looking back at the long road to becoming a Red Hat Certified Architect</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2012/02/13/looking-back-at-the-long-road-to-becoming-a-red-hat-certified-architect/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>How to write e-mails to nerds (that they will actually read)</title>
		<link>http://rackerhacker.com/2011/08/26/how-to-write-e-mails-to-nerds-that-they-will-actually-read/</link>
		<comments>http://rackerhacker.com/2011/08/26/how-to-write-e-mails-to-nerds-that-they-will-actually-read/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 13:00:06 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=2469</guid>
		<description><![CDATA[Standard e-mail etiquette is pretty obvious to most of us and if you're good at it, you'll get your point across more often without stepping on toes or causing unneeded confusion. Simple things like identifying yourself well, avoiding sarcasm and adding context to statements are all extremely beneficial. However, writing e-mails to highly technical developers, [...]<p><a href="http://rackerhacker.com/2011/08/26/how-to-write-e-mails-to-nerds-that-they-will-actually-read/">How to write e-mails to nerds (that they will actually read)</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Standard e-mail etiquette is pretty obvious to most of us and if you're good at it, you'll get your point across more often without stepping on toes or causing unneeded confusion.  Simple things like identifying yourself well, avoiding sarcasm and adding context to statements are all extremely beneficial.  However, writing e-mails to highly technical developers, system administrators, and engineers is a little trickier.  These types of e-mail recipients don't really enjoy handling e-mail (inbound or outbound) and most find that e-mail is just a speed bump which interrupts their productivity.</p>
<p>If you're not technical, you might be asking yourself: <em>"I need to e-mail technical people and they need to take what I say seriously?  How do I do it?"</em>  It's not impossible, but the rest of this blog post should help.</p>
<h3>Brevity is key</h3>
<p>There are some people who thrive on receiving e-mail, sending e-mail, and talking about e-mail that they've sent or received.  Most nerds don't feel this way.</p>
<p>You need to get your point across concisely and succinctly so that your e-mail is seen as less of a distraction.  Avoid adding a lot of context where it isn't needed and try to summarize business needs and processes unless details are absolutely critical.  If you need to send your e-mail to multiple recipients and some of those recipients need additional details, provide an abstract at the beginning of the e-mail.</p>
<h3>Learn the ways of TL;DR</h3>
<p>I've heard quite a few conversations like these around the office:</p>
<blockquote><p>
Nerd 1: "Did you get that e-mail from [name here]?"<br />
Nerd 2: "The six page one with four PDF files attached?"<br />
Nerd 1: "Yeah. That one."<br />
Nerd 2: "TL;DR dude, seriously. Did you read it?"<br />
Nerd 1: "Nah. I might read it later."
</p></blockquote>
<p>If someone's ever mentioned "TL;DR" (too long; didn't read) when your e-mail was mentioned, don't fret.  It's a quick fix.  Just add a quick summary to the top of your e-mail prefaced with "TL;DR".  Provide a really brief summary (bulleted lists are a plus) of your e-mail in the section and then start your e-mail right afterwards.  Here's an example:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">TL;DR
  * next software release deploys Monday
  * two bugs remaining to fix
  * we will get started at 8AM Saturday, yeaaaaah</pre></div></div>

<p><em>Missed the joke? <a href="http://en.wikipedia.org/wiki/Bill_Lumbergh">Head over to Wikipedia</a>.</em></p>
<p>If one of the summary points interests a recipient, they'll scan your e-mail for the pertinent sections.  Some recipients may only need to see what's in the summary and they won't bother reading the remainder.  Either way, the effectiveness of your e-mail increases by leaps and bounds.</p>
<h3>Plain text</h3>
<p><div id="attachment_2483" class="wp-caption alignright" style="width: 310px"><a href="http://rackerhacker.com/wp-content/uploads/2011/08/mutt-screenshots_001.jpg"><img src="http://rackerhacker.com/wp-content/uploads/2011/08/mutt-screenshots_001-300x195.jpg" alt="" title="mutt-screenshots_001" width="300" height="195" class="size-medium wp-image-2483" /></a><p class="wp-caption-text">Users of mutt prefer plain text e-mails</p></div>If you only take away one thing from this entire post, let it be this section.  Writing e-mails in plain text is *highly recommended* if you want a technical person to take your e-mail seriously.  Many system administrators I know use <a href="http://www.mutt.org/">mutt</a>, a text-based console-only e-mail reader.  Click the thumbnail at the right and imagine what your e-mails would look like if they're full of images, stylesheets and background images.  Better yet, imagine if your entire e-mail was in an image and the e-mail itself had no text.</p>
<p>Here are a few more tips under this category:</p>
<ul>
<li>Don't use Outlook stationery.</li>
<li>Never send e-mails with an image as the e-mail itself.</li>
<li><strong>No Comic Sans at any time. Period.</strong></li>
<li>Avoid graphical e-mail signatures (more on that in a moment).</li>
</ul>
<h3>E-mail signatures</h3>
<p>Brevity can definitely be applied to e-mail signatures, too.  How many times have you seen e-mails that end like this:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">Frank Frankelton MCSE, RHCSA, RHCE, CCNA, RHCA, LPIC-3, Ph.D., M.D., Esq., CMDBA
Systems Adminstrator Extraordinaire, Database Administrator, All-around great guy
Office: 210-555-1212
Mobile: 210-555-1213
Other Mobile: 210-555-1214
Fax: 210-555-1215
VOIP: 210-555-1216
AIM: frankeltonia
Twitter: @frankyfrank
Jabber: frankfurter@frankeltonisinthehouse.com
Big Company, Inc</pre></div></div>

<p>You might think that nobody would ever send out e-mails with a signature like the one above, but I've seen some that are actually worse.  Keep the signature short and only put in the information that people really need to know.  Generally, your name and title or department is sufficient for e-mail signatures (unless your local/federal laws require otherwise).  Always preface it with a double dash "--" on a line by itself to signify that the remainder of the e-mail is the signature.</p>
<h3>Summary</h3>
<p>Keep it simple, keep it brief, and keep it relevant.  While the suggestions above might not apply to every business or every person, following the suggestions will increase the effectiveness of your e-mails and ensure that your voice is heard on the other end.</p>
<p>I'm really interested to hear your comments.  Are there some suggestions you have that I missed in the post?  Did I make some suggestions which didn't make sense or don't apply to you?  Let me know!</p>
<p><a href="http://rackerhacker.com/2011/08/26/how-to-write-e-mails-to-nerds-that-they-will-actually-read/">How to write e-mails to nerds (that they will actually read)</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2011/08/26/how-to-write-e-mails-to-nerds-that-they-will-actually-read/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Contest winners from the &quot;Inspire a sysadmin&quot; contest</title>
		<link>http://rackerhacker.com/2011/08/22/contest-winners-from-the-inspire-a-sysadmin-contest/</link>
		<comments>http://rackerhacker.com/2011/08/22/contest-winners-from-the-inspire-a-sysadmin-contest/#comments</comments>
		<pubDate>Mon, 22 Aug 2011 12:43:53 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=2442</guid>
		<description><![CDATA[Before I get started, I'd like to give a big thanks to all of the visitors who dropped by and participated in the contest last week. Also, thanks to ThinkGeek for offering to pay for (and double) one of the prizes! Here are the list of winners: Grand Prize ($50 at ThinkGeek): Dan Udey Runners-Up [...]<p><a href="http://rackerhacker.com/2011/08/22/contest-winners-from-the-inspire-a-sysadmin-contest/">Contest winners from the "Inspire a sysadmin" contest</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Before I get started, I'd like to give a big thanks to all of the visitors who dropped by and <a href="http://rackerhacker.com/2011/08/17/inspire-a-sysadmin-get-a-thinkgeek-gift-certificate/">participated in the contest</a> last week.  Also, thanks to <a href="http://thinkgeek.com/">ThinkGeek</a> for offering to pay for (and double) one of the prizes!</p>
<p>Here are the list of winners:</p>
<ul>
<li>Grand Prize ($50 at ThinkGeek): <strong>Dan Udey</strong></li>
<li>Runners-Up ($25 at ThinkGeek): <strong>Joe Wright, Susan Price, and Giovanni Tirloni</strong></li>
</ul>
<p><a href="http://rackerhacker.com/2011/08/17/inspire-a-sysadmin-get-a-thinkgeek-gift-certificate/#comment-23915">Dan's comment rang true</a> with me since much of a sysadmin's job involves responding to crises regardless of how much planning you put forth:</p>
<blockquote><p>Keep a cool head. Focus. Work methodically. Figure out what to do and get it done, and people will remember you as the person who performs under pressure. Once you can do that, you're a sysadmin.</p></blockquote>
<p><a href="http://rackerhacker.com/2011/08/17/inspire-a-sysadmin-get-a-thinkgeek-gift-certificate/#comment-23911">Joe touched on a critical point</a> about system administration:</p>
<blockquote><p>Tell the truth. If you break something, 'fess up and fix it. If you don't know how to do something, admit it and learn how to do the task. Create your own culture of honesty on the job; others will respect and follow your example.</p></blockquote>
<p><a href="http://rackerhacker.com/2011/08/17/inspire-a-sysadmin-get-a-thinkgeek-gift-certificate/#comment-23921">Susan offered some inspiration</a> for system administrators stuck in frustrating situations:</p>
<blockquote><p>I know, I know - dumb users, RTFM. Believe me, I've been there. In fact - one of your strategies should be to establish a trusted community where you can VENT about these issues, and get support for yourself. Ask for answers when you don't know them. Restock on the compassion and patience.</p></blockquote>
<p><a href="http://rackerhacker.com/2011/08/17/inspire-a-sysadmin-get-a-thinkgeek-gift-certificate/#comment-23907">Giovanni talked about the basics</a> and what every system administrator should know to get started in a career.  We probably take this for granted, but this is critical to keep in mind:</p>
<blockquote><p>If you are starting in the system administration area, don't praise yourself only because you (blindly?) fixed an issue or helped that friend with his/her server. Ask yourself: Why what I did fixed the issue? Why that was happening in the first place? And more importantly, how to avoid it for all eternity? You won't but it doesn't hurt to aim high.</p></blockquote>
<p><a href="http://rackerhacker.com/wp-content/uploads/2011/08/giftcert-preview.png"><img src="http://rackerhacker.com/wp-content/uploads/2011/08/giftcert-preview.png" alt="ThinkGeek Gift Certificate" title="ThinkGeek Gift Certificate" width="186" height="120" class="alignleft size-full wp-image-2430" /></a>Even though it isn't a runner-up, <a href="http://rackerhacker.com/2011/08/17/inspire-a-sysadmin-get-a-thinkgeek-gift-certificate/#comment-23919">Paul's comment</a> certainly deserves an honorable mention.  His comment is actually a true story (with a slight amount of embellishment, of course) and it serves as a reminder that system administrators and developers must stand up for their beliefs even if it goes against the beliefs of their superiors.  If your managers don't value the feedback, it might be a sign that a career change is in order.</p>
<p>Once again, <strong>a big thanks</strong> goes out to everyone who submitted a comment.  I'll reach out to the winners today and get the gift certificates sent out to them.</p>
<p><a href="http://rackerhacker.com/2011/08/22/contest-winners-from-the-inspire-a-sysadmin-contest/">Contest winners from the "Inspire a sysadmin" contest</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2011/08/22/contest-winners-from-the-inspire-a-sysadmin-contest/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Success with stress</title>
		<link>http://rackerhacker.com/2011/07/21/success-with-stress/</link>
		<comments>http://rackerhacker.com/2011/07/21/success-with-stress/#comments</comments>
		<pubDate>Fri, 22 Jul 2011 01:50:34 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=2353</guid>
		<description><![CDATA[This is a copy of a post I wrote for the Rackspace Talent blog. Much of it probably applies to the job of a system administrator, so I figured it would be a good idea to post it here as well. Let me know what you think! Although Rackspace has one of the best work [...]<p><a href="http://rackerhacker.com/2011/07/21/success-with-stress/">Success with stress</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p><em>This is a <a href="http://rackertalent.com/rackers/success-with-stress/">copy of a post</a> I wrote for the <a href="http://rackertalent.com/rackers/">Rackspace Talent</a> blog.  Much of it probably applies to the job of a system administrator, so I figured it would be a good idea to post it here as well.  Let me know what you think!</em></p>
<hr />
<a href="http://rackerhacker.com/wp-content/uploads/2011/07/BustTheKeyboard.jpg"><img src="http://rackerhacker.com/wp-content/uploads/2011/07/BustTheKeyboard-199x300.jpg" alt="sledgehammer hitting a keyboard" title="success with stress" width="199" height="300" class="alignright size-medium wp-image-2356" /></a>Although Rackspace has one of the best work environments of any company I’ve worked for, there are plenty of opportunities to become stressed.</p>
<p>Stress can come from a variety of sources. Some of the obvious ones involve dealing with outages or tight deadlines, but there are some that aren’t so obvious, such as maintaining the customers’ trust and interpersonal issues.</p>
<p>There’s one thing you must remember: stress doesn’t have to rule your life. I’ve learned (and sometimes stumbled upon) some good techniques to prevent many of the negative effects of stressful situations at work and they’re definitely worth a try.</p>
<p><strong>Know what you’re up against</strong><br />
It’s hard to battle a source of stress if you don’t know why it’s bothering you. Take the problem you’re facing and break it down into pieces. There are going to be some things you can and can’t change. Put the things you can’t change aside and focus on the things you’re able to change. As you tackle the list of things you can change, you might find ways to work around the things you can’t.</p>
<p><strong>Interpersonal issues are easy</strong><br />
Stress that comes from dealing with coworkers may seem insurmountable at times. However, this type of stress is easily fixed and it normally stems from insufficient communication or conflicting goals. There’s an informal policy I’ve had on most of my teams called “Take it to the Racker” and it’s been quite successful. The basic idea is that if you have problems with another Racker, whether it’s something personal or work-related, take the grievance to them directly (in private, of course) and find common ground.</p>
<p>More often than not, this process leads to a good work relationship. It also improves communication drastically in the short term and it generally lasts if the people involved keep up the communication over time. I’ve seen Rackers who are so upset that they refuse to sit next to each other and after this process, they’re eating lunch together and working on the same projects.</p>
<p><strong>Don’t fight your battles alone</strong><br />
Your best resources for fighting stress are all around you. Lean on your manager or your coworkers for help. Remember what your mother always told you: a trouble shared is a trouble halved. Your coworker might have a solution to a particular problem which frees up an hour for you each day and allows you to work on other projects. Your manager might not know that a particular task doesn’t fit your strengths and they might be able to provide you with another project that plays to your strengths.</p>
<p>Is it possible to reduce your stress level to zero at work? I don’t think so. However, you should always have a goal to reduce it when it makes sense.</p>
<p>As always, I’m interested to hear your comments. Which stress-reduction strategies work best for you? What is the source of most of your stress?</p>
<p><a href="http://rackerhacker.com/2011/07/21/success-with-stress/">Success with stress</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2011/07/21/success-with-stress/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Do your homework before a technical interview</title>
		<link>http://rackerhacker.com/2011/05/02/do-your-homework-before-a-technical-interview/</link>
		<comments>http://rackerhacker.com/2011/05/02/do-your-homework-before-a-technical-interview/#comments</comments>
		<pubDate>Tue, 03 May 2011 02:05:05 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[interview]]></category>
		<category><![CDATA[rackspace]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=2284</guid>
		<description><![CDATA[If you work for a growing company like I do, it's inevitable that you'll have to do your fair share of interviewing. I love it when I leave an interview with a good feeling about the candidate. That "wow, they really nailed it" feeling is always great to have when you need to fill a [...]<p><a href="http://rackerhacker.com/2011/05/02/do-your-homework-before-a-technical-interview/">Do your homework before a technical interview</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>If you work for a growing company like I do, it's inevitable that you'll have to do your fair share of interviewing.  I love it when I leave an interview with a good feeling about the candidate.  That "wow, they really nailed it" feeling is always great to have when you need to fill a critical role.  Most often, the successful candidates are the ones who do their homework before they ever walk in our office doors.</p>
<p>What do I mean by "do your homework?"  Here are some bullet points to get you on your way:</p>
<p><strong>Know what the company does.</strong><br />
This one is critical and it should be easy.  However, make sure to do thorough research first.  For example, if you interviewed at a company like Apple, becoming familiar with their hardware lineup should be a no-brainer.  That's their bread and butter.  On the other hand, remember that Apple isn't solely a hardware company; they write lots of software, provide online productivity services, and they distribute music, movies, and other entertainment media.</p>
<p>While you're doing this research, try to discover what makes the company unique.  Sure, <a href="http://www.apple.com/">Apple</a> sells laptops and desktops (just like a lot of other companies), but what makes their particular products unique?  Is there something unique about the way they provide their services?  Have they cornered a certain market segment by providing a combination of products and services to that group of consumers?  Answering these simple questions may help you tip the scales in the interview process.</p>
<p><strong>Try one or more of the company's products.</strong><br />
The feasibility of trying a company's product before an interview could be debatable.  For example, if you wanted to interview at <a href="http://cray.com/">Cray</a>, you probably don't need to drop $2M USD on your own <a href="http://www.cray.com/Products/XE/Systems.aspx">XE6</a> before walking in the door.  For companies where the barrier to entry for purchasing a product is much lower, such as cloud computing companies, there's no excuse to not try things out first.  Amazon has a <a href="http://aws.amazon.com/free/">free tier</a> and a Rackspace Cloud Server could cost you <a href="http://www.rackspace.com/cloud/cloud_hosting_products/servers/pricing/">as little as $2.50 per week</a>.</p>
<p>It's concerning when I talk to an applicant about a job working with Rackspace's Cloud Servers and they haven't tried out any cloud products from any provider.  How can I take a candidate's interest seriously when they haven't shown interest in any portion of my group's market segment?</p>
<p><strong>Know what the company's competitors do.</strong><br />
It's often more impressive to an interviewer to know what a company's competitors are doing and how it compares to what that company is doing in the market.  For example, if you can walk into an interview and say "I like the way your company makes these widgets, but Company X is able to make them more lightweight, and I value that more than the added customer service your company offers."  This shows the interviewer that you're familiar with various products in the segment and you've used them enough to understand what makes them different.</p>
<p>Some of you might be thinking: "Why would I say something like that to the interviewer? They'll think I'm being too negative about their product."  That's always possible, but you can guard against it by wording everything carefully.  Make sure you have a solid reason for the way you feel that is based on something substantial (usability, price, features, etc).  I've had candidates talk for five to ten minutes about why one of our product is inferior to one of our competitors' products and I was very impressed.</p>
<p>One quick gotcha: your interviewer might turn your comments back on you and ask you how you would improve one of the inferior products (I do this regularly).  Make sure that you're prepared for that question and consider offering up a suggestion before the question is presented to you.</p>
<p><strong>Can't get the information you need? Ask!</strong><br />
When you reach the end of the interview and the interviewer asks if you have questions, be sure to ask any questions about topics you had trouble researching.  Going back to the Cray example, compare what you know about an XE6 to servers you've used before.  You could mention a problem you had with the density of your previous configurations and ask how they overcame that hurdle at Cray.  If it's a proprietary trade secret, you might not get an answer, but they'll know that you did some serious research ahead of time.  If they can share the answer, they might still be impressed, and you might end up learning something you didn't know prior to the interview.</p>
<p><strong>Conclusion</strong><br />
In summary, doing your homework and learning about the company shows the interviewers that you not only have what it takes to do the work, but that the work interests you as well.  I've interviewed folks in the past who lacked on technical ability but had plenty of desire and drive.  More often than not, those people are now Rackers.</p>
<p><a href="http://rackerhacker.com/2011/05/02/do-your-homework-before-a-technical-interview/">Do your homework before a technical interview</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2011/05/02/do-your-homework-before-a-technical-interview/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>How to survive as a technical manager</title>
		<link>http://rackerhacker.com/2011/03/29/how-to-survive-as-a-technical-manager/</link>
		<comments>http://rackerhacker.com/2011/03/29/how-to-survive-as-a-technical-manager/#comments</comments>
		<pubDate>Tue, 29 Mar 2011 14:25:59 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[rackspace]]></category>
		<category><![CDATA[strategy]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=2234</guid>
		<description><![CDATA[Anyone who says management is easy obviously hasn't done it for very long or they're not doing their job very well. Coordinating the activities and personal development of each person on the team is always a challenge and it introduces an unbelievable number of variables into an already difficult job. However, watching members of the [...]<p><a href="http://rackerhacker.com/2011/03/29/how-to-survive-as-a-technical-manager/">How to survive as a technical manager</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Anyone who says management is easy obviously hasn't done it for very long or they're not doing their job very well.  Coordinating the activities and personal development of each person on the team is always a challenge and it introduces an unbelievable number of variables into an already difficult job.  However, watching members of the team grow and succeed in their work is tremendously rewarding.</p>
<p>Taking on the job of a technical manager presents its own unique challenges.  It's easy for a technical manager to lose focus and get down in the weeds of daily work.  It's also very difficult to let go of the reins and resign to the fact that the direct involvement in technical work will have to be reduced.</p>
<p>These problems resonate with me as I've recently taken on another technical management role at Rackspace.  My previous experience involved managing a team of technicians at various skill levels who were working on customer environments made up of dedicated servers and network equipment.  The current position has quite a few differences.  I'm now managing a small group of highly technical and extremely dedicated Linux engineers and we're responsible for maintaining the systems and networks which run the Cloud Servers product.</p>
<p>One of my goals of this blog is to help others learn things much more easily than I have.  Here are some things I've had to learn the hard way while working as a technical manager:</p>
<p><strong>Get out of the mindset of an individual contributor</strong><br />
When you're a system administrator on a team (or by yourself), you're often judged on your personal job performance.  Team interaction is important for some companies (especially at Rackspace), but not for others.  Breaking the mindset of being an individual contributor was extremely difficult for me to do.</p>
<p>Managers are judged on the success of the team as a whole.  Encouraging your team members to succeed and playing an active role in their personal and professional development is key.  Each time you find yourself buried in the weeds of a problem rather than facilitating your team's work on the problem is when your performance as a manager will drop.  If you do it more often, you may find that your team members aren't getting the support they need.</p>
<p><strong>Don't be afraid of your team becoming smarter than you</strong><br />
One of the biggest things I've heard from my team is: "Aren't you worried about losing your technical skills when you're a manager?"  My answer: "Of course."  Anyone who has technical abilities will always be afraid of watching those abilities wane over time.  However, as your team becomes stronger, you should be able to continue learning not through your own work, but through theirs.  When your team members see that you're still interested in learning and you're now able to learn from them, they'll become more energized about their own work.</p>
<p>If you find yourself thinking negatively about a potential job candidate because they're smarter than you, step back and think for a moment.  Put your own ego aside and consider what's best for you, your team, and your company.  Your goal is to build a strong and successful team, not to pad your own ego.  If your managers are judging you (as a technical manager) on your technical ability, then you need to solve that problem first.</p>
<p><strong>Inspire instead of direct</strong><br />
Every manager faces the challenge of working with team members who disagree with a particular company policy or with the direction of their particular infrastructure.  Keep in mind that your team members are probably not intending to be insubordinate and they might have something useful to contribute.</p>
<p>When you find yourself locking horns with your team members, inspire a discussion about the problem.  Break out the disagreement onto a whiteboard and let the team make suggestions for improvements.  Even if the entire discussion leads back to the fact that the original problem is inevitable, fostering that feedback loop is critical.  You'll learn more about your team while they find ways to express their opinions and feel empowered.</p>
<p>The really tough part is when your team comes up with an alternative plan and you find yourself presenting to your leadership team.  Always remember to take it seriously and know that you may need to refine the plan many times over before you find something acceptable for your team and the business.</p>
<p><strong>De-stress by staying on task</strong><br />
If you're anything like me, you need some way to keep tabs on action items coming from meetings, e-mails, phone calls, and walk-ups.  I've heard great things about applications like <a href="http://www.omnigroup.com/products/omnifocus/">OmniFocus</a> and <a href="http://culturedcode.com/things/">Things</a>, but I settled on <a href="http://2doapp.com/">2Do</a>.  I really enjoy a strong to-do list which allows me to set priorities, due dates, and write extended notes about a particular task.</p>
<p>The best way to tackle a wall of tasks is to keep them organized into a concise list.  Even if it's a small task, get it into your list so it's on your radar and you won't forget it.  Work through the simple tasks and the high priority ones first but watch out for tasks with due dates.</p>
<p><strong>Conclusion</strong><br />
All of these processes get easier over time and although your job will surely have challenges and pitfalls, the enjoyment will greatly increase.  I feel privileged to lead a team of talented people who work on a complex and ever-expanding product.</p>
<p>Also, I'd like to mention that I'm not an expert on management!  There are probably much better ways to do much of this than I've outlined in this post.  Be sure to share your ideas in the comments section below.</p>
<p><a href="http://rackerhacker.com/2011/03/29/how-to-survive-as-a-technical-manager/">How to survive as a technical manager</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2011/03/29/how-to-survive-as-a-technical-manager/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Strategies for detecting a compromised Linux server</title>
		<link>http://rackerhacker.com/2011/03/09/strategies-for-detecting-a-compromised-linux-server/</link>
		<comments>http://rackerhacker.com/2011/03/09/strategies-for-detecting-a-compromised-linux-server/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 02:52:16 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=1273</guid>
		<description><![CDATA[There are few things which will rattle systems administrators more than a compromised server. It gives you the same feeling that you would have if someone broke into your house or car, except that it's much more difficult (with a server) to determine how to clean up the compromise and found out how the attacker [...]<p><a href="http://rackerhacker.com/2011/03/09/strategies-for-detecting-a-compromised-linux-server/">Strategies for detecting a compromised Linux server</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>There are few things which will rattle systems administrators more than a compromised server.  It gives you the same feeling that you would have if someone broke into your house or car, except that it's much more difficult (with a server) to determine how to clean up the compromise and found out how the attacker gained access.  In addition, leaving a compromise in place for an extended period can lead to other problems:</p>
<ul>
<li>your server could be used to gain access other servers</li>
<li>data could be stolen from your server's databases or storage devices</li>
<li>an attacker could capture data from your server's local network</li>
<li>denial of service attacks could be launched using your server as an active participant</li>
</ul>
<p>The best ways to limit your server's attack surface are pretty obvious: limit network access, keep your OS packages up to date, and regularly audit any code which is accessible externally or internally.  As we all know, your server can still become compromised even with all of these preventative measures in place.</p>
<p>Here are some tips which will allow you to rapidly detect a compromise on your servers:</p>
<p><strong>Abnormal network usage patterns and atypical bandwidth consumption</strong><br />
Most sites will have a fairly normal traffic pattern which repeats itself daily.  If your traffic graph suddenly has a plateau or spikes drastically during different parts of the day, that could signify that there is something worth reviewing.  Also, if your site normally consumes about 2TB of traffic per month and you're at the 1.5TB mark on the fifth day of the month, you might want to examine the server more closely.</p>
<p>On the flip side, look for dips in network traffic as well.  This may mean that a compromise is interfering with the operation of a particular daemon, or there may be a rogue daemon listening on a trusted port during certain periods.</p>
<p>Many compromises consist of simple scripts which scan for other servers to infect or participate in large denial of service attacks.  The scans may show up as a large amount of packets, but the denial of service attacks will usually consume a large amount of bandwidth.  Keeping tabs on network traffic is easily done with open source software like <a href="http://munin-monitoring.org/">munin</a>, <a href="http://www.cacti.net/">cacti</a>, or <a href="http://oss.oetiker.ch/mrtg/">MRTG</a>.</p>
<p><strong>Unusual open ports</strong><br />
If you run a web server on port 80, but <code>netstat -ntlp</code> shows something listening on various ports over 1024, those processes are worth reviewing.  Use commands like <code>lsof</code> to probe the system for the files and network ports held open by the processes.  You can also check within <code>/proc/[pid]</code> to find the directory where the processes were originally launched.</p>
<p>Watch out for processes started within directories like <code>/dev/shm</code>, <code>/tmp</code> or any directories in which your daemons have write access.  You might see that some processes were started in a user's home directory.  If that's the case, it might be a good time to reset that user's password or clear out their ssh key.  Review the output from <code>last</code> authentication logs to see if there are account logins from peculiar locations.  If you know the user lives in the US, but there are logins from various other countries over a short period, you've got a serious problem.</p>
<p>I've used applications like <a href="http://www.chkrootkit.org/">chkrootkit</a> and <a href="http://www.rootkit.nl/projects/rootkit_hunter.html">rkhunter</a> in the past, but I still prefer a keen eye and <code>netstat</code> on most occasions. </p>
<p><strong>Command output is unusual</strong><br />
I've seen compromises in the past where the attacker actually took the time to replace integral applications like <code>ps</code>, <code>top</code> and <code>lsof</code> to hide the evidence of the ongoing compromise.  However, a quick peek in <code>/proc</code> revealed that there was a lot more going on.</p>
<p>If you suspect a compromise like this one, you may want to use the functionality provided by <code>rpm</code> to verify the integrity of the packages currently installed.  You can quickly hunt for changed files by running <code>rpm -Va | grep ^..5</code>.</p>
<p>Keeping tabs on changing files can be a challenge, but applications like <a href="http://www.tripwire.org/">tripwire</a> and good ol' <a href="http://www.logwatch.org/">logwatch</a> can save you in a pinch.</p>
<p><strong>Summary</strong><br />
We can all agree that the best way to prevent a compromise is to take precautions before putting anything into production.  In real life, something will always be forgotten, so detection is a must.  It's critical to keep in mind that <em>monitoring a server means more than keeping track on uptime</em>.  Keeping tabs on performance anomalies will allow you to find the compromise sooner and that keeps the damage done to a minimum.</p>
<p><a href="http://rackerhacker.com/2011/03/09/strategies-for-detecting-a-compromised-linux-server/">Strategies for detecting a compromised Linux server</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2011/03/09/strategies-for-detecting-a-compromised-linux-server/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Strategies for storing backups</title>
		<link>http://rackerhacker.com/2011/01/09/strategies-for-storing-backups/</link>
		<comments>http://rackerhacker.com/2011/01/09/strategies-for-storing-backups/#comments</comments>
		<pubDate>Mon, 10 Jan 2011 01:20:44 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[emergency]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=2123</guid>
		<description><![CDATA[Although it's not a glamorous subject for system administrators, backups are necessary for any production environment. Those who run their systems without backups generally learn from their errors in a very painful way. However, the way you store your backups may sometimes prove to be just as vital as the methods you use to backup [...]<p><a href="http://rackerhacker.com/2011/01/09/strategies-for-storing-backups/">Strategies for storing backups</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Although it's not a glamorous subject for system administrators, backups are necessary for any production environment.  Those who run their systems without backups generally learn from their errors in a very painful way.  However, the way you store your backups may sometimes prove to be just as vital as the methods you use to backup your data.</p>
<p>For my environments, I follow a strategy like this: I have some backups immediately accessible, others that are accessible very quickly (but not instantly), and others that are offsite and may take a bit more time to access.</p>
<p><strong>Immediately accessible backups</strong><br />
One of the easiest way to have an immediately accessible backup is to have multiple machines online running the same versions of code or databases in a high availability group.  If you have a node which fails, the remaining nodes should be able to handle the requests immediately.  You may not consider this to be a backup under the traditional definition of what a backup should be, but it's functionally similar.</p>
<p><strong>Backups that are accessible quickly</strong><br />
This second level of backups should be stored very close to your environment or within the environment itself.  If you have multiple database and web server nodes, you could consider storing your web backups on the database servers and vice versa.  For those who run very sensitive applications, this may violate the provisions of different certifications and regulations.  A server dedicated to holding backups may be a viable alternative for additional security.</p>
<p><strong>Offsite backup storage</strong><br />
These are the backups that need to be geographically distant from your main environment.  Also, you should always consider storing these backups on more than one medium with more than one company.</p>
<p>For example, if your hosting providers offers a storage service, it's fine to store one set of your backups there, but consider storing them with a competitor as well.  If you store your backups with your hosting provider in multiple places, you could be caught be a provider issue and lose access to your backups entirely.  Hosting with multiple providers will allow you to access at least one copy of your backups even if there are billing or technical issues with a particular provider.</p>
<p>Another thing to keep in mind with offsite backup storage is how long it will take to transfer the backups to your hosting environment in case of an emergency.  If your hosting environment is in Texas, but your backups are stored in Australia, you're going to have a longer wait when you transfer your data back.</p>
<p><strong>A specific example</strong><br />
My environments are all in Dallas, Texas and I have a highly available environment with multiple instances.  My second layer of backups are stored within the environment as well as in Rackspace's Cloud Files in Dallas.  My third layer of backups are stored with Amazon S3 via Jungle Disk and at my home on a RAID array.</p>
<p>While I hope you never need to access your backups under duress, these tips should help to reduce your stress if you need to restore data in a hurry.</p>
<p><a href="http://rackerhacker.com/2011/01/09/strategies-for-storing-backups/">Strategies for storing backups</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2011/01/09/strategies-for-storing-backups/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>One RHCA exam down, five to go</title>
		<link>http://rackerhacker.com/2011/01/06/one-rhca-exam-down-five-to-go/</link>
		<comments>http://rackerhacker.com/2011/01/06/one-rhca-exam-down-five-to-go/#comments</comments>
		<pubDate>Fri, 07 Jan 2011 02:24:49 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[career]]></category>
		<category><![CDATA[certification]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[red hat]]></category>
		<category><![CDATA[rhca]]></category>
		<category><![CDATA[rhce]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=2107</guid>
		<description><![CDATA[While I'm not the biggest proponent of certifications, I still think you can learn some valuable information while studying for some certification tests. A good example of that is Red Hat's System Monitoring and Performance Tuning Expertise Exam. It's one test out of five in the Red Hat Certified Architect (RHCA) track of exams. I [...]<p><a href="http://rackerhacker.com/2011/01/06/one-rhca-exam-down-five-to-go/">One RHCA exam down, five to go</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p><a href="http://rackerhacker.com/wp-content/uploads/2011/01/Major_Hayden_EX442.jpg"><img src="http://rackerhacker.com/wp-content/uploads/2011/01/Major_Hayden_EX442-300x231.jpg" alt="EX442" title="EX442" width="300" height="231" class="alignright size-medium wp-image-2115" /></a>While I'm not the biggest proponent of certifications, I still think you can learn some valuable information while studying for some certification tests.  A good example of that is Red Hat's <a href="https://www.redhat.com/courses/ex442_red_hat_enterprise_system_monitoring_and_performance_tuning_expertise_exam/">System Monitoring and Performance Tuning Expertise Exam</a>.  It's one test out of five in the <a href="http://www.redhat.com/certification/rhca/">Red Hat Certified Architect (RHCA)</a> track of exams.  I passed the exam this week and it's definitely one of the most difficult certification exams I've ever taken.</p>
<p>Many of the <a href="https://www.redhat.com/courses/rh442_red_hat_enterprise_system_monitoring_and_performance_tuning/details/">topics covered on the EX442 exam</a> are really handy for Linux system administrators.  The advanced filesystem configuration, software RAID optimization, and process scheduling knowledge can provide some tangible performance gains on just about any Linux server.</p>
<p>I especially enjoyed learning about <a href="http://sourceware.org/systemtap/">SystemTap</a>.  I'd heard about it before, but I never really understood what it did and how much power it can give a system administrator on a server.  You can <a href="http://sourceware.org/systemtap/examples/keyword-index.html">sample a wide variety of system events</a> quickly with relative ease and you're not bound to the hardware dependencies of <a href="http://oprofile.sourceforge.net/news/">OProfile</a>.</p>
<p>Bear in mind that you'll need a valid <a href="http://www.redhat.com/certification/rhce/">RHCE</a> to get started with the RHCA exams.  That's another certification that I'd definitely recommend as it helps you learn a wide variety of administration topics that can be applied to almost any Linux distribution available today.</p>
<p><a href="http://rackerhacker.com/2011/01/06/one-rhca-exam-down-five-to-go/">One RHCA exam down, five to go</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2011/01/06/one-rhca-exam-down-five-to-go/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Happy Thanksgiving</title>
		<link>http://rackerhacker.com/2010/11/25/happy-thanksgiving-2010/</link>
		<comments>http://rackerhacker.com/2010/11/25/happy-thanksgiving-2010/#comments</comments>
		<pubDate>Thu, 25 Nov 2010 16:00:18 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[holiday]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=1972</guid>
		<description><![CDATA[For those of us in the United States, we celebrate Thanksgiving today. Although it means different things for different people, I consider it to be a good day to remember those who have helped us and count the blessings that we all take for granted. Without a doubt, I'm most thankful for my family. They're [...]<p><a href="http://rackerhacker.com/2010/11/25/happy-thanksgiving-2010/">Happy Thanksgiving</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>For those of us in the United States, we celebrate <a href="http://en.wikipedia.org/wiki/Thanksgiving">Thanksgiving</a> today.  Although it means different things for different people, I consider it to be a good day to remember those who have helped us and count the blessings that we all take for granted.</p>
<p>Without a doubt, I'm most thankful for my family.  They're my support base and I couldn't get through my days without them.</p>
<p>I wish I could thank my coworkers, mentors, and close friends individually, but this blog post would get rather lengthy.  To everyone who has had taken the time to teach me something: I thank you.  You've inspired me to continue learning and inspire others to do the same.</p>
<p>Happy Thanksgiving to you and your families.  Please travel safely and take some time to relax.</p>
<p><a href="http://rackerhacker.com/2010/11/25/happy-thanksgiving-2010/">Happy Thanksgiving</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2010/11/25/happy-thanksgiving-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>400th post: Looking back at where this blog started</title>
		<link>http://rackerhacker.com/2010/11/13/400th-post-looking-back-at-where-this-blog-started/</link>
		<comments>http://rackerhacker.com/2010/11/13/400th-post-looking-back-at-where-this-blog-started/#comments</comments>
		<pubDate>Sun, 14 Nov 2010 02:06:00 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[rackspace]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=1871</guid>
		<description><![CDATA[Last night's post about my charity drive for the Movember Foundation was the 400th post on my blog! I started posting on rackerhacker.com way back in the spring of 2007 shortly after I was hired by Rackspace in December of 2006. My main purpose for the blog at the beginning was to create a place [...]<p><a href="http://rackerhacker.com/2010/11/13/400th-post-looking-back-at-where-this-blog-started/">400th post: Looking back at where this blog started</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Last night's <a href="/2010/11/12/raising-money-for-prostate-cancer-research-and-survivor-support/">post</a> about my charity drive for the <a href="http://us.movember.com/">Movember Foundation</a> was the 400th post on my blog!  I started posting on rackerhacker.com way back in the spring of 2007 shortly after I was hired by <a href="http://rackspace.com/">Rackspace</a> in December of 2006.</p>
<p>My main purpose for the blog at the beginning was to create a place where I could write quick articles about problems I found and how to fix them.  Most of the people around me were using their own handy systems to store notes (Stickies on the Mac, Tomboy notes on Linux, or just simple text files), but they weren't able to share them easily.  I wanted a way to write up a solution and instantly share it with someone.  I also wanted that person to be able to pass along the fix to someone else if they wanted.</p>
<p>Needless to say, it took off from there.</p>
<p>It's important to note that I couldn't have done this by myself.  I've learned some efficient strategies for managing large systems and troubleshooting complex issues from my peers, my managers, and colleagues outside of Rackspace.  There have been many triumphs and there have been quite a few failures.  </p>
<p>The <em>failures</em> have taught me the most.  I've made some pretty large mistakes and here are a few:</p>
<ul>
<li>inserted data into a MySQL slave in an active replication pair</li>
<li>run a fsck on an online ext3 partition</li>
<li>marked a failed drive online in a hardware RAID array</li>
<li>mangled Plesk installations in ways that you can't comprehend</li>
<li>typed 'reboot' into a terminal and pressed enter, only to realize I was in the wrong terminal</li>
<li>ran UPDATE statements without a WHERE clause in MySQL (well, I only did this one twice)</li>
</ul>
<p>Even after all that, people occasionally tell me that I'm very good at what I do.  I don't know if that's true or not, but I'm glad some people think so!  Many of those folks end up asking me this question:</p>
<blockquote><p>How do I learn how to be a successful Linux systems administrator?</p></blockquote>
<p>My answer is this: Be humble. Always be thirsty for knowledge. Don't be afraid to make mistakes. Love what you do and the people you serve.</p>
<p><a href="http://rackerhacker.com/2010/11/13/400th-post-looking-back-at-where-this-blog-started/">400th post: Looking back at where this blog started</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2010/11/13/400th-post-looking-back-at-where-this-blog-started/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>A modern implementation and explanation of Linux Virtual Server (LVS)</title>
		<link>http://rackerhacker.com/2010/06/27/modern-implementation-and-explanation-of-linux-virtual-server-lvs/</link>
		<comments>http://rackerhacker.com/2010/06/27/modern-implementation-and-explanation-of-linux-virtual-server-lvs/#comments</comments>
		<pubDate>Sun, 27 Jun 2010 16:03:27 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[high availability]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[sysadmin]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=1529</guid>
		<description><![CDATA[A typical load balancing configuration using hardware devices or software implementations will be organized such that they resemble the diagram at the right. I usually call this a proxy-type load balancing solution since the load balancer proxies your request to some other nodes. The standard order of operations looks like this: client makes a request [...]<p><a href="http://rackerhacker.com/2010/06/27/modern-implementation-and-explanation-of-linux-virtual-server-lvs/">A modern implementation and explanation of Linux Virtual Server (LVS)</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_1533" class="wp-caption alignright" style="width: 207px"><a href="http://rackerhacker.com/wp-content/uploads/2010/06/loadbalancer-viaproxy.png"><img src="http://rackerhacker.com/wp-content/uploads/2010/06/loadbalancer-viaproxy.png" alt="Load balancing via proxy" title="Load balancing via proxy" width="197" height="206" class="size-full wp-image-1533" /></a><p class="wp-caption-text">Typical configuration for a <br />proxy-type load balancer</p></div>A typical load balancing configuration using hardware devices or software implementations will be organized such that they resemble the diagram at the right.  I usually call this a proxy-type load balancing solution since the load balancer proxies your request to some other nodes.  The standard order of operations looks like this:</p>
<ul>
<li>client makes a request</li>
<li>load balancer receives the request</li>
<li>load balancer sends request to a web node</li>
<li>the web server sends content back to the load balancer</li>
<li>the load balancer responds to the client</li>
</ul>
<p>If you're not familiar with load balancing, here's an analogy.  Consider a fast food restaurant.  When you walk up to the counter and place an order, you're asking the person at the counter (the load balancer) for a hamburger.  The person at the counter is going to submit your order, and then a group of people (web nodes) are going to work on it.  Once your hamburger (web request) is ready, your order will be given to the person at the counter and then back to you.</p>
<p>This style of organization can become a problem as your web nodes begin to scale.  It requires you to ensure that your load balancers can keep up with the requests and sustain higher transfer rates that come from having more web nodes serving a greater number of requests.  Imagine the fast food restaurant where you have one person taking the orders but you have 30 people working on the food.  The person at the counter may be able to take orders very quickly, but they may not be able to keep up with the orders coming out of the kitchen.</p>
<p><div id="attachment_1532" class="wp-caption alignright" style="width: 226px"><a href="http://rackerhacker.com/wp-content/uploads/2010/06/loadbalancer-ipvs.png"><img src="http://rackerhacker.com/wp-content/uploads/2010/06/loadbalancer-ipvs.png" alt="Load balancing via Linux Virtual Server" title="Load balancing via Linux Virtual Server" width="216" height="206" class="size-full wp-image-1532" /></a><p class="wp-caption-text">LVS allows for application servers<br /> to respond to clients directly</p></div><br />
This is where <a href="http://en.wikipedia.org/wiki/Linux_Virtual_Server">Linux Virtual Server (LVS)</a> really shines.  LVS operates a bit differently:</p>
<ul>
<li>client makes a request</li>
<li>load balancer receives the request</li>
<li>load balancer sends request to a web node</li>
<li>the web server sends the response <strong>directly to the client</strong></li>
</ul>
<p>The key difference is that the load balancer sends the unaltered request to the web server and the web server responds <em>directly to the client</em>.  Here's the fast food analogy again.  If you ask the person at the counter (the load balancer) for a hamburger, that person is going to take your order and give it to the kitchen staff (the web nodes) to work on it.  This time around, the person at the counter is going to advise the kitchen staff that the order needs to go directly to you once it's complete.  When your hamburger is ready, a member of the kitchen staff will walk to the counter and give it directly to you.</p>
<p>In the fast food analogy, what are the benefits?  As the number of orders and kitchen staff increases, the job of the person at the counter doesn't drastically increase in difficulty.  While that person will have to handle more orders and keep tabs on which of the kitchen staff is working on the least amount of orders, they don't have to worry about returning food to customers.  Also, the kitchen staff doesn't need to waste time handing orders to the person at the counter.  Instead, they can pass these orders directly to the customer that ordered them.</p>
<p>In the world of servers, this is a large benefit.  Since the web servers' responses no longer pass through the load balancer, they can spend more time on what they do best -- balancing traffic.  This allows for smaller, lower-powered load balancing servers from the beginning.  It also allows for increases in web nodes without big changes for the load balancers.</p>
<p>There are three main implementations of LVS to consider:</p>
<p><a href="http://rackerhacker.com/wp-content/uploads/2010/06/Lvslogo.png"><img src="http://rackerhacker.com/wp-content/uploads/2010/06/Lvslogo.png" alt="Linux Virtual Server Logo" title="Linux Virtual Server Logo" width="206" height="206" class="alignright size-full wp-image-1559" /></a><strong>LVS-DR: Direct Routing</strong><br />
The load balancer receives the request and sends the packet directly to a waiting real server to process.  LVS-DR has the best performance, but all of your servers must be on the same network subnet and they have to be able to share the same router (with no other routing devices in between them).</p>
<p><strong>LVS-TUN: Tunneling</strong><br />
This is very similar to the direct routing approach, but the packets are <a href="http://en.wikipedia.org/wiki/IP_tunnel">encapsulated</a> and sent directly to the real servers once the load balancer receives them.  This removes the restriction that all of the devices must be on the same network.  Thanks to encapsulation, you can use this method to load balance between multiple datacenters.</p>
<p><strong>LVS-NAT: Network Address Translation</strong><br />
Using NAT for LVS yields the least performance and scaling of all of the implementation options.  In this configuration, the incoming requests are rewritten so that they will be transported correctly in a NAT environment.  This puts a bigger burden on the load balancer as it must rewrite the requests quickly while still keeping up with how much work is being done by each web server.</p>
<hr />
<strong>Looking for a Linux Virtual Server HOWTO?</strong> Stay tuned.  I'm preparing one for my next post.</p>
<p><a href="http://rackerhacker.com/2010/06/27/modern-implementation-and-explanation-of-linux-virtual-server-lvs/">A modern implementation and explanation of Linux Virtual Server (LVS)</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2010/06/27/modern-implementation-and-explanation-of-linux-virtual-server-lvs/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>A New Year System Administrator Inspiration</title>
		<link>http://rackerhacker.com/2010/01/03/a-new-year-system-administrator-inspiration/</link>
		<comments>http://rackerhacker.com/2010/01/03/a-new-year-system-administrator-inspiration/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 02:53:53 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[general advice]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[networking]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=1104</guid>
		<description><![CDATA[Happy New Year! I certainly hope it's a great one for you, your family, and your business. As the new year begins, I figured it would be a good time to sit down and answer a question that I hear very often: How do I become a better systems administrator? The best way to become [...]<p><a href="http://rackerhacker.com/2010/01/03/a-new-year-system-administrator-inspiration/">A New Year System Administrator Inspiration</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Happy New Year!  I certainly hope it's a great one for you, your family, and your business.  As the new year begins, I figured it would be a good time to sit down and answer a question that I hear very often:</p>
<p><em>How do I become a better systems administrator?</em></p>
<p>The best way to become a better systems administrator is to <strong>fully understand the theory</strong> of what's happening in your server's environment.</p>
<p>What do I mean by that?  Learn why things aren't happening as you expected and think about all of the factors that could possibly be involved.  Instead of thinking purely about cause and effect, you'll find it much easier and rewarding to consider everything inside and outside your environment before you make any changes.</p>
<p>This still may be a little difficult to fully understand, so he's an example.  Let's say you're handling an issue where a customer can't reach a website hosted on their server.  When you ask them for more details, they might give you the dreaded reply: "It's not coming up."  Start by making a mental list of the problems that are easiest to check:</p>
<ul>
<li>Is the web server daemon running?</li>
<li>If a database server is being used, is it running and accessible?</li>
<li>Is there a software/hardware firewall blocking port 80?</li>
<li>Is a script stuck on the server tying up resources?</li>
<li>Could there be a DNS resolution problem?</li>
<li>Is the server up?</li>
<li>Did a switch fail?</li>
<li>Is the server's hard disk out of space?</li>
<li>Can the customer reach other websites like Google or Yahoo?</li>
<li>If SELinux is involved, have the appropriate contexts been set?</li>
<li>Could the site be a target of a denial of service attack?</li>
<li>Has the server reached its connection tracking limit?</li>
</ul>
<p>Of course, this is a relatively short list, but these are all easy to check.  If you're thinking about cause and effect, you might only consider the web server daemon and some basic network issues.  By considering all of the other factors that may be related, you've ensured that all of the basics are covered before you consider more complex problems.</p>
<p>Most systems administrators have taken an error message and tossed it in en masse into Google before.  Occasionally, no results will appear for the search.  If you find yourself in this situation, try to understand the individual parts of the error message.  Work outward from what you know already.  You should know which daemon said it, and you may have an idea of what the application was doing when the error occurred.  Take time to consider what the daemon is trying to tell you within the context of what it was doing at the time.</p>
<p>One of the easiest ways to force yourself to be immersed into this way of thinking is to host applications for non-technical people.  You'll find that many customers want things done differently, and they're all at different levels of technical aptitude.  Some may find it a frustrating experience at first, but you'll think yourself later.  It will force you to consider all aspects of how a server operates since you might not always know what's happening within a customer's application.</p>
<p>As always, if you find yourself stumbling, remember to ask your peers and colleagues.  Even if they haven't seen the particular issue, they will probably be able to guide you closer to the solution you seek.</p>
<p><a href="http://rackerhacker.com/2010/01/03/a-new-year-system-administrator-inspiration/">A New Year System Administrator Inspiration</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2010/01/03/a-new-year-system-administrator-inspiration/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Upgraded to WordPress 2.5.1</title>
		<link>http://rackerhacker.com/2008/04/28/upgraded-to-wordpress-251/</link>
		<comments>http://rackerhacker.com/2008/04/28/upgraded-to-wordpress-251/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 03:15:39 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[general advice]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=295</guid>
		<description><![CDATA[I've just upgraded RackerHacker to WordPress 2.5.1. If you haven't upgraded your own blog installation yet, I'd recommend doing so soon! Download It Upgrade It Upgraded to WordPress 2.5.1 is a post from: Major Hayden's Racker Hacker blog. Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions [...]<p><a href="http://rackerhacker.com/2008/04/28/upgraded-to-wordpress-251/">Upgraded to WordPress 2.5.1</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p>I've just upgraded RackerHacker to WordPress 2.5.1.  If you haven't upgraded your own blog installation yet, I'd recommend doing so soon!</p>
<p><a href="http://wordpress.org/download/">Download It</a><br />
<a href="http://codex.wordpress.org/Upgrading_WordPress">Upgrade It</a></p>
<p><a href="http://rackerhacker.com/2008/04/28/upgraded-to-wordpress-251/">Upgraded to WordPress 2.5.1</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2008/04/28/upgraded-to-wordpress-251/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Small Companies: How to hire and fire a technical person</title>
		<link>http://rackerhacker.com/2008/04/02/small-companies-how-to-hire-and-fire-a-technical-person/</link>
		<comments>http://rackerhacker.com/2008/04/02/small-companies-how-to-hire-and-fire-a-technical-person/#comments</comments>
		<pubDate>Wed, 02 Apr 2008 18:00:06 +0000</pubDate>
		<dc:creator>Major Hayden</dc:creator>
				<category><![CDATA[general advice]]></category>

		<guid isPermaLink="false">http://rackerhacker.com/?p=286</guid>
		<description><![CDATA[DISCLAIMER: Okay, technical folks - I'm doing this as a favor to the general community of people that aren't very technical, but they need to know some tips for ridding themselves of a technical person that is harming their business. If you look at it this way, there's a 50/50 chance that this article might [...]<p><a href="http://rackerhacker.com/2008/04/02/small-companies-how-to-hire-and-fire-a-technical-person/">Small Companies: How to hire and fire a technical person</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></description>
			<content:encoded><![CDATA[<p><strong>DISCLAIMER:</strong> Okay, technical folks - I'm doing this as a favor to the general community of people that aren't very technical, but they need to know some tips for ridding themselves of a technical person that is harming their business.  If you look at it this way, there's a 50/50 chance that this article might get you hired instead of fired.</p>
<p>No one has every really asked me "hey, if I want to fire my technical guy and get a new one, how do I do it?" So, how can I answer this question with any authority?  Simple.  I used to run my own company doing technical work for homes and businesses, I was hired and fired by people (much more hiring than firing), and I've learned a lot from being "the tech guy".  Also, from working at Rackspace, and a previous job, I've seen many situations in which a company lets their technical person go without any plan in place.  You never realize how valuable your IT staff are until they're not in the office, and your e-mail server falls apart.</p>
<p><strong>Firing your technician</strong></p>
<p>I'll start with how to fire your current technical person.  It should go without saying, but be sure that you're firing this person for a substantial and legal reason.  If you're firing this person for something trivial or petty, <strong>stop right here and re-evaluate</strong>.  But, if this is the kind of person that ignores your phone calls, takes down services to increase job security, or prints pornography on the office laserjet, then it's time for them to go.</p>
<p>First, create a plan.  How much does this technical person know about the company that could be detrimental if they were fired abruptly?  You'll need to consider things like their access to your buildings, computers, corporate credit cards, cars, and colocated/dedicated servers.  Take an inventory of the access that they have, and also how they access these items.  For example, if they have multiple user accounts on your computer network, then make sure that all of those accounts are accounted for.  If you have secret passwords with any of your service providers, be sure those are documented as well.</p>
<p>If you don't know some of these items, but your technical person does, you might want to get this information from them in a careful manner.  I'd recommend against going in and saying something like "we need to inventory all of our user accounts before you're canned".  You need to find a plausible excuse for you to have a list of this information, and it needs to be something that the technical person won't argue with.  Some good ones I've heard are PCI, SOX or SAS/70 compliance.  Let your employee know that compliance with these standards requires that you keep all of the access to all of these services in a safe place.</p>
<p>By the time you reach this stage, you really should have a new technician in mind.  Interview them after work, or at night time so that the current technical person doesn't become suspicious.  I'll talk more about how to find a new technical person a little later.</p>
<p>At this point, if you can trust your technical person, you should have a proper list of their entry points into your infrastructure.  It's more likely that you don't trust this person at this point since you're firing them after all.  Some might argue with me here, I'd recommend bringing in some other technical person that you undoubtedly trust.  The reason for this is that your technical person may have given you a partial list, or they may have left "backdoors" so that they can access your infrastructure after they leave.  A trusted tech can review your company for any possible issues and can give you a heads up if they find any red flags.  Of course, if your current technical person has set up traps to know when someone logs in, then you may have blown your cover entirely.  I would certainly hope that your situation wouldn't end this badly.</p>
<p>Now that you have a complete list of everything to which your former tech had access, you have an idea of what will be involved in changing everything over.  Most people like to fire employees on Fridays to reduce the chance of violence or uncomfortable moments, so here's my recommendation.  If anything financial needs to be taken care of, get it done late on Thursday or early on Friday.  Then, on Friday, set a time with your current technical person to have a short meeting.  Coordinate this time with your trusted technical person so they can begin changing passwords on accounts which the current tech has access to.  Change the most sensitive passwords first, like the passwords on database servers.  Also, change the root passwords as a high priority, but make sure you eventually change them all since you can be bitten by sudo or SSH keys.</p>
<p>When your current technical person exits the meeting, you're covered.  If the meeting goes well, and the current technical person is amicable, then you're going to be covered since their access is revoked.  If the meeting goes badly, your still covered in case they try to do something nasty.  Their access to your network and corporate infrastructure should be eliminated or minimized before they can do anything destructive.</p>
<p><strong>Hiring your technician</strong></p>
<p>Luckily, hiring a new technical person is a bit easier than firing one.  However, if you do a bad job on the hiring, you'll be referring to the beginning of this article fairly soon.</p>
<p>The best way to find a new technical person is via recommendations from another person.  They've probably had interactions with the tech, and they can give you an idea of their technical prowess and social skills (yes, these are important).  If you can't find any techs through recommendations, you can always check big job sites like Monster, LinkedIn, or Dice.  <strong>Whichever route you choose, be sure to meet the technician in person.</strong> Don't hire someone based on the initials after their name, their previous job experience, or how they sound over the phone.  Your technical person is like a central pillar in your organization, and this needs to be a responsible, sensible, and practical person.</p>
<p>Once you've found one or more technicians that you'd like to hire, you need to test them just a little.  I'd recommend contacting them late in the evening (8-10PM) or early/late on the weekend.  See how receptive and cordial they are at these times, because when something explodes later, you'll probably be calling them after business hours.  You don't want to pick up the phone at 4AM on Saturday when your Exchange server dies only to hear your tech tell you that he'll be in on Monday to fix it for you, and that it can wait until then.  When you talk to the technician on the phone, ask them to do something that forces them to go use the computer.  For example, send them an e-mail for something reasonable that they need to respond to.  Or, tell them that you discovered some neat product or service, and you want to know if they could start working at your company and maintain that product or service.  If they respond quickly and they don't give you the vibe that you've just inconvenienced them horribly, then that's a good sign that you've found a worthy technician.</p>
<p>It's up to you when you bring them on at your company.  Some people might want to hold off until the current technician is out of the way, but some might want to bring the technician in a little early to help with the cleanup of the last technician.  Either way is good in my opinion.  However, I would recommend against having both of them employed at your company simultaneously.  If your old technician is upset about something, that could rub off on the new guy, and you may be returning to the top part of this article sooner rather than later.</p>
<p>Also, don't expect the new technician to be knee-deep in your problems immediately.  They will need some time to figure out your network, review your vital services, and get an idea how everything works together.  If you have the giant list your previous tech made, be sure to furnish it to the new technician so they have an idea of where to go to fix a certain problem.</p>
<p>I certainly hope this article helps!  If you have any questions, drop me a comment and I'll be happy to give additional recommendations.</p>
<p><a href="http://rackerhacker.com/2008/04/02/small-companies-how-to-hire-and-fire-a-technical-person/">Small Companies: How to hire and fire a technical person</a> is a post from: Major Hayden's <a href="http://rackerhacker.com">Racker Hacker</a> blog. 
<p>Thanks for following the blog via the RSS feed. Please don't copy my posts or quote portions of them without attribution.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://rackerhacker.com/2008/04/02/small-companies-how-to-hire-and-fire-a-technical-person/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

