<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AFINN.NET</title>
	<atom:link href="http://www.afinn.net/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.afinn.net</link>
	<description>What does this button do...?</description>
	<lastBuildDate>Fri, 05 Jun 2009 14:05:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Operations Manager 2007 Database Query Utility</title>
		<link>http://www.afinn.net/?p=145</link>
		<comments>http://www.afinn.net/?p=145#comments</comments>
		<pubDate>Thu, 28 May 2009 17:26:19 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[OpsMgr 2007]]></category>
		<category><![CDATA[SCOM]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=145</guid>
		<description><![CDATA[Knowing how to pull informational data directly from the Operations Manager database and data warehouse can be a bit tricky, but a critical part of identifying and troubleshooting performance pain points as well as obtaining key informational data in the SCOM environment. To that extent, I have always leveraged the massively cool collection of SQL scripts [...]]]></description>
			<content:encoded><![CDATA[<p>Knowing how to pull informational data directly from the Operations Manager database and data warehouse can be a bit tricky, but a critical part of identifying and troubleshooting performance pain points as well as obtaining key informational data in the SCOM environment. To that extent, I have always leveraged the massively cool collection of SQL scripts on <a href="http://blogs.technet.com/kevinholman/archive/2007/10/18/useful-operations-manager-2007-sql-queries.aspx">Kevin Holman&#8217;s</a> website.</p>
<p>Now when I needed to run these queries, I would open up Kevin&#8217;s website, fire up SQL Management Studio, connect to the database, open a query window and then start pasting and executing. In order to put all that functionality into a single resource, I quickly threw together a executable that contains most of the queries on Kevin&#8217;s website as well as the ability to connect to the SCOM backends and dump the information into a DataGridView on a windows form. I also included basic functionality for the queries that were parameterized to take input from the form rather than modifying the queries in the SQL editor window.</p>
<p>First and foremost, I would like to thank Kevin (and give him full credit)  for posting his queries that have proven helpful time and time again. I have included the compiled standalone executable in the links below as well as the source code. Feel free to modify the code in any way to suit your needs as you see fit. The SQL statements are simply embedded into a basic XML resource which can be easily modified to add new queries.</p>
<p><a href="http://www.afinn.net/wp-content/uploads/2009/05/opsmgrqueries.zip">OpsMgrQueries.zip</a>            <a href="http://www.afinn.net/wp-content/uploads/2009/05/opsmgrqueries_source.zip">OpsMgrQueries_Source.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=145</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Installing SCCM 2007 on a Remote Database Cluster (Part 3 &#8211; Installing Configuration Manager 2007)</title>
		<link>http://www.afinn.net/?p=125</link>
		<comments>http://www.afinn.net/?p=125#comments</comments>
		<pubDate>Mon, 23 Mar 2009 16:52:03 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[SCCM 2007]]></category>
		<category><![CDATA[Cluster]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=125</guid>
		<description><![CDATA[This is the third part in this walkthrough tutorial series. If you need to review previous tutorials, please review to Part 1 and Part 2. Installing SCCM 2007 on the SQL Cluster As a quick note, I did not include the WSUS installation in the following steps as the main goal was to simply address [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Calibri; font-size: small;">This is the third part in this walkthrough tutorial series. If you need to review previous tutorials, please review to <a href="http://www.afinn.net/2009/03/installing-sccm-2007-on-a-remote-database-cluster-part-1-preparing-the-cluster/">Part 1</a> and <a href="http://www.afinn.net/2009/03/installing-sccm-2007-on-a-remote-database-cluster-part-2-installing-sql-on-the-cluster/">Part 2</a>.</p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd;">Installing SCCM 2007 on the SQL Cluster</span></h2>
<p>As a quick note, I did not include the WSUS installation in the following steps as the main goal was to simply address the issue of installing SCCM on a remote SQL database cluster. If you are fairly comfortable with the install process thus far; installing WSUS is simple and intuitive to add into the steps below. Simply download and install the WSUS 3.0 SP1 components and install them before you begin the SCCM installation. The SCCM integration is extremely easy if you have WSUS already installed.</p>
<ol>
<li>First thing to do is add the computer account of the SCCM server to the local administrators group on each node of the database cluster. The SMS Provider will communicate with the database via WMI and the computer account will need administrative privileges to successfully make the remote WMI connection.</li>
<li>Next we need to ensure that the SPN is set correctly for the service account that will be connecting for SCCM to the SQL database. You may use adsiedit to directly modify the <em>servicePrincipalName</em> attribute on the service account or use the <strong>setspn</strong> utility with the following syntax:
<ol type="a">
<li><strong>Setspn –a MSSQLSvc/SERVERSQL.DOMAIN.COM:1433 DOMAIN\SvcSCCM</strong>
<ol type="i">
<li>Replace SERVERSQL.DOMAIN.COM with the FQDN of your cluster. Since this will be used in delegation for the service account to access the SQL services from a remote computer, be sure to specify the SQL network name, not the network name of the cluster server.</li>
<li>Port 1433 is the standard, change if necessary.</li>
<li>Replace DOMAIN\SvcSCCM with the domain and username of the service account that will be used to access the SQL database.</ol>
</li>
<li>Additional information on SPN configuration can be found <A href="http://technet.microsoft.com/en-us/library/bb735877.aspx">here</A>.</li>
</ol>
</li>
<li>Verify the prerequisites are installed:</li>
<p>a. <A href="http://www.microsoft.com/Downloads/details.aspx?familyid=79BC3B77-E02C-4AD3-AACF-A7633F706BA5&amp;displaylang=en">.NET Framework 2.0</A><br />
b. IIS 6.0<br />
c. BITS<br />
d. WebDAV<br />
e. <A href="http://www.microsoft.com/downloads/details.aspx?familyid=d21c292c-368b-4ce1-9dab-3e9827b70604&amp;displaylang=en">MSXML 6.0</A><br />
f. WinRM v1.1 (<A href="http://support.microsoft.com/kb/KB936059">http://support.microsoft.com/kb/KB936059</A>).<br />
g. Secure Channel hotfix (<A href="http://support.microsoft.com/kb/942841/en-us">http://support.microsoft.com/kb/942841/en-us</A>). <em>Only required if planning on leveraging Out of Band functionality.</em><br />
h. <A href="http://www.microsoft.com/Downloads/details.aspx?familyid=F87B4C5E-4161-48AF-9FF8-A96993C688DF&amp;displaylang=en">WSUS 3.0 SP1</A> (if using software update services)<br />
i. Extend the Active Directory Schema (if planning on leveraging AD functionality, not required for installation)<br />
<span style="padding-left: 60px; padding-top: 2px; padding-bottom: 2px;  margin-right: 0px;" dir="ltr">i. If you extend the schema, you will also need to grant the SCCM service account <em>Full Control<strong> </strong></em>on the <strong>System</strong> container in Active Directory. If you do not wish to grant permissions at the top level <strong>System</strong> container, you may also create a container called <strong>System Management</strong> under the <strong>System</strong> container and grant the service account <em>Full Control</em> permissions to that container and all child objects within.</span></p>
<li>Log on with the SCCM service account and start the installation.</li>
<li>Launch the <strong>Prerequisite checker</strong> first to verify all required criteria have been met.</li>
<li>Select <strong>Primary Site</strong> at the <em>Installation Prerequisite Check Options</em> screen.</li>
<li>For this example, the SCCM server is named <strong>SCCM01</strong>. Fill in the fields on the Options screen as follows:
<ol type="a">
<li><em>SQL Server and instance, if applicable</em>:<strong> SERVERSQL</strong> (remember to use the SQL Server network name for the clustered instance, not the cluster network name).</li>
<li><em>SDK Server:</em> <strong>SCCM01</strong>.</li>
<li><em>Management point computer FQDN on the intranet:</em> <strong>SCCM01.DOMAIN.COM</strong></li>
</ol>
</li>
<li>When all required prerequisites have been fulfilled, launch setup again and select <strong>Configuration Manager 2007 SP1</strong> from the <em>Install</em> menu. <em>(Note- it is okay to leave non-critical prerequisites remaining if the functionality will not be use.)</em></li>
<li>At the <em>Available Setup Options</em> screen, select <strong>Install a Configuration Manager site server</strong>. Click <strong>Next</strong>.</li>
<li>Select <strong>Custom Settings</strong> and then <strong>Next</strong>.</li>
<li>As this is the first site in the hierarchy, we will select <strong>Primary Site</strong> at the <em>Site Type</em> screen. Click <strong>Next</strong>.</li>
<li>Select your option for the <strong>Customer Experience Improvement Program</strong>. In this example, we will select <strong>No</strong>. Click <strong>Next</strong>.</li>
<li>Enter the <strong>Product Key</strong> and click <strong>Next</strong>.</li>
<li>Select the installation path target for the install files at the <em>Destination Folder</em> screen, click <strong>Next</strong>.</li>
<li>Enter a unique <strong>Site Code</strong> and <strong>Site Name</strong> for the Primary Site. Click <strong>Next</strong>.</li>
<li>At the <em>Site Mode</em> screen, select <strong>Configuration Manager Mixed Mode</strong>. Native mode requires the use of certificates and a PKI infrastructure which is beyond the scope of this tutorial. Click <strong>Next.</strong></li>
<li>For this example, we will accept the default selections at the <em>Client Agent Selection</em> screen and click <strong>Next</strong>.</li>
<li>At the <em>Database Server</em> screen, enter the SQL network name of the database server (<strong>SERVERSQL</strong> in this example) in the <strong>SQL Server and instance, if applicable</strong> field. Leave the <strong>ConfigMgr site database</strong> field with the default database name and click <strong>Next</strong>.</li>
<li>At the <em>SMS Provider Settings</em> screen, select the SCCM server (<strong>SCCM01 </strong>in this example) to install the provider. This is the interface that will communicate with the database and cannot be installed on a cluster. Click <strong>Next</strong>.</li>
<li>If this Site Server will manage clients, select the radial next to <strong>Install a management point</strong> and enter in the FQDN of the server. Click <strong>Next</strong>.</li>
<li>Accept the default port 80 option under <em>HTTP settings</em>. Click <strong>Next</strong>.</li>
<li>At the <em>Updated Prerequisite Components</em> screen select the appropriate options to download the additional updates used during installation. If you are connected to the Internet the download is just over 100MB, otherwise you may specify a local folder or network location for previously downloaded components. Click <strong>Next.</strong></li>
<li>Review the <strong>Settings Summary</strong> page and click <strong>Next</strong>.</li>
<li>The Prerequisite Checker will run again; when completed select the <strong>Begin Install</strong> button to start the installation. The setup will take several minutes.</li>
<p><a href="http://www.afinn.net/wp-content/uploads/2009/03/image013.png"><img src="http://www.afinn.net/wp-content/uploads/2009/03/image013-300x130.png" alt="Install_Progress" title="Install_Progress" width="300" height="130" class="aligncenter size-medium wp-image-126" /></a></p>
<li>If you receive the following error during setup, it is more than likely due to an issue with Kerberos settings so review your SPN settings and be sure that the SCCM server account is in the local administrators group on both nodes of the cluster. Here is a pretty good thread on some troubleshooting steps specific to this error: <A href="http://social.technet.microsoft.com/Forums/en-US/configmgrsetup/thread/b6e1beac-8030-46e3-a289-ab40e6f2867f/">http://social.technet.microsoft.com/Forums/en-US/configmgrsetup/thread/b6e1beac-8030-46e3-a289-ab40e6f2867f/</A>.</li>
<p><a href="http://www.afinn.net/wp-content/uploads/2009/03/image015.png"><img src="http://www.afinn.net/wp-content/uploads/2009/03/image015.png" alt="Provider_Error" title="Provider_Error" width="297" height="238" class="aligncenter size-full wp-image-127" /></a></ol>
<p>There are a couple more <strong>Next</strong> and <strong>Finish</strong> buttons to click, but I think you can probably handle those on your own by now. I hope this helped to walk you through the basic install process and address a couple of issues you might have run into along the way.<br />
You can download the PDF version of the entire tutorial <a href="http://www.afinn.net/wp-content/uploads/2009/03/installing_sccm_2007_on_a_remote_database_cluster.zip">here</a>.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=125</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing SCCM 2007 on a Remote Database Cluster (Part 2 &#8211; Installing SQL on the Cluster)</title>
		<link>http://www.afinn.net/?p=105</link>
		<comments>http://www.afinn.net/?p=105#comments</comments>
		<pubDate>Sat, 21 Mar 2009 15:20:34 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[SCCM 2007]]></category>
		<category><![CDATA[Cluster]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=105</guid>
		<description><![CDATA[I was able to get this finished much faster than I thought. You gotta love production change freeze windows to free up a little extra time, eh? Anyway, picking up where we left off let’s finish up a few more items on the cluster resources and move on to the SQL installation. If you need [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Calibri; font-size: small;">I was able to get this finished much faster than I thought. You gotta love production change freeze windows to free up a little extra time, eh? Anyway, picking up where we left off let’s finish up a few more items on the cluster resources and move on to the SQL installation. If you need to review the first part of this tutorial, <a href="http://www.afinn.net/2009/03/installing-sccm-2007-on-a-remote-database-cluster-part-1/">click here</a>.</p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd;">Preparing the Cluster for SQL</span></h2>
<p>Microsoft recommends clustering the MSDTC which is used by SQL for transactions and distributed queries. From what I read on the topic you can still install SQL on the cluster without clustering the MSDTC, but it may hamper performance of the application. I’ve always clustered the MSDTC resource if I was clustering SQL.</p>
<p>We will need to create a couple of additional resources that will be dependencies for the MSDTC resource first. One of the resources will be the network name of the cluster. This is the name that you would use when you wanted to access a share, or RDP, etc to the cluster and access the active node without having to verify which node was currently active. For this example, I will use <strong>SERVER</strong> as the network name for the cluster. This name will allow me to simply RDP to <strong>SERVER</strong> and not care whether or not <strong>SERVER01</strong> or <strong>SERVER02</strong> was currently active; it will automatically connect me to whichever node is active.</p>
<p><em>Note – do not confuse the Network Name resource with the cluster management name (SCCMCLUSTER in this example). That name is simply for connecting to the cluster mgmt console.</em></p>
<ol>
<li>
Open <strong>Cluster Administrator</strong>; expand the resource group (not the <strong>Cluster Group</strong>). Select <strong>New -&gt; Resource.</strong></li>
</ol>
<p><a href="http://www.afinn.net/wp-content/uploads/2009/03/image011.png"><img class="aligncenter size-medium wp-image-94" title="Group_Selection" src="http://www.afinn.net/wp-content/uploads/2009/03/image011-300x124.png" alt="Group_Selection" width="300" height="124" /></a></p>
<ol start="2">
<li>In the <em>New Resource</em> screen, name the resource <strong>IP Address</strong>.</li>
<li>Change the <strong>Resource type</strong> to <strong>IP Address</strong>.</li>
<li>Leave the <strong>Group</strong> set to default. Do not use the <strong>Cluster Group</strong> for any of these resources.</li>
<li>In the <em>Possible Owners</em> screen, verify both nodes are listed under <strong>Possible Owners</strong> and click <strong>Next</strong>.</li>
<li>Click <strong>Next</strong> at the <em>Dependencies</em> screen without making any changes. The IP Address resource does not require any dependencies.</li>
<li>Enter a valid IP address in the <strong>Address</strong> window as well as a valid subnet mask. Select <strong>Public</strong> for the <strong>Network</strong> dropdown and leave <strong>Enable NetBIOS for this address</strong> checked.</li>
<li>Click <strong>Finish.</strong></li>
<li>When the wizard completes, right click on the <strong>IP Address</strong> resource and select <strong>Bring Online</strong>.</li>
</ol>
<p><a href="http://www.afinn.net/wp-content/uploads/2009/03/image003.png"><img class="aligncenter size-medium wp-image-90" title="Bring_Resource_Online" src="http://www.afinn.net/wp-content/uploads/2009/03/image003-300x52.png" alt="Bring_Resource_Online" width="300" height="52" /></a></p>
<ol start="10">
<li>Right click on the resource group again (not the <strong>Cluster Group</strong>) and select <strong>New -&gt; Resource</strong>.</li>
<li>Since this will be the network name of our cluster, let’s simply make the <strong>Name</strong> field <strong>SERVER</strong>.</li>
<li>For the <strong>Resource Type</strong>, select <strong>Network Name</strong> in the dropdown.</li>
<li>Leave the group as default and click <strong>Next.</strong></li>
<li>At the <em>Possible Owners<strong> </strong></em>screen, verify that both server nodes are included under <strong>Possible Owners</strong>. Click <strong>Next</strong>.</li>
<li>Since a host name needs an IP address to resolve against, select the <strong>IP Address</strong> resource from <strong>Available resources</strong> and move it over to the <strong>Resource dependencies</strong> column. Click <strong>Next.</strong></li>
</ol>
<p><a href="http://www.afinn.net/wp-content/uploads/2009/03/image005.png"><img class="aligncenter size-medium wp-image-91" title="Network_Name_Dependencies" src="http://www.afinn.net/wp-content/uploads/2009/03/image005-300x143.png" alt="Network_Name_Dependencies" width="300" height="143" /></a></p>
<ol start="16">
<li>At the <em>Network Name Parameters</em> screen, enter in the name of the cluster (<em>in this example, it’s <strong>SERVER</strong></em>). Enable the checkboxes next to <strong>DNS Registration Must Succeed</strong> and <strong>Enable Kerberos Authentication</strong>. Click <strong>Finish</strong>.</li>
<li>Right click the new resource in the <strong>Cluster Administrator</strong> and select <strong>Bring Online</strong>.</li>
<ol type="a">
<li><em>Note – This may take several seconds as the resource will create a DNS entry in Active Directory as well create the SPN for the cluster service.</em></li>
<li>If the resource fails to come online, verify that a DNS record was created for the cluster name with the appropriate IP address from the dependency resource. Also verify that the server has the following SPN’s registered in Active Directory:</li>
<p>MSClusterVirtualServer/SERVER<br />
MSClusterVirtualServer/SERVER.DOMAIN.COM (Replace SERVER with the appropriate server hostname and FQDN)</p>
<li>If you need to manually create the SPN’s, you can use adsiedit or create them using the setspn utility with the following syntax:<br />
<strong>Setspn –A MSClusterVirtualServer/SERVER SERVER</strong><br />
<strong>Setspn –A MSClusterVirtualServer/SERVER.DOMAIN.COM SERVER</strong><br />
(Replace SERVER with the appropriate server hostname and FQDN and yes, SERVER is listed twice in the above examples because you must specify the computer object target to modify the ServicePrincipalName attributes in Active Directory.)</li>
</ol>
</ol>
<ol start="18">
<li>Right click on the resource group name one more time and select <strong>New -&gt; Resource</strong>.</li>
<li>In the <strong>Name</strong> field, enter <strong>MSDTC</strong>.</li>
<li>Select <strong>Distributed Transaction Coordinator</strong> as the <strong>Resource Type</strong>.</li>
<li>Leave the <strong>Group</strong> field unchanged as before (remember, NOT the Cluster Group). Click <strong>Next.</strong></li>
<li>Verify both nodes are included in the <strong>Possible owners</strong> column. Click <strong>Next</strong>.</li>
<li>The <strong>MSDTC</strong> resource will require two dependencies; the <strong>Physical Disk</strong> (shared disk) and the <strong>Network Name</strong> resources as shown here.</li>
</ol>
<p><a href="http://www.afinn.net/wp-content/uploads/2009/03/image007.png"><img class="aligncenter size-medium wp-image-92" title="MSDTC_Resources" src="http://www.afinn.net/wp-content/uploads/2009/03/image007-300x149.png" alt="MSDTC_Resources" width="300" height="149" /></a></p>
<ol start="24">
<li>Add the two resources to the <strong>Resource dependencies</strong> column and click <strong>Finish</strong>.</li>
<li>Right click on the <strong>MSDTC</strong> resource and select <strong>Bring Online</strong>.</li>
<li>Take a breather; we are now ready to start installing SQL Server 2005.</li>
</ol>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd;">Installing SQL Server 2005 on the Cluster</span></h2>
<ol>
<li>Verify both nodes are online and <strong>SERVER01</strong> is the active node. Run the install from <strong>SERVER01</strong>.</li>
<li>The install must be run using a domain account with local administrator access on both nodes of the cluster.</li>
<li>Accept the EULA and click <strong>Next</strong>.</li>
<li>Install the required prerequisites by selecting the <strong>Install</strong> button.</li>
<li>Select <strong>Next </strong>to begin the installation wizard.</li>
<li>Address any issues that occur in the <em>System Configuration Check</em> and click <strong>Next.</strong></li>
<li>Enter the <strong>Registration Information</strong> and click <strong>Next.</strong></li>
<li>At the <em>Component to Install</em> screen, select the following and click the <strong>Advanced </strong>button.</li>
<p><span style="padding-left: 30px; padding-top: 2px; padding-bottom: 2px;  margin-right: 0px;" dir="ltr">a. <strong>SQL Server Database Services</strong></span><br />
<span style="padding-left: 30px; padding-top: 2px; padding-bottom: 2px;  margin-right: 0px;" dir="ltr">b. <strong>Create a SQL Server failover cluster</strong></span><br />
<span style="padding-left: 30px; padding-top: 2px; padding-bottom: 2px;  margin-right: 0px;" dir="ltr">c. <strong>Workstation components, Books Online, and development tools.</strong> (<em>only required if you want a local copy of books online and dev related items; not required for SCCM</em>).</span>
</ol>
<p><span style="padding-left: 30px; padding-top: 2px; padding-bottom: 2px;  margin-right: 0px;" dir="ltr"><a href="http://www.afinn.net/wp-content/uploads/2009/03/image009.png"><img class="aligncenter size-medium wp-image-93" title="SQL_Components" src="http://www.afinn.net/wp-content/uploads/2009/03/image009-300x272.png" alt="SQL_Components" width="300" height="272" /></a></span></p>
<ol start="9">
<li>Click <strong>Next</strong> after making any adjustments to the install.</li>
<li>At the <em>Instance Name</em> screen, select the <strong>Default instance</strong> (unless you need to specify a Named instance on the server) and click <strong>Next</strong>.</li>
<li>At the <em>Virtual Server Name</em> screen, enter the name of the SQL virtual server. This is the server name that will be used to actually connect to the SQL instance, not the server OS itself. You will specify this name anytime you need to connect to this server for SQL services such as to install a database, or open the instance using SQL Management Studio, etc. For this example, we will use <strong>SERVERSQL</strong>. Click <strong>Next.</strong></li>
<li>In the <em>Virtual Server Configuration</em> screen, enter an IP address that will be used for the Virtual Server Name entered in the previous step. Be sure to select <strong>Public</strong> in the dropdown for the <strong>Network to use</strong> field. Click the <strong>Add</strong> button and then <strong>Next</strong>.</li>
<li>Select the resource group (not the <strong>Cluster Group</strong>) in the <em>Cluster Group Selection</em> screen. Also, verify that the correct shared disk (not the Quorum disk) is listed in the <strong>Data files</strong> field. It will read something like <em>E:\Microsoft SQL Server\</em>. Click <strong>Next.</strong></li>
</ol>
<p><a href="http://www.afinn.net/wp-content/uploads/2009/03/image011.png"><img class="aligncenter size-medium wp-image-94" title="Group_Selection" src="http://www.afinn.net/wp-content/uploads/2009/03/image011-300x124.png" alt="Group_Selection" width="300" height="124" /></a></br></p>
<ol start="14>&#8221;</p>
<li>In the <em>Cluster Node Configuration</em> screen, verify that the second node is listed under the <strong>Select nodes</strong> column. Click <strong>Next</strong>.</li>
<li>Enter the password for the install account at the <em>Remote Account Information</em> screen. This is simply for authentication purposes during the install and will not be used to run services, etc. after the install. Click <strong>Next</strong>.
<li>Enter the appropriate information for the account that will be used to manage the SQL services on both cluster nodes at the <em>Service Account</em> screen and click <strong>Next</strong>.</li>
<li>At the <em>Domain Groups for Clustered Services</em> screen, enter the appropriate security group names in the fields. More information on this topic can be found <a href="http://msdn.microsoft.com/en-us/library/ms345196.aspx">here</a>.</li>
<li>Select <strong>Windows Authentication Mode </strong>at the <em>Authentication Mode</em> screen. Click <strong>Next</strong>.</li>
<li>Accept the default settings at the <em>Collation Settings</em> screen and click <strong>Next.</strong></li>
<li>Select any checkboxes you wish on the <em>Error and Usage Report Settings</em> screen and click <strong>Next</strong>.</li>
<li>Click the <strong>Install</strong> button to begin the installation process.</li>
<li>Obviously when the process has completed, click the <strong>Finish</strong> button to complete.</li>
<li>Launch the <strong>SQL Server Management Studio</strong> and verify you can connect to the new instance. Remember, you will need to connect to the network name of the SQL Server instance, not the server itself. In this example, we specify <strong>SERVERSQL</strong> in the connection window instead of <strong>SERVER</strong>.</li>
<li>Update SQL to Service Pack 3</li>
</ol>
<p>The next post in this walkthrough tutorial will cover installing System Center Configuration Manager 2007 on the clustered environment covered in these two tutorials as well as some of the pitfalls you may run into during the install process.</span><br />
You can download the PDF version of the entire tutorial <a href="http://www.afinn.net/wp-content/uploads/2009/03/installing_sccm_2007_on_a_remote_database_cluster.zip">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=105</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing SCCM 2007 on a Remote Database Cluster (Part 1 &#8211; Preparing the Cluster)</title>
		<link>http://www.afinn.net/?p=71</link>
		<comments>http://www.afinn.net/?p=71#comments</comments>
		<pubDate>Wed, 18 Mar 2009 19:41:52 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[SCCM 2007]]></category>
		<category><![CDATA[SCCM]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=71</guid>
		<description><![CDATA[I’ve noticed that there is not a whole lot of information on installing System Center Configuration Manager 2007 on a remote database cluster at the time I decided to write this so I thought I would attempt to tackle the process. I will attempt to be fairly granular in the steps and will be including [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="MARGIN: 0in 0in 10pt"><span style="font-size: small; font-family: Calibri;">I’ve noticed that there is not a whole lot of information on installing System Center Configuration Manager 2007 on a remote database cluster at the time I decided to write this so I thought I would attempt to tackle the process. I will attempt to be fairly granular in the steps and will be including information from the <em style="mso-bidi-font-style: normal">“Guide to Creating and Configuring a Server Cluster under Windows Server 2003”</em> from Microsoft.</span></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 10pt"><span style="font-size: small; font-family: Calibri;">For this scenario I have a single domain controller (DC01), two cluster nodes (SERVER01 and SERVER02), and the SCCM Server (SCCM01). Each cluster node has two NICS. The two cluster nodes and the SCCM01 have been joined to the domain on DC01.</span></p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd; font-family: Cambria;">Configure Networking</span></h2>
<p class="MsoListParagraphCxSpFirst" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">1.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Rename the network interfaces on the cluster nodes for easier identification.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 1in; TEXT-INDENT: -0.25in; mso-list: l0 level2 lfo1; mso-add-space: auto"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">a.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Right click and rename <strong style="mso-bidi-font-weight: normal">Local Area Connection</strong> to <strong style="mso-bidi-font-weight: normal">Public</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 1in; TEXT-INDENT: -0.25in; mso-list: l0 level2 lfo1; mso-add-space: auto"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">b.</span><span style="FONT: 7pt 'Times New Roman'">      </span></span></span><span style="font-size: small; font-family: Calibri;">Right click and rename <strong style="mso-bidi-font-weight: normal">Local Area Connection 2</strong> to <strong style="mso-bidi-font-weight: normal">Private</strong>.</span></p>
<p class="MsoListParagraphCxSpLast" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">2.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small;"><span style="font-family: Calibri;">Change the binding order for the NICS on both nodes by selecting the <strong style="mso-bidi-font-weight: normal">Advanced</strong> menu and then <strong style="mso-bidi-font-weight: normal">Advanced Settings.</strong></span></span></p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; text-align: center; mso-list: l0 level1 lfo1;"><a href="http://www.afinn.net/wp-content/uploads/2009/03/configure_networking.png"><img class="aligncenter size-thumbnail wp-image-72" title="configure_networking" src="http://www.afinn.net/wp-content/uploads/2009/03/configure_networking-150x150.png" alt="configure_networking" width="150" height="150" /><strong></strong></a></p>
<p class="MsoListParagraphCxSpFirst" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">3.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">In the <strong style="mso-bidi-font-weight: normal">Adapters and Bindings</strong> tab, verify the <em style="mso-bidi-font-style: normal">Connections</em> are listed in the following order: <em style="mso-bidi-font-style: normal">Public, Private, Remote Access Connections</em>. If not, move the connections using the ordering buttons on the right until they are in the proper order.</span></p>
<p class="MsoListParagraphCxSpLast" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">4.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">You should use static IP addressing for all cluster interfaces.</span></p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd; font-family: Cambria;">Configure the Private Network Adapter</span></h2>
<p class="MsoListParagraphCxSpFirst" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">1.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Go to the Properties of the Private NIC and deselect everything except <strong style="mso-bidi-font-weight: normal">TCP/IP</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">2.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Microsoft also recommends you change the speed and duplex of your adapters to <strong style="mso-bidi-font-weight: normal">10Mbps</strong> and <strong style="mso-bidi-font-weight: normal">Half speed</strong>. I personally set my heartbeat interfaces to 100/Full, but I also use crossover cables between the interfaces of my cluster nodes or they are on a dedicated small switch. Either way, just be sure you don’t leave the selection on <strong style="mso-bidi-font-weight: normal">Auto/Auto</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">3.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Be sure there are no IP entries for the DNS servers.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">4.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Click on the <strong style="mso-bidi-font-weight: normal">Advanced</strong> button.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">5.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small;"><span style="font-family: Calibri;">On the <strong style="mso-bidi-font-weight: normal">DNS</strong> tab, be sure there are no IP addresses listed and remove the checkbox selections for <strong style="mso-bidi-font-weight: normal">Append parent suffixes of the primary DNS suffix</strong> and <strong style="mso-bidi-font-weight: normal">Register this connection’s addresses in DNS.</strong></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">6.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Click on the <strong style="mso-bidi-font-weight: normal">WINS</strong> tab and deselect the option to <strong style="mso-bidi-font-weight: normal">Enable LMHOSTS lookup</strong>. Also, disable the NetBIOS functionality.</span></p>
<p class="MsoListParagraphCxSpLast" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">7.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Click <strong style="mso-bidi-font-weight: normal">OK</strong> to save the changes and repeat on the other node.</span></p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd; font-family: Cambria;">Setting up Shared Storage</span></h2>
<p class="MsoNormal" style="MARGIN: 0in 0in 10pt"><span style="font-size: small; font-family: Calibri;">The following steps assume you already have your storage prepared on the SAN or whatever medium of shared storage you choose and you have the LUN’s presented to the HBA’s on each cluster node. You will need to have two storage resources available to both servers; one for the quorum drive and one for the database.</span></p>
<p class="MsoListParagraphCxSpFirst" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">1.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Turn off both nodes of the cluster.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">2.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Turn on the first node only.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">3.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small;"><span style="font-family: Calibri;">Select <strong style="mso-bidi-font-weight: normal">Disk Management</strong> from within <strong style="mso-bidi-font-weight: normal">Computer Management.</strong></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">4.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Right click each Unallocated disk and format it as a <strong style="mso-bidi-font-weight: normal">Primary</strong> partition. Do NOT convert the disk to Dynamic disk, only use Primary disks. If you use the wizard to write a disk signature it may automatically convert the disk to dynamic. If this happens, right click the disk and select <strong style="mso-bidi-font-weight: normal">Revert to Basic</strong>.</span></p>
<p class="MsoListParagraphCxSpLast" style="MARGIN: 0in 0in 10pt 1in; TEXT-INDENT: -0.25in; mso-list: l0 level2 lfo2; mso-add-space: auto"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">a.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><em style="mso-bidi-font-style: normal"><span style="font-size: small; font-family: Calibri;">Note – If you are using 64 bit, be sure to format the disks as MBR, not GPT.</span></em></p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; text-align: center; mso-list: l0 level1 lfo1;"><a href="http://www.afinn.net/wp-content/uploads/2009/03/share_storage.png"><img class="aligncenter size-full wp-image-73" title="share_storage" src="http://www.afinn.net/wp-content/uploads/2009/03/share_storage.png" alt="share_storage" width="219" height="136" /></a></p>
<p class="MsoListParagraph" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">5.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Verify that you can create and delete a text file on each drive from each node of the cluster. When testing this, ensure only one node is online at a time. When completed, be sure all nodes are off except the first.</span></p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium;"><span style="color: #4f81bd;"><span style="font-family: Cambria;">Configure the First Node</span></span></span></h2>
<p class="MsoListParagraphCxSpFirst" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">1.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Open <strong style="mso-bidi-font-weight: normal">Cluster Administrator. </strong>When prompted with the <em style="mso-bidi-font-style: normal">Open Connection to Cluster</em> window, select <strong style="mso-bidi-font-weight: normal">Create a new cluster.</strong> Click <strong style="mso-bidi-font-weight: normal">OK</strong>.</span></p>
<p class="MsoListParagraphCxSpLast" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">2.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Select a unique NetBIOS name for the cluster following the usual 15 character NetBIOS limit.</span></p>
<p class="MsoListParagraph" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; text-align: center; mso-list: l0 level1 lfo1;"><a href="http://www.afinn.net/wp-content/uploads/2009/03/cluster_name.png"><img class="aligncenter size-thumbnail wp-image-74" title="cluster_name" src="http://www.afinn.net/wp-content/uploads/2009/03/cluster_name-150x150.png" alt="cluster_name" width="150" height="150" /></a></p>
<p class="MsoListParagraphCxSpFirst" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">3.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Select the name of the first node to be added to the cluster, click <strong style="mso-bidi-font-weight: normal">Next</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 1in; TEXT-INDENT: -0.25in; mso-list: l0 level2 lfo1; mso-add-space: auto"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">a.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">You will be prompted to enter credentials if you are not logged on with a domain account that also has local Adminstrator privileges. This is simply to complete the install and is NOT the account that will be used to start the Cluster services.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">4.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">The Advanced button is used when you have complex storage solutions in place and the setup wizard detects disks that you do not want to be shared in the cluster. For the sake of this document, we will simply select the <strong style="mso-bidi-font-weight: normal">Typical (full) configuration</strong> option at the <em style="mso-bidi-font-style: normal">Advanced Configuration Options</em> window. Click <strong style="mso-bidi-font-weight: normal">OK</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">5.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">The wizard will now run a series of checks and verifications on your environment. When it’s completed, address any critical issues preventing the cluster from being created and continue by clicking <strong style="mso-bidi-font-weight: normal">Next</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 1in; TEXT-INDENT: -0.25in; mso-list: l0 level2 lfo1; mso-add-space: auto"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">a.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">I have never built a cluster that did not return at least some warnings during this phase. Simply review these warning if they occur and address them as needed.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">6.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">At the <em style="mso-bidi-font-style: normal">IP Address</em> screen, enter in the IP address that will be used to manage the cluster resources. Click <strong style="mso-bidi-font-weight: normal">Next</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">7.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">At the <em style="mso-bidi-font-style: normal">Cluster Service Account Wizard</em> screen enter in the credentials of a domain user account that has <strong style="mso-bidi-font-weight: normal">Local Administrator</strong> rights on each node. Click <strong style="mso-bidi-font-weight: normal">Next</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">8.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Review the summary and select the <strong style="mso-bidi-font-weight: normal">Quorum</strong> button. Select the shared storage drive you allocated for the Quorum drive in the drop down.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 1in; TEXT-INDENT: -0.25in; mso-list: l0 level2 lfo1; mso-add-space: auto"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">a.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><em style="mso-bidi-font-style: normal"><span style="font-size: small; font-family: Calibri;">Note – If you only see <strong style="mso-bidi-font-weight: normal">Local Quorum</strong> listed in the dropdown, continue on through the steps and I will show you how to correct this after the cluster node is up.</span></em></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">9.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">When tasks have completed, click <strong style="mso-bidi-font-weight: normal">Next</strong>.</span></p>
<p class="MsoListParagraphCxSpLast" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">10.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">You should now have the single node resource up and running.</span></p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; text-align: center; mso-list: l0 level1 lfo1;"><a href="http://www.afinn.net/wp-content/uploads/2009/03/cluster_resources1.png"><img class="aligncenter size-medium wp-image-76" title="cluster_resources1" src="http://www.afinn.net/wp-content/uploads/2009/03/cluster_resources1-300x85.png" alt="cluster_resources1" width="300" height="85" /></a></p>
<p class="MsoNormal" style="MARGIN: 0in 0in 10pt 0.25in"><em style="mso-bidi-font-style: normal"><span style="font-size: small;"><span style="font-family: Calibri;">(If you’re Quorum disk is listed as a Quorum Resource under the <strong style="mso-bidi-font-weight: normal">Resource Type</strong> column, proceed to the next section. If your console looks like the example above, you may skip the next section.)</span></span></em></p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd; font-family: Cambria;">Change the Local Quorum Resource</span></h2>
<p class="MsoListParagraphCxSpFirst" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">1.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Open the <strong style="mso-bidi-font-weight: normal">Cluster Administrator</strong> and select <strong style="mso-bidi-font-weight: normal">Cluster Group</strong> under <strong style="mso-bidi-font-weight: normal">Groups</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">2.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Right click and select <strong style="mso-bidi-font-weight: normal">New/Resource</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">3.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small;"><span style="font-family: Calibri;">Select the <strong style="mso-bidi-font-weight: normal">Resource Type</strong> as <strong style="mso-bidi-font-weight: normal">Physical Disk</strong>. Enter a descriptive name for the disk (something like Quorum since this will be the shared drive for the quorum). Click <strong style="mso-bidi-font-weight: normal">Next.</strong></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">4.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Make sure that SERVER01 is listed under <strong style="mso-bidi-font-weight: normal">Possible owners</strong>. Click <strong style="mso-bidi-font-weight: normal">Next</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">5.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small;"><span style="font-family: Calibri;">Leave the <strong style="mso-bidi-font-weight: normal">Resource dependencies </strong>window empty and click <strong style="mso-bidi-font-weight: normal">Next.</strong></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">6.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small;"><span style="font-family: Calibri;">Select the appropriate disk from the drop down and click <strong style="mso-bidi-font-weight: normal">Finish.</strong></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">7.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Select the cluster name in the console (in this example, it would be SCCMCLUSTER).Right click and choose <strong style="mso-bidi-font-weight: normal">Properties</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">8.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Select the <strong style="mso-bidi-font-weight: normal">Quorum </strong>tab and change the resource to the new disk resource created in the previous section.</span></p>
<p class="MsoListParagraphCxSpLast" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">9.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Finally, verify that the disk that will be used as the database storage drive is listed under the <strong style="mso-bidi-font-weight: normal">Group 0</strong> folder which is automatically created. If it is missing, create the resource following Steps 3 through 6 above.</span></p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd; font-family: Cambria;">Configure the Second Node</span></h2>
<p class="MsoListParagraphCxSpFirst" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">1.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Verify that all resources are online for the first node in <strong style="mso-bidi-font-weight: normal">Cluster Administrator</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">2.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Turn on the second node (leave node one online).</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">3.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">From the <strong style="mso-bidi-font-weight: normal">Cluster Administrator</strong> on SERVER01, select <strong style="mso-bidi-font-weight: normal">File – &gt; New -&gt; Node</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">4.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small;"><span style="font-family: Calibri;">Enter in the name of the computer to be added as the second node and click <strong style="mso-bidi-font-weight: normal">Next.</strong></span></span></p>
<p class="MsoListParagraphCxSpLast" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo2"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">5.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Review the analysis summary when completed and address any errors.</span></p>
<h2 style="MARGIN: 10pt 0in 0pt"><span style="font-size: medium; color: #4f81bd; font-family: Cambria;">Post Installation Configuration </span></h2>
<p class="MsoListParagraph" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l2 level1 lfo3"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="font-size: small; font-family: Calibri;">1.</span><span style="FONT: 7pt 'Times New Roman'">       </span></span></span><span style="font-size: small; font-family: Calibri;">Go to the <strong style="mso-bidi-font-weight: normal">Properties</strong> of the <strong style="mso-bidi-font-weight: normal">Private</strong> network by right clicking on the <strong style="mso-bidi-font-weight: normal">Private</strong> network interface.</span></p>
<p class="MsoListParagraph" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; text-align: center; mso-list: l2 level1 lfo3;"> <a href="http://www.afinn.net/wp-content/uploads/2009/03/network_properties1.png"><img class="aligncenter size-thumbnail wp-image-78" title="network_properties" src="http://www.afinn.net/wp-content/uploads/2009/03/network_properties1-150x150.png" alt="network_properties" width="150" height="150" /></a></p>
<p class="MsoListParagraphCxSpFirst" style="margin: 0in 0in 0pt 0.5in; text-indent: -0.25in; mso-list: l0 level1 lfo1;"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-list: Ignore;"><span style="font-size: small; font-family: Calibri;">2.</span><span style="font: 7pt &quot;Times New Roman&quot;;">       </span></span></span><span style="font-size: small; font-family: Calibri;">On the <em style="mso-bidi-font-style: normal;">General</em> tab, select the radial next to <strong style="mso-bidi-font-weight: normal;">Internal cluster communications only (private network)</strong>. Click <strong style="mso-bidi-font-weight: normal;">OK</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in; text-indent: -0.25in; mso-list: l0 level1 lfo1;"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-list: Ignore;"><span style="font-size: small; font-family: Calibri;">3.</span><span style="font: 7pt &quot;Times New Roman&quot;;">       </span></span></span><span style="font-size: small;"><span style="font-family: Calibri;">Right click on the <strong style="mso-bidi-font-weight: normal;">Public</strong> network and select <strong style="mso-bidi-font-weight: normal;">Properties.</strong></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in; text-indent: -0.25in; mso-list: l0 level1 lfo1;"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-list: Ignore;"><span style="font-size: small; font-family: Calibri;">4.</span><span style="font: 7pt &quot;Times New Roman&quot;;">       </span></span></span><span style="font-size: small; font-family: Calibri;">Select the radial next to <strong style="mso-bidi-font-weight: normal;">All communications (mixed mode).</strong> Click <strong style="mso-bidi-font-weight: normal;">OK</strong>.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin: 0in 0in 0pt 0.5in; text-indent: -0.25in; mso-list: l0 level1 lfo1;"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-list: Ignore;"><span style="font-size: small; font-family: Calibri;">5.</span><span style="font: 7pt &quot;Times New Roman&quot;;">       </span></span></span><span style="font-size: small; font-family: Calibri;">Right click the cluster name and select <strong style="mso-bidi-font-weight: normal;">Properties</strong>.</span></p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; mso-list: l0 level1 lfo1;"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-list: Ignore;"><span style="font-size: small; font-family: Calibri;">6.</span><span style="font: 7pt &quot;Times New Roman&quot;;">       </span></span></span><span style="font-size: small; font-family: Calibri;">Select the <em style="mso-bidi-font-style: normal;">Network Priority</em> tab and ensure that <strong style="mso-bidi-font-weight: normal;">Private</strong> is listed at the top of the list.</span></p>
<p class="MsoListParagraph" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; text-align: center; mso-list: l2 level1 lfo3;"><a href="http://www.afinn.net/wp-content/uploads/2009/03/network_properties2.png"><img class="aligncenter size-thumbnail wp-image-79" title="network_properties2" src="http://www.afinn.net/wp-content/uploads/2009/03/network_properties2-150x150.png" alt="network_properties2" width="150" height="150" /></a></p>
<p class="MsoListParagraphCxSpFirst" style="margin: 0in 0in 0pt 0.5in; text-indent: -0.25in; mso-list: l0 level1 lfo1;"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-list: Ignore;"><span style="font-size: small; font-family: Calibri;">7.</span><span style="font: 7pt &quot;Times New Roman&quot;;">       </span></span></span><span style="font-size: small; font-family: Calibri;">Verify the failover functionality by right clicking on<strong style="mso-bidi-font-weight: normal;"> Cluster Group</strong> in the <strong style="mso-bidi-font-weight: normal;">Cluster Administrator</strong> console. Select <strong style="mso-bidi-font-weight: normal;">Move Group</strong> to begin the failover.</span></p>
<p class="MsoListParagraphCxSpLast" style="margin: 0in 0in 10pt 1in; text-indent: -0.25in; mso-list: l0 level2 lfo1; mso-add-space: auto;"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-list: Ignore;"><span style="font-size: small; font-family: Calibri;">a.</span><span style="font: 7pt &quot;Times New Roman&quot;;">       </span></span></span><span style="font-size: small; font-family: Calibri;">Before failover test</span></p>
<p class="MsoListParagraph" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; text-align: center; mso-list: l2 level1 lfo3;"><a href="http://www.afinn.net/wp-content/uploads/2009/03/failing_over.png"><img class="aligncenter size-medium wp-image-80" title="failing_over" src="http://www.afinn.net/wp-content/uploads/2009/03/failing_over-300x85.png" alt="failing_over" width="300" height="85" /></a></p>
<p class="MsoListParagraph" style="margin: 0in 0in 10pt 1in; text-indent: -0.25in; mso-list: l0 level2 lfo1; mso-add-space: auto;"><span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin;"><span style="mso-list: Ignore;"><span style="font-size: small; font-family: Calibri;">b</span><span style="font: 7pt &quot;Times New Roman&quot;;">       </span></span></span><span style="font-size: small; font-family: Calibri;">Successful failover</span></p>
<p class="MsoListParagraph" style="margin: 0in 0in 10pt 0.5in; text-indent: -0.25in; text-align: center; mso-list: l2 level1 lfo3;"><a href="http://www.afinn.net/wp-content/uploads/2009/03/successfull_failover.png"><img class="aligncenter size-medium wp-image-81" title="successfull_failover" src="http://www.afinn.net/wp-content/uploads/2009/03/successfull_failover-300x69.png" alt="successfull_failover" width="300" height="69" /></a></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;"><span style="font-size: small; font-family: Calibri;">In the next post, I will detail installing SQL Server 2005 on the cluster and creating the SCCM database on the remote cluster as well as the caveats along the way such as configuring SPN’s.</span></p>
<p class="MsoListParagraph" style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l2 level1 lfo3"> </p>
<p>You can download the PDF version of the entire tutorial <a href="http://www.afinn.net/wp-content/uploads/2009/03/installing_sccm_2007_on_a_remote_database_cluster.zip">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=71</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Issues with integrating WSUS and SCCM&#8230;</title>
		<link>http://www.afinn.net/?p=64</link>
		<comments>http://www.afinn.net/?p=64#comments</comments>
		<pubDate>Tue, 17 Mar 2009 14:14:42 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[SCCM 2007]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[WSUS]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=64</guid>
		<description><![CDATA[While rolling out SCCM I recently ran into a little issue with WSUS integration that stumped me for a bit so I thought I’d post what I was doing incorrectly which will hopefully save someone else the troubleshooting time I spent. The architecture is basically a primary parent site server that maintains no clients and [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0in 0in 10pt;"><span style="font-size: small; font-family: Calibri;">While rolling out SCCM I recently ran into a little issue with WSUS integration that stumped me for a bit so I thought I’d post what I was doing incorrectly which will hopefully save someone else the troubleshooting time I spent.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;"><span style="font-size: small; font-family: Calibri;">The architecture is basically a primary parent site server that maintains no clients and is used mainly for reporting and collecting the SCCM hierarchical data. Next, we have three primary child sites and each of these sites will in turn have secondary sites for the branch offices. We already had an existing WSUS implementation outside of the SCCM deployment so I planned on mimicking that layout when configuring the WSUS update synchronization hierarchy.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;"><span style="font-size: small; font-family: Calibri;">In order to maintain segregated functionality of the primary parent site, I configured one of the primary child sites as the top level upstream synchronization server with Microsoft. Next, I configured the remaining two primary children as downstream servers for the WSUS updates. Here was the mistake.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;"><span style="font-size: small; font-family: Calibri;">On the two primary children servers configured as downstream servers, I continuously received <strong style="mso-bidi-font-weight: normal;"><em style="mso-bidi-font-style: normal;">Sync failed: WSUS server not configured</em></strong> in the wsyncmgr.log. I referred back to the sync settings in both the SCCM console and the WSUS console and everything was configured correctly from what I could tell. The problem wasn’t with my settings, it was with my architecture. When WSUS is integrated into SCCM, the WSUS hierarchy is rendered invalid in favor of the SCCM replication hierarchy. Basically, the upstream/downstream relationship for WSUS is now directly related to the parent/child relationship in SCCM. In order to fix the problem, I had to move the upstream synchronization server to the primary parent server and configure all three primary children as downstream servers.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;"><span style="font-size: small; font-family: Calibri;">Once, I made this change, I re-ran the WSUS configuration wizard from the WSUS console and restarted the SMSEXEC service on each primary site server and everything started synchronizing as it should.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt;"><span style="font-size: small; font-family: Calibri;">I also noticed that after making the change on the primary child server that was previously configured as the upstream server, I was receiving a substantial number of alerts in the smsdbmon.log with the entry: <strong style="mso-bidi-font-weight: normal;"><em style="mso-bidi-font-style: normal;">Warning: Could not write to the named pipe \\&lt;SERVERNAME&gt;\PIPE\SMSPROVIDER_&lt;SITENAME&gt;, Error=2 </em></strong>where &lt;servername&gt; is the name of the local server and &lt;sitename&gt; is the name of the primary site for that server. I reviewed all of the SQL configuration settings and permissions; however, the final fix was to simply re-run the WSUS configuration utility from the WSUS console again and the errors stopped.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 10pt; text-align: center;"><a href="http://www.afinn.net/wp-content/uploads/2009/03/sccm_wsus_hierarchy.jpg"><img class="aligncenter size-thumbnail wp-image-65" title="SCCM_WSUS_Hierarchy" src="http://www.afinn.net/wp-content/uploads/2009/03/sccm_wsus_hierarchy-150x150.jpg" alt="SCCM_WSUS_Hierarchy" width="150" height="150" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=64</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Returning HP Serial Numbers Using SNMP&#8230;</title>
		<link>http://www.afinn.net/?p=58</link>
		<comments>http://www.afinn.net/?p=58#comments</comments>
		<pubDate>Tue, 30 Dec 2008 16:00:52 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[VBScript]]></category>
		<category><![CDATA[SNMP]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=58</guid>
		<description><![CDATA[I was recently asked if I knew of a automated way to get the serial numbers for our ESX hosts. Since they are Linux OS, the Win32_BIOS WMI namespace just went out the window. My next thought was to use HP SIM (Systems Insight Manager) alas, no serial numbers were stored for these hosts in [...]]]></description>
			<content:encoded><![CDATA[<p>I was recently asked if I knew of a automated way to get the serial numbers for our ESX hosts. Since they are Linux OS, the Win32_BIOS WMI namespace just went out the window. My next thought was to use HP SIM (Systems Insight Manager) alas, no serial numbers were stored for these hosts in the repository. It was starting to look like manually logging on to the System Management homepage for each server was going to be the way. Umm&#8230; no. I would rather use the time it would take to log on to each server (over 80 in this case) to automate the process for future use because we all know that someday someone else will ask for the same information.</p>
<p>Enter SNMP. Since we are working with a Linux platform, I figured SNMP would be the best bet so I simply needed to find a way to connect. <a href="http://www.net-snmp.org/">Net-SNMP</a> to the rescue. The first order of business was to find the proper node in the SNMP tree where the serial number was stored. To do this, I used the snmpwalk.exe utility from Net-SNMP. The quickest way I found is to simply walk the entire tree; however now that I&#8217;ve done that and dumped a LOT of information, I&#8217;ll save you some time and target the proper object node with the following syntax:</p>
<p><em><strong>snmpwalk.exe -v 2c -c public servername enterprises > C:\snmpoutput.txt</strong></em></p>
<p>In this example, <em><strong>-v 2c</strong></em> tells snmpwalk to use SNMP version 2 and <em><strong>-c public</strong></em> stipulates the read community string to use when walking the OID tree. The <strong><em>enterprises</em></strong> OID is the starting point OID to begin walking all subtrees rooted underneath. Just for reference, the OID defined for enterprises by HP is .1.3.6.1.4.1; however, the MIB file has definitions that allow us to simply use the friendly name of enterprise.</p>
<p>Once you have obtained the output file, search through the results for <strong>2.2.2.5</strong> which is the OID for the string that maintains the serial number of the server. Now that we have the entire OID for the node, we can use the <strong>snmpget.exe</strong> utility to directly target the OID tree node we want instead of enumerating everything under the enterprise node such as:</p>
<p><em><strong>snmpget.exe -v 2c -c public servername .1.3.6.1.4.1.232.2.2.2.5.0</strong></em></p>
<p>Another syntax that is a little easier on the eyes would be:</p>
<p><em><strong>snmpget.exe -v 2c -c public servername SNMPv2-SMI::enterprises.232.2.2.2.5.0</strong></em></p>
<p>which is the same as the previous command only using the defined enterprises name rather than the full OID. Now, this is all good and well for a single ESX host, but what about several? I wanted to use PowerShell to wrap up the automation functionality, but there were no .NET classes available for SNMP and using a custom assembly from CodePlex or CodeProject was a little bit of overkill just for a simple automation task so I decided to wrap it up in good old VBScript as shown below:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p58code2'); return false;">View Code</a> ASP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p582"><td class="code" id="p58code2"><pre class="asp" style="font-family:monospace;"><span style="color: #990099; font-weight: bold;">Set</span> objFSO <span style="color: #006600; font-weight: bold;">=</span> <span style="color: #330066;">CreateObject</span><span style="color: #006600; font-weight:bold;">&#40;</span><span style="color: #cc0000;">&quot;Scripting.FileSystemObject&quot;</span><span style="color: #006600; font-weight:bold;">&#41;</span>
<span style="color: #990099; font-weight: bold;">Set</span> objShell <span style="color: #006600; font-weight: bold;">=</span> <span style="color: #330066;">CreateObject</span><span style="color: #006600; font-weight:bold;">&#40;</span><span style="color: #cc0000;">&quot;WScript.Shell&quot;</span><span style="color: #006600; font-weight:bold;">&#41;</span>
<span style="color: #990099; font-weight: bold;">Set</span> infile <span style="color: #006600; font-weight: bold;">=</span> objFSO.<span style="color: #330066;">OpenTextFile</span><span style="color: #006600; font-weight:bold;">&#40;</span><span style="color: #cc0000;">&quot;C:\Scripts\VBScript\ESXSerials\ESXHosts.txt&quot;</span><span style="color: #006600; font-weight:bold;">&#41;</span>
<span style="color: #990099; font-weight: bold;">Set</span> outfile <span style="color: #006600; font-weight: bold;">=</span> objFSO.<span style="color: #330066;">OpenTextFile</span><span style="color: #006600; font-weight:bold;">&#40;</span><span style="color: #cc0000;">&quot;C:\Scripts\VBScript\ESXSerials\ESXSerials.csv&quot;</span>, <span style="color: #800000;">2</span>, <span style="color: #0000ff; font-weight: bold;">True</span><span style="color: #006600; font-weight:bold;">&#41;</span>
&nbsp;
<span style="color: #990099; font-weight: bold;">Do</span> <span style="color: #990099; font-weight: bold;">While</span> <span style="color: #990099; font-weight: bold;">Not</span> infile.<span style="color: #9900cc;">AtEndOfStream</span>
	str <span style="color: #006600; font-weight: bold;">=</span> infile.<span style="color: #9900cc;">ReadLine</span><span style="color: #006600; font-weight:bold;">&#40;</span><span style="color: #006600; font-weight:bold;">&#41;</span>
	WScript.<span style="color: #9900cc;">Echo</span> <span style="color: #cc0000;">&quot;Querying &quot;</span> <span style="color: #006600; font-weight: bold;">&amp;</span> str
	output <span style="color: #006600; font-weight: bold;">=</span> str
	<span style="color: #990099; font-weight: bold;">Set</span> objExecObject <span style="color: #006600; font-weight: bold;">=</span> objShell.<span style="color: #9900cc;">Exec</span><span style="color: #006600; font-weight:bold;">&#40;</span><span style="color: #cc0000;">&quot;cmd /c D:\Net-SNMP\bin\snmpget.exe -v 2c -c public &quot;</span> <span style="color: #006600; font-weight: bold;">&amp;</span> str <span style="color: #006600; font-weight: bold;">&amp;</span> <span style="color: #cc0000;">&quot; SNMPv2-SMI::enterprises.232.2.2.2.5.0&quot;</span><span style="color: #006600; font-weight:bold;">&#41;</span>
	<span style="color: #990099; font-weight: bold;">Do</span> <span style="color: #990099; font-weight: bold;">While</span> <span style="color: #990099; font-weight: bold;">Not</span> objExecObject.<span style="color: #9900cc;">StdOut</span>.<span style="color: #9900cc;">AtEndOfStream</span>
	    strText <span style="color: #006600; font-weight: bold;">=</span> objExecObject.<span style="color: #9900cc;">StdOut</span>.<span style="color: #9900cc;">ReadLine</span><span style="color: #006600; font-weight:bold;">&#40;</span><span style="color: #006600; font-weight:bold;">&#41;</span>
	    <span style="color: #990099; font-weight: bold;">If</span> <span style="color: #330066;">Instr</span><span style="color: #006600; font-weight:bold;">&#40;</span>strText, <span style="color: #cc0000;">&quot;232.2.2.2.5.0&quot;</span><span style="color: #006600; font-weight:bold;">&#41;</span> <span style="color: #006600; font-weight: bold;">&gt;</span> <span style="color: #800000;">0</span> <span style="color: #990099; font-weight: bold;">Then</span>
	        output <span style="color: #006600; font-weight: bold;">=</span> output <span style="color: #006600; font-weight: bold;">&amp;</span> <span style="color: #cc0000;">&quot;, &quot;</span> <span style="color: #006600; font-weight: bold;">&amp;</span> Right<span style="color: #006600; font-weight:bold;">&#40;</span>strText, <span style="color: #800000;">12</span><span style="color: #006600; font-weight:bold;">&#41;</span>
	        i<span style="color: #006600; font-weight: bold;">=</span><span style="color: #800000;">1</span>
	        Exit <span style="color: #990099; font-weight: bold;">Do</span>
	    <span style="color: #990099; font-weight: bold;">End</span> <span style="color: #990099; font-weight: bold;">If</span>
	<span style="color: #990099; font-weight: bold;">Loop</span>
	outfile.<span style="color: #9900cc;">WriteLine</span> output
<span style="color: #990099; font-weight: bold;">Loop</span></pre></td></tr></table></div>

<p>In the above example, I installed Net-SNMP to D:\Net-SNMP on my workstation and the tools extract into the bin folder by default. I also used a list of all the ESX hosts I was targeting in a text infile. I found the easiest way to get this info was to simply export a list of all hosts from VCenter and then mangle the CSV into a text file with only the server names. The rest should be fairly obvious in the script.</p>
<p>This was one of those weird requests that makes you do a little extra research to come up with a solution. I learned a bit more about SNMP during the process and hope this helps out some others who need to pull some data from ESX.</p>
<p>The MIB containing the OID information for this particular script was <a href="http://www.snmplink.org/cgi-bin/nd/m/Ent/H/Hewlett%20Packard%20(HP)/%5BALL%5D%20-%20HP%20Insight%20Management/Compaq/cpqsinfo.mib">CPQSINFO.MIB</a>; cpqSystemInfo is the top variable. <a href="http://www.oidview.com/mibs/detail.html">ByteSphere</a> has a great MIB resource area to use for research.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=58</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VMWare Ping Test using PowerShell&#8230;</title>
		<link>http://www.afinn.net/?p=55</link>
		<comments>http://www.afinn.net/?p=55#comments</comments>
		<pubDate>Tue, 23 Dec 2008 16:04:38 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=55</guid>
		<description><![CDATA[I recently had to come up with a way to verify that virtual server guests on ESX hosts were back online after restarts that were scheduled using the VMWare Infrastructure Client console. Using the VMWare Automation snap-in, I wrote a PowerShell script that will test for basic ping connectivity via WMI and then leverage VMWare [...]]]></description>
			<content:encoded><![CDATA[<p>I recently had to come up with a way to verify that virtual server guests on ESX hosts were back online after restarts that were scheduled using the VMWare Infrastructure Client console. Using the VMWare Automation snap-in, I wrote a PowerShell script that will test for basic ping connectivity via WMI and then leverage VMWare cmdlets to attempt to recover any VM&#8217;s that are not responding as well as sending an email to recipients when the script fails to bring them online.</p>
<p>This script was implemented as a scheduled task so I simply hardcoded the values into the script rather than using the param statement since I didn&#8217;t plan on calling it from the console; however, it should be easy enough to modify if you wanted to use it interactively. Also, since it is required to connect to the VMServer prior to running any cmdlets, I used Secure-String to generate an encrypted password with a little bit of security since it would be in a text file on the server. To generate the password file, I used the following commands directly in a PowerShell console (second line wrapped):</p>
<p><em>$secureString = Read-Host -AsSecureString<br />
ConvertFrom-SecureString $secureString | out-file C:\Scripts\PowerShell\VMPingTest\acctpass.txt</em></p>
<p>As you can see from the script below, it only takes one line of .NET to decrypt the encrypted password from the file so it&#8217;s not foolproof, but still better than plain text and NTFS only. I&#8217;ve commented the script fairly heavily, so it should be easy to customize for different environments.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p55code4'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p554"><td class="code" id="p55code4"><pre class="powershell" style="font-family:monospace;"><span style="color: #008000;">#Load VMWare snap in:</span>
<span style="color: #008080; font-weight: bold;">Add-PSSnapin</span> VMware.VimAutomation.Core <span style="color: #008080; font-style: italic;">-ErrorVariable</span> errSnapIn <span style="color: #008080; font-style: italic;">-ErrorAction</span> silentlycontinue
<span style="color: #0000FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$errSnapIn</span>.Count <span style="color: #FF0000;">-ne</span> <span style="color: #804000;">0</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
	<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #800000;">&quot;VMWare snap in is required.&quot;</span>
	exit
	<span style="color: #000000;">&#125;</span>
<span style="color: #008000;">#------------------------------------------------------------------------------</span>
<span style="color: #008000;"># Set up variables</span>
<span style="color: #008000;">#------------------------------------------------------------------------------</span>
<span style="color: #008000;">#VM Server hostname</span>
<span style="color: #800080;">$VMServer</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;MYSERVER.MYDOMAIN&quot;</span>
<span style="color: #008000;">#User account to connect to virtual infrastructure:</span>
<span style="color: #800080;">$username</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;USERNAME&quot;</span>
<span style="color: #008000;">#Directory path to secure string password:</span>
<span style="color: #800080;">$pass</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;C:\Path\to\securestringpass.txt&quot;</span>
<span style="color: #008000;">#Directory path to target list of VM's.</span>
<span style="color: #800080;">$servers</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-Content</span> <span style="color: #800000;">&quot;C:\Path\to\serverlist.txt&quot;</span>
<span style="color: #008000;">#Directory path to list of mail recipients.</span>
<span style="color: #800080;">$mailrecipients</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-Content</span> <span style="color: #800000;">&quot;C:\Path\to\recipients.txt&quot;</span>
<span style="color: #008000;">#SMTP relay server</span>
<span style="color: #800080;">$smtpserver</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;smtp.mydomain.com&quot;</span>
<span style="color: #008000;">#Decrypt SecureString password for account:</span>
<span style="color: #800080;">$pwd</span> <span style="color: pink;">=</span> <span style="color: #000000;">&#91;</span>Runtime.InteropServices.Marshal<span style="color: #000000;">&#93;</span>::PtrToStringAuto<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#91;</span>Runtime.InteropServices.Marshal<span style="color: #000000;">&#93;</span>::SecureStringToBSTR<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #008080; font-weight: bold;">gc</span> <span style="color: #800080;">$pass</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">ConvertTo-SecureString</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
&nbsp;
<span style="color: #008000;">#------------------------------------------------------------------------------</span>
<span style="color: #008000;"># Connect to VM Server</span>
<span style="color: #008000;">#------------------------------------------------------------------------------</span>
<span style="color: #800080;">$server</span> <span style="color: pink;">=</span> Connect<span style="color: pink;">-</span>VIServer <span style="color: pink;">-</span>Server <span style="color: #800080;">$VMServer</span> <span style="color: pink;">-</span>User <span style="color: #800080;">$username</span> <span style="color: pink;">-</span>Password <span style="color: #800080;">$pwd</span>
<span style="color: #008000;">#Search for specific VM in the production cluster:</span>
<span style="color: #800080;">$folder</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>Folder <span style="color: #008080; font-style: italic;">-Name</span> <span style="color: #800000;">&quot;Financial Hosts&quot;</span> <span style="color: #008000;">#Target the Finanancial Hosts folder in the VM Infrastructure Client console</span>
<span style="color: #800080;">$cluster</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>Cluster <span style="color: #008080; font-style: italic;">-Name</span> <span style="color: #800000;">&quot;Dallas HA Cluster&quot;</span> <span style="color: pink;">-</span>Location <span style="color: #800080;">$folder</span> <span style="color: #008000;">#Target the Dallas HA Cluster in the VM Infrastructure Client console</span>
&nbsp;
<span style="color: #008000;">#------------------------------------------------------------------------------</span>
<span style="color: #008000;"># Methods</span>
<span style="color: #008000;">#------------------------------------------------------------------------------</span>
<span style="color: #0000FF;">function</span> SendMail
<span style="color: #000000;">&#123;</span>
	<span style="color: #0000FF;">param</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$svr</span><span style="color: pink;">,</span> <span style="color: #800080;">$status</span><span style="color: #000000;">&#41;</span>
	<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$recipient</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$mailrecipients</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #800080;">$mail</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">new-object</span> System.Net.Mail.MailMessage
		<span style="color: #800080;">$mail</span>.Priority <span style="color: pink;">=</span> <span style="color: #800000;">'High'</span>
		<span style="color: #800080;">$mail</span>.From <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">new-object</span> System.Net.Mail.MailAddress<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;PINGTEST@MYDOMAIN.COM&quot;</span><span style="color: #000000;">&#41;</span>;
		<span style="color: #800080;">$mail</span>.To.Add<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;$recipient&quot;</span><span style="color: #000000;">&#41;</span>;
&nbsp;
		<span style="color: #008000;">#set the content</span>
		<span style="color: #800080;">$mail</span>.Subject <span style="color: pink;">=</span> <span style="color: #800000;">&quot;$svr is not responding...&quot;</span>;
		<span style="color: #800080;">$mail</span>.Body <span style="color: pink;">=</span> <span style="color: #800000;">&quot;$svr failed to respond to ping tests with error: $status.<span style="color: #008080; font-weight: bold;">`n</span>&quot;</span> <span style="color: pink;">+</span> 
		<span style="color: #800000;">&quot;This process automatically powers on virtual machines and restart virtual guests where the local network is unresponsive. <span style="color: #008080; font-weight: bold;">`n</span>&quot;</span> <span style="color: pink;">+</span> 
		<span style="color: #800000;">&quot;This server has not responded to automated restart tasks and needs additional attention.<span style="color: #008080; font-weight: bold;">`n</span><span style="color: #008080; font-weight: bold;">`n</span>&quot;</span>
&nbsp;
		<span style="color: #008000;">#send the message</span>
		<span style="color: #800080;">$smtp</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">new-object</span> System.Net.Mail.SmtpClient<span style="color: #000000;">&#40;</span><span style="color: #800080;">$smtpserver</span><span style="color: #000000;">&#41;</span>; 
		<span style="color: #800080;">$smtp</span>.Send<span style="color: #000000;">&#40;</span><span style="color: #800080;">$mail</span><span style="color: #000000;">&#41;</span>;
	<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span>
&nbsp;
<span style="color: #008000;">#------------------------------------------------------------------------------</span>
<span style="color: #008000;"># Main()</span>
<span style="color: #008000;">#------------------------------------------------------------------------------</span>
<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$svr</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$servers</span><span style="color: #000000;">&#41;</span>
<span style="color: #000000;">&#123;</span>
	<span style="color: #800080;">$result</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">gwmi</span> <span style="color: #008080; font-style: italic;">-class</span> Win32_PingStatus <span style="color: pink;">-</span><span style="color: #0000FF;">filter</span> <span style="color: #800000;">&quot;Address='$svr'&quot;</span>
	<span style="color: #800080;">$results</span> <span style="color: pink;">=</span> <span style="color: #800080;">$result</span>.StatusCode
	<span style="color: #800080;">$vm</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>VM <span style="color: #008080; font-style: italic;">-Name</span> <span style="color: #800080;">$svr</span> <span style="color: pink;">-</span>Location <span style="color: #800080;">$cluster</span> <span style="color: #008000;">#Search for specified VM in cluster</span>
&nbsp;
	<span style="color: #0000FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$vm</span>.PowerState <span style="color: #FF0000;">-eq</span> <span style="color: #800000;">&quot;PoweredOff&quot;</span><span style="color: #000000;">&#41;</span> <span style="color: #FF0000;">-and</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$results</span> <span style="color: #FF0000;">-ne</span> <span style="color: #804000;">0</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #008000;">#If the VM is powered down</span>
		Start<span style="color: pink;">-</span>VM <span style="color: pink;">-</span>VM <span style="color: #800080;">$vm</span>.Name <span style="color: #008000;">#Start VM</span>
		<span style="color: #008080; font-weight: bold;">Start-Sleep</span> <span style="color: #008080; font-style: italic;">-Seconds</span> <span style="color: #804000;">60</span> <span style="color: #008000;">#Allow time for VM to come online</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #008000;">#If the VM is powered on, but guest OS is not responding to pings</span>
	<span style="color: #0000FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$vm</span>.PowerState <span style="color: #FF0000;">-eq</span> <span style="color: #800000;">&quot;PoweredOn&quot;</span><span style="color: #000000;">&#41;</span> <span style="color: #FF0000;">-and</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$results</span> <span style="color: #FF0000;">-ne</span> <span style="color: #804000;">0</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		Restart<span style="color: pink;">-</span>VMGuest <span style="color: pink;">-</span>VM <span style="color: #800080;">$vm</span>.Name <span style="color: #008000;">#Restart VM Guest OS</span>
		<span style="color: #008080; font-weight: bold;">Start-Sleep</span> <span style="color: #008080; font-style: italic;">-Seconds</span> <span style="color: #804000;">60</span> <span style="color: #008000;">#Allow time for VM to come online</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #008000;">#Re-run ping test if server was originally unresponsive.</span>
	<span style="color: #0000FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$results</span> <span style="color: #FF0000;">-ne</span> <span style="color: #804000;">0</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #800080;">$secondresult</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">gwmi</span> <span style="color: #008080; font-style: italic;">-class</span> Win32_PingStatus <span style="color: pink;">-</span><span style="color: #0000FF;">filter</span> <span style="color: #800000;">&quot;Address='$svr'&quot;</span>
		<span style="color: #800080;">$secondresults</span> <span style="color: pink;">=</span> <span style="color: #800080;">$secondresult</span>.StatusCode
		<span style="color: #0000FF;">switch</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$secondresults</span><span style="color: #000000;">&#41;</span>
		<span style="color: #000000;">&#123;</span>
			<span style="color: #804000;">0</span> 	  <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Success&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11001</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Buffer Too Small&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11002</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Destination Net Unreachable&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11003</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Destination Host Unreachable&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11004</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Destination Protocol Unreachable&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11005</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Destination Port Unreachable&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11006</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;No Resources&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11007</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Bad Option&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11008</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Hardware Error&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11009</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Packet Too Big&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11010</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Request Timed Out&quot;</span> <span style="color: #000000;">&#125;</span> 
			<span style="color: #804000;">11011</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Bad Request&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11012</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Bad Route&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11013</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;TimeToLive Expired Transit&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11014</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;TimeToLive Expired Reassembly&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11015</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Parameter Problem&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11016</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Source Quench&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11017</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Option Too Big&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11018</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Bad Destination&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11032</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Negotiating IPSEC&quot;</span> <span style="color: #000000;">&#125;</span>
			<span style="color: #804000;">11050</span> <span style="color: #000000;">&#123;</span> <span style="color: #800080;">$pingresults</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;General Failure&quot;</span> <span style="color: #000000;">&#125;</span>
		<span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0000FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$secondresults</span> <span style="color: #FF0000;">-ne</span> <span style="color: #804000;">0</span><span style="color: #000000;">&#41;</span> 
	<span style="color: #000000;">&#123;</span>
		SendMail <span style="color: #800080;">$svr</span> <span style="color: #800080;">$pingresults</span>
	<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=55</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create PowerShell Forms&#8230; Fast!</title>
		<link>http://www.afinn.net/?p=52</link>
		<comments>http://www.afinn.net/?p=52#comments</comments>
		<pubDate>Fri, 19 Dec 2008 13:19:00 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[forms]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=52</guid>
		<description><![CDATA[The guys at Sapien have release a great utility to create PowerShell forms and since it&#8217;s free, the price is right as well. It took me 90 seconds to create the form shown below. Granted, it&#8217;s a very basic example, but creating forms in PowerShell by leveraging the System.Windows.Forms namespace takes a long time. If [...]]]></description>
			<content:encoded><![CDATA[<p>The guys at Sapien have release a great utility to create PowerShell forms and since it&#8217;s free, the price is right as well. It took me 90 seconds to create the form shown below. Granted, it&#8217;s a very basic example, but creating forms in PowerShell by leveraging the System.Windows.Forms namespace takes a long time. If you need to create GUI front ends for your scripts, check out this great <a href="http://www.primaltools.com/freetools/index.asp">editor.</a></p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p52code6'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p526"><td class="code" id="p52code6"><pre class="powershell" style="font-family:monospace;"><span style="color: #008000;">#Generated Form Function</span>
<span style="color: #0000FF;">function</span> GenerateForm <span style="color: #000000;">&#123;</span>
<span style="color: #008000;">########################################################################</span>
<span style="color: #008000;"># Code Generated By: SAPIEN Technologies PrimalForms v1.0.1.0</span>
<span style="color: #008000;"># Generated On: 12/18/2008 10:04 PM</span>
<span style="color: #008000;"># Generated By: Alan</span>
<span style="color: #008000;">########################################################################</span>
&nbsp;
<span style="color: #008000;">#region Import the Assembles</span>
<span style="color: #000000;">&#91;</span>reflection.assembly<span style="color: #000000;">&#93;</span>::loadwithpartialname<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;System.Windows.Forms&quot;</span><span style="color: #000000;">&#41;</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Out-Null</span>
<span style="color: #000000;">&#91;</span>reflection.assembly<span style="color: #000000;">&#93;</span>::loadwithpartialname<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;System.Drawing&quot;</span><span style="color: #000000;">&#41;</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Out-Null</span>
<span style="color: #008000;">#endregion</span>
&nbsp;
<span style="color: #008000;">#region Generated Form Objects</span>
<span style="color: #800080;">$form1</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Windows.Forms.Form
<span style="color: #800080;">$textBox1</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Windows.Forms.TextBox
<span style="color: #800080;">$button1</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Windows.Forms.Button
<span style="color: #008000;">#endregion Generated Form Objects</span>
&nbsp;
<span style="color: #008000;">#----------------------------------------------</span>
<span style="color: #008000;">#Generated Event Script Blocks</span>
<span style="color: #008000;">#----------------------------------------------</span>
<span style="color: #008000;">#Provide Custom Code for events specified in PrimalForms.</span>
<span style="color: #800080;">$button1_OnClick</span><span style="color: pink;">=</span> 
<span style="color: #000000;">&#123;</span>
<span style="color: #800080;">$wmi</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">gwmi</span> <span style="color: #008080; font-style: italic;">-class</span> Win32_ComputerSystem
<span style="color: #800080;">$textBox1</span>.text<span style="color: pink;">=</span><span style="color: #800080;">$wmi</span>.Caption
&nbsp;
<span style="color: #000000;">&#125;</span>
&nbsp;
<span style="color: #008000;">#----------------------------------------------</span>
<span style="color: #008000;">#region Generated Form Code</span>
<span style="color: #800080;">$form1</span>.Text <span style="color: pink;">=</span> <span style="color: #800000;">'What'</span><span style="color: #800000;">'s my computer name?'</span>
<span style="color: #800080;">$form1</span>.Name <span style="color: pink;">=</span> <span style="color: #800000;">'form1'</span>
<span style="color: #800080;">$form1</span>.DataBindings.DefaultDataSourceUpdateMode <span style="color: pink;">=</span> <span style="color: #804000;">0</span>
<span style="color: #800080;">$System_Drawing_Size</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Drawing.Size
<span style="color: #800080;">$System_Drawing_Size</span>.Width <span style="color: pink;">=</span> <span style="color: #804000;">292</span>
<span style="color: #800080;">$System_Drawing_Size</span>.Height <span style="color: pink;">=</span> <span style="color: #804000;">266</span>
<span style="color: #800080;">$form1</span>.ClientSize <span style="color: pink;">=</span> <span style="color: #800080;">$System_Drawing_Size</span>
&nbsp;
<span style="color: #800080;">$System_Drawing_Size</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Drawing.Size
<span style="color: #800080;">$System_Drawing_Size</span>.Width <span style="color: pink;">=</span> <span style="color: #804000;">173</span>
<span style="color: #800080;">$System_Drawing_Size</span>.Height <span style="color: pink;">=</span> <span style="color: #804000;">20</span>
<span style="color: #800080;">$textBox1</span>.Size <span style="color: pink;">=</span> <span style="color: #800080;">$System_Drawing_Size</span>
<span style="color: #800080;">$textBox1</span>.DataBindings.DefaultDataSourceUpdateMode <span style="color: pink;">=</span> <span style="color: #804000;">0</span>
<span style="color: #800080;">$textBox1</span>.Name <span style="color: pink;">=</span> <span style="color: #800000;">'textBox1'</span>
<span style="color: #800080;">$System_Drawing_Point</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Drawing.Point
<span style="color: #800080;">$System_Drawing_Point</span>.X <span style="color: pink;">=</span> <span style="color: #804000;">60</span>
<span style="color: #800080;">$System_Drawing_Point</span>.Y <span style="color: pink;">=</span> <span style="color: #804000;">123</span>
<span style="color: #800080;">$textBox1</span>.Location <span style="color: pink;">=</span> <span style="color: #800080;">$System_Drawing_Point</span>
<span style="color: #800080;">$textBox1</span>.TabIndex <span style="color: pink;">=</span> <span style="color: #804000;">1</span>
&nbsp;
<span style="color: #800080;">$form1</span>.Controls.Add<span style="color: #000000;">&#40;</span><span style="color: #800080;">$textBox1</span><span style="color: #000000;">&#41;</span>
&nbsp;
<span style="color: #800080;">$button1</span>.TabIndex <span style="color: pink;">=</span> <span style="color: #804000;">0</span>
<span style="color: #800080;">$button1</span>.Name <span style="color: pink;">=</span> <span style="color: #800000;">'button1'</span>
<span style="color: #800080;">$System_Drawing_Size</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Drawing.Size
<span style="color: #800080;">$System_Drawing_Size</span>.Width <span style="color: pink;">=</span> <span style="color: #804000;">111</span>
<span style="color: #800080;">$System_Drawing_Size</span>.Height <span style="color: pink;">=</span> <span style="color: #804000;">23</span>
<span style="color: #800080;">$button1</span>.Size <span style="color: pink;">=</span> <span style="color: #800080;">$System_Drawing_Size</span>
<span style="color: #800080;">$button1</span>.UseVisualStyleBackColor <span style="color: pink;">=</span> <span style="color: #800080;">$True</span>
&nbsp;
<span style="color: #800080;">$button1</span>.Text <span style="color: pink;">=</span> <span style="color: #800000;">'Computer Name'</span>
&nbsp;
<span style="color: #800080;">$System_Drawing_Point</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Drawing.Point
<span style="color: #800080;">$System_Drawing_Point</span>.X <span style="color: pink;">=</span> <span style="color: #804000;">93</span>
<span style="color: #800080;">$System_Drawing_Point</span>.Y <span style="color: pink;">=</span> <span style="color: #804000;">78</span>
<span style="color: #800080;">$button1</span>.Location <span style="color: pink;">=</span> <span style="color: #800080;">$System_Drawing_Point</span>
<span style="color: #800080;">$button1</span>.DataBindings.DefaultDataSourceUpdateMode <span style="color: pink;">=</span> <span style="color: #804000;">0</span>
<span style="color: #800080;">$button1</span>.add_Click<span style="color: #000000;">&#40;</span><span style="color: #800080;">$button1_OnClick</span><span style="color: #000000;">&#41;</span>
&nbsp;
<span style="color: #800080;">$form1</span>.Controls.Add<span style="color: #000000;">&#40;</span><span style="color: #800080;">$button1</span><span style="color: #000000;">&#41;</span>
&nbsp;
<span style="color: #008000;">#endregion Generated Form Code</span>
&nbsp;
<span style="color: #008000;">#Show the Form</span>
<span style="color: #800080;">$form1</span>.ShowDialog<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Out-Null</span>
&nbsp;
<span style="color: #000000;">&#125;</span> <span style="color: #008000;">#End Function</span>
&nbsp;
<span style="color: #008000;">#Call the Function</span>
GenerateForm</pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=52</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Operations Manager Data Warehouse High CPU Utilization</title>
		<link>http://www.afinn.net/?p=50</link>
		<comments>http://www.afinn.net/?p=50#comments</comments>
		<pubDate>Wed, 29 Oct 2008 15:23:29 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[OpsMgr 2007]]></category>
		<category><![CDATA[CPU]]></category>
		<category><![CDATA[Data Warehouse]]></category>
		<category><![CDATA[Operations Manager]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=50</guid>
		<description><![CDATA[I recently ran into an issue where the sqlserver.exe process on my data warehouse server was continously running at close to 100%. Stopping and starting the service did not help as it would continously climb back up to near 100% within a few minutes. I gave PSS a call and they helped me to identify [...]]]></description>
			<content:encoded><![CDATA[<p>I recently ran into an issue where the sqlserver.exe process on my data warehouse server was continously running at close to 100%. Stopping and starting the service did not help as it would continously climb back up to near 100% within a few minutes. I gave PSS a call and they helped me to identify the issue which I thought might be good to share.</p>
<p>To put a little perspective on the environment; my data warehouse server is a dedicated cluster with quad processors and 8 GB on each node. The DW database is approx. 80GB and there are no other sql instances or databases running on the platform which is why I could not figure out why the CPU continuously stayed pegged as there was more than enough hardware to handle that role. Since there were multiple hyperthreaded processors, the first thing we attempted was to disable hyperthreading in the BIOS. No luck. The next item on the agenda was to make sure that the MAXDOP (Max Degree of Parallelism) was set properly for the server. This was done by running the following command and making the appropriate changes from the returned results to the maxdop properties of the server in Management Studio:</p>
<p><em>select case when cpu_count / hyperthread_ratio &gt; 8 then 8 else cpu_count / hyperthread_ratio end as optimal_maxdop_setting from sys.dm_os_sys_info. </em></p>
<p>After changing the setting to the output from the select statement, my CPU utilization dropped down to around a steady 40% to 50% utilization. Better, but not the 3% to 5% normal utilization the server used to run with.</p>
<p>After analyzing a few perfmon and SQL Profiler traces, PSS identified a stored procedure that was taking too long to run on the State dataset from &#8220;StandardDatasetMaintenance&#8221;. After some additional analysis, it turned out that there were several missing indexes which needed to be rebuilt. I ran the following two commands against the database:</p>
<p><strong>EXEC sp_MSForEachTable  &#8220;UPDATE STATISTICS ? with fullscan&#8221;</strong></p>
<p><strong>EXEC sp_MSforeachtable @command1=&#8221;print &#8216;?&#8217; DBCC DBREINDEX (&#8216;?&#8217;, &#8216; &#8216;, 100)&#8221;</strong></p>
<p>After these commands completed (took about 90 minutes), the CPU utilization was returned back to 5% or below. I have scheduled these as maintenance tasks to run every 30 days. It took nearly three weeks of headache to finally resolve the high CPU utilization so I hope this saves some time for others who admin SCOM, but are not DBA&#8217;s.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=50</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PowerShell Plus IDE</title>
		<link>http://www.afinn.net/?p=48</link>
		<comments>http://www.afinn.net/?p=48#comments</comments>
		<pubDate>Tue, 30 Sep 2008 16:33:59 +0000</pubDate>
		<dc:creator>alan</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://www.afinn.net/?p=48</guid>
		<description><![CDATA[I&#8217;ve been using PrimalScript for all of my script authoring for a few years. VBScript, Batch, Perl&#8230; just about any scripting language was nicely handled by the IDE. When PowerShell came out I played around with Power Analyzer, but decided to stay with PrimalScript for the IDE. That was until Idera launched PowerShell Plus which is [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using PrimalScript for all of my script authoring for a few years. VBScript, Batch, Perl&#8230; just about any scripting language was nicely handled by the IDE. When PowerShell came out I played around with Power Analyzer, but decided to stay with PrimalScript for the IDE. That was until Idera launched <a title="PowerShell Plus" href="http://www.idera.com/Products/PowerShell/">PowerShell Plus</a> which is a progression from Power Analyzer. I have to say that this IDE beats all others for PowerShell, hands down! The code completion is astonishing for a scripting tool. While PrimalScript does well with code completion for the cmdlets, this baby code completes everything in PowerShell; including .NET classes. It has a nicely embedded script editor which allows you to easily jump between the console and your current project. The variable window is nice to view what values are currently held by the variables including help on selected variables. This is a very cool product and there are so many other features that make it definitely worth a look. If you do a lot of work with PowerShell, take this IDE out for a test drive. Even if you are a die hard PrimalScript fan, I bet you will sway your PowerShell scripting work to this editor.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.afinn.net/?feed=rss2&amp;p=48</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
