<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://devplanet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>What are we going to do tomorrow night, Brain?  : Distance Clustering, Itanium</title><link>http://devplanet.com/blogs/brianr/archive/tags/Distance+Clustering/Itanium/default.aspx</link><description>Tags: Distance Clustering, Itanium</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 (Build: 30912.2823)</generator><item><title>MS DTC Configuration for SQL 2005 in a Distance-Cluster on Windows Server 2003 Datacenter IA64</title><link>http://devplanet.com/blogs/brianr/archive/2008/01/14/ms-dtc-configuration-for-sql-2005-in-a-distance-cluster-on-windows-server-2003-datacenter.aspx</link><pubDate>Mon, 14 Jan 2008 18:01:00 GMT</pubDate><guid isPermaLink="false">6e120f4b-f509-4111-8fd8-03bc0d0a75d9:12</guid><dc:creator>Brian Rudolph</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://devplanet.com/blogs/brianr/rsscomments.aspx?PostID=12</wfw:commentRss><comments>http://devplanet.com/blogs/brianr/archive/2008/01/14/ms-dtc-configuration-for-sql-2005-in-a-distance-cluster-on-windows-server-2003-datacenter.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://devplanet.com/blogs/brianr/MSDTC1.jpg"&gt;&lt;/a&gt;As does everyone from time-to-time, we had a lovely &amp;quot;learn as you go&amp;quot; moment in the middle of a deployment recently.&amp;nbsp; As it turns out there are some very specific rules for setting up MS DTC in a clustered environment.&amp;nbsp; As always, individual results may very.&lt;/p&gt;
&lt;p&gt;First of all, most DTC changes don&amp;#39;t require an operating system restart.&amp;nbsp; Unfortunately, it would appear, in a clustered environment this is not true.&amp;nbsp; We did, however, find that if you bring down services in the correct order, you can successfully make changes to DTC without a system restart.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;div&gt;Offline SQL Instances&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Offline DTC&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Offline Backup Agents(we use SQL Safe from Idera)&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Make DTC changes&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Restart Server (we discovered this the hard way after numerous attempts)&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Online Backup Agents&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Online DTC&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Online SQL Instances&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Now that we have that out of the way, we can get to the settings.&amp;nbsp; For this example, lets assume we have 3 servers, 2 of them are distance-clustered, the 3rd is not a member of the cluster but will be executing distributed transactions to the cluster itself.&lt;/p&gt;
&lt;p&gt;First of all, if you don&amp;#39;t know where the DTC settings are they exist in the &amp;quot;Component Services&amp;quot; snap-in for MMC(run:mmc; add snap-in:&amp;quot;Component Services&amp;quot;).&amp;nbsp; For me, I RDP into the console on the server itself, so the default &amp;quot;My Computer&amp;quot; node that appears works, otherwise connect to the appropriate server.&amp;nbsp; Then, right-click &amp;#39;Properties&amp;quot; on the server name and you have a window which gives you a tab labeled &amp;quot;MSDTC&amp;quot;.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;This tab looks like this:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://devplanet.com/blogs/brianr/MSDTC1.jpg"&gt;&lt;img border="0" src="http://devplanet.com/blogs/brianr/MSDTC1.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;So this screen tells us some things.&amp;nbsp; First make sure that DTC is started on all the servers involved(unless you brought them offline purposely as described above).&amp;nbsp; If not, nothing is going to work.&amp;nbsp; You will probably want to make sure that service starts automatically.&amp;nbsp; Your cluster group should probably handle this.&lt;/p&gt;
&lt;p&gt;Now the fun stuff.&amp;nbsp;Like&amp;nbsp;I said, individual results may vary but these settings worked for us.&lt;/p&gt;
&lt;p&gt;Open the Security Configuration dialog:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://devplanet.com/blogs/brianr/dtc.jpg"&gt;&lt;img border="0" src="http://devplanet.com/blogs/brianr/dtc.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This dialog shows the configuration as works for our Server 1 &amp;amp; 2(the clustered servers), &amp;quot;Mutual Authentication Required&amp;quot; will &lt;strong&gt;NOT&lt;/strong&gt; work in a clustered environment. Not sure if &amp;quot;Incoming Caller Authentication Required&amp;quot; works, we couldn&amp;#39;t make it work properly.&lt;/p&gt;
&lt;p&gt;On the non-clustered server, you must also &lt;strong&gt;NOT &lt;/strong&gt;use &amp;quot;Mutual Authentication Required&amp;quot;, however &amp;quot;Incoming Caller Authentication Required&amp;quot; authentication seems to be sufficient for the non-clustered servers.&lt;/p&gt;
&lt;p&gt;What this means then is that all servers that will be opening or receiving distributed transactions to or from a clustered environment, must have their DTC settings changed.&amp;nbsp; We found this out the hard way, as DTC transactions were working in one direction, and not the other.&amp;nbsp; So it is possible that if your transactions are only being initiated in one direction you may not need to mess with certain servers.&amp;nbsp; Test it, you&amp;#39;ll be glad you took the time.&lt;/p&gt;
&lt;p&gt;If you are reading this post, you&amp;#39;ve probably already seen the DTCPing.exe app that is on the Microsoft site.&amp;nbsp; It is important to note that DTCPing happily returned no errors even when our authentication settings&amp;nbsp;were jacked.&amp;nbsp; So, while this utility may help diagnose certain DTC issues, i&amp;#39;m not sure that it helps in this scenario.&lt;/p&gt;
&lt;p&gt;Some of this information is outlined very obscurely in this KB article &lt;a href="http://support.microsoft.com/kb/899191/"&gt;http://support.microsoft.com/kb/899191/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Notes&lt;/strong&gt;: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I am not sure as to the security implications of these settings in an exposed environment.&amp;nbsp; As our servers are safely sitting in an internal network, I&amp;#39;m not too concerned.&amp;nbsp; You will have to research and evaluate that decision on your own.&lt;/li&gt;
&lt;li&gt;I did not have to change any settings on the second machine in the cluster, as cluster manager did it for me when I initiated a test fail-over.&amp;nbsp; Once again, run your own test.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://devplanet.com/aggbug.aspx?PostID=12" width="1" height="1"&gt;</description><category domain="http://devplanet.com/blogs/brianr/archive/tags/Distance+Clustering/default.aspx">Distance Clustering</category><category domain="http://devplanet.com/blogs/brianr/archive/tags/64+bit/default.aspx">64 bit</category><category domain="http://devplanet.com/blogs/brianr/archive/tags/Clustering/default.aspx">Clustering</category><category domain="http://devplanet.com/blogs/brianr/archive/tags/Itanium/default.aspx">Itanium</category><category domain="http://devplanet.com/blogs/brianr/archive/tags/Sql+2005/default.aspx">Sql 2005</category><category domain="http://devplanet.com/blogs/brianr/archive/tags/DTC/default.aspx">DTC</category><category domain="http://devplanet.com/blogs/brianr/archive/tags/MS+DTC/default.aspx">MS DTC</category><category domain="http://devplanet.com/blogs/brianr/archive/tags/IA64/default.aspx">IA64</category><category domain="http://devplanet.com/blogs/brianr/archive/tags/Distributed+Transaction+Coordinator/default.aspx">Distributed Transaction Coordinator</category></item></channel></rss>