<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Devin on Earth</title>
	
	<link>http://www.thecabal.org</link>
	<description>I am not a creature of habit; I am a creature of patterns</description>
	<lastBuildDate>Thu, 15 Mar 2012 08:35:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/thecabal/doe" /><feedburner:info uri="thecabal/doe" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Autism Is Not The New Cool</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/9ynj1XA5dyo/</link>
		<comments>http://www.thecabal.org/2012/03/autism-is-not-the-new-cool/#comments</comments>
		<pubDate>Thu, 15 Mar 2012 08:35:48 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Autism Spectrum]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/?p=1148</guid>
		<description><![CDATA[Pardon, y&#8217;all. It&#8217;s been a while since I&#8217;ve been here &#60;peers at the dust&#62;. I&#8217;ve had the best of intentions, but sadly, my bogging client of choice (Windows Live Writer) doesn&#8217;t auto-translate those into actual written blog posts yet. Maybe &#8230; <a href="http://www.thecabal.org/2012/03/autism-is-not-the-new-cool/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Pardon, y&#8217;all. It&#8217;s been a while since I&#8217;ve been here &lt;peers at the dust&gt;. I&#8217;ve had the best of intentions, but sadly, my bogging client of choice (Windows Live Writer) doesn&#8217;t auto-translate those into actual written blog posts yet. Maybe in the next version. &lt;sigh&gt;</p>
<p>I can hear some of you (both of you still reading, thank you loyal fans) asking what finally brought me back, and I have to say it&#8217;s a rant. A rant about autism (and Asperger&#8217;s, and the rest of the spectrum), how it is perceived, and how trendy equals insensitive. You have been warned.</p>
<h3>Hip To Be Square</h3>
<p>After karate class tonight on the drive home, Steph was reading through Facebook (something I do but occasionally these days, having overdosed myself on social media some time ago) and came across the following comment on a mutual friend&#8217;s post:</p>
<p align="center"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.thecabal.org/wp-content/uploads/2012/03/image.png" width="314" height="38" /></p>
<p align="center"><strong>Yes, that really does say that stupid thing</strong></p>
<p>For some reason, this really punched my buttons. I don&#8217;t know much about the person who posted it. I don&#8217;t know if they&#8217;re a fellow spectrum traveller or not. I don&#8217;t know how many close friends or family members they have who have autism. To a certain extent, it really doesn&#8217;t matter, because this comment is a textbook illustration of a fallacy that I&#8217;m seeing more and more:</p>
<p><em>If geeks are cool, and a lot of geeks are autistic, they must be cool because they are autistic.</em></p>
<p>This is a fallacy because it is the living embodiment of failure to grasp proper logic and set theory. This growing &quot;Autism Is The New Cool&quot; meme (AITNC for those of us who adore our acronyms), for lack of a better word, is reaching stupid proportions.</p>
<h3>Venn We Dance</h3>
<p>Now listen up, because if you&#8217;d paid attention in Algebra the first time, I wouldn&#8217;t have to be telling you this shit now.</p>
<p>What we are talking about here are properties that people have: the property of being cool, the property of being a geek, and the property of being on the autism spectrum. These are not variables that we can just slam together in a transitive<em>[1]</em> orgy of equation signs, as much as someone might like to be able to write on a whiteboard that A=B=C. </p>
<p align="center"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.thecabal.org/wp-content/uploads/2012/03/image1.png" width="504" height="109" /></p>
<p align="center"><strong>You get to stay after class and wipe down the whiteboard</strong></p>
<p>Instead, we need to head over to set theory, which is where we look at groupings (or &quot;sets&quot;) of objects, where said sets are organized by a shared trait. Such as being a geek, or being cool, or being on the autism spectrum. We represent these sets by drawing circles. Then we can make useful and interesting (and sometimes even more occasionally related to real life) observations by seeing where these sets overlap and what that tells us. This is a Venn diagram, and it helps us immediately destroy AITNC, because it reminds us that people (the members of the sets) are not single-value variables like A and B and C and the rest of their letter trash, but complex people who are not in any way entirely equal. This is my AITNC mega-buster Venn diagram, whipped up on this evening when I had lots of better stuff to do, just for your edification:</p>
<p align="center"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.thecabal.org/wp-content/uploads/2012/03/image2.png" width="463" height="487" /></p>
<p align="center"><strong>Filling in the missing names is left as an exercise for the reader<em>[2]</em></strong></p>
<p>Note that there are plenty of places where there is no overlap. Note that there are four separate regions where there are overlap. I can think of people who are examples of each of those areas, but I&#8217;m not enough of a dick to tell you who they are.</p>
<h3>The Big Boy/Girl Panties Are Right Over There</h3>
<p>I have, I shit you not, had parents ask me how to get their kid diagnosed with Asperger&#8217;s so they can &quot;give him an extra educational advantage&quot; (or some such nonsense). Yeah, I know. Fucked up, right?</p>
<p>I&#8217;m no child psychology professional, but I know spoiled, overly sugared kids when I see them. You want your kid to get an extra educational advantage? Don&#8217;t let the little bastards play video games and watch TV when they get home from school. Make them do homework and chores. Stop buying them everything they want and make them earn a meager amount of money and prioritize they things they really want from passing whims. Spend time with them and find out what they&#8217;re learning. Teach them about things you&#8217;re doing, which means you might want to put down the remote and pick up some more books or spend time outdoors or in your shop. Take the time to buy and prepare healthy food instead of boxed-up pre-digested pap. Teach them how to cook and clean, while you&#8217;re at it. Get involved with what they&#8217;re doing at school and be ruthlessly nosy about their grades and progress. Limit their after-school activities so they have time to study. Make and enforce a reasonable bedtime. In short, be a fucking parent. Stick with that for a year, and I guarantee your kids will have an educational advantage that you can&#8217;t believe.</p>
<p align="center"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="NoYouCannotHaveAPony" border="0" alt="NoYouCannotHaveAPony" src="http://www.thecabal.org/wp-content/uploads/2012/03/NoYouCannotHaveAPony.jpg" width="517" height="344" /></p>
<p align="center"><strong>Unless you want it in kebabs for dinner</strong></p>
<p>Once you&#8217;ve done that for a few years and your kids have adjusted to having the meanest parents on the block like mine have, <em>then</em> you can worry about whether your precious little shit belongs on the autism spectrum, or has ADHD, or whatever other crutch diagnosis you think you need to compensate for being a mere gamete donor instead of a real parent.</p>
<h3>People Are Strange (When You&#8217;re A Stranger)</h3>
<p>I&#8217;m not going to sing a litany of woes about how tough it is being Asperger&#8217;s. I have fought most of my adult life to keep this thing from defining who I am. <strong>Devin != autism</strong>, not by a long shot. It&#8217;s one of a large number of properties about me, and it&#8217;s a mere footnote at that. I refuse to self-identify as an &quot;Aspie&quot; because I see that many of them (not all, but a significant fraction of them) use it as a <em><strong>Get Out Of Life Free</strong></em> card. &quot;Oh, boohoo, I can&#8217;t make friends. Boohoo, I can&#8217;t have a relationship. Boohoo, my boss doesn&#8217;t understand me.&quot; I&#8217;ll grant it makes things difficult at times, but you know what? I look at so-called &quot;neurotypical&quot; people and they seem to have rough patches too. Life isn&#8217;t perfect for anyone. I don&#8217;t know how much harder my life is because of Asperger&#8217;s, and you don&#8217;t either. Anyone who claims to know is full of shit. At best, they&#8217;re making wild-ass guesses.</p>
<p>I choose not to play &quot;what-if&quot; games, because there is <em>always</em> something you think of after the fact. This wiring malfunction in my brain does not define or control me unless I choose to let it. The only reason its effects dominated my life through my early adulthood is that I didn&#8217;t know. Once I knew…well, I went all G. I. Joe<em>[3]</em> on its ass.</p>
<p>You know what really sucks? That my wife and kids have to be hyper-vigilant about what food they eat because their bodies are attacking their own auto-immune systems. I can tell you exactly how much of a crimp that&#8217;s put into their enjoyment of life. One thoughtless dweeb in a restaurant kitchen who doesn&#8217;t properly wash bread crumbs off a counter, or clean off that dollop of butter on the knife, can make them miserable for a week. <em>That&#8217;s</em> a pretty raw deal, friends. Asperger&#8217;s has nothing on that. Try traveling or going out to a restaurant with friends. The number of things you can eat with one of the <a href="http://www.mayoclinic.com/health/food-allergies/AA00057" target="_blank">8 major food allergies</a> quickly limits your options. Enjoy two of them (like my family) and you can start counting your dining options on one hand.</p>
<p>So if you&#8217;re one of those assholes who thinks autism is cool or glamorous, get a life. Seriously. Be thankful for what you have. And recognize that people are cool not because of their afflictions but because they are cool people.</p>
<p>&#160;</p>
<p><em><strong>[1]</strong> You&#8217;ll probably have forgotten in five minutes, but transitive means if one thing is equal to a second thing, and a third thing is also equal to the second thing, then the first and third things are equal too. This only usually works in math and quantum mechanics, because how often are two things actually equal in the real world?</em></p>
<p><em><strong>[2]</strong> Extra credit if you noticed that I really did match the color coding between the two diagrams.Without thinking.</em></p>
<p><em><strong>[3]</strong> &quot;Knowing is half the battle.&quot;</em></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/9ynj1XA5dyo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2012/03/autism-is-not-the-new-cool/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2012/03/autism-is-not-the-new-cool/</feedburner:origLink></item>
		<item>
		<title>Stop SOPA/PIPA now</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/CK2u7TVNVqk/</link>
		<comments>http://www.thecabal.org/2012/01/stop-sopapipa-now/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 00:35:04 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Politics]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/?p=1141</guid>
		<description><![CDATA[If you don&#8217;t know what SOPA and PIPA are by now&#8230;where have you been? Here&#8230;watch this: Now, go do something about it.]]></description>
			<content:encoded><![CDATA[<p>If you don&#8217;t know what SOPA and PIPA are by now&#8230;where have you been?</p>
<p>Here&#8230;watch this:</p>
<p><iframe src="http://player.vimeo.com/video/31100268?title=0&amp;byline=0&amp;portrait=0" frameborder="0" width="640" height="360"></iframe></p>
<p>Now, <a title="Stop American censorship of the Internet" href="http://americancensorship.org/" target="_blank">go do something about it</a>.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/CK2u7TVNVqk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2012/01/stop-sopapipa-now/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2012/01/stop-sopapipa-now/</feedburner:origLink></item>
		<item>
		<title>Exchange 2010 virtualization storage gotchas</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/wK0HOsaWsto/</link>
		<comments>http://www.thecabal.org/2011/10/exchange-2010-virtualization-storage-gotchas/#comments</comments>
		<pubDate>Wed, 12 Oct 2011 04:18:24 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2011/10/exchange-2010-virtualization-storage-gotchas/</guid>
		<description><![CDATA[There’s a lot of momentum for Exchange virtualization. At Trace3, we do a lot of work with VMware, so the majority of the customers I work with already have VMware deployed strategically into their production operation model. As a result, &#8230; <a href="http://www.thecabal.org/2011/10/exchange-2010-virtualization-storage-gotchas/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There’s a lot of momentum for Exchange virtualization. At Trace3, we do a lot of work with VMware, so the majority of the customers I work with already have VMware deployed strategically into their production operation model. As a result, we see a lot of Exchange 2010 under VMware. With Exchange 2010 SP1 and lots of customer feedback, the Exchange product team has really stepped up to provide better support for virtual environments as well as <a href="http://blogs.technet.com/b/exchange/archive/2011/10/11/demystifying-exchange-2010-sp1-virtualization.aspx" target="_blank">more detailed guidance</a> on planning for and deploying Exchange 2007 and 2010 in virtualization.</p>
<p>Last week, I was talking with a co-worker about Exchange’s design requirements in a virtual environment. I casually mentioned the “no file-level storage protocols” restriction for the underlying storage and suddenly, the conversation turned a bit more serious. Many people who deploy VMware create large data stores on their SAN and share them to the ESX cluster via the NFS protocol. There are a lot of advantages to doing it this way, and it’s a very flexible and relatively easy way to deploy VMs. However, it’s not supported for Exchange VMs.</p>
<h2>The Heck You Say?</h2>
<p>“But Devin,” I can hear some of you say, &#8220;what do you mean it’s not supported to run Exchange VMs on NFS-mounted data stores? I deploy all of my virtual machines using VMDKs on NFS-mounted data stores. I have my Exchange servers there. It all works.&#8221;</p>
<p>It probably <em>does</em> work. Whether or not it works, though, it&#8217;s not a supported configuration, and one thing Masters are trained to hate with a passion is letting people deploy Exchange in a way that gives them no safety net. It is an essential tool in your toolkit to have the benefit of Microsoft product support to walk you through the times when you get into a strange or deep problem.
<p>Let&#8217;s take a look at Microsoft&#8217;s actual support statements. For Exchange 2010, Microsoft has the following to say in <a href="http://technet.microsoft.com/en-us/library/aa996719.aspx">http://technet.microsoft.com/en-us/library/aa996719.aspx</a> under virtualization (emphasis added):<br />
<blockquote>
<p>The storage used by the Exchange guest machine for storage of Exchange data (for example, mailbox databases or Hub transport queues) can be virtual storage of a fixed size (for example, fixed virtual hard disks (VHDs) in a Hyper-V environment), SCSI pass-through storage, or Internet SCSI (iSCSI) storage. Pass-through storage is storage that&#8217;s configured at the host level and dedicated to one guest machine. <strong>All storage used by an Exchange guest machine for storage of Exchange data must be block-level storage because Exchange 2010 doesn&#8217;t support the use of network attached storage (NAS) volumes. Also, NAS storage that&#8217;s presented to the guest as block-level storage via the hypervisor isn&#8217;t supported.</strong></p>
</blockquote>
<p>Exchange 2007 has pretty much the same restrictions as shown in the <a href="http://technet.microsoft.com/en-us/library/bb738146(EXCHG.80).aspx">http://technet.microsoft.com/en-us/library/bb738146(EXCHG.80).aspx</a> TechNet topic. What about Exchange 2003? Well, that&#8217;s trickier; Exchange 2003 was never officially supported under any virtualization environment other than Microsoft Virtual Server 2005 R2.
<p>The gist of the message is this: <b><i>it is not supported by Microsoft for Exchange virtual machines to use disk volumes that are on file-level storage such as NFS or CIFS/SMB, if those disk volumes hold Exchange data.</i> </b>I realize this is a huge statement, so let me unpack this a bit. I&#8217;m going to assume a VMware environment here, but these statements are equally true for Hyper-V or any other hypervisor supported under the <a href="http://www.windowsservercatalog.com/svvp.aspx">Microsoft SVVP</a>.
<p><em>While the rest of the discussion will focus on VMware and NFS, all of the points made are equally valid for SMB/CIFS and other virtualization system. (From a performance standpoint, I would not personally want to use SMB for backing virtual data stores; NFS, in my experience, is much better optimized for the kind of large-scale operations that virtualization clusters require. I know Microsoft is making great strides in improving the performance of SMB, but I don’t know if it’s there yet.</em><br />
<h2>It&#8217;s Just Microsoft, Right?</h2>
<p>So is there any way to design around this? Could I, in theory, deploy Exchange this way and still get support from my virtualization vendor? A lot of people I talk to point to a whitepaper that VMware published in 2009 that showed the relative performance of Exchange 2007 over iSCSI, FC, and NFS. They use this paper as “proof” that Exchange over NFS is supported.
<p>Not so much, at least not with VMware. The original restriction may come from the Exchange product group (other Microsoft workloads are supported in this configuration), but the other vendors certainly know the limitation and honor it in their guidance. Look at VMware&#8217;s Exchange 2010 best practices at <a href="http://www.vmware.com/files/pdf/Exchange_2010_on_VMware_-_Best_Practices_Guide.pdf">http://www.vmware.com/files/pdf/Exchange_2010_on_VMware_-_Best_Practices_Guide.pdf</a> on page 13:<br />
<blockquote>
<p>It is important to note that there are several different shared-storage options available to ESX (iSCSI, Fibre Channel, NAS, etc.); however, Microsoft does not currently support NFS for the Mailbox Server role (clustered or standalone). For Mailbox servers that belong to a Database Availability Group, only Fibre Channel is currently supported; iSCSI can be used for standalone mailbox servers. To see the most recent list of compatibilities please consult the latest <i><u>VMware Compatibility Guides</u></i>.</p>
</blockquote>
<p>According to this document, VMware is even slightly more restrictive! If you&#8217;re going to use RDMs (this section is talking about RDMs, so don&#8217;t take the iSCSI/FC statement as a limit on guest-level volume mounts), VMware is saying that you can&#8217;t use iSCSI RDMs, only FC RDMs.
<p>Now, I believe – and there is good evidence to support me – that this guidance as written is actually slightly wrong:
<ul>
<li>The HT queue database is also an ESE database and is subject to the same limitations; this is pretty clear on a thorough read-through of the Exchange 2010 requirements in TechNet. Many people leave the HT queue database on the same volume they install Exchange to, which means that volume also cannot be presented via NFS. If you follow best practices, you move this queue database to a separate volume (which should be an RDM or guest-mounted iSCSI/FC LUN).</li>
<li>NetApp, one of the big storage vendors that supports the NFS-mounted VMware data store configuration, only supports Exchange databases mounted via FC/iSCSI LUNs using SnapManager for Exchange (SME) as shown in NetApp <a href="http://media.netapp.com/documents/tr-3845.pdf" target="_blank">TR-3845</a>. Additionally, in the join NetApp-VMware-Cisco performance whitepaper on virtualizing Microsoft workloads, the only configuration tested for Exchange 2010 is FC LUNs (<a href="http://media.netapp.com/documents/tr-3785.pdf" target="_blank">TR-3785</a>).</li>
<li>It is my understanding that the product group’s definition of Exchange files doesn’t just extend to ESE files and transaction logs, but to all of the Exchange binaries and associated files. I have not yet been able to find a published source to document this interpretation, but I am working on it.</li>
<li>I am not aware of any Microsoft-related restriction about iSCSI + DAG. This VMware Exchange 2010 best practices document (published in 2010) is the only source I&#8217;ve seen mention this restriction, and in fact, the latest <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1037959" target="_blank">VMware Microsoft clustering support matrix</a> (published in June 2011) lists no such restriction. Microsoft&#8217;s guidelines seem to imply that block storage is block storage is block storage when it comes to &#8220;SCSI pass-through storage&#8221;). I have queries in to nail this one down because I’ve been asking in various communities for well over a year with no clear resolution other than, &#8220;That&#8217;s the way VMware is doing it.&#8221;</li>
</ul>
<h2>Okay, So Now What?</h2>
<p>When I’m designing layouts for customers who are used to deploying Windows VMs via NFS-mounted VMDKs, I have a couple of options. My preferred option, if they’re also using RDMs, is to just have them provision one more RDM for the system drive and avoid NFS entirely for Exchange servers. That way, if my customer does have to call Microsoft support, we don’t have to worry about the issue at all.</p>
<p>However, that’s not always possible. My customer may have strict VM provisioning processes in place, have limited non-NFS storage to provision, or have some other reason why they need to use NFS-based VMDKs. In this case, I have found the following base layout to work well:</p>
<p>
<table border="1" cellspacing="0" cellpadding="2" width="640">
<tbody>
<tr>
<td valign="top" width="22"><strong>Volume</strong></td>
<td valign="top" width="88"><strong>Type</strong></td>
<td valign="top" width="529"><strong>Notes</strong></td>
</tr>
<tr>
<td valign="top" width="22">C:</td>
<td valign="top" width="88">VMDK or RDM</td>
<td valign="top" width="529">Can be on any type of supported data store. Should be sized to include static page file of size PhysicalRAM + 10 MB.</td>
</tr>
<tr>
<td valign="top" width="22">E:</td>
<td valign="top" width="88">RDM or guest iSCSI/FC</td>
<td valign="top" width="529">iSCSI/FC&nbsp;&nbsp;&nbsp; All Exchange binaries installed here. Move IIS files here (scripts out on Internet to do this for you). Create an E:\Exchdata directory and use NTFS mount points to mount each of the data volumes the guest will mount.</td>
</tr>
<tr>
<td valign="top" width="22">Data volumes</td>
<td valign="top" width="88">RDM or guest iSCSI/FC</td>
<td valign="top" width="529">Any volume holding mailbox/PF database EDB or logs, or HT queue EDB or logs. Should mount these separately, NTFS mount points recommended. Format these NTFS volumes with 64K block size, not default.</td>
</tr>
</tbody>
</table>
<p>Note that we have several implicit best practices in use here:
<ul>
<li>Static page file, properly sized for a 64-bit operating system with a large amount of physical RAM. Doing this ensures that you have enough virtual memory for the Exchange memory profile AND that you can write a kernel memory crash dump to disk in the event of a blue screen. (If the page file is not sized properly, or is not on C:, the full dump cannot be written to disk.)</li>
<li>Exchange binaries not installed on the system drive. This makes restores much easier. Since Exchange uses IIS heavily, I recommend moving the IIS data files (the <em>inetpub</em> and children folders) off of the system drive and onto the Exchange volume. This helps reduce the rate of change on the system drive and offers other benefits such as making it easier to properly configure anti-virus exclusions.</li>
<li>The use of NTFS mount points (which mount the volume to a directory) instead of separate drive letters. For large DAGs, you can easily have a large number of volumes per MB role, making the use of drive letters a limitation on scalability. NTFS mount points work just like Unix mount points and work terribly well – they&#8217;ve been supported since Exchange 2003 and recommended since the late Exchange 2003 era for larger clusters. In Exchange 2007 and 2010 continuous replication environments (CCR, SCR, DAG), all copies must have the same pathnames.</li>
<li>Using NTFS 64K block allocations for any volumes that hold ESE databases. While not technically necessary for log partitions, doing so does not hurt performance.</li>
</ul>
<h2>So Why Is This Even A Problem?</h2>
<p>This is the money question, isn&#8217;t it? Windows itself is supported under this configuration. Even SQL Server is. Why not Exchange?
<p>At heart, it comes down to this: the Exchange ESE database engine is a very finely-tuned piece of software, honed for over 15 years. During that time, with only one exception (the Windows Storage Server 2003 Feature Pack 1, which allowed storage solutions running WSS 2003 + FP1 to host Exchange database files over NAS protocols), Exchange has never supported putting Exchange database files over file-level storage. I&#8217;m not enough of an expert on ESE to whip up a true detailed answer, but here is what I understand about it.
<p>Unlike SQL Server, ESE is not a general purpose database engine. SQL is optimized to run relational databases of all types. The Exchange flavor of ESE is optimized for just one type of data: Exchange. As a result, ESE has far more intimate knowledge about the data than any SQL Server instance can. ESE provides a lot of performance boosts for I/O hungry Exchange databases and it can do so precisely because it can make certain assumptions. One of those assumptions is that it&#8217;s talking to block-level storage.
<p>When a host process commits writes to storage, there&#8217;s a very real difference in the semantics of the write operation between block-level protocols and file-level protocols. Exchange, in particular, depends dramatically on precise control over block-level writes – which file protocols like NFS and SMB can mask. The cases under which this can cause data corruption for Exchange are admittedly corner cases, but they do exist and they can cause impressive damage.<br />
<h2>Cleaning Up</h2>
<p>What should we do about it if we have an Exchange deployment that is in violation of these support guidelines?
<p>Ideally, we fix it. Microsoft&#8217;s support stance is very clear on this point, and in the unlikely event that data loss occurs in this configuration, Microsoft support is going to point at the virtualization/storage vendors and say, &#8220;Get them to fix it.&#8221; I am not personally aware of any cases of a configuration like this causing data loss or corruption, but I am not the Exchange Product Group – they get access to an amazing amount of data.
<p>At the very least, you need to understand and document that you are in an unsupported configuration so that you can make appropriate plans to get into support as you roll out new servers or upgrade to future versions of Exchange. This is where getting a good Exchange consultant to do an Exchange health check can help you get what you need and provide the support you need with your management – we will document this in black and white and help provide the outside validation you might need to get things put right.</p>
<p><strong><em>One request for the commenters: if all you’re going to do is say, “Well we run this way and have no problems,” don’t bother. I know and stipulate that there are many environments out there running in violating of this support boundary that have not (yet) run into issues. I’ve never said it won’t work. There are a lot of things we can do, but that doesn’t mean we should do them. At the same time, at the end of the day – if you know the issues and potential risks, you have to make the design decision that’s right for your organization. Just make sure it’s an informed (and documented, and signed-off!) decision.</em></strong></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/wK0HOsaWsto" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2011/10/exchange-2010-virtualization-storage-gotchas/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2011/10/exchange-2010-virtualization-storage-gotchas/</feedburner:origLink></item>
		<item>
		<title>Getaway</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/nDKiK5oZc8E/</link>
		<comments>http://www.thecabal.org/2011/01/getaway/#comments</comments>
		<pubDate>Sun, 09 Jan 2011 22:19:10 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[People]]></category>
		<category><![CDATA[Recreation]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2011/01/getaway/</guid>
		<description><![CDATA[We&#8217;ve lived in Monroe for over 13 years. In that time, we&#8217;ve not taken advantage of many of the opportunities available in this area to get out and see the amazing beauty of the Puget Sound region. Late last summer, &#8230; <a href="http://www.thecabal.org/2011/01/getaway/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve lived in Monroe for over 13 years. In that time, we&#8217;ve not taken advantage of many of the opportunities available in this area to get out and see the amazing beauty of the Puget Sound region. Late last summer, we finally started correcting that with hikes and drives to various attractions. Stephanie and I are also closing in on our 15th anniversary, and it&#8217;s been a while since we&#8217;ve had a getaway for just the two of us that didn&#8217;t also serve some other purpose (such as her heading to Las Vegas with me for Exchange Connections); it was time to correct this. This weekend, I combined those two imperatives and planned a Friday night overnight to Whidbey Island, as a slightly-belated celebration of Steph&#8217;s birthday.</p>
<h2>Whidbey Island</h2>
<p>The first thing I did was do a little research to locate a candidate list of reasonable bed and breakfasts for us to stay at. Steph had never before been to one and, frankly, hotels are boring. Ideally, I wanted one that was based out of a Victorian house, since Steph loves them. Potential bed &amp; breakfasts of course would have to be able to handle the no-dairy/no-gluten restrictions. I really wanted to find one on <a href="http://www.whidbeycamanoislands.com/" target="_blank">Whidbey Island</a>, which is close off-shore in the Sound, separated from <a href="http://www.anacortes.org/history.cfm" target="_blank">Fidalgo Island</a> by Deception Pass.</p>
<p>Why did I want to go to Whidbey Island for our overnight?</p>
<ul>
<li>Islands are picturesque as hell. On the right island, you&#8217;re always close to the water, which I love.</li>
<li>We&#8217;d only been there once previously, during a quick drive-around last September when we got our new car.</li>
<li>Whidbey is one of the bigger islands in the Sound. It hosts several towns and has a high enough population to still offer some great experiences even during the depths of the off-season.</li>
<li>You can drive to it (by the bridge to Fidalgo Island, then by the bridge over Deception Pass to the north end of the island) or take the Mukilteo-Clinton ferry at the south end of the island. Transportation flexibility in winter months is a good thing.</li>
<li>Our most direct route to Whidbey Island is the ferry route, which runs every half-hour and is a short 20 minute ride. This helps achieve Steph&#8217;s goal of riding every ferry route in the Sound at least once. It also indulges my love of being out on the water.</li>
</ul>
<p>Once I had a couple of candidates and knew what their check-in times were, I could work backwards for travel times and ferry crossings and determine the window of time in which we&#8217;d need to leave. This gave me the all-important time: my cut-off for the work day. Armed with this time, I set up an out-of-office calendar appointment and clearly communicated with my co-workers and clients that I had a hard stop at 3pm. As I set up each part of the weekend reservations, I sent Steph appropriate meeting requests in our shared Outlook/Exchange calendar. This let her know what my plans were and gave her the links and information she&#8217;d need to poke around and do her own reading. It seemed to work, because I quickly got acceptance notices and by Wednesday, Steph was practically bouncing off the walls in anticipation!</p>
<p style="text-align: center;"><a href="http://www.thecabal.org/wp-content/uploads/2011/01/Whidbey-Island-Map.gif"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Whidbey-Island-Map" src="http://www.thecabal.org/wp-content/uploads/2011/01/Whidbey-Island-Map_thumb.gif" border="0" alt="Whidbey-Island-Map" width="408" height="480" /></a></p>
<p style="text-align: center;"><strong>Whidbey Island (from the </strong><a href="http://www.visitwhidbey.com/information/how-to-find.html" target="_blank"><strong>Whidbey Island Visitors Guide</strong></a><strong> website)</strong></p>
<p>Once Friday came, Steph was obviously eager to be off on our adventure. I think she was packed to go by 10am. At any rate, I was promptly done with work by 3pm, took a few minutes to pack, and we were out the door by 3:45pm as I&#8217;d planned. We took a quick detour to run a necessary errand, then headed for the Mukilteo ferry terminal. We arrived in time to queue up and watch (but not participate in) the loading of the 5pm ferry crossing as the sun set; it would be our turn in 30 minutes. The ride across the Sound was quick and cold in the gloaming, and we made our way north up the island until arriving at Coupeville.</p>
<h2>The Blue Goose Inn</h2>
<p>After doing some homework and reading reviews, it became clear that my #1 choice was going to be <a href="http://bluegooseinn.com/" target="_blank">The Blue Goose Inn</a> in Coupeville, overlooking Penn Cove in central Whidbey Island. Proprietors Sue and Marty McDaniel offer a fantastic getaway experience out of two lovely restored Victorian historical homes, and during a good portion of the year also operate a pub on-premises (sadly, it was closed during our visit). When I called to inquire, Sue assured me that the dietary restrictions would be no problem. A few minutes later, I had chosen the Captain&#8217;s Suite because of the king-size bed, the soaking tub, and the view of Penn Cove; we had our reservation!</p>
<p style="text-align: center;"><a href="http://www.thecabal.org/wp-content/uploads/2011/01/steph_and_the_blue_goose.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="steph_and_the_blue_goose" src="http://www.thecabal.org/wp-content/uploads/2011/01/steph_and_the_blue_goose_thumb.jpg" border="0" alt="steph_and_the_blue_goose" width="644" height="484" /></a></p>
<p style="text-align: center;"><strong>Stephanie in front of The Blue Goose Inn in Coupeville, WA</strong></p>
<p>Even though we arrived after sunset, Stephanie could see enough details that she was delighted by the choice. As we walked in the front door and were greeted by Sue and Marty, we immediately felt welcome. As I&#8217;d taken care of payment over the phone when I made the reservations, there was no paperwork to take care of; we chatted for a few minutes, they approved of my choice of venue for dinner, gave us our room key to the Captain&#8217;s Suite in the Coupe House, explained the accommodations that were available besides our room, and sent us on our way. We were not disappointed; the room was lovely and tastefully appointed with beautiful and functional furniture. In many older homes, drafts can be a problem, especially on a cold, windy night; this was not a problem here! The room was comfortable without being stuffy or unpleasant. We quickly unpacked, rested for a bit, and prepared for dinner.</p>
<p>Once we&#8217;d returned from a fabulous dinner, we again relaxed and settled in for the evening. Other than our Windows phones, we didn&#8217;t crack open any computers, so I don&#8217;t know how the complimentary Wi-Fi access was. We can both report, however, that the soaking tub was every bit as luxurious as it was claimed. The king bed (which towered off the ground) was one of the most comfortable beds I&#8217;ve ever slept in away from home.</p>
<p style="text-align: center;"><a href="http://www.thecabal.org/wp-content/uploads/2011/01/Viva-Whidbey-Island.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Viva Whidbey Island" src="http://www.thecabal.org/wp-content/uploads/2011/01/Viva-Whidbey-Island_thumb.jpg" border="0" alt="Viva Whidbey Island" width="644" height="484" /></a></p>
<p style="text-align: center;"><strong>Looking NNW over Penn Cove from the Captain&#8217;s Suite</strong></p>
<p>In the morning, we woke up, brewed tea (for her) and coffee (for me, which is not my normal morning habit), got ready, and packed. As promised, the view of Penn Cove was beautiful and not marred at all by the brief but vigorous attack of hail and rain we enjoyed. Just before 9am, we placed our bags in our car and headed back into the main house for breakfast, where Marty greeted us by name and showed us to our place in the dining room with the rest of the guests. What a treat!</p>
<ul>
<li>Tea and coffee were on offer and Marty was quick to refill any cups that looked like they were thinking about becoming empty.</li>
<li>The first course was a <a href="http://wbbg.com/listings/bluegooseinn/recipes/53" target="_blank">green mango fool</a>. Now, I&#8217;m not a mango person…or at least, I didn&#8217;t think I was. I had a tiny bite of this and it was quite simply divine. I would have promptly devoured my whole serving, but I wasn&#8217;t quite awake yet and the morning&#8217;s cup of coffee kept me from being hungry yet. Stephanie also got to enjoy this, minus the cream.</li>
<li>Our next course was buttermilk scones with currants. Again, these were very tasty, and again, my stomach wasn&#8217;t quite open for business yet. Sue made sure that Steph was supplied with gluten/dairy-free banana muffins, which Steph devoured.</li>
<li>The final course was a three-cheese omelet and a serving of oven-roasted seasoned Yukon Gold potatoes; Steph got scrambled eggs. Now, Steph&#8217;s not a scrambled egg person, but you&#8217;d never have known that &#8212; just as you&#8217;d never have known that I never eat breakfast potatoes unless they&#8217;re hash browns. The eggs came in separate porcelain oval bowls that kept them hot and tasty.</li>
</ul>
<p>We lingered over our breakfast until the other guests left. At that point, we chatted a few minutes more with Marty (and said goodbye to Sue when she stuck her head out of the kitchen). After purchasing a Blue Goose Inn mug for me, we promised we&#8217;d be back during pub season, then hit the road back to the ferry terminal and points east. We had to head home, unpack, relax, and get the family ready for the afternoon&#8217;s plans: a visit to the Seattle Art Museum.</p>
<h2>Christopher&#8217;s at Whidbey</h2>
<p>Since Friday evening dinner wasn&#8217;t provided by The Blue Goose, this was the other major logistical challenge I faced in my planning. Dining is now much more exciting than it was back when I was the pickiest eater in the family, and it can be a significant source of stress for Steph. This was supposed to be a relaxing night away and I didn&#8217;t want her to have to worry about anything. Was I up to the task? As I said before, one of the reasons I chose Whidbey Island is that there are several towns on the island. Even if I couldn&#8217;t find anything near our lodgings, I was confident I&#8217;d be able to find a nice place for an intimate evening meal that could offer Steph not just one dinner option, but a choice of meals. They would also need to have food I&#8217;d eat &#8212; I still don&#8217;t like too much food with my food, if you know what I mean.</p>
<p>Coupeville turned out to be perfect because it&#8217;s also home to <a href="http://www.christophersonwhidbey.com/" target="_blank">Christopher&#8217;s on Whidbey</a>, a small and unassuming restaurant that boasts exquisite food and wine at amazingly affordable prices. During my planning, I&#8217;d called them up, explained our requirements, and in a few moments had an 8pm dinner reservation set up. They assured me that not only would Stephanie&#8217;s needs be taken care of, but that she would have a number of items to choose from. They asked me all the right questions to give me confidence that they actually did understand how to properly cook her meals without overlooking anything or putting her in danger of cross-contamination.</p>
<p>It was just a short drive from the Blue Goose to Christopher&#8217;s; if the weather had been better and we had still had light, we&#8217;d have walked the few blocks. When we arrived, the interior of the restaurant was well-lit, warm, and comfortably elegant without being pretentious or snobby. They greeted us by name, reassured me that they had Steph&#8217;s dietary restrictions on file, and showed us to a quiet table in the corner.</p>
<p style="text-align: center;"><a href="http://www.thecabal.org/wp-content/uploads/2011/01/Pinot-Blanc.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Pinot Blanc" src="http://www.thecabal.org/wp-content/uploads/2011/01/Pinot-Blanc_thumb.jpg" border="0" alt="Pinot Blanc" width="184" height="244" /></a></p>
<p style="text-align: center;"><strong>Albrecht 2008 Pinot Blanc from Alsace, France</strong></p>
<p>They had an interesting and eclectic wine selection, with offerings from a number of sources. Unlike many wine lists, they seemed to focus on offering affordable, enjoyable wines, mainly from local and regional wineries. Stephanie and I both favor white wines, and I noticed they offered a pinot blanc from Alsace. I&#8217;ve heard good things about Alsace wine but have never had it, so I enquired about it; apparently, this was a good thing, because this wine turned out to be a favorite of their wine expert. We ordered a bottle and found it to be delicate and satisfying both chilled and warm; it boasted a fantastic balance of dry vs. sweet with an unassuming and crisp fruity taste. A lot of whites taste like alcohol mixed with simple syrup; this one barely tasted like alcohol at all, and went well with both our dishes. While we waited for our entrees, Steph enjoyed a salad and I attacked a basket of bread with butter.</p>
<p>Stephanie chose the king salmon with raspberry barbeque sauce with greens and mixed vegetables. I went with something a little less adventuresome: linguine alfredo with chicken; in my defense, I don&#8217;t get cream-based sauces at home any more thanks to our Glorious New Dietary Regime. Our food was served rather quickly and was presented with a simple elegance that could easily have double the price tag in another establishment. I&#8217;ll let Stephanie speak for her meal if she chooses, but I will note that she told me at least once that she could eat it every day and be happy. My linguine was simply fantastic; the pasta was perfectly <em>al dente</em>, the sauce was light and creamy and in perfect proportion to enhance the pasta without smothering it, and the chicken was tender and full of flavor. It was easily the best pasta I&#8217;ve had in my life, and the entire meal rates up in my top three dining experiences. The service, of course, was quick, cheerful, and unassuming. We will happily come back and acquaint ourselves with the rest of the menu.</p>
<h2>Picasso at the Seattle Art Museum</h2>
<p>Upon arriving back at home around 12:30pm on Saturday, we unpacked, grabbed an informal lunch with the family, and planned out the rest of the day. For Christmas, the kids had purchased Stephanie a family membership in the Seattle Art Museum, in part so we could all head to the Picasso exhibit they have running through January 17. We had our tickets to get into the Picasso exhibit for 5pm, and with the Seahawks kicking off in Seattle at 1:30pm, we decided to wait for traffic to die down and head into town later in the afternoon. That gave us time to locate several alternatives for dinner after we&#8217;d been to the museum.</p>
<p>Once we got into Seattle and were parked at the garage underneath the SAM &#8212; a much trickier proposition now that we have a Ford Freestyle &#8212; we went up to Member Services and got our temporary membership cards. At that point, we had about 75 minutes to fill before we could enter the Picasso exhibit. We therefore broke up into groups and wandered around the museum&#8217;s various levels. Much of what I saw made little impression on me; a few of the pieces provoked a strong response (usually strong incredulity). I very much enjoyed the European and Italian galleries; in particular, they had a recreation of an Italian room, full of dark carved wood, that I found particularly intriguing.</p>
<p>Soon enough, 5pm approached and we queued up to enter the Picasso exhibit. I&#8217;m afraid I&#8217;m the wrong person to comment on it &#8212; I find most of Picasso&#8217;s work to be unapproachable. I tended to concentrate, instead, on the other people viewing the exhibit. There were a lot of very serious people there who apparently found all sorts of serious things to ponder. They were no fun. I liked watching the people who were totally blown away by what they were seeing; even if I didn&#8217;t share their reaction, I couldn&#8217;t help but be happy they were having a great time. These people invariably talked about how the art made them feel; the former types tended to pontificate on how it should make others feel and think. That&#8217;s an interesting lesson, don&#8217;t you think?</p>
<p>Once we had our fill of Picasso &#8212; or at least of walking around on the hard floors and dueling our way through the maddening crowds &#8212; we headed down to the waterfront to the Old Spaghetti Factory. I hadn&#8217;t dined here in many years &#8212; back when Stephanie and I were first married and I was working down on Pier 70. I&#8217;d really enjoyed it then and was looking forward to introducing my kids, especially because they offered gluten-free/dairy-free options. Instead, Stephanie and I found it to be one of the most disappointing dining experiences we&#8217;ve ever had. Maybe we were spoiled by still being on a high from the previous evening&#8217;s dining, but the restaurant felt crowded and dark, our table was noisy and drafty, and our server, while personable enough, couldn&#8217;t hit the right balance between competence and comedy. I can make better pasta than the half-hearted attempt I received. The best thing we can say is that Mom enjoyed it, as did the kids, although even the kids say that Steph would have made a better meal.</p>
<h2>Wrapping Up</h2>
<p>So, now it&#8217;s time for me to get off the computer and go spend the rest of the day with my family. I think we&#8217;ve got a board game or two on deck, maybe a family movie. Or, I could always pull out the copy of <em>Enchanter&#8217;s Endgame</em> that we&#8217;ve slowly been working through and read another chapter out loud. At any rate, we&#8217;ll have a good evening and get prepared to throw ourselves back into school, work, and life come Monday morning.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/nDKiK5oZc8E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2011/01/getaway/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2011/01/getaway/</feedburner:origLink></item>
		<item>
		<title>Solving The Problems You See</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/mGmWasAJPuU/</link>
		<comments>http://www.thecabal.org/2011/01/solving-the-problems-you-see/#comments</comments>
		<pubDate>Wed, 05 Jan 2011 07:56:59 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Health]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[People]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2011/01/solving-the-problems-you-see/</guid>
		<description><![CDATA[Somewhere along the way, I picked up an unusual philosophy: problems are meant to be solved by those who see them. Time after time, I have watched various friends and acquaintances become aware of a cause or injustice, get involved, &#8230; <a href="http://www.thecabal.org/2011/01/solving-the-problems-you-see/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Somewhere along the way, I picked up an unusual philosophy: <strong>problems are meant to be solved by those who see them</strong>. Time after time, I have watched various friends and acquaintances become aware of a cause or injustice, get involved, and find that they had the right combination of talents and drive to becoming actively engaged in the solution in ways they never could have previously imagined. It&#8217;s the same phenomenon that can make churches and charitable organizations far more effective at solving particular problems than government programs could ever be. There&#8217;s something transformative about passion, moreso when you&#8217;re directly involved in changing lives instead of working through some faceless proxy organization.</p>
<p>Right now, I&#8217;d like to introduce you to a friend of mine by the name of Chris. Chris and I became acquainted lo these many moons ago when I got involved in the community for the online PC game <em>Starsiege: Tribes</em> back at the end of the 90s. A week after we met, Chris was in a horrible motorcycle accident that changed his life forever. It&#8217;s a miracle he&#8217;s still alive. Stephanie and I have kept touch with him and over the years, have had the privilege of having him fly out from Vermont for three extended visits with our family, including two memorable Christmas holidays. He&#8217;s been placed in our lives for a reason, and we&#8217;ve drawn him into our family-of-choice.</p>
<p style="text-align: center;"><a href="http://www.thecabal.org/wp-content/uploads/2011/01/PICT0456.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Chris at the Gangers for Christmas 2007" src="http://www.thecabal.org/wp-content/uploads/2011/01/PICT0456_thumb.jpg" border="0" alt="Chris at the Gangers for Christmas 2007" width="644" height="484" /></a></p>
<p style="text-align: center;"><strong>Chris at the Gangers for Christmas 2007</strong></p>
<p>Chris&#8217;s medical condition is deteriorating; his doctor now estimates that he has approximately five years at the outside until he will need to live in assisted care. We were able to help him out a couple of years ago by putting him up on the awesome Select Comfort air bed that Steph had scrounged up for our guest room. The difference it made during his four-week visit that year was amazing &#8212; by the end of the visit, he was regularly going without an entire pain medication dose and was still more active and healthy than he&#8217;d been since the accident. His doctor worked all year to get the State of Vermont health services to purchase a Select Comfort bed for him &#8212; wrote the prescription, jumped through hoops to show how the cost of the bed would easily repay itself in the reduced medication costs, etc. &#8212; and some bureaucratic organization killed the whole idea. Why? Good question &#8212; we still don&#8217;t know. After a year of struggling, we sent the bed home with him after the next Christmas visit. (Screw you, nameless Vermont functionaries!)</p>
<p>We&#8217;ve been working on getting him moved from Vermont to Washington &#8212; specifically out to be near us &#8212; but it&#8217;s been an uphill battle. It has been extremely frustrating hearing him tell us over and over how he gets a good phone interview for a perfect part-time job but then once they meet him in person, game over. <a title="Now Chris has a plan" href="http://www.thecripplefund.org/" target="_blank">Now Chris has a plan</a>. It may not be the best plan, but it&#8217;s better than what we&#8217;ve been able to come up with and we&#8217;re going to help.</p>
<p style="text-align: center;"><a href="http://www.thecabal.org/wp-content/uploads/2011/01/PICT0499.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="PICT0499" src="http://www.thecabal.org/wp-content/uploads/2011/01/PICT0499_thumb.jpg" border="0" alt="PICT0499" width="644" height="484" /></a></p>
<p style="text-align: center;"><strong>Chris working on my Lego Star Destroyer</strong></p>
<p>Those of you who read my blog, whether directly, through some feed, through Twitter, or through Facebook: I&#8217;m hoping that you might be able and willing to give some help as well. Please go read his site and background &#8212; we&#8217;re going to scrounge up the pictures we have of him and send them so he can include them in updates and allow folks to get to know him. If you can, donate. If you can, spread this further. We&#8217;d love to get Chris relocated this spring and summer once the weather turns good and get him out here where we can provide in-person assistance. It won&#8217;t take much &#8212; $1, $2, $maybe even $5 and then pass the word on.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/mGmWasAJPuU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2011/01/solving-the-problems-you-see/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2011/01/solving-the-problems-you-see/</feedburner:origLink></item>
		<item>
		<title>Devin’s Load Balancer for Exchange 2010</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/ej21XrIzsPE/</link>
		<comments>http://www.thecabal.org/2010/12/devins-load-balancer-for-exchange-2010/#comments</comments>
		<pubDate>Tue, 07 Dec 2010 22:14:48 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/12/devins-load-balancer-for-exchange-2010/</guid>
		<description><![CDATA[Overview One of the biggest differences I’m seeing when deploying Exchange 2010 compared to previous versions is that for just about all of my customers, load balancing is becoming a critical part of the process. In Exchange 2003 FE/BE, load &#8230; <a href="http://www.thecabal.org/2010/12/devins-load-balancer-for-exchange-2010/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h2>Overview</h2>
<p>One of the biggest differences I’m seeing when deploying Exchange 2010 compared to previous versions is that for just about all of my customers, load balancing is becoming a critical part of the process. In Exchange 2003 FE/BE, load balancing was a luxury unheard of for all but the largest organizations with the deepest pockets. Only a handful of outfits offered load balancing products, and they were expensive. For Exchange 2007 and the dedicated CAS role, it started becoming more common.</p>
<p>For Exchange 2003 and 2007, you could get all the same benefits of load balancing (as far as Exchange was concerned) by deploying an ISA server or ISA server cluster using Windows Network Load Balancing (WNLB). ISA included the concept of a “web farm” so it would round-robin incoming HTTP connections to your available FE servers (and Exchange 2007 CAS servers). Generally, your internal clients would directly talk to their mailbox servers, so this worked well. Hardware load balancers were typically used as a replacement for publishing with an ISA reverse proxy (and more rarely to load balance the ISA array instead of WNLB). Load balancers could perform SSL offloading, pre-authentication, and many of the same tasks people were formerly using ISA for. Some small shops deployed WNLB for Exchange 2003 FEs and Exchange 2007 CAS roles.</p>
<p>In Exchange 2010, everything changes. Outlook RPC connections now go to the CAS servers in the site, not the MB server that hosts the active copy of the database. Mailbox databases now have an affiliation with either a specific CAS server or a site-specific RPC client access array, which you can see using the <strong>–RpcClientAccessServer</strong> parameter of the <strong>Get-MailboxDatabase</strong> cmdlet. If you have two or more servers, I recommend you set up the RPC client access array as part of the initial deployment and get some sort of load balancer in place.</p>
<h2>Load Balancing Options</h2>
<p>At Trace3, we’re an F5 reseller, and F5 is one of the few load balancer companies out there that has really made an effort to understand and optimize Exchange 2010 deployments. However, I’m not on the sales side; I have customers using a variety of load balancing solutions for their Exchange deployments. At the end of the day, we want the customer to do what’s right for them. For some customers, that’s an F5. Others require a different solution. In those cases, we have to get creative – sometimes they don’t have budget, sometimes the networking team has their own plans, and on some rare occasions, the plans we made going in turned out not to be a good fit after all and now we have to come up with something on the fly.</p>
<p>If you’re not in a position to use a high-end hardware load balancer like an F5 BIG-IP or a Cisco ACE solution, and can’t look at some of the lower-cost (and correspondingly lower-feature) solutions that are now on the market, there are few alternatives:</p>
<ul>
<li><strong>WNLB.</strong> To be honest, I have attempted to use this in several environments now and even when I spent time going over the pros and cons, it failed to meet expectations. If you’re virtualizing Exchange (like many of my customers) and are trying to avoid single points of failure, WNLB is so clearly not the way to go. I no longer recommend this to my customers.</li>
<li><strong>DNS round robin.</strong> This method at least has the advantage of in theory driving traffic to all of the CAS instances. However, in practice it gets in the way of quickly resolving problems when they come up. It’s better than nothing, but not by much.</li>
<li><strong>DAG cluster IP.</strong> Some clever people came up with this option for instances where you are deploying multi-role servers with MB+HT+CAS on all servers and configuring them in a DAG. <em>DAG = cluster</em>, these smart people think, <em>and clusters have a cluster IP address. Why can’t we just use that as the IP address of the RPC client access array?</em> Sure enough, this works, but it’s not tested or supported by Microsoft and it isn’t a perfect solution. It’s not load balancing at all; the server holding the cluster IP address gets all the CAS traffic. Server sizing is important!</li>
</ul>
<p>The fact of the matter is, there are no great alternatives if you’re not going to use hardware load balancing. You’re going to have to compromise something.</p>
<h2>Introducing Devin’s Load Balancer</h2>
<p>For many of my customers, we end up looking something like this:</p>
<ul>
<li>The CAS/HT roles are co-located on one set of servers, while MB (and the DAG) is on another. This rules out the DAG cluster IP option.</li>
<li>They don’t want users to complain excessively when something goes wrong with one of the CAS/HT servers. This rules out DNS round robin.</li>
<li>They don’t have the budget for a hardware solution yet, or one is already in the works but not ready because of schedule. They need a temporary, low-impact solution. This effectively rules out WNLB.</li>
</ul>
<p>I’ve come up with a quick and dirty fix I call <em><strong>Devin’s Load Balancer</strong></em> or, as I commonly call it, the DLB. It looks like this:</p>
<ol>
<li>Pick one CAS server that can handle all the traffic for the site. This is our target server.</li>
<li>Pick an IP address for the RPC client access array for the site. Create the DNS A record for the RPC client access array FQDN, pointing to the IP address.</li>
<li>Create the RPC client access array in EMS, setting the name, FQDN, and site.</li>
<li>On the main network interface of the target server, add the IP address. <em>If this IP address is on the same subnet as the main IP address, there is no need to create a secondary interface! Just add it as a secondary IP address/subnet mask.</em></li>
<li>Make sure the appropriate mailbox databases are associated with the RPC client access array.</li>
<li>Optionally, point the internal HTTP load balance array DNS A record to this IP address as well (or publish this IP address using ISA).</li>
</ol>
<p><strong>You may have noticed that this sends all traffic to the target server; it doesn’t really load balance. DLB also stands for <span style="text-decoration: underline;">Doesn’t Load Balance</span>!</strong></p>
<p>This configuration, despite its flaws, gives me what I believe are several important benefits:</p>
<ul>
<li>It’s extremely easy to switchover/failover. If something happens to my target server, I simply add the RPC client access array IP address as a secondary IP address to my next CAS instance. There are no DNS cache entries to wait to expire. There are are no switch configurations to modify. There are no DNS records I have to update. If this is a planned switchover, client get disrupted but can immediately connect. I can make the update as soon as I get warning that something happened and my clients can reconnect without any further action on their part.</li>
<li>It isolates what I do with the other CAS instances. Windows and Exchange no longer have any clue they’re in a load balanced pseudo-configuration. With WNLB, if I make any changes to the LB cluster (like add or remove a member), all connections to the cluster IP addresses are dropped!</li>
<li>It makes it very easy to upgrade to a true load balancing solution. I set the true solution up in parallel with an alternate, temporary IP address. I use local HOSTS file entries on my test machines while I’m getting everything tested and validated. And then I simply take the RPC client access array IP address off the target server and put it on the load balancer. Existing connections are dropped, but new ones immediately connect with no timeouts – and now we’re really load balancing.</li>
</ul>
<p><strong>Note that you do not need the CAS SSL certificate to contain the FQDN of the RPC client access array as a SAN entry. RPC doesn’t use SSL for encryption (it’s not based on HTTP).</strong></p>
<p>Even in a deployment where the customer is putting all roles into single-server configuration, if there’s any thought at all that they might want to expand to an HA configuration in the future, I now am in the habit of configuring this. The RPC client access array is now configured and somewhat isolated from the CAS configuration, so now my future upgrades are easier and less disruptive.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/ej21XrIzsPE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/12/devins-load-balancer-for-exchange-2010/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/12/devins-load-balancer-for-exchange-2010/</feedburner:origLink></item>
		<item>
		<title>Review: Cooking for Geeks (O’Reilly)</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/cqmVxNLkKPc/</link>
		<comments>http://www.thecabal.org/2010/09/review-cooking-for-geeks-oreilly/#comments</comments>
		<pubDate>Wed, 22 Sep 2010 08:24:51 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Reviews]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/09/review-cooking-for-geeks-oreilly/</guid>
		<description><![CDATA[Writing books is a ton of work. Making them appealing is even more so, especially when your audience is geeks. You have to know your stuff, you have to present it well, and it doesn’t hurt if you can make &#8230; <a href="http://www.thecabal.org/2010/09/review-cooking-for-geeks-oreilly/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Writing books is a ton of work. Making them appealing is even more so, especially when your audience is geeks. You have to know your stuff, you have to present it well, and it doesn’t hurt if you can make it entertaining. In the technical field, I think O’Reilly is the one publisher that hits this bar more consistently than any other publisher. Getting to co-write <a title="Exchange Server Cookbook" href="http://oreilly.com/catalog/9780596007171/" target="_blank">my first book</a> for them was a great experience; if they ever came asking me to work on another book for them, I would seriously think about it (more importantly, my wife wouldn’t automatically say no).</p>
<p>Back at the end 0f August, I had the opportunity, thanks to the <a title="O&#39;Reilly Media on Twitter" href="http://twitter.com/OReillyMedia" target="_blank">@OReillyMedia</a> twitter feed, to get my hands on a review copy of <a title="Cooking for Geeks (O&#39;Reilly), ISBN 978-0-596-80588-3" href="http://oreilly.com/catalog/9780596805890/" target="_blank"><em>Cooking for Geeks</em></a> (CfG) in e-book format. As part of the review agreement, I was supposed to:</p>
<ul>
<li>Select a recipe from the book,</li>
<li>Prepare it,</li>
<li>Photograph it,</li>
<li>Write a review and post it,</li>
<li>Post the photograph on the <a title="O&#39;Reilly Media on Facebook" href="http://www.facebook.com/OReilly" target="_blank">O’Reilly Facebook page</a>,</li>
<li>and all by September 6th.</li>
</ul>
<p>Oops. Obviously, I’ve missed the precise timing here, but a bit belated, here’s the review I owe.</p>
<h1>Why <strong>this</strong> cooking book?</h1>
<p>There’s a lot of information on cooking out there. Stephanie has a metric ton of cookbooks and collected recipes in our house, and there are large chunks of old-growth forest bound up in the various cookbooks you can find in various stores. Thanks to the celebrity chef craze on TV, cooking (never an unpopular subject) has grown leaps and bounds beyond the good old <em>Betty Crocker Cookbook</em> that many of us grew up with<em>[1]</em>. Popular TV chefs now write and sell cookbooks on just about any specialty and niche you can imagine. I’ve even indulged in the recipe fetish myself once or twice, most noticeably to snag and perfect my favorite dish, the Cheesecake Factory’s Spicy Cashew Chicken dish.</p>
<p>What caught my attention (other than this being an O’Reilly book) about CfG was that my household has been slowly and steadily moving into the exciting world of food allergens. We recently flung ourselves off the cliffs of insanity this summer when blood tests revealed that Steph and Treanna tested positive for gluten antibodies. Add that to the existing dairy-free regime, and it was clear that menu planning at Chez Ganger had just started a new, exciting, but potentially very limited and boring chapter.</p>
<p>We’ve got a lot of friend who are gluten-free, dairy-free, vegetarian, vegan, some other regime, or even combinations of the above, so Steph’s no stranger to the issues involved. What is doable as an occasional thing, though, can become overwhelming when it’s a sudden lifestyle change that comes hard on the heels of a long, exhausting summer – just in time for the new school year. Understandably, Steph was struggling to cope – and we weren’t exactly the most helpful crew she could hope for.</p>
<p>After a few weeks of the same basic dishes being served over and over again, I was ready for any lifesaver that I could find. That’s when the fateful tweet caught my eye. After a few rounds of back and forth e-mail, I discovered that CfG included a chapter on cooking to accommodate allergens. The rest, as they say, is fate.</p>
<h1>Torturing Chickens For Fun and Noms</h1>
<p>Although I could go into great detail about the recipe my family ended up selecting – butterflied roasted chicken – my wife has already done so. Like a good writer, I will <strike>steal her efforts </strike><a title="Trying something new" href="http://www.teawithstephanie.com/?p=384" target="_blank">link to her blog post</a> instead. She even took pictures! Go, read and salivate!</p>
<p>Back already?</p>
<h1>Under the Cover</h1>
<p>CfG is written by <a href="http://www.codepuppy.com/" target="_blank">Jeff Potter</a>, whose geek credentials appear to be genuine. The book has a <a title="cookingforgeeks.com" href="http://www.cookingforgeeks.com/" target="_blank">fantastic companion site</a>, which is essentially a link fest to the related blog and Twitter stream (as well as to the various places you can go on the Internet to purchase a copy of the book).</p>
<p>My lovely wife handled the “cooking” and “presentation” parts well, so I’m going to move on to our thoughts about the book itself:</p>
<ul>
<li><strong>Content.</strong> If you want a book that explores the science and the art behind cooking, this is your book. It’s not a college textbook; it’s a great middle school or high school-level overview of the science of cooking that seems more interested in sharing Jeff’s love of cooking with you rather than creating cooking’s equivalent of the CCIE. Jeff writes with a very informal personable voice and isn’t afraid to show off his mastery of the physics behind good and bad dishes, sharing them in a way that’s part Bill Nye the Science Guy and part Ferris Bueller. I have never before laughed while reading a book on cooking. However, if you’re expecting a cookbook, check your expectations at the door. If this book has a weakness, it’s that talking about all this food will make you want a lot of recipes to try out, and I was surprised by how relatively few recipes there actually are. What is there provides an interesting cross-section across different types of dishes and ingredients, but it’s not a comprehensive reference guide. This is not “Cooking in a Nutshell” or cooking’s Camel Book; it is instead a not-to-scale map of the CfG theme park. If you find something that entrances you, you should be able to walk away with enough exposure to be able to knowledgeably pick out some other more detailed work for given area. CfG is the culinary equivalent of Jerome K. Jerome’s immortal <a href="http://en.wikipedia.org/wiki/Three_Men_in_a_Boat" target="_blank">Three Men in a Boat (To Say Nothing of the Dog)</a>; you’re going to get a fantastic lazy summer day punt trip down the river of Jeff’s epicurean experiences.</li>
<li><strong>Format.</strong> We used the PDF format (like all of O’Reilly’s e-books, unencumbered by DRM). Steph already made a comment about how useful she found the e-book format. With a sturdy tablet, I think an e-book cookbook would be great in the kitchen, especially if there were some great application that could handle browsing and organizing recipes from multiple sources. As I already said, though, this book is not a cookbook and I’d probably just make a quick copy of (or retype) the recipes I was interested in so that I didn’t have to use the physical book in the kitchen. Having said that, though, we’re going to purchase a physical copy of the book to facilitate quick browsing. If you’ve already made the switch to casual e-reading (we have not yet), you probably won’t have this same issue.</li>
<li><strong>Organization.</strong> Whether you like the book’s organization will depend on what you wanted out of it. If you wanted cooking’s Camel Book, you will find the book to be dismayingly unorganized. The structure of the book (and the recipes within) are based around the physics of cooking. Here, Jeff reveals himself to be a Lego Master of building blocks – you will find yourself introduced to one scientific concept after another, and each chapter will build on that knowledge by concentrating on a particular theme or technique rather than on a specific type of food or course. It really will help you to think of it as a novel (a romance, actually, between Jeff and food) and read the book from cover to cover rather than jump around in typical O’Reilly reference format. This is passion, not profession; calling, not career.</li>
<li><strong>Utility.</strong> I’m pretty much a dunce when it comes to cooking, so I found this book to be extremely useful. I hate following the typical magical thinking approach to cooking: put ingredient A into slot B and pull on tab C for 30 minutes until you screw it all up because you didn’t know that your masterpiece was afraid of loud noises. I want to know why I’m putting nasty old cream of tartar into my mixing bowl; what purpose does it serve? How can I usefully strike out into the scary wilderness of trying to adapt existing favorite recipes to a gluten-free, dairy-free existence? CfG doesn’t answer all my questions, but it answers a hell of a lot more of them than any other cooking book I’ve picked up. It didn’t talk down to me, but it didn’t assume I was already a lifelong member of the Secret and Worshipful Order of Basters, Bakers, and Broilers. What it didn’t do, though, is give me a large number of variations on a theme to go and try. At times the recipe selection – while ecletic and representative – felt somewhat sparse and even unrelated to what was being talked about in the main text. It seemed like someone on the team had written a badly behaved random recipe widget<em>[2]</em> to insert a recipe every so often. I would love, in the second edition, to see a little bit more connection between the theory and the practice, even though I recognize this isn’t a textbook.</li>
</ul>
<p>We found our payoff in the chapter on cooking around allergens. Of all the chapters, this is the one that most felt like a reference work &#8212; a concise but thorough reference work. Jeff explains why (for example) taking gluten out of a recipe and merely substituting some non-gluten flour is probably not going to produce edible results, and then explains some of the common approaches for dealing with the problem. He’s trusting us, the readers, to be able and willing to do some experimentation and find our own way without having a GPS to lead us by the nose. While it’s initially tempting to have the comfort of specific substitution steps, in the end, CfG will help you know how to make substitutions on your own and quickly dial in to an acceptable solution rather than sit around waiting for someone to write the HOWTO.</p>
<p>In the end, Jeff’s approach is empowerment. We liked it a lot; thank you, Jeff and O’Reilly!</p>
<p><em><strong>[1]</strong> Not only did I grow up with one and spend a lot of time browsing it, Steph has one. I’ll have you know, however, that I’ve only flipped through it once for </em>auld lang syne<em>.</em></p>
<p><em><strong>[2]</strong> Probably written in Ruby or PHP.</em></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/cqmVxNLkKPc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/09/review-cooking-for-geeks-oreilly/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/09/review-cooking-for-geeks-oreilly/</feedburner:origLink></item>
		<item>
		<title>Offered without comment or context</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/JVYI-GmUshw/</link>
		<comments>http://www.thecabal.org/2010/09/offered-without-comment-or-context/#comments</comments>
		<pubDate>Tue, 21 Sep 2010 21:37:04 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Humor]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/09/offered-without-comment-or-context/</guid>
		<description />
			<content:encoded><![CDATA[<p><a href="http://www.thecabal.org/wp-content/uploads/2010/09/doublerainbowcool.png"><img style="background-image: none; margin: 3px 10px 3px 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="double rainbow cool" src="http://www.thecabal.org/wp-content/uploads/2010/09/doublerainbowcool_thumb.png" border="0" alt="double rainbow cool" width="160" height="86" /></a></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/JVYI-GmUshw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/09/offered-without-comment-or-context/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/09/offered-without-comment-or-context/</feedburner:origLink></item>
		<item>
		<title>Moving to Exchange Server 2010 Service Pack 1</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/WjTKo8d78aY/</link>
		<comments>http://www.thecabal.org/2010/09/moving-to-exchange-server-2010-service-pack-1/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 00:07:02 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/09/moving-to-exchange-server-2010-service-pack-1/</guid>
		<description><![CDATA[Microsoft recently announced that Service Pack 1 (SP1) for Exchange Server 2010 had been released to web, prompting an immediate upgrade rush for all of us Exchange professionals. Most of us maintain at least one home/personal lab environment, the better &#8230; <a href="http://www.thecabal.org/2010/09/moving-to-exchange-server-2010-service-pack-1/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Microsoft recently announced that Service Pack 1 (SP1) for Exchange Server 2010 had been released to web, prompting an immediate upgrade rush for all of us Exchange professionals. Most of us maintain at least one home/personal lab environment, the better to pre-break things before setting foot on a customer site. Before you go charging out to do this for production (especially if you’re one of my customers, or don’t want to run the risk of suddenly becoming one of my customers), take a few minutes to learn about some of the current issues with SP1.</p>
<h1>Easy Installation and Upgrade Slipstreaming</h1>
<p>One thing that I love about Exchange service packs is that from Exchange 2007 on, they’re full installations in their own right. Ready to deploy a brand new Exchange 2010 SP1 server? Just run <strong>setup</strong> from the SP1 binaries – no more fiddling around with the original binaries, then applying your service packs. Of course, the Update Rollups now take the place of that, but <a href="http://technet.microsoft.com/en-us/library/ff637981.aspx" target="_blank">there’s a mechanism to slipstream them into the installer</a> (and here is <a href="http://technet.microsoft.com/en-us/library/ee221147(EXCHG.80).aspx" target="_blank">the Exchange 2007 version of this article</a>).</p>
<blockquote><p>Note: If you do make use of the slipstream capabilities, remember that Update Rollups are both version-dependent (tied to the particular RTM/SP release level) <strong>and</strong> are cumulative. SP1 UR4 is <strong>not</strong> the same thing as RTM UR4! However, RTM UR4 will include RTM UR3, RTM UR2, and RTM UR1…just as SP1 UR4 will contain SP1 UR3, SP1 UR2, and SP1 UR1.</p>
<p>The articles I linked to say not to slipstream the Update Rollups with a service pack, and I’ve heard some confusion about what this means. It’s simple: you can use the Updates folder mechanism to slipstream the Update Rollups <strong>when you are performing a clean install</strong>. You <strong>cannot use the slipstream mechanism when you are applying a service pack to an existing Exchange installation</strong>. In the latter situation, apply the service pack, then the latest Update Rollup.</p>
<p>It’s too early for any Update Rollups for Exchange 2010 SP1 to exist at the time of writing, but if there were (for the sake of illustration, let’s say that SP1 UR X just came out), consider these two scenarios:</p>
<ul>
<li>You have an existing Exchange 2010 RTM UR4 environment and want to upgrade directly to SP1 UR1. You would do this in two steps on each machine: run the SP1 installer, then run the latest SP1 UR X installer.</li>
<li>You now want to add a new Exchange 2010 server into your environment and want it to be at the same patch level. You could perform the installation in a single step from the SP1 binaries by making sure the latest SP1 UR X installer was in the Updates folder.</li>
</ul>
</blockquote>
<p>If these scenarios seem overly complicated, just remember back to the Exchange 2003 days…and before.</p>
<h1>Third Party Applications</h1>
<p>This might surprise you, but in all of the current Exchange 2010 projects I’m working on, I’ve not even raised the question of upgrading to SP1 yet. Why would I not do that? Simple – all of these environments have dependencies on third-party software that is not yet certified for Exchange 2010 SP1. In some cases, the software has barely just been certified for Exchange 2010 RTM! If the customer brings it up, I always encourage them to start examining SP1 in the lab, but for most production environments, supportability is a key requirement.</p>
<p>Make sure you’re not going to break any applications you care about before you go applying service packs! Exchange service packs always make changes – some easy to see, some harder to spot. You may need to upgrade your third-party applications, or you may simply need to make configuration changes ahead of time – but if you blindly apply service packs, you’ll find these things out the hard way. If you have a critical issue or lack of functionality that the Exchange 2010 SP1 will address, get it tested in your lab and make sure things will work.</p>
<p>Key applications I encourage my customers to test include:</p>
<ul>
<li>Mobile device connectivity (like BES)</li>
<li>Backup/restore/DR applications</li>
<li>Archival packages</li>
<li>Security/Anti-virus/mail hygiene packages (Microsoft isn’t immune from this; <a href="http://blogs.technet.com/b/isablog/archive/2010/09/01/problems-when-installing-exchange-2010-service-pack-1-on-a-tmg-configured-for-mail-protection.aspx" target="_blank">SP1 breaks their own Exchange 2010 Edge Transport/Forefront Threat Management Gateway integration and they don’t have a fix for it at this time</a>)</li>
<li>Non-standard desktop clients (Entourage and IMAP clients, I’m looking at <em>you</em>)</li>
<li>Anything that uses EWS or MAPI to monitor mailboxes</li>
</ul>
<p>Applications that use SMTP submission are typically pretty safe, and there are other applications that you might be okay living without if something does break. Figure out what you can live with, test them (or wait for certifications), and go from there.</p>
<h1>Complications and Gotchas</h1>
<p>Unfortunately, not every service pack goes smoothly. For Exchange 2010 SP1, one of the big gotchas that early adopters are giving strong feedback about is the number of hotfixes you must download and apply to Windows and the .NET Framework before applying SP1 (a variable number, depending on which base OS your Exchange 2010 server is running).</p>
<p>Having to install hotfixes wouldn’t be that bad if the installer told you, “Hey, click here and here and here to download and install the missing hotfixes.” Exchange has historically not done that (citing boundaries between Microsoft product groups) even though other Microsoft applications don’t seem to be quite as hobbled. However, this instance of (lack of) integration is particularly egregious because of two factors.</p>
<blockquote><p><strong>Factor #1: hotfix naming conventions. </strong>Back in the days of Windows 2000, you knew whether a hotfix was meant for your system, because whether you were running Workstation or Server, it was Windows 2000. Windows XP and Windows 2003 broke that naming link between desktop and server operating systems, often confusingly so once 64-bit versions of each were introduced (32-bit XP and 32-bit 2003 had their own patch versions, but 64-bit XP applied 64-bit 2003 hotfixes).</p>
<p>Then we got a few more twists to deal with. For example, did you know that Windows Vista and Windows Server 2008 are the same codebase under the hood? Or that Windows 7 and Windows Server 2008 R2, likewise, are BFFs? It’s true. Likewise, the logic behind the naming of Windows Server 2003 R2 and Windows Server 2008 R2 were very different; Windows Server 2003 R2 was basically Windows Server 2003 with a SP and few additional components, while Windows Server 2008 R2 has some substantially different code under the hood than Windows Server 2008 with SP. (I would guess that Windows Server 2008 R2 got the R2 moniker to capitalize on Windows 2008’s success, while Windows 7 got a new name to differentiate itself from the perceived train wreck that Vista had become, but that’s speculation on my part.)</p>
<p>At any rate, figuring out which hotfixes you need – and which versions of those hotfixes – is less than easy. Just remember that you’re always downloading the 64-bit patch, and that Windows 2008=Vista while Windows 2008 R2=Windows 7 and you should be fine.</p></blockquote>
<blockquote><p><strong>Factor #2: h</strong><strong>otfix release channels. </strong>None of these hotfixes show up under Windows Update. There’s no easy installer or tool to run that gets them for you. In fact, at least two of the hotfixes must be obtained directly from Microsoft Customer Support Services. All of these hotfixes include scary legal boilerplate about not being fully regression tested and thereby not supported unless you were directly told to install them by CSS. This has caused quite a bit of angst out in the Exchange community, enough so that various people are collecting the various hotfixes and making them available off their own websites in one easy package to download<strong>[1]</strong>.</p>
<p>I know that these people mean well and are trying to save others from a frustrating experience, but in this case, the help offered is a bad idea. That same hotfix boilerplate means that everyone who downloads those hotfixes agree not to redistribute those hotfixes. There’s no exception for good intentions. If you think this is bogus, let me give you two things to think about:</p>
<ul>
<li>You need to be able to verify that your hotfixes are legitimate and haven’t been tampered with. Do you really want to trust production mission-critical systems to hotfixes you scrounged from some random Exchange pro you only know through blog postings? Even if the pro is trustworthy, is their web site? Quite frankly, I trust Microsoft’s web security team to prevent, detect, and mitigate hotfix-affecting intrusions far more quickly and efficiently than some random Exchange professional’s web host. I’m not disparaging any of my colleagues out there, but let’s face it – we have a lot more things to stay focused on. Few of us (if any) have the time and resources the Microsoft security guys do.</li>
<li>Hotfixes in bundles grow stale. When you link to a KB article or Microsoft Download offering to get a hotfix, you’re getting the most recent version of that hotfix. Yes, hotfixes may be updated behind the scenes as issues are uncovered and testing results come in. In the case of the direct-from-CSS hotfixes, you can get them for free through a relatively simple process. As part of that process, Microsoft collects your contact info so they can alert you if any issues later come up with the hotfix that may affect you. Downloading a stale hotfix from a random bundle increases the chances of getting an old hotfix version that may cause issues in your environment, costing you a support incident. How many of these people are going to update their bundles as new hotfix versions become available? How quickly will they do it – and how will you know?</li>
</ul>
</blockquote>
<p>The Exchange product team has gotten an overwhelming amount of feedback on this issue, and <a href="http://msexchangeteam.com/archive/2010/09/01/456094.aspx" target="_blank">they’ve responded on their blog</a>. Not only do they give you a handy table rounding up links to get the hotfixes, they also collect a number of other potential gotchas and advice to learn from from before beginning your SP1 deployment. Go check it out, then start deploying SP1 in your lab.</p>
<p>Good luck, and have fun! SP1 includes some killer new functionality, so take a look and enjoy!</p>
<p><em><strong>[1]</strong> If you’re about to deploy a number of servers in a short period of time, of course you should cache these downloaded hotfixes for your team’s own use. Just make sure that that you check back occasionally for updated versions of the hotfixes. The rule of thumb I’d use is about a week – if I’m hitting my own hotfix cache and it’s older than a week, it’s worth a couple of minutes to make sure it’s still current.</em></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/WjTKo8d78aY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/09/moving-to-exchange-server-2010-service-pack-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/09/moving-to-exchange-server-2010-service-pack-1/</feedburner:origLink></item>
		<item>
		<title>Manually creating a DAG FSW for Exchange 2010</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/pSoV5v1hU0M/</link>
		<comments>http://www.thecabal.org/2010/08/manually-creating-a-dag-fsw-for-exchange-2010/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 01:20:55 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/?p=1089</guid>
		<description><![CDATA[I just had a comment from Chris on my Busting the Exchange Trusted Subsystem Myth post that boiled down to asking what you do when you have to create the FSW for an Exchange 2010 DAG manually? In order for &#8230; <a href="http://www.thecabal.org/2010/08/manually-creating-a-dag-fsw-for-exchange-2010/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I just had a comment from Chris on my <a title="Devin on Earth: Busting the Exchange Trusted Subsystem Myth" href="http://www.thecabal.org/2009/12/busting-the-exchange-trusted-subsystem-myth/" target="_blank">Busting the Exchange Trusted Subsystem Myth</a> post that boiled down to asking what you do when you have to create the FSW for an Exchange 2010 DAG manually?</p>
<p>In order for this to be true, you have to have the following conditions:</p>
<ol>
<li>You have no other Exchange 2010 servers in the AD site. This implies that at least one of your DAG nodes is multi-role &#8212; remember that you need to have a CAS role and an HT role in the same site as your MB roles, preferably two or more of each for redundancy and load. If you have another Exchange 2010 server, then it&#8217;s already got the correct permissions &#8212; let Exchange manage the FSW automatically.</li>
<li>If the site in question is part of a DAG that stretches sites, there are more DAG nodes in this site than in the second site. If you&#8217;re trying to place the FSW in the site with fewer members, you&#8217;re asking for trouble<em>[1].</em></li>
<li>You have no other Windows 2003 or 2008 servers in the site that you consider suitable for Exchange&#8217;s automatic FSW provisioning<em>[2]</em>. By this, I mean you&#8217;re not willing to the the <strong>Exchange Trusted Subsystem</strong> security group to the server&#8217;s local Administrators group so that Exchange can create, manage, and repair the FSW on its own. If your only other server in the site is a DC, I can understand not wanting to add the group to the Domain Admins group.</li>
</ol>
<p>If that&#8217;s the case, and you&#8217;re dead set on doing it this way, you will have to manually create the FSW yourself. A FSW consists of two pieces: the directory, and the file share. The process for doing this is not documented anywhere on TechNet that I could find with a quick search, but happily, one Rune Bakkens blogs <a title="Manually create FileWitness Share" href="http://runebelune.spaces.live.com/blog/cns!214999A8EBE4FCB4!188.entry" target="_blank">the following process</a>:</p>
<blockquote><p><em><span style="color: #000000;">To pre-create the FSW share you need the following:<br />
-  Create a folder etc. D:\FilesWitness\DAGNAME<br />
- Give the owner  permission to Exchange Trusted Subsystem<br />
- Give the Exchange Trusted  Subsystem Full Control (NTFS)<br />
- Share the folder with the following  DAGNAME.FQDN (If you try a different share name,<br />
it  won&#8217;t work. This is somehow required)<br />
- Give the DAGNAME$  computeraccount Full Control (Share)</span></em></p>
<p><em><span style="color: #000000;">When you&#8217;ve done this, you can run the  set-databaseavailabilitygroup -witnessserver CLUSTERSERVER &#8211;  witnessdirectory D:\Filewitness\DAGNAME</span></em></p>
<p><em><span style="color: #000000;">You&#8217;ll get the following warning message:</span></em></p>
<p><em><span style="color: #000000;">WARNING: Specified witness server Cluster.fqdn is not  an Exchange server, or part of the Exchange Servers security group.<br />
WARNING:  Insufficient permission to access file shares on witness server  Cluster.fqdn. Until this problem is corrected, the database availability  group may be more vulnerable to failures. You can use the  set-databaseavailabilitygroup cmdlet to try the operation again. Error:  Access is denied</span></em></p>
<p><em><span style="color: #000000;">This is expected, since the cmdlet tries to create the  folder and share, but don&#8217;t have the permissions to do this.</span></em></p>
<p><em><span style="color: #000000;">When this is done, the FSW should be configured  correct. To verify this, the following files should be created:</span></em></p>
<p><em><span style="color: #000000;">- VerifyShareWriteAccess<br />
- Witness </span></em></p></blockquote>
<p><span style="color: #000000;">Just for the record, <strong>I have not tested this process yet</strong>. However, I&#8217;ve had to do some recent FSW troubleshooting lately and this matches with what I&#8217;ve seen for naming conventions and permissions, so I&#8217;m fairly confident this should get you most of the way there. Thank you, Rune!</span></p>
<p><span style="color: #000000;">Don&#8217;t worry, I haven&#8217;t forgotten the next installment of my Exchange 2010 storage series. It&#8217;s coming, honest!<br />
</span></p>
<p><em><span style="color: #000000;"><strong>[1]</strong> Consider the following two-site DAG scenarios:</span></em></p>
<ul>
<li><em>If there&#8217;s an odd number of MB nodes, Exchange won&#8217;t use the FSW.</em></li>
<li><em><span style="color: #000000;">An even number (n) of nodes in each site. The FSW is necessary for there to even be a quorum (you have 2n+1 nodes so a simple majority is n+1). If you lose the FSW and one other node &#8212; no matter where that node is &#8212; you&#8217;ll lose quorum. If you lose the link between sites, you lose quorum no matter where the FSW is.</span></em></li>
<li><span style="color: #000000;"><em>A number (n) nodes in site A, with at least one fewer nodes (m) in site B. If n+m is odd, you have an odd number of nodes &#8212; our first case. Even if m is only 1 fewer than n, putting the FSW in site B is meaningless &#8212; if you lose site A, B will never have quorum (in this case, m+1 = n, and n is only half &#8212; one less than quorum).</em></span></li>
</ul>
<p><span style="color: #000000;"><em>I am confident in this case that if I&#8217;ve stuffed up the math here, someone will come along to correct me. I&#8217;m pretty sure I&#8217;m right, though, and now I&#8217;ll have to write up another post to show why. Yay for you!<br />
</em></span></p>
<p><span style="color: #000000;"><em><strong>[2]</strong> You <strong>do</strong> have at least <strong>one</strong> other Windows server in that site, though, right &#8212; like your DC? Exchange doesn&#8217;t like not having a DC in the local site &#8212; and that DC should also be a GC.</em><br />
</span></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/pSoV5v1hU0M" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/08/manually-creating-a-dag-fsw-for-exchange-2010/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/08/manually-creating-a-dag-fsw-for-exchange-2010/</feedburner:origLink></item>
		<item>
		<title>On Patriotism</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/4VYJvfOOPJ4/</link>
		<comments>http://www.thecabal.org/2010/07/on-patriotism/#comments</comments>
		<pubDate>Mon, 05 Jul 2010 00:38:24 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Politics]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/?p=1087</guid>
		<description><![CDATA[Patriotism is being committed to making things better for those around me no matter how good I personally have it. No government, political system, or economic theory is perfect; there will always be people who fall through the cracks. As &#8230; <a href="http://www.thecabal.org/2010/07/on-patriotism/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Patriotism is being committed to making things better for those around me no matter how good I personally have it. No government, political system, or economic theory is perfect; there will always be people who fall through the cracks. As a patriot, I have a responsibility to identify those cracks and work to mitigate them. Dedication to capitalism or socialism should not deaden me to the suffering of those who are not as fortunate as I am. In helping my fellow Americans, I am strengthening my country.</p>
<p>Patriotism is holding my elected officials, their political appointees, and the news media accountable for the choices and actions they take in my name. As a patriot, I have a responsibility to ensure that my representatives are conducting the business of government according to the values and principles they represented during election time. I need accurate and timely information on their performance and actions. I need to understand the difference between news and entertainment and know when each is appropriate.</p>
<p>Patriotism is acknowledging my country’s flaws with integrity and honesty instead of trying to cover them up or excuse them. When my government and policies fail – and being human institutions, they will fail – I will be tempted to downplay or minimize the impact of these failures. Instead, I must face these failures and their consequences forthrightly, make every reasonable effort to keep them from occurring again, and encourage my fellow Americans to do the same.</p>
<p>Patriotism is respecting the offices and institutions of my government even when expressing my disagreement with its policies and actions. Whether I am Democrat, Independent, Libertarian, Republican, some other party, or a member of none, I choose to discuss government and politics with civility and grace. I do not have to vilify political opponents in order to successfully engage their ideas and point out the failures of their actions. I can condemn bad choices and actions without hatred or unnecessary anger towards those who make them.</p>
<p>Patriotism is placing untainted personal ethics and morality ahead of my politics. I will not spread racism, classism, sexism, or other institutionalized forms of hatred. I have a responsibility to ensure that the voice of every American can be heard and that America provides as level of a playing field as possible. I have a personal stake in making America an ideal of compassionate, reasoned behavior to Americans and to the people of the world. I understand that my country will not be truly great if her citizens are not also great.</p>
<p>Patriotism is patient and compassionate. It is not jealous or blind. It does not covet or boast. Patriotism builds up and exhorts. It does not destroy or belittle. It does not promote lies or avoid the truth. Patriotism does not demand perfection, but asks you to always give your best.</p>
<p>May we all strive to be better patriots.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/4VYJvfOOPJ4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/07/on-patriotism/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/07/on-patriotism/</feedburner:origLink></item>
		<item>
		<title>How To Develop Patience</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/dmvNaD0iJsU/</link>
		<comments>http://www.thecabal.org/2010/06/how-to-develop-patience/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 11:10:33 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Health]]></category>
		<category><![CDATA[Karate]]></category>
		<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/06/how-to-develop-patience/</guid>
		<description><![CDATA[“Lord, give me patience, and give it to me now!” I’m willing to bet most of of us have heard that joke (or some variant) at some point in our lives, but it underscores a serious question: how does one &#8230; <a href="http://www.thecabal.org/2010/06/how-to-develop-patience/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>“Lord, give me patience, and give it to me <em>now</em>!” I’m willing to bet most of of us have heard that joke (or some variant) at some point in our lives, but it underscores a serious question: how <em>does</em> one go about learning to exercise patience?</p>
<p>I’m no guru or saint, so I can’t answer the question for you, but for me it turns out the answer comes from a combination of two life experiences: my six and a half years at 3Sharp, and the nearly two years I’ve been studying karate. At 3Sharp, I learned how to do a lot of things that were beyond my initial comfort zone, developing deep technical presentations (and delivering them to large audiences), scoping and producing large technical projects such as books and whitepapers, and doing a large variety of work from hands-on consulting to research projects.</p>
<p>I’ve talked in previous posts about the physical benefits I’ve seen from karate. However, two weeks ago I tested for my 5th kyu belt (the second of my three green belts) and that experience made me aware of some deep changes in my personality and character. The step from 6th kyu to 5th kyu was particularly hard for me, and it took some time to sort out the two reasons why.</p>
<p>The obvious cause was schedule. I took two months off of karate at the beginning of the year, due to a combination of factors. That’s a hard gap to come back from; I had problems after the three week hiatus I took because of the MCM class. After two months, I just didn’t feel that my presence in class was doing any good until I had the privilege of watching two of my friends from the Mukilteo dojo earn their black belts one Saturday morning in February. I walked away from that experience feeling a new level of commitment to karate. <em>After all</em>, I told myself at that point<em>, if I study hard, I’ll get to 5th kyu sooner or later, and that’s half-way to black belt!</em></p>
<p>The other cause was technical. The test kata for 5th kyu (Pinan Shodan) is the karateka’s first introduction<strong>[1]</strong> to a well-known and complicated set of katas, and while most of it seems to be straightforward, there’s a lot boiling up from underneath the surface. Carlos Sensei began introducing us to a series of drills based around Pinan Shodan that unpack a lot of useful theory and practice from the first eight moves of the kata. There’s this very difficult pivot/kick/double punch move right in there (I dub it UberHardMove) that is a key element of the kata, and I was having a hard time getting the pivot, kick, and punches all coordinated together and working the right way without falling on my ass. In fact, I had such a difficult time with it that I can remember sometime around the end of December thinking that maybe I’d found the wall beyond which my lack of coordination was not going to let me pass. In addition, there’s some pretty gnarly tuite that goes along with all of this and I found that I felt horribly weak on my tuite all around, let alone with the techniques I was supposed to able to demonstrate some proficiency at.</p>
<p>What ended up happening, though, was that the two-month time-out did me unexpected good. I didn’t go to class during that period, but I kept practicing karate around the house. (Just ask Steph and the kids; they’ll tell you that it can be difficult to get me to knock it off and stop interfering with whatever they’re trying to do.) And what I did during that time was to take UberHardMove and break it down into components, the way I had previously been shown as a blue belt<strong>[2]</strong>. I combined that with specific suggestions given to me by both Carlos Sensei and Liam Sensei and picked UberHardMove down to bare bones.</p>
<p>When I finally came back to class, I came back finally believing that the whole concept of me one day earning my black belt wasn’t the world’s best joke. I came back believing that I’d already invested nearly two years and I was willing to invest even more. I didn’t have to be perfect; I gave myself permission to suck. I knew that I was going to make stupid mistakes that I wouldn’t make (like mixing up techniques in lower level katas) if I’d been in class the whole time. I knew that my endurance was going to be awful. I knew that there was a lot of rust to scrub off and deal with and that it wasn’t going to happen immediately. I knew that I needed to let my instructors know that I desperately needed help with my tuite techniques. I knew that I was going to have to have them explain the same things about UberHardMove multiple times until I finally grokked it. In short, <em>I accepted failure without accepting being a failure</em>.</p>
<p>That was March. I tested near the end of May. Somewhere in there, I became proficient with my tuite. I learned a measure of peace with UberHardMove; I’m still not great at it, but I mastered it enough to move on to the next lessons<strong>[3]</strong>. Perfection is in fact is a bad word in our household. We think the concept of perfection is one of the worst lies that the Adversary ever got humans to accept.</p>
<p>When you stop trying to be perfect – when you give yourself permission to have flaws and failings and determine to be honest about them and learn from them rather than try to cover them up – something amazing tends to happen. You accept “doing your best” instead of “doing it better than everyone else.” You accept “that’s enough for now” instead of “that’s not good enough yet.” You develop a sense of faith that over time, your progress will trend upwards. With that faith, you can draw valuable lessons from your mistakes and missteps. You stop fighting the basic physical and neurological limits of how your body and mind acquire new proficiencies and start working within your limits to expand them instead of struggling against them to tear them down with brute force. You acquire patience – new and fledgling, but the seed of something that starts to affect how you deal with all of your life.</p>
<p>I’m no paragon of patience, but I can see clear changes. For example, I’ve been spending far less time playing Call of Duty on the Xbox in the last month or so. I have a better understanding of how that experience has been frustrating instead of fun and relaxing and I’m less willing to give in to that anymore.</p>
<p>I don’t know where this will go ultimately or at what pace. I can honestly say, though, that I’m okay with that. Will I get my black belt? I don’t know; there are many circumstances that could prevent or delay that. However, I certainly want to, and I finally know I’m capable of doing it, so I wouldn’t bet against me. But I also know that’s just another waypoint on the journey. It’s not an end. It’s a marker where I can say, “See what I’ve done so far? That’s pretty cool. Now I’ve learned enough that I can get serious about learning this stuff and helping pass it on to others.”</p>
<p>Two months ago, I’d have said I couldn’t wait for that day. You know what? That’s not true. I <em>can</em> wait. I <em>will</em> wait. And I will do so profitably.</p>
<p><strong><em><strong>[1]</strong> In our style, at least. There are other styles that place another Pinan kata before Pinan Shodan.</em></strong></p>
<p><em><strong>[2]</strong> In a nice twist of synchronicity, the person who showed me was at the time was a helpful brown belt from Mukilteo who ended up being one of the two black belts I got to watch test. He has continued to be an amazing source of inspiration for me through what is now a large number of discouraging situations. Hi, Max!</em></p>
<p><em><strong>[3]</strong> It’s not going away; I still practice it, and I know that it will get better as I learn more. In fact, those final four moves in Pinan Nidan where I’m in a cat stance might be helpful here, hmmm…</em></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/dmvNaD0iJsU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/06/how-to-develop-patience/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/06/how-to-develop-patience/</feedburner:origLink></item>
		<item>
		<title>The Disk’s The Thing! Exchange 2010 Storage Essays, part 2</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/R2iKbVAyoO0/</link>
		<comments>http://www.thecabal.org/2010/05/the-disks-the-thing-exchange-2010-storage-essays-part-2/#comments</comments>
		<pubDate>Wed, 05 May 2010 23:01:20 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/05/the-disks-the-thing-exchange-2010-storage-essays-part-2/</guid>
		<description><![CDATA[Greetings, readers! When I first posted From Whence Redundancy? (part 1 of this series of essays on Exchange 2010 storage) I’d intended to follow up with other posts a bit faster than I have been. So much for intentions; let &#8230; <a href="http://www.thecabal.org/2010/05/the-disks-the-thing-exchange-2010-storage-essays-part-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Greetings, readers! When I first posted <a href="http://www.thecabal.org/2010/01/from-whence-redundancy-exchange-2010-storage-essays-part-1/">From Whence Redundancy?</a> (part 1 of this series of essays on Exchange 2010 storage) I’d intended to follow up with other posts a bit faster than I have been. So much for intentions; let us carry on.</p>
<p>In part 1, I began the process of talking about how I think the new Exchange 2010 storage options will play out in live Exchange deployments over the next several years. The first essay in this series discussed what is I believe the fundamental question at the heart an Exchange 2010 storage design: at what level will you ensure the redundancy of your Exchange mailbox databases? The traditional approach has used RAID at the disk level, but Exchange 2010 DAGs allow you to deploy mailbox databases in JBOD configurations. While I firmly believe that’s the central question, answering it requires us to dig under the hood of storage.</p>
<p>With Exchange 2010, Microsoft specifically designed Exchange mailbox servers to be capable of using the lowest common denominator of server storage: a directly attached storage (DAS) array of 7200 RPM SATA disks in a Just a Box of Disks (JBOD) configuration (what I call <strong>DJS</strong>). Understanding why they’ve made this shift requires us to understand more about the disk drive technology. In this essay, part 2 of this series, let’s talk about disk technology and find out how Fibre Channel (FC), Serially Attached SCSI (SAS), and Serial Advanced Technology Attachment (SATA) disk drives are the same – and more importantly, what slight differences they have and what that means for your Exchange systems.</p>
<p><a href="http://www.thecabal.org/wp-content/uploads/2010/05/ExchangeStorageSATAvsSAS.png"><img style="display: block; float: none; margin-left: auto; margin-right: auto; border: 0px;" title="Exchange Storage SATA vs SAS" src="http://www.thecabal.org/wp-content/uploads/2010/05/ExchangeStorageSATAvsSAS_thumb.png" border="0" alt="Exchange Storage SATA vs SAS" width="244" height="184" /></a></p>
<p>So here’s the first dirty little secret: for the most part, all disks are the same. Regardless of what type of bus they use, what form factor they are, what capacity they are, and what speed they rotate at, all modern disks use the same construction and principles:</p>
<ul>
<li>They all have one or more thin rotating <em>platters</em> coated with magnetic media; the exact number varies by form factor and capacity. Platters look like mini CD-ROM disks, but unlike CDs, platters are typically double-sided. Platters have a <em>rotational speed</em> measured in revolutions per minute (RPMs).</li>
<li>Each side of a platter has an associated <em>read-write head</em>. These heads are on a single-track arm that moves in toward the hub of the platter or out towards the rim. The heads do not touch the platter, but float very close to the surface. It takes a measurable fraction of a second for the head to relocate from one position to another; this is called its <em>seek time</em>.</li>
<li>The circle described by the head’s position on the platter is called a <em>track</em>. In a multi-platter disk, the heads move in synchronization (there’s no independent tracking per platter or side). As a result, each head is on the same track at the same time, describing a <em>cylinder</em>.</li>
<li>Each drive unit has embedded electronics that implement the bus protocol, control the rotational speed of the platters, and translate I/O requests into the appropriate commands to the heads. Even though there are different flavors, they all perform the same basic functions.</li>
</ul>
<p>If you would like a more in-depth primer on how disks work, <a href="http://computer.howstuffworks.com/hard-disk.htm">I recommend starting with this article</a>. I’ll wait for you.</p>
<p>Good? Great! So that’s how all drives are the same. It’s time to dig into the differences. They’re relatively small, but small differences have a way of piling up. Take a look at Table 1 which summarizes the differences between various FC, SATA, and SAS disks, compared with legacy PATA 133 (commonly but mistakenly referred to as IDE) and SCSI Ultra 320 disks:</p>
<p><strong>Table 1: Disk parameter differences by disk bus type</strong></p>
<table style="text-align: center;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="103" valign="top"><strong>Type</strong></td>
<td width="144" valign="top"><strong>Max wire bandwidth</strong><strong>(Mbit/s)</strong></td>
<td width="126" valign="top"><strong>Max data transfer</strong><strong>(MB/s)</strong></td>
</tr>
<tr>
<td width="103" valign="top">PATA 133</td>
<td width="144" valign="top">1,064</td>
<td width="126" valign="top">133.5</td>
</tr>
<tr>
<td width="103" valign="top">SCSI Ultra 320</td>
<td width="144" valign="top">2,560</td>
<td width="126" valign="top">320</td>
</tr>
<tr>
<td width="103" valign="top">SATA-I</td>
<td width="144" valign="top">1,500</td>
<td width="126" valign="top">150</td>
</tr>
<tr>
<td width="103" valign="top">SATA-II</td>
<td width="144" valign="top">3,000</td>
<td width="126" valign="top">300</td>
</tr>
<tr>
<td width="103" valign="top">SATA 6 Gb/s</td>
<td width="144" valign="top">6,000</td>
<td width="126" valign="top">600</td>
</tr>
<tr>
<td width="103" valign="top">SAS 150</td>
<td width="144" valign="top">1,500</td>
<td width="126" valign="top">150</td>
</tr>
<tr>
<td width="103" valign="top">SAS 300</td>
<td width="144" valign="top">3,000</td>
<td width="126" valign="top">300</td>
</tr>
<tr>
<td width="103" valign="top">FC (copper)</td>
<td width="144" valign="top">4,000</td>
<td width="126" valign="top">400</td>
</tr>
<tr>
<td width="103" valign="top">FC (optic)</td>
<td width="144" valign="top">10,520</td>
<td width="126" valign="top">2,000</td>
</tr>
</tbody>
</table>
<p> </p>
<p>As of this writing, the most common drive types you’ll see for servers are SATA-II, SAS 300, and FC over copper. Note that while SCSI Ultra 320 drives in theory have a maximum data transfer higher than either SATA-II or SAS 300, in reality that bandwidth is shared among all the devices connected to the SCSI bus; both SATA and SAS have a one-to-one connection between disk and controller, removing contention. Also remember that SATA is only a half-duplex protocol, while SAS is a full-duplex protocol. SAS and FC disks use the full SCSI command set to allow better performance when multiple I/O requests are queued for the drive, whereas SATA uses the ATA command set. Both SAS and SATA implement tagged queuing, although they use two different standards (each of which has its pros and cons).</p>
<p>The second big difference is the average access time of the drive, which is the sum of multiple factors:</p>
<ul>
<li>The <em>average seek time</em> of the heads. The actuator motors that move the heads from track to track are largely the same from drive to drive and thus the time contributed to the drive’s average seek time by just the head movements is roughly the same from drive to drive. What varies is the length of the head move; is it moving to a neighboring track, or is it moving across the entire surface? We can average out small track changes with large track changes to come up with idealized numbers.</li>
<li>The <em>average latency</em> of the platter. How fast the platters are spinning determines how quickly a given sector containing the data to be read (or where new data will be written) will move into position under the head once it’s in the proper track. This is a simple calculation based on the RPM of the platter and the observed average drive latency. We can assume that a given sector will move into position, on average, in no more than half a rotation. This gives us 30 seconds out of each minute of rotation, or 30,000 ms, into which we can divide the drive’s actual rotation.</li>
<li>The overhead caused by the various electronics and queuing mechanisms of the drive electronics, including any power saving measures such as reducing the spin rate of the drive platters. Although electricity is pretty fast and on-board electronics are relatively small circuits, there may be other factors (depending on the drive type) that may introduce delays into the process of fulfilling the I/O request received from the host server.</li>
</ul>
<p>What has the biggest impact is how fast the platter is spinning, as shown in Table 2:</p>
<p><strong>Table 2: Average latency caused by rotation speed</strong></p>
<table style="text-align: center;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="91" valign="top"><strong>Platter RPM</strong></td>
<td width="150" valign="top"><strong>Average latency in ms</strong></td>
</tr>
<tr>
<td width="91" valign="top">7,200</td>
<td width="150" valign="top">4.17</td>
</tr>
<tr>
<td width="91" valign="top">10,000</td>
<td width="150" valign="top">3</td>
</tr>
<tr>
<td width="91" valign="top">12,000</td>
<td width="150" valign="top">2.5</td>
</tr>
<tr>
<td width="91" valign="top">15,000</td>
<td width="150" valign="top">2</td>
</tr>
</tbody>
</table>
<p> </p>
<p>(As an exercise, do the same math on the disk speeds for the average laptop drives. This helps explain why laptop drives are so much slower than even low-end 7,200 RPM SATA desktop drives.)</p>
<p>Rather than painfully take you through the result of all of these tables and calculations step by step, I’m simply going to refer you to work that’s already been done. Once we know the various averages and performance metrics, we can figure out how many I/O operations per second (IOPS) a given drive can sustain on average, according to the type, RPMs, and nature of the I/O (sequential or random). Since Microsoft has already done that work for us as part of the <a href="http://msexchangeteam.com/archive/2009/11/09/453117.aspx">Exchange 2010 Mailbox Role Calculator</a> (version 6.3 as of this writing, I’m going to simply use the values there. Let’s take a look at how all this plays out in Table 3 by selecting some representative values.</p>
<p><strong>Table 3: Drive IOPS by type and RPM</strong></p>
<div>
<table style="width: 352px; height: 210px;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="49" valign="top"><strong>Size</strong></td>
<td width="90" valign="top"><strong>Type</strong></td>
<td width="55" valign="top"><strong>RPM</strong></td>
<td width="172" valign="top"><strong>Average Random IOPS</strong></td>
</tr>
<tr>
<td width="49" valign="top">3.5”</td>
<td width="90" valign="top">SATA</td>
<td width="55" valign="top">5,400</td>
<td width="172" valign="top">50</td>
</tr>
<tr>
<td width="49" valign="top">2.5”</td>
<td width="90" valign="top">SATA</td>
<td width="55" valign="top">5,400</td>
<td width="172" valign="top">55</td>
</tr>
<tr>
<td width="49" valign="top">3.5”</td>
<td width="90" valign="top">SAS</td>
<td width="55" valign="top">5,400</td>
<td width="172" valign="top">52.5</td>
</tr>
<tr>
<td width="49" valign="top">3.5”</td>
<td width="90" valign="top">SAS</td>
<td width="55" valign="top">5,900</td>
<td width="172" valign="top">52.5</td>
</tr>
<tr>
<td width="49" valign="top">3.5”</td>
<td width="90" valign="top">SATA</td>
<td width="55" valign="top">7,200</td>
<td width="172" valign="top">55</td>
</tr>
<tr>
<td width="49" valign="top">2.5”</td>
<td width="90" valign="top">SATA</td>
<td width="55" valign="top">7,200</td>
<td width="172" valign="top">60</td>
</tr>
<tr>
<td width="49" valign="top">3.5”</td>
<td width="90" valign="top">SAS</td>
<td width="55" valign="top">7,200</td>
<td width="172" valign="top">57.5</td>
</tr>
<tr>
<td width="49" valign="top">2.5”</td>
<td width="90" valign="top">SAS</td>
<td width="55" valign="top">7,200</td>
<td width="172" valign="top">62.5</td>
</tr>
<tr>
<td width="49" valign="top">3.5”</td>
<td width="90" valign="top">FC/SCSI/SAS</td>
<td width="55" valign="top">10,000</td>
<td width="172" valign="top">130</td>
</tr>
<tr>
<td width="49" valign="top">2.5”</td>
<td width="90" valign="top">SAS</td>
<td width="55" valign="top">10,000</td>
<td width="172" valign="top">165</td>
</tr>
<tr>
<td width="49" valign="top">3.5”</td>
<td width="90" valign="top">FC/SCSI/SAS</td>
<td width="55" valign="top">15,000</td>
<td width="172" valign="top">180</td>
</tr>
<tr>
<td width="49" valign="top">2.5”</td>
<td width="90" valign="top">SAS</td>
<td width="55" valign="top">15,000</td>
<td width="172" valign="top">230</td>
</tr>
</tbody>
</table>
</div>
<p> </p>
<p>There are three things to note about Table 3.</p>
<ol>
<li>These numbers come from Microsoft’s Exchange 2010 Mailbox Sizing Calculator and are validated across vendors through extensive testing in an Exchange environment. While there may be minor variances between drive model and manufacturers and these number may seem pessimistic according to calculated IOPS number published for individual drives, these are good figures to use in the real world. Using calculated IOPS numbers can lead both to a range of figures, depending on the specific drive model and manufacturer, as well as to overestimating the amount of IOPS the drive will actually provide to Exchange.</li>
<li>For the most part, SAS and FC are indistinguishable from the IOPs point of view. Regardless of the difference between the electrical interfaces, the drive mechanisms and I/O behaviors are comparable.</li>
<li>Sequential IOPS are not listed; they will be quite a bit higher than the random IOPS (that same 7,200RPM SATA drive can provide 300+ IOPS for sequential operations). The reason is simple; although a lot of Exchange 2010 I/O has been converted from random to sequential, there’s still some random I/O going on. That’s going to be the limiting factor.</li>
</ol>
<p>The IOPS listed are per-drive IOPS. When you’re measuring your drive system, remember that the various RAID configurations have their own IOPS overhead factor that will consume a certain number</p>
<p>There are of course some other factors that we need to consider, such as form factor and storage capacity. We can address these according to some generalizations:</p>
<ul>
<li>Since SAS and FC tend to have the same performance characteristics, the storage enclosure tends to differentiate between which technology is used. SAS enclosures can often be used for SATA drives as well, giving more flexibility to the operator. SAN vendors are increasingly offering SAS/SATA disk shelves for their systems because paying the FC toll can be a deal-breaker for new storage systems.</li>
<li>SATA disks tend to have a larger storage capacity than SAS or FC disks. There are reasons for this, but the easiest one to understand is that SAS, being traditionally a consumer technology, has a lower duty cycle and therefore lower quality control specifications that must be met.</li>
<li>SATA disks tend to be offered with lower RPMs than SAS and FC disks. Again, we can acknowledge that quality control plays a part here – the faster a platter spins, the more stringently the drive components need to meet their specifications for a longer period of time.</li>
<li>2.5” drives tend to have lower capacity than their 3.5” counterparts. This makes sense – they have smaller platters (and may have fewer platters in the drive).</li>
<li>2.5” drives tend to use less power and generate less heat than equivalent 3.5” drives. This too makes sense – the smaller platters have less mass, requiring less energy to sustain rotation.</li>
<li>2.5” drives tend to permit a higher drive density in a given storage chassis while using only fractionally more power. Again, this makes sense based on the previous two points; I can physically fit more drives into a given space, sometimes dramatically so.</li>
</ul>
<p>Let’s look at an example. A <a href="http://www.supermicro.com/products/chassis/2U/?chs=826">Supermicro SC826 chassis</a> holds 12 3.5” drives with a minimum of 800W power while the equivalent <a href="http://www.supermicro.com/products/chassis/2U/?chs=216">Supermicro SC216 chassis</a> holds 24 2.5” drives with a minimum of 900W of power in the same 2Us of rack space. Doubling the number of drives makes up for the capacity difference between the 2.5” and 3.5” drives, provides twice as many spindles and allows a greater aggregate IOPS for the array, and only requires 12.5% more power.</p>
<p>The careful reader has noted that I’ve had very little to say about capacity in this essay, other than the observation above that SATA drives tend to have larger capacities, and that 3.5” drives tend to be larger than 2.5” drives. From what I’ve seen in the field, the majority of shops are just now looking at 2.5” drive shelves, so it’s safe to assume 3.5” is the norm. As a result, the 3.5” 7,200 RPM SATA drive represents the lowest common denominator for server storage, and that’s why the Exchange product team chose that drive as the performance bar for DJS configurations.</p>
<p>Exchange has been limited by performance (IOPS) requirements for most of its lifetime; by going after DJS, the product team has been able to take advantage of the fact that the capacity of these drives is the first to grow. This is why I think that Microsoft is betting that you’re going to want to simplify your deployment, aim for big, cheap, slow disks, and let Exchange DAGs do the work of replicating your data.</p>
<p>Now that we’ve talked about <strong>RAID vs. JBOD</strong> and <strong>SATA vs. SAS/FC</strong>, we’ll need to examine the final topic: SAN vs. DAS. Look for that discussion in Part 3, which will be forthcoming.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/R2iKbVAyoO0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/05/the-disks-the-thing-exchange-2010-storage-essays-part-2/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/05/the-disks-the-thing-exchange-2010-storage-essays-part-2/</feedburner:origLink></item>
		<item>
		<title>A Psalm for Karatekas</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/D_AqTtysj1Q/</link>
		<comments>http://www.thecabal.org/2010/04/a-psalm-for-karatekas/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 17:04:44 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Karate]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/?p=1074</guid>
		<description><![CDATA[Last night I went to my first karate class in several weeks. On the way, my brain reinterpreted Psalm 23 from the viewpoint of a karateka. Enjoy. 1 The LORD is my sensei; I shall not fear. 2 He makes &#8230; <a href="http://www.thecabal.org/2010/04/a-psalm-for-karatekas/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Last night I went to my first karate class in several weeks. On the way, my brain reinterpreted Psalm 23 from the viewpoint of a karateka. Enjoy.</p>
<p><strong>1</strong> The LORD is my sensei; I shall not fear.</p>
<p><strong>2</strong> He makes me work out with white belts; he leads me through katas.</p>
<p><strong>3</strong> He perfects my form. He leads me in the path of new techniques for the sake of advancement.</p>
<p><strong>4</strong> Though I walk through the valley of the shadow of death, I fear no evil, for his teachings are with me; my kama and bo staff comfort me.</p>
<p><strong>5</strong> He prepares testing for me in the presence of my fellow karateka; he adorns my waist with new obi, my gi fits better.</p>
<p><strong>6</strong> Surely discipline and health shall follow me all the days of my studies, and I will dwell in the dojo of the LORD forever.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/D_AqTtysj1Q" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/04/a-psalm-for-karatekas/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/04/a-psalm-for-karatekas/</feedburner:origLink></item>
		<item>
		<title>More Exchange blogging with Trace3!</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/jL29pt7z3Ws/</link>
		<comments>http://www.thecabal.org/2010/04/more-exchange-blogging-with-trace3/#comments</comments>
		<pubDate>Wed, 14 Apr 2010 00:30:42 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/04/more-exchange-blogging-with-trace3/</guid>
		<description><![CDATA[I just wanted to drop a quick note to let you all know that I&#8217;ll be cross-posting all of my Exchange related material both here and at the Trace3 blog. The Trace3 blog is a multi-author blog, so you&#8217;ll get &#8230; <a href="http://www.thecabal.org/2010/04/more-exchange-blogging-with-trace3/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I just wanted to drop a quick note to let you all know that I&#8217;ll be cross-posting all of my Exchange related material both here <em>and</em> at <a href="http://www.trace3.com/blog/">the Trace3 blog</a>. The Trace3 blog is a multi-author blog, so you&#8217;ll get not only all my Exchange-related content, but you&#8217;ll get a variety of other interesting discussions from a number of my co-workers.</p>
<p>To kick it off, I&#8217;ve updated my <em>From Whence Redundancy? Exchange 2010 Storage Essays, Part 1</em> post with some new material on database reseed times and reposted it there in its entirety. Don&#8217;t worry, <a href="http://www.thecabal.org/2010/01/from-whence-redundancy-exchange-2010-storage-essays-part-1/">I&#8217;ve also updated it here</a>.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/jL29pt7z3Ws" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/04/more-exchange-blogging-with-trace3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/04/more-exchange-blogging-with-trace3/</feedburner:origLink></item>
		<item>
		<title>What Exchange 2010 on Windows Datacenter Means</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/AHPx6JFooZE/</link>
		<comments>http://www.thecabal.org/2010/02/what-exchange-2010-on-windows-datacenter-means/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 19:35:00 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/?p=1053</guid>
		<description><![CDATA[Exchange Server has historically come in two flavors for many versions – Standard Edition and Enterprise Edition. The main difference this license change made for you was the maximum number of supported mailbox databases as shown in Table 1: Version &#8230; <a href="http://www.thecabal.org/2010/02/what-exchange-2010-on-windows-datacenter-means/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Exchange Server has historically come in two flavors for many versions – Standard Edition and Enterprise Edition. The main difference this license change made for you was the maximum number of supported <em>mailbox</em> databases as shown in Table 1:</p>
<div style="text-align: center;">
<table border="1" cellspacing="0" cellpadding="2" width="400" align="center">
<tbody>
<tr>
<td style="text-align: center;" width="133" valign="top"><strong>Version</strong></td>
<td style="text-align: center;" width="133" valign="top"><strong>Standard Edition</strong></td>
<td style="text-align: center;" width="133" valign="top"><strong>Enterprise Edition</strong></td>
</tr>
<tr>
<td style="text-align: center;" width="133" valign="top">Exchange 2003</td>
<td style="text-align: center;" width="133" valign="top">1 (75GB max)</td>
<td style="text-align: center;" width="133" valign="top">20</td>
</tr>
<tr>
<td style="text-align: center;" width="133" valign="top">Exchange 2007</td>
<td style="text-align: center;" width="133" valign="top">5</td>
<td style="text-align: center;" width="133" valign="top">50</td>
</tr>
<tr>
<td style="text-align: center;" width="133" valign="top">Exchange 2010</td>
<td style="text-align: center;" width="133" valign="top">5</td>
<td style="text-align: center;" width="133" valign="top">100</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: center;"><strong>Table 1: Maximum databases per Exchange editions</strong></p>
<p>However, the Exchange Server edition is not directly tied to the Windows Server edition:</p>
<ul>
<li>For Exchange 2003 failover cluster mailbox servers, Exchange 2007 SCC/CCR environments <em>[1]</em>, and  Exchange 2010 DAG environments, you need Windows Server Enterprise Edition in order to get the MSCS cluster component framework.</li>
<li>For Exchange 2003 servers running purely as bridgeheads or front-end servers, or Exchange 2007/2010 HT, CAS, ET, and UM servers, you only need Windows Server Standard Edition.</li>
</ul>
<p>I’ve seen some discussion around the fact that Exchange 2010 will install on Windows Server 2008 Datacenter Edition and Windows Server 2008 R2 Datacenter Edition, even though it’s not supported there and <a href="http://technet.microsoft.com/en-us/library/aa996719.aspx" target="_blank">is not listed in the Operating System requirements section of the TechNet documentation</a>.</p>
<p><strong>HOWEVER</strong>…if we look at the <strong><a href="http://www.microsoft.com/exchange/2010/en/us/Licensing.aspx#ExServPre" target="_blank">Prerequisites for Exchange 2010 Server section of the Exchange Server 2010 Licensing site</a></strong>, we now see that Datacenter edition is, in fact listed as shown in Figure 1:</p>
<p style="text-align: center;"><a href="http://www.thecabal.org/wp-content/uploads/2010/02/image.png"><img class="aligncenter" style="display: inline; border: 0px;" title="Exchange 2010 server license comparison" src="http://www.thecabal.org/wp-content/uploads/2010/02/image_thumb.png" border="0" alt="Exchange 2010 server license comparison" width="244" height="107" /></a></p>
<p style="text-align: center;"><strong>Figure 1: Exchange 2010 server license comparison</strong></p>
<p>This is pretty cool, and the appropriate TechNet documentation is in the process of being updated to reflect this. What this means is that you can deploy Exchange 2010 on Windows Server Datacenter Edition; the differences between editions of <a href="http://www.microsoft.com/windowsserver2008/en/us/r2-editions-overview.aspx" target="_blank">Windows Server 2008 R2 are found here</a>.<em>[2]</em> If you take a quick scan through the various feature comparison charts in the sidebar, you might wonder why anyone would want to install Exchange 2010 on Windows Server Datacenter Edition; it’s more costly and seems to provide the same benefits. However, take a look at the <a href="http://www.microsoft.com/windowsserver2008/en/us/r2-compare-specs.aspx" target="_blank">technical specifications comparison</a>; this is, I believe, the meat of the matter:</p>
<ul>
<li>
<div>Both editions give you a maximum of 2 TB – more than you can realistically throw at Exchange 2010.</div>
</li>
<li>
<div>Enterprise Edition gives you support for a maximum eight (8) x64 CPU sockets, while Datacenter Edition gives you sixty-four (64). With quad-core CPUs, this means <strong>a total of 32 cores under Enterprise vs. 256 cores under Datacenter</strong>.</div>
</li>
<li>
<div>With the appropriate hardware, you can hot-add memory in Enterprise Edition. However, <strong>you can’t perform a hot-replace, nor can you hot-add or hot-replace CPUs under Enterprise. With Datacenter, you can hot-add and hot-remove both memory and CPUs</strong>.</div>
</li>
</ul>
<p>These seem to be compelling in many scenarios at first glance, unless you’re familiar with the recommended maximum configurations for Exchange 2010 server sizing. IIRC, the maximum CPUs that are recommended for most Exchange 2010 server configurations (including multirole servers) would be 24 cores – which fits into the 8 socket limitation of Enterprise Edition while using quad core CPUs.</p>
<p>With both Intel and AMD now offering hexa-core (6 core) CPUs, you can move up to 48 cores in Enterprise Edition. This is more than enough for any practical deployment of Exchange Server 2010 I can think of at this time, unless future service packs drastically change the CPU performance factors. Both Enterprise and Datacenter give you a ceiling of 2TB of RAM, which is far greater than required by even the most aggressively gigantic mailbox load I’d want to place on a single server. I’m having a difficult time seeing how anyone could realistically build out an Exchange 2010 server that goes beyond the performance and scalability limits of Enterprise Edition in any meaningful way.</p>
<p>In fact, I can think of only three reasons someone would want to run Exchange 2010 on Windows Server Datacenter Edition:</p>
<ul>
<li>
<div>You have spare Datacenter Edition licenses, aren’t going to use them, and don’t want to buy more Enterprise Edition licenses. This must be a tough place to be in, but it can happen under certain scenarios.</div>
</li>
<li>
<div>You have a very high server availability requirements and require the hot-add/hot-replace capabilities. This will get costly – the server hardware that supports this isn’t cheap – but if you need it, you need it.</div>
</li>
<li>
<div>You’re already running a big beefy box with Datacenter and virtualization<em>[3]</em>. The box has spare capacity, so you want to make use of it.</div>
</li>
</ul>
<p>The first two make sense. The last one, though, I’d be somewhat leery of doing. Seriously, think about this – I’m spending money on monstrous hardware with awesome fault tolerance capabilities, I’ve forked over for an OS license<em>[4]</em> that gives me the right to unlimited virtual machines, and now I’m going to clutter up my disaster recovery operations by mixing Exchange and other applications (including virtualization) in the same host OS instance? That may be great for a lab environment, but I’d have a long conversation with any customer who wanted to do this under production. Seriously, just spin up a new VM, use Windows Server Enterprise Edition, and go to town. The loss of hardware configuration flexibility I get from going virtual is less than I gain by compartmentalizing my Exchange server to its own machine, along with the ability to move that virtual machine to any virtualization host I have.</p>
<p>So, there you have it: Exchange 2010 can now be run on Windows Server Datacenter Edition, which means yay! for options. But in the end, I don’t expect this to make a difference for any of the deployments I’m like to be working on. This is a great move for a small handful of customers who really need this.</p>
<p><em><strong>[1]</strong> <em>MSCS is not required for Exchange 2007 SCR, although manual target activation can be easier in some scenarios if your target is configured as a single passive node cluster.</em></em></p>
<p><em><strong>[2] </strong>From what I can tell, the same specs seem to be valid for Windows Server 2008, with the caveat that Windows Server 2008 R2 doesn’t offer a 32-bit version so the chart doesn’t give that information. However, since Exchange 2010 is x64 only, this is a moot point.</em></p>
<p><em><strong>[3]</strong> This is often an attractive option, since you can hosted an unlimited number of Windows Server virtual machines without having to buy further Windows Server licenses for them.</em></p>
<p><em><strong>[4] </strong>Remember that Datacenter is not licensed at a flat cost per server like Enterprise is; it&#8217;s licensed per socket. The beefier the machine you run it on, the more you pay.</em></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/AHPx6JFooZE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/02/what-exchange-2010-on-windows-datacenter-means/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/02/what-exchange-2010-on-windows-datacenter-means/</feedburner:origLink></item>
		<item>
		<title>Things They Forgot</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/38nxtpi0nlM/</link>
		<comments>http://www.thecabal.org/2010/01/things-they-forgot/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 23:10:49 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Spirituality]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/01/things-they-forgot/</guid>
		<description><![CDATA[Pat Robertson’s comments on Haiti basically boil down to “they got what was coming to them.” Mr. Robertson, I think you forgot Matthew 25:34-46 (KJV): 34Then shall the King say unto them on his right hand, Come, ye blessed of &#8230; <a href="http://www.thecabal.org/2010/01/things-they-forgot/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[</p>
<p><a href="http://www.dailymotion.com/video/xbukkh_pat-robertson-on-haiti-disaster_news" target="_blank">Pat Robertson’s comments on Haiti</a> basically boil down to “they got what was coming to them.” Mr. Robertson, I think you forgot Matthew 25:34-46 (KJV):</p>
<blockquote><p><sup>34</sup>Then shall the King say unto them on his right hand, Come, ye blessed of my Father, inherit the kingdom prepared for you from the foundation of the world: <sup>35</sup>For I was an hungred, and ye gave me meat: I was thirsty, and ye gave me drink: I was a stranger, and ye took me in: <sup>36</sup>Naked, and ye clothed me: I was sick, and ye visited me: I was in prison, and ye came unto me. <sup>37</sup>Then shall the righteous answer him, saying, Lord, when saw we thee an hungred, and fed thee? or thirsty, and gave thee drink? <sup>38</sup>When saw we thee a stranger, and took thee in? or naked, and clothed thee? <sup>39</sup>Or when saw we thee sick, or in prison, and came unto thee? <sup>40</sup>And the King shall answer and say unto them, Verily I say unto you, Inasmuch as ye have done it unto one of the least of these my brethren, ye have done it unto me.</p>
<p><sup>41</sup>Then shall he say also unto them on the left hand, Depart from me, ye cursed, into everlasting fire, prepared for the devil and his angels: <sup>42</sup>For I was an hungred, and ye gave me no meat: I was thirsty, and ye gave me no drink: <sup>43</sup>I was a stranger, and ye took me not in: naked, and ye clothed me not: sick, and in prison, and ye visited me not. <sup>44</sup>Then shall they also answer him, saying, Lord, when saw we thee an hungred, or athirst, or a stranger, or naked, or sick, or in prison, and did not minister unto thee? <sup>45</sup>Then shall he answer them, saying, Verily I say unto you, Inasmuch as ye did it not to one of the least of these, ye did it not to me. <sup>46</sup>And these shall go away into everlasting punishment: but the righteous into life eternal.</p>
</blockquote>
<p>Rush Limbaugh may have forgotten the above as well. <a href="http://mediamatters.org/research/201001130047" target="_blank">His claims that Obama is using humanitarian aid for political profit</a> definitely seem to have forgotten Matthew 7:15-20:</p>
<blockquote><p>15 Beware of false prophets, which come to you in sheep&#8217;s clothing, but inwardly they are ravening wolves. 16 Ye shall know them by their fruits. Do men gather grapes of thorns, or figs of thistles? 17 Even so every good tree bringeth forth good fruit; but a corrupt tree bringeth forth evil fruit. 18 A good tree cannot bring forth evil fruit, neither can a corrupt tree bring forth good fruit. 19 Every tree that bringeth not forth good fruit is hewn down, and cast into the fire. 20 Wherefore by their fruits ye shall know them.</p>
</blockquote>
<p><font color="#555555">If that last passage seems a bit murky, here’s a quote from C. S. Lewis’s <em>The Last Battle</em> (the last book of the Chronicles of Narnia) that I have always loved. The speaker is a Calormene soldier, Emeth, who has had a life-changing encounter with Aslan during the last hours of Narnia:</font></p>
<blockquote><p>He answered, Child, all the service thou hast done to Tash, I account as service done to me. Then by reasons of my great desire for wisdom and understanding, I overcame my fear and questioned the Glorious One and said, Lord, is it then true, as the Ape said, that thou and Tash are one? The Lion growled so that the earth shook (but his wrath was not against me) and said, It is false. Not because he and I are one, but because we are opposites, I take to me the services which thou hast done to him. For I and he are of such different kinds that no service which is vile can be done to me, and none which is not vile can be done to him. Therefore if any man swear by Tash and keep his oath for the oath&#8217;s sake, it is by me that he had truly sworn, though he know it not, and it is I who reward him. And if any man do a cruelty in my name, then, though he says the name Aslan, it is Tash whom he serves and by Tash his deed is accepted. Dost thou understand, Child?</p>
</blockquote>
<p><font color="#555555">By their fruits ye shall know them…whatever their claims.</font></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/38nxtpi0nlM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/01/things-they-forgot/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/01/things-they-forgot/</feedburner:origLink></item>
		<item>
		<title>Poor Google? Not.</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/NmtY725oy6g/</link>
		<comments>http://www.thecabal.org/2010/01/poor-google-not/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 21:17:02 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Politics]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/01/poor-google-not/</guid>
		<description><![CDATA[Since yesterday, the Net has been abuzz because of Google’s blog posting about their discovery they were being hacked by China. Almost every response I’ve seen has focused on the attempted hacking of the mailboxes of Chinese human rights activists. &#8230; <a href="http://www.thecabal.org/2010/01/poor-google-not/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Since yesterday, the Net has been abuzz because of <a href="http://googleblog.blogspot.com/2010/01/new-approach-to-china.html" target="_blank">Google’s blog posting about their discovery they were being hacked by China</a>. Almost every response I’ve seen has focused on the attempted hacking of the mailboxes of Chinese human rights activists.</p>
<p>That’s <em>exactly</em> where Google wants you to focus.</p>
<p>Let’s take a closer look at their blog post.</p>
<p>Paragraph 1:</p>
<blockquote><p>In mid-December, we detected a highly sophisticated and targeted attack on our corporate infrastructure originating from China that resulted in the theft of intellectual property from Google.</p>
</blockquote>
<p>Paragraph 2:</p>
<blockquote><p>As part of our investigation we have discovered that at least twenty other large companies from a wide range of businesses&#8211;including the Internet, finance, technology, media and chemical sectors&#8211;have been similarly targeted.</p>
</blockquote>
<p><font color="#555555">Whoa. That’s some heavy-league stuff right there. Coordinated, targeted commercial espionage across a variety of vertical industries. Google first accuses China of stealing its intellectual property, then says that they weren’t the only ones. Mind you, industry experts – including the <a href="http://en.wikipedia.org/wiki/Titan_Rain" target="_blank">United States government</a>– <a href="http://news.sky.com/skynews/Home/World-News/China-Denies-Internet-Hacking-Network-System-GhostNet-Used-Worldwide-On-Government-Computers/Article/200903415251712?lpos=World_News_Article_Related_Content_Region_8&amp;lid=ARTICLE_15251712_China_Denies_Internet_Hacking_Network_System_GhostNet_Used_Worldwide_On_Government_Computers" target="_blank">have</a> <a href="http://www.eweek.com/c/a/Security/The-Secret-ChinaUS-Hacking-War/" target="_blank">been</a> <a href="http://blogs.zdnet.com/gadgetreviews/?p=477" target="_blank">saying</a> <a href="http://news.zdnet.com/2100-1009_22-145763.html" target="_blank">the</a> <a href="http://news.cnet.com/Security-experts-lift-lid-on-Chinese-hack-attacks/2100-7349_3-5969516.html" target="_blank">same</a> <a href="http://clearwisdom.net/html/articles/2003/9/20/40480.html" target="_blank">thing</a> <a href="http://lists.jammed.com/ISN/2004/06/0105.html" target="_blank">for</a> <a href="http://online.wsj.com/article/SB123914805204099085.html?mod=googlenews_wsj" target="_blank">years</a>. Cries of ‘China hacked us!” happen relatively frequently in the IT security industry, enough so that it blends into the background noise after awhile.</font></p>
<p><font color="#555555">My question is why, exactly, Google thought this wouldn’t happen to them? They’re a big fat juicy target on many levels. Gmail with thousands upon thousands of juicy mailboxes? Check! Search engine code and data that allows sophisticated monitoring and manipulation of Internet queries? Check! Cloud-based office documents that just might contain some competitive value? Check!</font></p>
<p><font color="#555555">My second question is, why, exactly, is Google trying to shift the focus of the story from the IP theft (which by their own press report was successful) and cloak their actions in the “oh, noes, China tried to grab dissidents’ email” moral veil they’re using?</font></p>
<p><font color="#555555">Paragraph 3:</font></p>
<blockquote><p>Second, we have evidence to suggest that a primary goal of the attackers was accessing the Gmail accounts of Chinese human rights activists. Based on our investigation to date we believe their attack did not achieve that objective. Only two Gmail accounts appear to have been accessed, and that activity was limited to account information (such as the date the account was created) and subject line, rather than the content of emails themselves.</p>
</blockquote>
<p><font color="#555555"><strong>Two accounts</strong>, people, and the attempt wasn’t even fully successful. And the moral outrage shimmering from the screen in Paragraph 4, when Google says that “dozens” of accounts were accessed by third parties <em>not through any sort of security flaw in Google</em>, but rather through what is probably malware, is enough to knock you over.</font></p>
<p><font color="#555555">Really, Google? You’re just now tumbling to the fact that people’s GMail accounts are getting hacked through malware?</font></p>
<p><font color="#555555">I don’t buy the moral outrage. I think the meat of the matter is back in paragraph 1. I believe that the rest of the outrage is a smokescreen to repaint Google into the moral high ground for their actions, when from the sidelines here it certainly looks like Google chose knowingly to play with fire and is now suddenly outraged that they, too, got burned.</font></p>
<p><font color="#555555">Google, you have enough people willing to play along with your attempt to be the victim. I’m not one of them. You compromised human rights principles in 2006 and knowingly put your users into harm’s way. “Do no evil,” my ass.</font></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/NmtY725oy6g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/01/poor-google-not/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/01/poor-google-not/</feedburner:origLink></item>
		<item>
		<title>From Whence Redundancy? Exchange 2010 Storage Essays, part 1</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/ZEZgWFiF5EE/</link>
		<comments>http://www.thecabal.org/2010/01/from-whence-redundancy-exchange-2010-storage-essays-part-1/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 09:20:07 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/01/from-whence-redundancy-exchange-2010-storage-essays-part-1/</guid>
		<description><![CDATA[Updated 4/13 with improved reseed time data provided by item #4 in the Top 10 Exchange Storage Myths blog post from the Exchange team. Over the next couple of months, I’d like to slowly sketch out some of the thoughts &#8230; <a href="http://www.thecabal.org/2010/01/from-whence-redundancy-exchange-2010-storage-essays-part-1/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>Updated 4/13 with improved reseed time data provided by item #4 in the </strong><strong><a href="http://msexchangeteam.com/archive/2010/03/29/454443.aspx" target="_blank">Top 10 Exchange Storage Myths</a></strong><strong> blog post from the Exchange team. </strong></p>
<p>Over the next couple of months, I’d like to slowly sketch out some of the thoughts and impressions that I’ve been gathering about Exchange 2010 storage over the last year or so and combine them with the specific insights that I’m gaining at my new job. In this inaugural post, I want to tackle what I have come to view as the fundamental question that will drive the heart of your Exchange 2010 storage strategy: will you use a RAID configuration or will you use a JBOD configuration?</p>
<p>In the interests of full disclosure, the company I work for now is a strong NetApp reseller, so of course my work environment is conducive to designing Exchange in ways that make it easy to sell the strengths of NetApp kit. However, part of the reason I picked this job is precisely because I agree with how they address Exchange storage and how I think the Exchange storage paradigm is going to shake out in the next 3-5 years as more people start deploying Exchange 2010.</p>
<p>In Exchange 2010, Microsoft re-designed the Exchange storage system to target what we can now consider to be the lowest common denominator of server storage: a directly attached storage (DAS) array of 7200 RPM SATA disks in a Just a Box of Disks (JBOD) configuration. This DAS/JBOD/SATA (what I will now call <strong>DJS</strong>) configuration has been an unworkable configuration for Exchange for almost its entire lifetime:</p>
<ul>
<li>The DAS piece certainly worked for the initial versions of Exchange; that’s what almost all storage was back then. Big centralized SANs weren’t part of the commodity IT server world, reserved instead for the mainframe world. Server administrators managed server storage. The question was what kind of bus you used to attach the array to the server. However, as Exchange moved to clustering, it required some sort of shared storage. While a shared SCSI bus was possible, it not only felt like a hack, but also didn’t scale well beyond two nodes.</li>
<li>SATA, of course, wasn’t around back in 1996; you had either IDE or SCSI. SCSI was the serious server administrator’s choice, providing better I/O performance for server applications, as well as faster bus speeds. SATA, and its big brother SAS, both are derived from the lessons that years of SCSI deployments have provided. Even for Exchange 2007, though, SATA’s poor random I/O performance made it unsuitable for Exchange storage. You had to use either SAS or FC drives.</li>
<li>RAID has been a requirement for Exchange deployments, historically, for two reasons: to combine enough drive spindles together for acceptable I/O performance (back when disks were smaller than mailbox databases), and to ensure basic data redundancy. Redundancy was especially important once Exchange began supporting shared storage clustering and required both aggregate I/O performance only achievable with expensive disks and interfaces as well as the reduced chance of a storage failure being a single point of failure.</li>
</ul>
<p>If you look at the marketing material for Exchange 2010, you would certainly be forgiven for thinking that DJS is the only smart way to deploy Exchange 2010, with SAN, RAID, and non-SATA systems supported only for those companies caught in the mire of legacy deployments. However, this isn’t at all true. There are a growing number of Exchange experts (and not just those of us who either work for storage vendors or resell their products) who think that while DJS is certainly an interesting option, it’s not one that’s a good match for every customer.</p>
<p>In order to understand why DJS is truly possible in Exchange 2010, and more importantly begin to understand where DJS configurations are a good fit and what underlying conditions and assumptions you need to meet in order to get the most value from DJS, we need to separate these three dimensions and discuss them separately.</p>
<p style="text-align: center;"><a href="http://www.thecabal.org/wp-content/uploads/2010/01/ExchangeStorageJBODvsRAID.png"><img class="aligncenter" style="display: inline; border-width: 0px;" title="JBOD vs RAID" src="http://www.thecabal.org/wp-content/uploads/2010/01/ExchangeStorageJBODvsRAID_thumb.png" border="0" alt="JBOD vs RAID" width="244" height="184" /></a></p>
<p style="text-align: left;">While I will go into more detail on all three dimensions at later date, I want to focus on the JBOD vs.. RAID question now. If you need some summaries, then check out fellow Exchange MVP (and NetApp consultant) <a href="http://blogs.netapp.com/msenviro/2009/06/fas-the-new-das-using-fas-in-a-das-configuration-for-exchange.html" target="_blank">John Fullbright’s post on the economics of DAS vs. SAN</a> as well as <a href="http://www.msteched.com/online/view.aspx?tid=37c931bf-db0c-40d6-9cd5-8a3fb468ac8d" target="_blank">Microsoft’s Matt Gossage and his TechEd 2009 session on Exchange 2010 storage</a>. Although there are good arguments for diving into drive technology or storage connection debates, I’ve come to believe that the central philosophy question you must answer in your Exchange 2010 design is at what level you will keep your data redundant. Until Exchange 2007, you had only one option: keeping your data redundant at the disk controller level. Using RAID technologies, you had two copies of your data<em>[1]</em>. Because you had a second copy of the data, shared storage clustering solutions could be used to provide availability for the mailbox service.</p>
<p>With Exchange 2007’s continuous replication features, you could add in data redundancy at the application level and avoid the dependency of shared storage; CCR creates two copies, and SCR can be used to create one or more additional copies off-site. However, given the realities of Exchange storage, for all but the smallest deployments, you had to use RAID to provide the required number of disk spindles for performance. With CCR, this really meant you were creating four copies; with SCR, you were creating an additional two copies for each target replica you created.</p>
<p>This is where Exchange 2010 throws a wrench into the works. By virtue of a re-architected storage engine, it’s possible under specific circumstances to design a mailbox database that will fit on a single drive while still providing acceptable performance. The reworked continuous replication options, now simplified into the DAG functionality, create additional copies on the application level. If you hit that sweet spot of the 1:1 database to disk ratio, then you only have a single copy of the data per replica <em>and</em> can get an <em>n-1</em> level of redundancy, where <em>n</em> is the number of replicas you have. This is clearly far more efficient for disk usage…or is it? The full answer is complex, the simple answer is, “In some cases.”</p>
<p>In order to get the 1:1 database to disk ratio, you have to follow several guidelines:</p>
<ol>
<li>Have at least three replicas of the database in the DAG, regardless of which sites they are in. Doing so allows you to place both the EDB and transaction log files on the same physical drive, rather than separating them as you did in previous versions of Exchange.</li>
<li>Ensure that you have at least two replicas per site. The reason for this is that unlike Exchange 2007, you can reseed a failed replica from another passive copy. This allows you to avoid reseeding over your WAN, which is something you do not want to do.</li>
<li>Size your mailbox databases to include no more users than will fit in the drive’s performance envelope. Although Exchange 2010 converts many of the random I/O patterns to sequential, giving better performance, not all has been converted, so you still have to plan against the random I/O specs.</li>
<li>Ensure that write transactions can get written successfully to disk. Use a battery-backed caching controller for your storage array to ensure the best possible performance from the disks. Use write caching for the physical disks, which means ensuring each server hosting a replica has a UPS.</li>
</ol>
<p>At this point, you probably have disk capacity to spare, which is why Exchange 2010 allows the creation of archive mailboxes in the same mailbox database. All of the user’s data is kept at the same level of redundancy, and the archived data – which is less frequently accessed than the mainline data – is stored without additional significant disk or I/O penalty. This all seems to indicate that JBOD is the way to go, yes? Two copies in the main site, two off-site DR copies, and I’m using cheaper storage with larger mailboxes and only four copies of my data instead of the minimum of six I’d have with CCR+SCR (or the equivalent DAG setup) on RAID configurations.</p>
<p>Not so fast. Microsoft’s claims around DJS configurations usually talk about the up-front capital expenditures. There’s more to a solid design than just the up-front storage price tag, and even if the DJS solution does provide savings in your situation, that is only the start. You also need to think about the lifetime of your storage and all the operational costs. For instance, what happens when one of those 1:1 drives fails?</p>
<p>Well, if you bought a really cheap DAS array, your first indication will be when Exchange starts throwing errors and the active copy moves to one of the other replicas. (You are monitoring your Exchange servers, right?) More expensive DAS arrays usually directly let you know that a disk failed. Either way, you have to replace the disk. Again, with a cheap white-box array, you’re on your own to buy replacement disks, while a good DAS vendor will provide replacements within the warranty/maintenance period. Once the disk is replaced, you have to re-establish the database replica. This brings us to the wonderful <em>manual</em> process known as <strong>database reseeding</strong>, which is not only a manual task, but can take quite a significant amount of time – especially if you made use of archival mailboxes and stuffed that DJS configuration full of data. Let&#8217;s take a closer look at what this means to you.</p>
<p><strong>[Begin 4/13 update]</strong></p>
<p>There’s a dearth of hard information out there about what types of reseed throughputs we can achieve in the real world, and my initial version of this post where I assumed 20GB/hour as an “educated guess” earned me a bit of ribbing in some quarters. In my initial example, I said that if we can reseed 20GB of data per hour (from a local passive copy to avoid the I/O hit to the active copy), that’s 10 hours for a 200GB database, 30 hours for a 600GB database, or 60 hours –two and a half days! – for a 1.2 TB database<em>[2]</em>.</p>
<p>According to the <a href="http://msexchangeteam.com/archive/2010/03/29/454443.aspx" target="_blank">Top 10 Exchange Storage Myths</a> post on the Exchange team blog, 20GB/hour is way too low; in their internal deployments, they’re seeing between 35-70GB per hour. How would these speeds affect reseed times in my examples above? Well, let’s look at Table 1:</p>
<p><strong>Table 1: Example Exchange 2010 Mailbox Database reseed times</strong></p>
<table border="1" cellspacing="0" cellpadding="2" width="450">
<tbody>
<tr>
<td width="133" valign="top"><strong>Database Size</strong></td>
<td width="187" valign="top"><strong>Reseed Throughput </strong></td>
<td width="128" valign="top"><strong>Reseed Time</strong></td>
</tr>
<tr>
<td width="133" valign="top">200GB</td>
<td width="187" valign="top">20GB/hr</td>
<td width="128" valign="top">10 hours</td>
</tr>
<tr>
<td width="133" valign="top">200GB</td>
<td width="187" valign="top">35GB/hr</td>
<td width="128" valign="top">7 hours</td>
</tr>
<tr>
<td width="133" valign="top">200GB</td>
<td width="187" valign="top">50GB/hr</td>
<td width="128" valign="top">4 hours</td>
</tr>
<tr>
<td width="133" valign="top">200GB</td>
<td width="187" valign="top">70GB/hr</td>
<td width="128" valign="top">3 hours</td>
</tr>
<tr>
<td width="133" valign="top">600GB</td>
<td width="187" valign="top">20GB/hr</td>
<td width="128" valign="top">30 hours</td>
</tr>
<tr>
<td width="133" valign="top">600GB</td>
<td width="187" valign="top">35GB/hr</td>
<td width="128" valign="top">18 hours</td>
</tr>
<tr>
<td width="133" valign="top">600GB</td>
<td width="187" valign="top">50GB per hour</td>
<td width="128" valign="top">12 hours</td>
</tr>
<tr>
<td width="133" valign="top">600GB</td>
<td width="187" valign="top">70GB per hour</td>
<td width="128" valign="top">9 hours</td>
</tr>
<tr>
<td width="133" valign="top">1.2TB</td>
<td width="187" valign="top">20GB/hr</td>
<td width="128" valign="top">60 hours</td>
</tr>
<tr>
<td width="133" valign="top">1.2TB</td>
<td width="187" valign="top">35GB/hr</td>
<td width="128" valign="top">35 hours</td>
</tr>
<tr>
<td width="133" valign="top">1.2TB</td>
<td width="187" valign="top">50GB/hr</td>
<td width="128" valign="top">24 hours</td>
</tr>
<tr>
<td width="133" valign="top">1.2TB</td>
<td width="187" valign="top">70GB/hr</td>
<td width="128" valign="top">18 hours</td>
</tr>
</tbody>
</table>
<p>As you can see, reseed time can be a key variable in a DJS design. In some cases, depending on your business needs, these times could make or break whether this is a good design. I’ve done some talking around and found out that reseed times in the field are all over the charts. I had several people talk to me at the MVP Summit and ask me under what conditions I’d seen 20GB/hour, as that was too high. Astrid McClean and Matt Gossage of Microsoft had a great discussion with me and obviously felt that 20GB/hour is way too low.</p>
<p>Since then, I’ve received a lot of feedback and like I said, it’s all over the map. However, I’ve yet to hear anyone outside of Microsoft publicly state a reseed throughput higher than 20GB/hour. What this says to me is that getting the proper network design in place to support a good reseed rate hasn’t been a big point in deployments so far, and that in order to make a DJS design work, this may need to be an additional consideration.</p>
<p>If your replication network is designed to handle the amount of traffic required for normal DAG replication and doesn’t have sufficient throughput to handle reseed operations, you may be hurting yourself in the unlikely event of suffering multiple simultaneous replica failures on the same mailbox database.</p>
<p>This is a bigger concern for shops that have a small tolerance for any given drive failure. In most environments, one of the unspoken effects of a DJS DAG design is that you are trading number of replicas – and database-level failover – for replica rebuild time. If you’re reduced from four replicas down to three, or three down to two during the time it takes to detect the disk failure, replace the disk, and complete the reseed, you&#8217;ll probably be okay with that taking a longer period of time as long as you have sufficient replicas.</p>
<p>All during the reseed time, you have one fewer replica of that database to protect you. If your business processes and requirements don’t give you that amount of leeway, you either have to design smaller databases (and waste the disk capacity, which brings us right back to the good old bad days of Exchange 2000/2003 storage design) or use RAID.</p>
<p><strong>[End 4/13 update]</strong></p>
<p>Now, with a RAID solution, we don’t have that same problem. We still have a RAID volume rebuild penalty, but that’s happening inside the disk shelf at the controller, not across our network between Exchange servers. And with a well-designed RAID solution such as generic RAID 10 (1+0) or NetApp’s RAID-DP, you can actually survive the loss of more disks at the same time. Plus, a RAID solution gives me the flexibility to populate my databases with smaller or larger mailboxes as I need, and aggregate out the capacity and performance across my disks and databases. Sure, I don’t get that nice 1:1 disk to database ratio, but I have a lot more administrative flexibility and can survive disk loss without automatically having to begin the reseed dance.</p>
<p>Don’t get me wrong – I’m wildly enthusiastic that I as an Exchange architect have the option of designing to JBOD configurations. I like having choices, because that helps me make the right decisions to meet my customers’ needs. And that, in the end, is the point of a well-designed Exchange deployment – to meet <strong>your</strong> needs. Not the needs of Microsoft, and not the needs of your storage or server vendors. While I’m fairly confident that starting with a default NetApp storage solution is the right choice for many of the environments I’ll be facing, I also know how to ask the questions that lead me to consider DJS instead. There’s still a place for RAID at the Exchange storage table.</p>
<p>In further installments over the next few months, I’ll begin to address the <strong>SATA vs. SAS/FC</strong> and <strong>DAS vs. SAN</strong> arguments as well. I’ll then try to wrap it up with a practical and realistic set of design examples that pull all the pieces together.</p>
<p><em><strong>[1]</strong> RAID-1 (mirroring) and RAID-10 (striping and mirroring) both create two physical copies of the data. RAID-5 does not, but it allows the loss of a single drive failure &#8212; effectively giving you a virtual second copy of the data.</em></p>
<p><em><strong>[2]</strong> Curious why picked these database sizes?  200GB is the recommended maximum size for Exchange 2007 (due to backup limitations), and 600GB/1.2TB are the realistic recommended maximums you can get from 1TB and 2TB disks today in a DJS replica-per-disk deployment; you need to leave room for the content index, transaction logs, and free space.</em></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/ZEZgWFiF5EE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/01/from-whence-redundancy-exchange-2010-storage-essays-part-1/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/01/from-whence-redundancy-exchange-2010-storage-essays-part-1/</feedburner:origLink></item>
		<item>
		<title>A Virtualization Metaphor</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/skjOAFbmhZ0/</link>
		<comments>http://www.thecabal.org/2010/01/a-virtualization-metaphor/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 05:12:29 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[People]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2010/01/a-virtualization-metaphor/</guid>
		<description><![CDATA[This is a rare kind of blog post for me, because I’m basically copying a discussion that rose from one of my Twitter/Facebook status updates earlier today: I wish I could change the RAM, CPU configuration on running VMs in &#8230; <a href="http://www.thecabal.org/2010/01/a-virtualization-metaphor/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This is a rare kind of blog post for me, because I’m basically copying a discussion that rose from one of my Twitter/Facebook status updates earlier today:</p>
<blockquote><p>I wish I could change the RAM, CPU configuration on running VMs in #VMWare and have the changes apply on next reboot.</p></blockquote>
<p>This prompted one of my nieces, a lovely and intelligent young lady in high school, to ask me to say that in English.</p>
<p>I pondered just hand waving it, but I was loathe to do so. Like I said, she’s intelligent. I firmly believe that kids live up to your expectations; if you talk down to them and treat them like they’re dumb because that’s what you expect, they’re happy to be that way. On the other hand, if you expect them to be able to understand concepts with the proper explanations, even if they may not immediately grasp the fine points, I’ve found that kids are actually quite able to do so – better than many adults, truth be told.</p>
<p>So, this is my answer:</p>
<blockquote><p>The physical machinery of computers is called hardware. The programs that run on them (Windows, games, etc.) is software.<br />
VMware is software that allows you to create virtual machines. That is, instead of buying (for example) 10 computers to do different tasks and have most of them have unused memory and processor power, you buy one or two really beefy computers and run VMWare. That allows you to create a virtual machine in software, so those two computers become 10. I don&#8217;t have to buy quite as much hardware because each virtual machine only uses the resources it needs, leaving the rest for the other virtual machines.</p>
<p>However, one of the problems with VMWare currently is that if you find you&#8217;ve given a virtual machine too much memory or processor (or not enough), you have to shut it down, make the change, then start it back up. I want the software to be smart enough to take the change *now* and automatically apply it when it can, such as when the virtual machine is rebooting. For a physical computer, it makes sense &#8212; I have to power it down, crack the case open, put memory in, etc. &#8212; but for a virtual computer, it should be able to be done in software.</p>
<p>Think of it this way: hardware is like a closet. You can build a big closet or a small closet or a medium closet, but each closet holds a finite amount of stuff. Software is the stuff you put in the closet &#8212; clothes, shoes, linens, etc. You can dump a bunch of stuff into a big closet, but doing so makes it cluttered and hard to use. So if you use multiple smaller closets, you&#8217;re wasting space because you probably won&#8217;t fill every one exactly.</p>
<p>In this metaphor, virtualization is like a closet organizer system. You can add a clothing rod here to hang dresses and blouses on, and underneath that add a shelf or two for shoes, while to the side you have more shelves for pants and towels and other stuff. You waste a little bit of your closet space for the organizer, but you keep everything organized and clutter-free, which means you&#8217;re better off and take less time to keep everything up.</p>
<p>Of course, this metaphor fails on my original point, because it totally makes sense you have to take all the stuff off shelves before moving those shelves around. In the world of software, though, it doesn&#8217;t necessarily make sense &#8212; it&#8217;s just the right people didn&#8217;t think of it at the right time.</p>
<p>Clear?</p></blockquote>
<p>I came close to busting out Visio and starting to diagram some of this. I decided not to.</p>
<p><strong>Edit: I don&#8217;t have to diagram it! Thank you, Ikea, and your lovely <a href="http://www.ikea.com/us/en/catalog/categories/departments/bedroom/10997/" target="_blank">KOMPLEMENT</a> wardrobe organizer line!</strong></p>
<p><strong><a title="Ikea's KOMPLEMENT line" href="http://www.ikea.com/us/en/catalog/categories/departments/bedroom/10997/" target="_blank"><img class="aligncenter size-full wp-image-1028" title="IkeaKOMPLEMENT" src="http://www.thecabal.org/wp-content/uploads/2010/01/IkeaKOMPLEMENT.png" alt="Ikea KOMPLEMENT organizer as virtualization software" width="240" height="360" /></a><br />
</strong></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/skjOAFbmhZ0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2010/01/a-virtualization-metaphor/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2010/01/a-virtualization-metaphor/</feedburner:origLink></item>
		<item>
		<title>North Pole data leakage woes</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/JbtDLbhel4o/</link>
		<comments>http://www.thecabal.org/2009/12/north-pole-data-leakage-woes/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 17:00:37 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Humor]]></category>
		<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/?p=1023</guid>
		<description><![CDATA[Not even old Saint Nick is immune from the need for a good data management and protection regime. First, we have confirmation that his naughty and nice database has been hacked. Now, there are credible rumors that the North Pole &#8230; <a href="http://www.thecabal.org/2009/12/north-pole-data-leakage-woes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Not even old Saint Nick is immune from the need for a good data management and protection regime.</p>
<p>First, we have confirmation that his <a title="Another Leak, the worst so far" href="http://precision-blogging.blogspot.com/2009/12/another-leak-worst-so-far.html" target="_blank">naughty and nice database</a> has been hacked.</p>
<p>Now, there are credible rumors that the <a title="Bumble!" href="http://msmindy.com/rudolph/char_bumble.shtml" target="_blank">North Pole CIO</a> has been covering up a years-long, systemic problem with Santa losing mobile devices. According to unidentified sources, the list of allegations includes:</p>
<ul>
<li>Lack of priority for safeguarding key data, especially through mobile systems. Recent refits for the sled have focused on <a title="Official NORAD Santa Tracker" href="http://www.noradsanta.org/" target="_blank">tracking transponders</a> for &#8220;greater publicity&#8221;, but no corresponding upgrades to mobile IT systems. These systems are specifically characterized as &#8220;obsolete 286 systems running DOS and home-brew <a title="But is it better than Notes?" href="http://en.wikipedia.org/wiki/Paradox_%28database%29" target="_blank">Paradox applications</a> written by some dentist in his spare time.&#8221;</li>
<li>Habitual problems with smartphones. In order to ensure inexpensive world-wide access, Santa&#8217;s system includes the use of multiple handsets from strategically selected regional carriers. &#8220;In the last several years, Santa has yet to come back from his Christmas Eve run without having lost at least three of his devices,&#8221; one insider claims, &#8220;and of course we don&#8217;t have remote wipe capabilities. That would require him spending money.&#8221;</li>
<li>Lax information and network practices, including no formal security policies or processes. Remote accesses aren&#8217;t even protected via SSL, according to sources, since &#8220;anyone who&#8217;s so cheap they haven&#8217;t updated <a title="In black and white, even!" href="http://www.youtube.com/watch?v=Qs-7F94n-ZM" target="_blank">stock PR footage of elves making wooden toys</a> isn&#8217;t likely to shell out for a respected SSL certificate or PKI infrastructure.&#8221;</li>
</ul>
<p>It will take time to gather confirmation of these claims, but if they are true, it shows a shocking disregard for basic security best practices at the North Pole.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/JbtDLbhel4o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2009/12/north-pole-data-leakage-woes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2009/12/north-pole-data-leakage-woes/</feedburner:origLink></item>
		<item>
		<title>Busting the Exchange Trusted Subsystem Myth</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/J7ECb_mArho/</link>
		<comments>http://www.thecabal.org/2009/12/busting-the-exchange-trusted-subsystem-myth/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 11:14:11 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2009/12/busting-the-exchange-trusted-subsystem-myth/</guid>
		<description><![CDATA[It’s amazing what kind of disruption leaving your job, looking for a new job, and starting to get settled in to a new job can have on your routines. Like blogging. Who knew? At any rate, I’m back with some &#8230; <a href="http://www.thecabal.org/2009/12/busting-the-exchange-trusted-subsystem-myth/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It’s amazing what kind of disruption leaving your job, looking for a new job, and starting to get settled in to a new job can have on your routines. Like blogging. Who knew?</p>
<p>At any rate, I’m back with some cool Exchange blogging. I’ve been getting a chance to dive into a “All-Devin, All-Exchange, All The Time” groove and it’s been a lot of fun, some of the details of which I hope to be able to share with you in upcoming months. In the process, I’ve been building a brand new Exchange 2010 lab environment and ran smack into a myth that seems to be making the rounds among people who are deploying Exchange 2010. This myth gives bum advice for those of you who are deploying an Exchange 2010 DAG and not using an Exchange 2010 Hub Transport as your File Share Witness (FSW). I call it the <strong>Exchange Trusted Subsystem Myth</strong>, and the first hint of it I see seems to be on <a href="http://www.confusedamused.com/notebook/domain-controller-as-file-share-witness-for-an-exchange-2010-dag/" target="_blank">this blog post</a>. However, that same advice seems to have gotten around the net, as evidenced by <a href="http://blogs.technet.com/ferris/archive/2009/10/13/dag-fsw-permissions-errors-during-creation-process-try-this.aspx" target="_blank">this almost word-for-word copy</a> or this <a href="http://chrislehr.com/2009/10/exchange-2010-database-availability.htm" target="_blank">posting that links to the first one</a>. Like many myths, this one is pernicious not because it’s completely wrong, but because it works even though it’s wrong.</p>
<p>If you follow the Exchange product group’s deployment assumptions, you’ll never run into the circumstance this myth addresses; the FSW is placed on an Exchange 2010 HT role in the organization. Although you can specify the FSW location (server and directory) or let Exchange pick a server and directory or you, the FSW share isn’t created during the configuration of the DAG (<a href="http://www.shudnow.net/2009/11/18/exchange-2010-rtm-dag-using-server-2008-r2-%E2%80%93-part-4/" target="_blank">as documented by fellow Exchange MVP Elan Shudnow</a> and the “Witness Server Requirements” section of the <a href="http://technet.microsoft.com/en-us/library/dd638104.aspx" target="_blank">Planning for High Availability and Site Resilience</a> TechNet topic). Since it’s being created on an Exchange server as the second member of the DAG is joined, Exchange has all the permissions it needs on the system to create the share. If you elect to put the share on a non-Exchange server, then Exchange doesn’t have permissions to do it. Hence the myth:</p>
<ol>
<li>Add the FSW server’s machine account to the <strong>Exchange Trusted Subsystem</strong> group.</li>
<li>Add the <strong>Exchange Trusted Subsystem</strong> group to the FSW server’s local <strong>Administrators</strong> group.</li>
</ol>
<p>The sad part is, only the second action is necessary. True, doing the above will make the FSW work, but it will also open a much wider hole in your security than you need or want. Let me show you from my shiny new lab! In this configuration, I have three Exchange systems: <em>EX10MB01</em>, <em>EX10MB02</em>, and <em>EX10MB03</em>. All three systems have the Mailbox, Client Access, and Hub Transport roles. Because of this, I want to put the FSW on a separate machine. I could have used a generic member server, but I specifically wanted to debunk the myth, so I picked my DC <em>EX10DC01</em> with malice aforethought.</p>
<ul>
<li>In Figure 1, I show adding the <strong>Exchange Trusted Subsystem</strong> group to the <strong>Builtin/Administrators</strong> group on <em>EX10DC01</em>. If this weren’t a domain controller, I could add it to the local <strong>Administrators</strong> group instead, but DCs require tinkering. <strong>[1]</strong></li>
</ul>
<p class="aligncenter" style="text-align: center;"><img class="aligncenter" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="ExTrSubSys-DC-AdminsGroup" src="http://www.thecabal.org/wp-content/uploads/2009/12/ExTrSubSysDCAdminsGroup_thumb.png" border="0" alt="ExTrSubSys-DC-AdminsGroup" width="408" height="450" /><br />
<strong>Figure 1: Membership of the Builtin/Administrators group on EX10DC01</strong></p>
<ul>
<li>In Figure 2, I show the membership of the <strong>Builtin/Administrators</strong> group on <em>EX10DC01</em>. No funny business up my sleeve!</li>
</ul>
<p class="aligncenter" style="text-align: center;"><img class="aligncenter" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="ExTrSubSys-Members" src="http://www.thecabal.org/wp-content/uploads/2009/12/ExTrSubSysMembers_thumb.png" border="0" alt="ExTrSubSys-Members" width="408" height="452" /><br />
<strong>Figure 2: Membership of the Exchange Trusted Subsystem group</strong></p>
<ul>
<li>I now create the DAG object, specifying <em>EX10DC01</em> as my FSW server and the <em>C:\EX10DAG01</em> directory so we can see if it ever gets created (and when).</li>
<li>In Figure 3, I show the root of the C:\ drive on <em>EX10DC01</em> after adding the second Exchange 2010 server to the DAG. Now, the directory and share are created, without requiring the server’s machine account to be added to the <strong>Exchange Trusted Subsystem</strong> group.</li>
</ul>
<p class="aligncenter" style="text-align: center;"><img class="aligncenter" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="ExTrSubSys-FSWCreated" src="http://www.thecabal.org/wp-content/uploads/2009/12/ExTrSubSysFSWCreated_thumb.png" border="0" alt="ExTrSubSys-FSWCreated" width="603" height="641" /><br />
<strong>Figure 3: The FSW created on EX10DC01</strong></p>
<p>I suspect that this bad advice came about through a combination of circumstances, including an improper understanding of Exchange caching of Active Directory information and when the FSW is actually created. However it came about, though, it needs to be stopped, because any administrator that configures their Exchange organization is opening a big fat hole in the Exchange security model.</p>
<p>So, why is adding the machine account to the <strong>Exchange Trusted Subsystem</strong> group a security hole? The answer lies in Exchange 2010’s shift to Role Based Access Control (RBAC). In previous versions of Exchange, you delegated permissions directly to Active Directory and Exchange objects, allowing users to perform actions directly from their security context. If they had the appropriate permissions, their actions succeeded.</p>
<p>In Exchange 2010 RBAC, this model goes away; you now delegate permissions by telling RBAC what options given groups, policies, or users can perform, then assigning group memberships or policies as needed. When the EMS cmdlets run, they do so as the local machine account; since the local machine is an Exchange 2010 server, this account has been added to the <strong>Exchange Trusted Subsystem</strong> group. This group has been delegated the appropriate access entries in Active Directory and Exchange databases objects, as described in the <a href="http://technet.microsoft.com/en-us/library/dd638106.aspx" target="_blank">Understanding Split Permissions</a> TechNet topic. For a comprehensive overview of RBAC and how all the pieces fit together, read the <a href="http://technet.microsoft.com/en-us/library/dd298183.aspx" target="_blank">Understanding Role Based Access Control</a> TechNet topic.</p>
<p>By improperly adding a non-Exchange server to this group, you’re now giving that server account the ability to read and change any Exchange-related object or property in Active Directory or Exchange databases. Obviously, this is a hole, especially given <a href="http://blogs.technet.com/askds/archive/2008/10/22/getting-a-cmd-prompt-as-system-in-windows-vista-and-windows-server-2008.aspx" target="_blank">the relative ease with which one local administrator can get a command line prompt running as one of the local system accounts</a>.</p>
<p>So please, do us all a favor: if you ever hear or see someone passing around this myth, please, link them here.</p>
<p class="aligncenter" style="text-align: center;"><img class="aligncenter" style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="ExTrSubSys-Busted" src="http://www.thecabal.org/wp-content/uploads/2009/12/ExTrSubSysBusted_thumb.png" border="0" alt="ExTrSubSys-Busted" width="204" height="216" /><br />
<strong>Busted!</strong></p>
<p><em><strong>[1]</strong> Yes, it is also granting much broader permissions than necessary to make a DC the FSW node. Now the <strong>Exchange Trusted Subsystem</strong> group is a member of the <strong>Domain Admins</strong> group. This is probably not what you want to do, so really, don’t do this outside of a demo lab.</em></p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/J7ECb_mArho" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2009/12/busting-the-exchange-trusted-subsystem-myth/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2009/12/busting-the-exchange-trusted-subsystem-myth/</feedburner:origLink></item>
		<item>
		<title>Support Our Scout</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/V9-5rmdgRh0/</link>
		<comments>http://www.thecabal.org/2009/10/support-our-scout/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 06:57:01 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[Autism Spectrum]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Scouting]]></category>

		<guid isPermaLink="false">http://www.thecabal.org/2009/10/support-our-scout/</guid>
		<description><![CDATA[Edit 11/11/09 to remove the embedded video and replace it with a link. It was messing up the layout and I need to do more research to figure out how to embed videos inline. I love living in the future. &#8230; <a href="http://www.thecabal.org/2009/10/support-our-scout/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;"><em>Edit 11/11/09 to remove the embedded video and replace it with a link. It was messing up the layout and I need to do more research to figure out how to embed videos inline.</em></p>
<p style="text-align: left;">I love living in the future. First, though, watch <a title="Support Our Scout" href="http://www.youtube.com/watch?v=wj99G_AXS-w&amp;feature=player_embedded" target="_blank">this video that Alaric and I made</a>.</p>
<p style="text-align: left;">I was a Boy Scout for close to three years. I started as a Boy Scout; I missed Cub Scouts, including Webelos Scout. When I was in Scouting, we had to go door-to-door to do our fundraisers, or spend a lot of time with our relatives over the phone. I hated doing it, for reasons that didn’t become clear until much later in life when I began grappling with autism and Asperger’s. However, I have a lot of good memories of Scouting; it did a lot for me and it was a valuable part of my childhood.</p>
<p style="text-align: left;">Steph and I wanted Alaric to experience Scouting. Even though the modern BSA has some characteristics that I don’t agree with, I’ve come to the decision that first and foremost, Scouting is about the boys. Scouting needs intelligent, reasonable adults of all persuasions to help drive the program. By being part of Scouting, Alaric will learn and do things Steph and I can’t give him on our own; by having us there with him, Alaric will learn how to deal with people from differing backgrounds in a diplomatic and productive manner.</p>
<p style="text-align: left;">Over the summer, Alaric has really seen what a good thing Scouting is. He even got me to go to Scout Camp with him for four days in July, and I must admit I even had fun. It was a great experience for both of us, including facing down and conquering some challenges.</p>
<p style="text-align: left;">Unlike many Scout packs and troops, Alaric’s pack works on the schedule of the school year. As a result, they do their major fundraising push at the beginning of the school year with a number of activities. Alaric’s already helped out pulling Hire-A-Scout wagons at the local auto swap meet and had a great time. However, the major source of operating funds is the traditional <a href="http://www.trails-end.com/estore/scouts/email_referral.jsp?id=3440240" target="_blank">Trail’s End</a> popcorn fundraiser. <a href="http://www.trails-end.com/estore/scouts/email_referral.jsp?id=3440240" target="_blank">Trail’s End</a>, if you don’t know, has been the go-to-source for Scout fundraising for a long time, and they offer some of the best popcorn on the planet.</p>
<p style="text-align: left;">Over the past few weeks, we’ve been rather hectic and busy and haven’t really had time to coach Alaric on his first door-to-door sales campaign. (Poor guy seems to have the same issues I did when I was his age, so it was pretty painful.) This last week, I came up with what is I hope a brainstorm: harness the power of the Internet to get Alaric’s sales pitch out there. So, you get to enjoy the results: the following video where Alaric and I pitch popcorn to YOU, the faithful reader. And because this is the future, <a href="http://www.trails-end.com/estore/scouts/email_referral.jsp?id=3440240" target="_blank">Trail’s End</a> even got with the program: they now allow you to purchase online, supporting a specific Scout, and have the product shipped directly to your door!</p>
<p style="text-align: left;"><strong><a href="http://www.trails-end.com/estore/scouts/email_referral.jsp?id=3440240" target="_blank">Go to Trail’s End to support Alaric’s fundraising for his pack</a></strong></p>
<p style="text-align: left;">Thank you for your support!</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/V9-5rmdgRh0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2009/10/support-our-scout/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2009/10/support-our-scout/</feedburner:origLink></item>
		<item>
		<title>Leaving 3Sharp</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/qhlLAoyZyDc/</link>
		<comments>http://www.thecabal.org/2009/10/leaving-3sharp/#comments</comments>
		<pubDate>Thu, 15 Oct 2009 21:19:25 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[3Sharp]]></category>

		<guid isPermaLink="false">http://blogs.3sharp.com/deving/archive/2009/10/15/leaving-3sharp.aspx</guid>
		<description><![CDATA[3Sharp has been a fantastic place to work; for the last six and half years, my co-workers and I have walked the road together. One of the realities of growth, though, is that you often reach the fork in the &#8230; <a href="http://www.thecabal.org/2009/10/leaving-3sharp/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>3Sharp has been a fantastic place to work; for the last six and half years, my co-workers and I have walked the road together. One of the realities of growth, though, is that you often reach the fork in the road where you have to move down different paths. Working with Paul, Tim, Missy, Kevin, and the rest of the folks who have been part of the Platform Services Group here at 3Sharp over the years has been a wild journey, but we were only one of three groups at 3Sharp; the other two groups are also chock-full of smart people doing wonderful things with SharePoint and Office. 3Sharp will be moving forward to focus on those opportunities, and the Platform Services Group (which focused on Exchange, OCS, Windows Server, Windows Mobile, and DPM) is closing its doors. My last day here will be tomorrow, Friday, October 16.</p>
<p>I think that the Ecclesiastes 3:1 says it best; in the King James Version, the poet says, “To every thing there is a season, and a time to every purpose under the heaven.” It has been my privilege to use this blog to talk about Exchange, data protection, and all the other topics I’ve talked about since my first post here five years ago (holy crap, has it really been five years???) With 3Sharp’s gracious permission and blessing, I’ll be duplicating all of the content I’ve posted here over on my personal blog, <a target="_blank" href="http://www.thecabal.org/">Devin on Earth</a>. If you have a link or bookmark for this blog or are following me via RSS, please take a moment to update it now (<a target="_blank" href="http://www.thecabal.org/feed/">Devin on Earth RSS feed</a>). I’ve got a few new posts cooking, but this will be my last post here.</p>
<p>Thank you to 3Sharp and the best damn co-workers I could ever hope to work with over the years. Thank you, my readers. You all have helped me grow and solidify my skills, and I hope I returned the favor. I look forward to continuing the journey with many of you, even if I’m not sure yet where it will take me.</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/qhlLAoyZyDc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2009/10/leaving-3sharp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2009/10/leaving-3sharp/</feedburner:origLink></item>
		<item>
		<title>OneNote 2010 Keeps Your Brains In Your Head</title>
		<link>http://feedproxy.google.com/~r/thecabal/doe/~3/an4NCScIzG4/</link>
		<comments>http://www.thecabal.org/2009/10/onenote-2010-keeps-your-brains-in-your-head/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 20:03:07 +0000</pubDate>
		<dc:creator>Devin</dc:creator>
				<category><![CDATA[3Sharp]]></category>

		<guid isPermaLink="false">http://blogs.3sharp.com/deving/archive/2009/10/13/onenote-2010-keeps-your-brains-in-your-head.aspx</guid>
		<description><![CDATA[Some months back, those of you who follow me on Twitter (@devinganger) may have a noticed a series of teaser Tweets about a project I was working on that involved zombies. Yes, that’s right, zombies. The RAHR-BRAINS-RAHR shambling undead kind, &#8230; <a href="http://www.thecabal.org/2009/10/onenote-2010-keeps-your-brains-in-your-head/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Some months back, those of you who follow me on Twitter (@devinganger) may have a noticed a series of teaser Tweets about a project I was working on that involved zombies.</p>
<p>Yes, that’s right, <em>zombies</em>. The RAHR-BRAINS-RAHR shambling undead kind, not the “mystery objects in Active Directory” kind.</p>
<p>Well, now you can see what I was up to.</p>
<p>I was working with long-time fellow 3Sharpie <a target="_blank" href="http://blogs.3sharp.com/davidg/">David Gerhardt</a> on creating a series of 60-second vignettes for the upcoming Office 2010 application suite. Each vignette focuses on a single new area of functionality in one of the Office products. I got to work with OneNote 2010.</p>
<p>Here’s where the story gets good.</p>
<p>I got brought into the project somewhat late, after a bunch of initial planning and prep work had been done. The people who had been working on the project had decided that they didn’t want to do the same boring business-related content in their OneNote 2010 vignettes; oh, no! Instead, they hit upon the wonderful idea of using a <a target="_blank" href="http://www.bing.com/search?q=zombie+plan&amp;form=QBLH&amp;qs=n">Zombie Plan</a> as the base document. Now, I don’t really like zombies, but this seemed like a great way to spice up a project!</p>
<p>The rest, as they say, is history. Check out the results (posted both at GetSharp and somewhere out on YouTube) for yourself:</p>
<ul>
<li><a target="_blank" href="http://getsharp.3sharp.com/Pages/PodcastDetail.aspx?itemId=72&amp;userId=33&amp;caid=&amp;csId=%257B268419CC-CF1E-466A-B32D-B006109B747A%257D%2540%257B410410E2-5E4F-40A7-8A22-C48A197B4423%257D">OneNote 2010 Advanced Wiki Features</a></li>
<li><a target="_blank" href="http://getsharp.3sharp.com/Pages/PodcastDetail.aspx?itemId=71&amp;userId=33&amp;caid=&amp;csId=%257B268419CC-CF1E-466A-B32D-B006109B747A%257D%2540%257B410410E2-5E4F-40A7-8A22-C48A197B4423%257D">OneNote 2010 Linked Notes</a></li>
<li><a target="_blank" href="http://getsharp.3sharp.com/Pages/PodcastDetail.aspx?itemId=70&amp;userId=33&amp;caid=&amp;csId=%257B268419CC-CF1E-466A-B32D-B006109B747A%257D%2540%257B410410E2-5E4F-40A7-8A22-C48A197B4423%257D">OneNote 2010 Quick Filing</a></li>
<li><a target="_blank" href="http://getsharp.3sharp.com/Pages/PodcastDetail.aspx?itemId=69&amp;userId=33&amp;caid=&amp;csId=%257B268419CC-CF1E-466A-B32D-B006109B747A%257D%2540%257B410410E2-5E4F-40A7-8A22-C48A197B4423%257D">OneNote 2010 Search UI</a></li>
</ul>
<p>One of the best parts of this project, other than getting a chance to learn about some of the wildly cool stuff the OneNote team is doing to enhance an already wonderful product, was the music selection. We worked a deal with local artist <a target="_blank" href="http://www.davepezzner.com/">Dave Pezzner</a> to use some of his short music clips for these videos. Dave is immensely talented and provided a wide selection of material, so I enjoyed being able to pick and choose just the right music for each video. It did occur to me how cool it would be if I could use Jonathan Coulton’s fantastic song <a target="_blank" href="http://www.jonathancoulton.com/2006/03/24/thing-a-week-26-re-your-brains/">Re: Your Brains</a>, but somehow I think his people lost my query email. Such is life – and I think Mr. Pezzner’s music provided just the right accompaniment to the Zombie Plan content.</p>
<p>Enjoy!</p>
<img src="http://feeds.feedburner.com/~r/thecabal/doe/~4/an4NCScIzG4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.thecabal.org/2009/10/onenote-2010-keeps-your-brains-in-your-head/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.thecabal.org/2009/10/onenote-2010-keeps-your-brains-in-your-head/</feedburner:origLink></item>
	</channel>
</rss>

