<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-4905178565969126651</atom:id><lastBuildDate>Wed, 23 May 2012 21:58:04 +0000</lastBuildDate><category>SCOM</category><category>Client-Side Hypervisor</category><category>AGEE</category><category>Windows Mobile</category><category>Follow-Me</category><category>Command Center</category><category>VMWare</category><category>SCCM</category><category>Citrix Reciever</category><category>XENApp</category><category>Exchange</category><category>Exchange Backups</category><category>SCVMM</category><category>NetApp</category><category>VDI</category><category>IPad</category><category>Cloud Gateway</category><category>Windows Server 2008</category><category>Hyper-V</category><category>System Center</category><category>XENDesktop</category><category>Provisioning Server</category><category>Exchange 2007</category><category>Rick Davis</category><category>RightFax</category><category>XENServer</category><category>Exchange Public Folders</category><category>UC</category><category>Jarian Gibson</category><category>Rick Rohne</category><category>Scripting</category><category>Scott Lane</category><category>View</category><category>PowerShell</category><category>VPX</category><category>Exchange Migration</category><category>Rik Hoffelder</category><category>Andy Paul</category><category>Branch Repeater</category><category>Exchange 2003</category><category>Application Virtualization</category><category>Exchange 2010</category><category>AppSense</category><category>Application Firewall</category><category>Netscaler</category><category>Rich Brumpton</category><category>Systems Administration</category><category>Windows 7</category><title>The Generation V</title><description>This site is dedicated to hosting discussions and technical articles about next generation technology.

Find Microsoft, Citrix, VMWare, NETApp, AppSense, Wyse, Events User Groups Training or KB Search.</description><link>http://www.thegenerationv.com/</link><managingEditor>noreply@blogger.com (Rick Rohne)</managingEditor><generator>Blogger</generator><openSearch:totalResults>75</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/TheGenerationV" /><feedburner:info uri="thegenerationv" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-4243366138439890704</guid><pubDate>Wed, 11 Jan 2012 21:05:00 +0000</pubDate><atom:updated>2012-01-11T15:15:51.479-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Rik Hoffelder</category><category domain="http://www.blogger.com/atom/ns#">PowerShell</category><title>Using Rich HTML with Send-MailMessage</title><description>By:Rik Hoffelder&lt;hr /&gt;The Send-MailMessage CMDLET can be a useful tool in many ways.  However it has some limitations that can be easily overcome with a little PowerShell scripting and HTML tags.  I was recently asked by a customer for some ideas to help automate a notification message when a new employee joins the company.  This was to be a part of a larger auto-user provisioning script that would send a welcome message to the new employee with various company information and helpful links.  This particular task was performed manually by an administrator using a custom template in Outlook (.OFT file).  Our mission was to convert the OFT and manual process into something we could do with Send-MailMessage.&lt;br /&gt;&lt;br /&gt;Before I go too much further into the solution I want to thank and credit my customer, Paul Savage of McCarthy Building Companies, for pulling this all together and sharing his code with us.  Thank you Paul!&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;First it is important to understand that Send-MailMessage allows you to use HTML in the message body using the –HtmlAsBody switch.  Next we take advantage of the Get-Content and Out-String cmdlets to build the Body parameter of the message.  This allows us to create a txt file with HTML tags that contain the message content and provide the same formatting that was used in the body of the OFT.  So with the assistance of Paul's Sharepoint Developer we were able to create the message body text file as shown below:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Body.Txt&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;style&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;.colorchange {&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;    color:#4F81BD;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;}&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:10pt"&amp;gt;Welcome  to Company Name Here!&amp;amp;nbsp; We are glad you are here!&amp;amp;nbsp;&amp;amp;nbsp; Below are some helpful items to get you started.&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:10pt"&amp;gt;Our company provides a library of documents to help you with your daily tasks and responsibilities &amp;lt;a href="http://intranet.company.com/employee%20%documents "&amp;gt;by clicking here.&amp;lt;/a&amp;gt;.&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:10pt"&amp;gt;The &amp;lt;a href=" http://intranet.company.com/hr"&amp;gt;Human  Resources Policies Manual&amp;lt;/a&amp;gt; should be thoroughly reviewed.&amp;amp;nbsp; By replying,  you are acknowledging receipt and consent to the Policies outlined in the  Manual.&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:10pt"&amp;gt;In  addition to policies noted above, please take a moment to review and understand  a few additional guidelines when using our Information Systems.&amp;amp;nbsp; They are: &amp;lt;/p&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:10pt"&amp;gt;&amp;amp;nbsp;1.&amp;amp;nbsp;  Use of the Mass Distribution Function Company E-Mail System- &amp;lt;a href="http://intranet.company.com/hr/Mass+Email+Distribution.doc"&amp;gt;http:// intranet.company.com/hr/Mass+Email+Distribution.doc&amp;lt;/a&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  &amp;amp;nbsp;2.&amp;amp;nbsp;  Spam E-Mails- &amp;lt;a href="http:// intranet.company.com/hr/Email-SPAM-Filtering-Service.aspx"&amp;gt;http:// intranet.company.com/hr/Email-SPAM-Filtering-Service.aspx&amp;lt;/a&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:10pt"&amp;gt;Again,  the intent of these policies and procedures are to provide for necessary  safeguards that protect all employees interests and our company.&amp;amp;nbsp;&amp;amp;nbsp; If  you have any questions on the policies or procedures, feel free to contact the  I.T. Help Desk at 800-555-1234.&amp;amp;nbsp; They will forward your questions to the  appropriate personnel who can assist you.&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:10pt"&amp;gt;Thank you and welcome  aboard!&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:10pt"&amp;gt;&amp;lt;b&amp;gt;Jane Doe&amp;lt;/b&amp;gt; | &amp;lt;span class="colorchange"&amp;gt;Director&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;p style="font-family:Tahoma, Geneva, sans-serif; font-size:8pt; color:#808080"&amp;gt;Human Resources | Company Name, Inc.&amp;lt;br/&amp;gt;(800) 555-1234&amp;lt;/p&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;Next we reference the body file in the script as shown below:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;SendWelcomeEmail.PS1&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;$messageParameters = @{&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Subject = "Welcome Aboard!"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Body = Get-Content "C:\body.txt" | out-string&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;From = "Welcome@company.com"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;To = "NewEmployee@company.com"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;SmtpServer = "smtp.company.com"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;}&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Send-MailMessage @messageParameters –BodyAsHtml&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;With a little bit of tweaking you can easily pass a variable to the script by adding the following:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;SendWelcomeEmail.PS1 NewEmp &lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;(Example &lt;em&gt;.\SendWelcomeEmail.PS1 john.doe@company.com&lt;/em&gt;)&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Param(&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;    [string] $NewEmp = ""&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;)&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;function ValidateParams&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;{&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  $validInputs = $true&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  $errorString =  ""&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  if ($NewEmp -eq "")&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  {&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;    $validInputs = $false&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;    $errorString += "`missing parameter: The employee email address parameter is required. Please enter a valid email address. Example: john.doe@company.com"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  }&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  if (!$validInputs)&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  {&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;    Write-error "$errorString"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  }&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;  return $validInputs&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;}&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;### Validate the parameters ###&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;$ifValidParams = ValidateParams;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;if (!$ifValidParams) { exit; }&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;$messageParameters = @{&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Subject = "Welcome to the Company!"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Body = Get-Content "C:\body.txt" | out-string&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;From = "Welcome@company.com"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;To = &amp;amp;NewEmp&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;SmtpServer = "smtp.company.com"&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;}&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Send-MailMessage @messageParameters –BodyAsHtml&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;Good luck and happy scripting!&lt;/p&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.thegenerationv.com/search/label/PowerShell"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on PowerShell&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-4243366138439890704?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1ApeAh9m7QkDfWFXTvjHDyxZA0k/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1ApeAh9m7QkDfWFXTvjHDyxZA0k/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1ApeAh9m7QkDfWFXTvjHDyxZA0k/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1ApeAh9m7QkDfWFXTvjHDyxZA0k/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=8D03iKbaOlQ:52nQxrvtCk4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=8D03iKbaOlQ:52nQxrvtCk4:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=8D03iKbaOlQ:52nQxrvtCk4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=8D03iKbaOlQ:52nQxrvtCk4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=8D03iKbaOlQ:52nQxrvtCk4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=8D03iKbaOlQ:52nQxrvtCk4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=8D03iKbaOlQ:52nQxrvtCk4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=8D03iKbaOlQ:52nQxrvtCk4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=8D03iKbaOlQ:52nQxrvtCk4:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/8D03iKbaOlQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/8D03iKbaOlQ/using-rich-html-with-send-mailmessage.html</link><author>noreply@blogger.com (Rik Hoffelder)</author><feedburner:origLink>http://www.thegenerationv.com/2012/01/using-rich-html-with-send-mailmessage.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-4091087815409233024</guid><pubDate>Wed, 26 Oct 2011 12:31:00 +0000</pubDate><atom:updated>2011-10-26T07:42:45.570-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Follow-Me</category><category domain="http://www.blogger.com/atom/ns#">Rick Rohne</category><category domain="http://www.blogger.com/atom/ns#">Cloud Gateway</category><category domain="http://www.blogger.com/atom/ns#">Citrix Reciever</category><title>Barcelona Citrix Synergy Keynotes</title><description>By:Rick Rohne&lt;br /&gt;
&lt;hr /&gt;
Today’s keynotes @Citrix Synergy remind me why I got into the Technical Industry in the first place. It’s not about knowing how things work or how to make things work. It’s all about understanding market trends and business trends and understanding how that fits into today’s business and of course my professional life.  Here are some key Topics to todays Keynotes&lt;span class="fullpost"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Citrix Acquires App-DNA – Mark T didn’t go too far into how they plan to market or sell the product. IMHO, App-DNA has so much Intellectual Property and this is a great move which allows Citrix to help organizations perform Desktop transformations faster and more efficient. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Citrix Acquires ShareFile – ShareFile allows Data to Integrate into “ALL” Citrix products so finally - the Term and Strategy of Follow-Me Data is now revealed. Sharefile is an Enterprise Cloud Storage platform with many Enterprise Features such as a robust Outlook Plugin that allows a user to send a link to files automatically based on User or Admin Driven Policy. Sync with all devices everywhere, Sync with Receiver Plugins, Online and Offline Data, Remote Wipe of Data (See all devices that you have logged into and remote wipe). I would like to see Citrix integrate this into Policy Driven Enterprise Storage with Storage API’s and maybe Integration into a Personal vDisk. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Speaking of Personal vDisks - Ringcube Strategy Revealed - Personal vDisks gives a place for users to store Data, Install Apps, Personality, etc. My 2 Cents… Integrate with other Management products like SCCM or provide a space for App-V or XENAPP Streamed apps cached space to be persistent. Use AppSense or other 3rd party products to authorize the installation of 1 off apps or Plugins that system administrators can’t or have not published. I’m not a fan of giving users admin rights, so I’ll talk about this a little later… &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;GoToMeeting Workspaces – Collaborate with Documents online with HD-Faces and GoToMeeting all in one virtual room. GTM Workspaces integrates with ShareFile Cloud Storage. Mark up documents and collaborate as if you were in the same room. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Citrix Cloud Gateway Express – Used with XENAPP and XENDesktop. IMHO - Basically Access Gateway Integration with StoreFront. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Citrix Cloud Gateway Enterprise – Combine Citrix XENAPP, XENDESKTOP with Follow-Me Data and Follow-Me SaaS Apps. IMHO -&amp;gt; I envision this being similar to the Universal Licenses or maybe even a replacement. This seems to be the NEW BIG 3 that Citrix will be offering. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Web Interface is dead in 2015. Welcome the new StoreFront! StoreFront brings Follow-Me Apps, Desktops, Follow-Me Data, and SaaS apps delivered from a unified platform (Citrix Receiver). More info to come on this, although it is a radical step, I believe it to be the right direction to drive the adoption of Follow-Me theme. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;HDX System on a Chip – Texas Instruments creates the first HDX enabled Chip that allows for updates to keep up with HDX technologies. The plan is to drive the cost of a thin client down below $100. Enable Desktop Transformation to move faster. NComputing making first devices. Demo of Metro Receiver for Windows 8 – Great Metro Feel of Receiver apps, Allows Citrix to use Virtual Desktops as a True Touch Screen Desktop. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Netscaler Cloud Connectors – API’s to drive single management of Private and Public Clouds from a single interface. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Cloud Stack and Cloud Portal Announced today. Great customizable platform for the Clouds (supports all Hypervisors). &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Receiver for Facebook – This was the last announcement. More of an attention getter than a major innovation, and I believe they got some heads to turn. Basically Receiver for Facebook allows you to connect to your Apps and Data using HTML 5 embedded into the Facebook application. &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

Be sure to follow me @RicksLife the rest of this week.  Lots of good content!  Man!  Feels good to be back!
&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-4091087815409233024?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/JK1saAHH5TFDaTllOWmPAryoODQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JK1saAHH5TFDaTllOWmPAryoODQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/JK1saAHH5TFDaTllOWmPAryoODQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JK1saAHH5TFDaTllOWmPAryoODQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=1y5ctO-uJe8:lTFuFkJ4UZY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=1y5ctO-uJe8:lTFuFkJ4UZY:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=1y5ctO-uJe8:lTFuFkJ4UZY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=1y5ctO-uJe8:lTFuFkJ4UZY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=1y5ctO-uJe8:lTFuFkJ4UZY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=1y5ctO-uJe8:lTFuFkJ4UZY:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=1y5ctO-uJe8:lTFuFkJ4UZY:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=1y5ctO-uJe8:lTFuFkJ4UZY:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=1y5ctO-uJe8:lTFuFkJ4UZY:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/1y5ctO-uJe8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/1y5ctO-uJe8/barcelona-citrix-synergy-keynotes.html</link><author>noreply@blogger.com (Rick Rohne)</author><feedburner:origLink>http://www.thegenerationv.com/2011/10/barcelona-citrix-synergy-keynotes.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-3895480040131775633</guid><pubDate>Mon, 18 Jul 2011 16:38:00 +0000</pubDate><atom:updated>2011-07-18T13:15:41.881-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Rik Hoffelder</category><category domain="http://www.blogger.com/atom/ns#">RightFax</category><category domain="http://www.blogger.com/atom/ns#">PowerShell</category><title>RightFax Integration Module in a Collective</title><description>By:Rik Hoffelder&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The RightFax Shared Services Collective is a wonderful feature that allows load balance and failover in a shared nothing architecture.  There is an exception to this however the Integration Module cannot run on multiple nodes when sharing the same Inbox.  When this is done you end up with duplication of faxes.  &lt;br /&gt;&lt;br /&gt;As shown below a typical environment will use two or more collective servers with the IM.  It reads from Inboxes on a clustered file share with all application servers feeding to this location.  This makes for a great high availability solution, but doesn't solve the IM problem.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-sxgpBkynCho/TiRow19uoTI/AAAAAAAAAFY/7F6cOTZKZwU/s1600/sample.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 152px;" src="http://4.bp.blogspot.com/-sxgpBkynCho/TiRow19uoTI/AAAAAAAAAFY/7F6cOTZKZwU/s200/sample.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5630740622448959794" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To workaround this problem most administrators disable the IM service on all but one collective server.  In the event of a primary server failure they manually start the service on another collective member.  This is an acceptable workaround however it has two flaws. &lt;span class="fullpost"&gt;The first is that it’s a manual process.  The second issue occurs when the original server is recovered.  You have to remember to shutdown the IM service on the other server.&lt;br /&gt;&lt;br /&gt;As a field consultant I have encountered this situation on numerous occasions.  In a few cases the project required that I provide some mechanism to fail this over automatically.  There are a few ways to accomplish this outside of RightFax depending on what you have available.  So for those of you that have struggled with this situation here’s how I accomplished it using a VB Script. I also have lightly tested PowerShell version.  Note that neither script is sanctioned or supported by OpenText.&lt;br /&gt;&lt;br /&gt;The script, RFMonitor.VBS, uses a CSV input file named RFMonitor.INI.  This file provides the services and servers used as input varibles for the script.  The fields are RF Service Monitored, Primary Server, Secondary Server. I run the script as a scheduled task on a separate server (management server) every 10 minutes. &lt;br /&gt; &lt;br /&gt;It essentially pings the primary to make sure it’s up, if not it fails over to the secondary immediately.  If the primary is up it verifies the services are running, if not it fails over.  It also checks to see if the IM service is running on both servers.  If so, it stops it on the secondary.  This has been tested extensively and is running in a couple of production environments.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;RFMonitor.INI&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;RFPROD,FAXSRV02,FAXSRV01,&lt;br /&gt;RFSERVER,FAXSRV02,FAXSRV01,&lt;br /&gt;RFDOCTRANS,FAXSRV02,FAXSRV01,&lt;br /&gt;RFPAGE,FAXSRV02,FAXSRV01,&lt;br /&gt;RFQUEUE,FAXSRV02,FAXSRV01,&lt;br /&gt;RFREMOTE,FAXSRV02,FAXSRV01,&lt;br /&gt;RFRPC,FAXSRV02,FAXSRV01,&lt;br /&gt;RFIsoConv,FAXSRV02,FAXSRV01,&lt;br /&gt;CapaSync,FAXSRV02,FAXSRV01,&lt;br /&gt;RFEMAIL,FAXSRV02,FAXSRV01,&lt;br /&gt;RFMIME,FAXSRV02,FAXSRV01,&lt;br /&gt;RFWORK1,FAXSRV02,FAXSRV01,&lt;br /&gt;RFWORK2,FAXSRV02,FAXSRV01,&lt;br /&gt;RFWORK3,FAXSRV02,FAXSRV01,&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;RFMonitor.VBS&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;On Error Resume Next&lt;br /&gt;'##### Open and parse CSV for varibles #####&lt;br /&gt;Const ForReading = 1&lt;br /&gt;Set objFSO = CreateObject("Scripting.FileSystemObject")&lt;br /&gt;Set objFile = objFSO.OpenTextFile("rfmonitor.ini", ForReading)&lt;br /&gt;Do Until objFile.AtEndOfStream&lt;br /&gt;    strLine = objFile.ReadLine&lt;br /&gt;    arrFields = Split(strLine, Chr(44))&lt;br /&gt;    strSvc = arrFields(0)&lt;br /&gt;    strMainSrv = arrFields(1)&lt;br /&gt;    strBkupSrv = arrFields(2)&lt;br /&gt;Call CheckMainSrv()&lt;br /&gt;Loop&lt;br /&gt;'##### Check Main Server Availability #####&lt;br /&gt;Sub CheckMainSrv()&lt;br /&gt;strComputer = "."&lt;br /&gt;Set objShell = CreateObject("WScript.Shell")&lt;br /&gt;Set objWshScriptExec = objShell.Exec("ping " &amp; strMainSrv)&lt;br /&gt;Set objStdOut = objWshScriptExec.StdOut&lt;br /&gt;&lt;br /&gt;While Not objStdOut.AtEndOfStream&lt;br /&gt;    strLine = objStdOut.ReadLine&lt;br /&gt;        If InStr(strLine,"Reply from") Then&lt;br /&gt;                Call CheckBkupSrv() &lt;br /&gt;            Else&lt;br /&gt;                Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;                LogError.LogEvent 1, strMainSrv &amp; " " &amp; "is unreachable, starting services on" &amp; " " &amp; strBkupSrv&lt;br /&gt;                Call StartBkupSrv()&lt;br /&gt;        End If&lt;br /&gt;Wend&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;'##### Check Backup Server Availability #####&lt;br /&gt;Sub CheckBkupSrv()&lt;br /&gt;&lt;br /&gt;strComputer = "."&lt;br /&gt;Set objShell = CreateObject("WScript.Shell")&lt;br /&gt;Set objWshScriptExec = objShell.Exec("ping " &amp; strBkupSrv)&lt;br /&gt;Set objStdOut = objWshScriptExec.StdOut&lt;br /&gt;&lt;br /&gt;While Not objStdOut.AtEndOfStream&lt;br /&gt;    strLine = objStdOut.ReadLine&lt;br /&gt;        If InStr(strLine,"Reply from") Then&lt;br /&gt;                Call CheckSvcType() &lt;br /&gt;            Else&lt;br /&gt;                Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;                LogError.LogEvent 1, strMainSrv &amp; " " &amp; "is unreachable, checking services on" &amp; " " &amp; strMainSrv&lt;br /&gt;                Call StartMainSrv()&lt;br /&gt;        End If&lt;br /&gt;Wend&lt;br /&gt;&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;'##### Check Service Type #####&lt;br /&gt;Sub CheckSvcType()&lt;br /&gt;&lt;br /&gt;     If strSvc = "RFPROD" Then&lt;br /&gt;         Call CheckIMSvc()&lt;br /&gt;     ElseIf strSvc = "RIGHTFAXONFAX011024" Then&lt;br /&gt;         Call CheckGPSvc()&lt;br /&gt;     ElseIf strSvc = strSvc Then&lt;br /&gt;         Call CheckSvcState()&lt;br /&gt;     End If&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;'##### Check State of Services Fail As Needed #####&lt;br /&gt;Sub CheckSvcState()&lt;br /&gt;&lt;br /&gt;strQ1 = "Select * from Win32_Service"&lt;br /&gt;strQ2 =  "Where Name = '" &amp; strSvc &amp; "'"&lt;br /&gt;strQuery = strQ1 &amp; " " &amp; strQ2&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" &amp; "{impersonationLevel=impersonate}!\\" &amp; strMainSrv &amp; "\root\cimv2")&lt;br /&gt;Set colListOfServices = objWMIService.ExecQuery(strQuery)&lt;br /&gt;For Each objService in colListOfServices&lt;br /&gt;        If ObjService.State = "Stopped" Then&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 1, objService.DisplayName &amp; " " &amp; "service has stopped on" &amp; " " &amp; strMainSrv&lt;br /&gt;        Call SvcFail()&lt;br /&gt;        Else&lt;br /&gt;        End If&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;End Sub&lt;br /&gt;'##### Check Integration Module service state #####&lt;br /&gt;Sub CheckIMSvc()&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" &amp; "{impersonationLevel=impersonate}!\\" &amp; strMainSrv &amp; "\root\cimv2")&lt;br /&gt;Set colListOfServices = objWMIService.ExecQuery("Select * from Win32_Service Where Name ='RFPROD'")&lt;br /&gt;For Each objService in colListOfServices&lt;br /&gt;        If ObjService.State = "Stopped" Then&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 1, objService.DisplayName &amp; " " &amp; "service has stopped on" &amp; " " &amp; strMainSrv&lt;br /&gt;        Call StartRFProdSvc()&lt;br /&gt;        Else&lt;br /&gt;        Call CheckDupIMSvc()&lt;br /&gt;        End If&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;br /&gt;'##### Check Get PAID service state #####&lt;br /&gt;Sub CheckGPSvc()&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" &amp; "{impersonationLevel=impersonate}!\\" &amp; strMainSrv &amp; "\root\cimv2")&lt;br /&gt;Set colListOfServices = objWMIService.ExecQuery("Select * from Win32_Service Where Name ='RIGHTFAXONFAX011024'")&lt;br /&gt;For Each objService in colListOfServices&lt;br /&gt;        If ObjService.State = "Stopped" Then&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 1, objService.DisplayName &amp; " " &amp; "service has stopped on" &amp; " " &amp; strMainSrv&lt;br /&gt;        Call StartGPSvc()&lt;br /&gt;        Else&lt;br /&gt;        Call CheckDupGPSvc()&lt;br /&gt;        End If&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;br /&gt;'##### Start RFPROD Service Routine #####&lt;br /&gt;Sub StartRFProdSvc()&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strBkupSrv &amp; "\root\cimv2")&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RFPROD'")&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;    errReturn = objService.StartService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been started on" &amp; " " &amp; strBkupSrv &amp; " " &amp; "Failover Completed!"&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;br /&gt;'##### Start GetPaid Service Routine&lt;br /&gt;Sub StartGPSvc()&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strBkupSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RIGHTFAXONFAX011024'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;    errReturn = objService.StartService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been started on" &amp; " " &amp; strBkupSrv &amp; " "  &amp; "Failover Completed!"&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;'##### Check RFPROD Serivce on second node, stop if running #####&lt;br /&gt;Sub CheckDupIMSvc()&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strBkupSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RFPROD'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;        If ObjService.State = "Running" Then&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 2, objService.DisplayName &amp; " " &amp; "Service is running on" &amp; " " &amp; strBkupSrv &amp; " " &amp; "stopping service to prevent duplicates!"&lt;br /&gt;            &lt;br /&gt;            errReturn = objService.StopService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been stopped on" &amp; " " &amp; strBkupSrv&lt;br /&gt;        Else&lt;br /&gt;        End If&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;'##### Check RFPROD Serivce on second node, stop if running #####&lt;br /&gt;Sub CheckDupGPSvc()&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strBkupSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RIGHTFAXONFAX011024'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;        If ObjService.State = "Running" Then&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 2, objService.DisplayName &amp; " " &amp; "Service is running on" &amp; " " &amp; strBkupSrv &amp; " " &amp; "stopping service to prevent duplicates!"&lt;br /&gt;            &lt;br /&gt;            errReturn = objService.StopService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been stopped on" &amp; " " &amp; strBkupSrv&lt;br /&gt;        Else&lt;br /&gt;        End If&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;'##### Other Service Failure #####&lt;br /&gt;Sub SvcFail()&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strMainSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RFPROD'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;        If ObjService.State = "Running" Then&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 2, objService.DisplayName &amp; " " &amp; "Service is running on" &amp; " " &amp; strMainSrv &amp; " " &amp; "stopping service to failover!"&lt;br /&gt;            &lt;br /&gt;            errReturn = objService.StopService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been stopped on" &amp; " " &amp; strMainSrv&lt;br /&gt;        Else&lt;br /&gt;        End If&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strMainSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RIGHTFAXONFAX011024'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;        If ObjService.State = "Running" Then&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 2, objService.DisplayName &amp; " " &amp; "Service is running on" &amp; " " &amp; strMainSrv &amp; " " &amp; "stopping service to failover!"&lt;br /&gt;            &lt;br /&gt;            errReturn = objService.StopService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been stopped on" &amp; " " &amp; strMainSrv&lt;br /&gt;        Else&lt;br /&gt;        End If&lt;br /&gt;Next&lt;br /&gt;Call StartRFProdSvc()&lt;br /&gt;Call StartGPSvc()&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;'##### Main Server Fail, Start Backup Server #####&lt;br /&gt;Sub StartBkupSrv()&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strBkupSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RFPROD'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;    If objService.State = "Stopped" Then&lt;br /&gt;        errReturn = objService.StartService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been started on" &amp; " " &amp; strBkupSrv&lt;br /&gt;    Else&lt;br /&gt;    End If&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strBkupSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RIGHTFAXONFAX011024'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;    If objService.State = "Stopped" Then&lt;br /&gt;        errReturn = objService.StartService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been started on" &amp; " " &amp; strBkupSrv&lt;br /&gt;    Else&lt;br /&gt;    End If&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;'##### Backup Server Fail, Start Main Server #####&lt;br /&gt;Sub StartMainSrv()&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strMainSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RFPROD'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;    If objService.State = "Stopped" Then&lt;br /&gt;        errReturn = objService.StartService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been started on" &amp; " " &amp; strMainSrv&lt;br /&gt;    Else&lt;br /&gt;    End If&lt;br /&gt;Next&lt;br /&gt;&lt;br /&gt;Set objWMIService = GetObject("winmgmts:" _&lt;br /&gt;    &amp; "{impersonationLevel=impersonate}!\\" &amp; strMainSrv &amp; "\root\cimv2")&lt;br /&gt;&lt;br /&gt;Set colServiceList = objWMIService.ExecQuery _&lt;br /&gt;    ("Select * from Win32_Service where Name='RIGHTFAXONFAX011024'")&lt;br /&gt;&lt;br /&gt;For Each objService in colServiceList&lt;br /&gt;    If objService.State = "Stopped" Then&lt;br /&gt;        errReturn = objService.StartService()&lt;br /&gt;            Set LogError = Wscript.CreateObject("Wscript.Shell")&lt;br /&gt;            LogError.LogEvent 0, objService.DisplayName &amp; " " &amp; "service has been started on" &amp; " " &amp; strMainSrv&lt;br /&gt;    Else&lt;br /&gt;    End If&lt;br /&gt;Next&lt;br /&gt;End Sub&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;RFMonitor.PS1 (PowerShell Version)&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Like I noted earlier, this has barely been tested and never used in a production environment.  If you have something better or cleaner, please feel free to share.  This was one of the first PS scripts I wrote over 6 years ago, so I’m sure it could use some improvements.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;#Script Notes: Ping server, if alive Check service state on main from ini file, start on bkup if stopped, &lt;br /&gt;#checks for RFPROD  and GetPaid specificially.&lt;br /&gt;&lt;br /&gt;####Check Main and Backup for duplicate RFAXONFAX011024 running, stop on Backup&lt;br /&gt;Function CheckGPDup {$colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Bkup" –filter "Name= 'RFAXONFAX011024'"&lt;br /&gt;                         $State = $colitem.state&lt;br /&gt;                             if ("$State" -eq "running")&lt;br /&gt;                          {write-host "Stopping RFPROD service on Backup server to prevent duplicate faxes."&lt;br /&gt;                                  $colItem1 = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Bkup" –filter "Name= 'RFAXONFAX011024'"&lt;br /&gt;                                      ForEach ($objItem in $colItem1) {$objItem.StopService()}}        &lt;br /&gt;                      else&lt;br /&gt;                                 {write-host "No duplicate RFAXONFAX011024 service running on" $Bkup"."}&lt;br /&gt;                    }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;####Check Main and Backup for duplicate RFPROD running, Stop on Backup&lt;br /&gt;Function CheckRFProdDup {$colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Bkup" –filter "Name= 'RFPROD'"&lt;br /&gt;                         $State = $colitem.state&lt;br /&gt;                             if ("$State" -eq "running")&lt;br /&gt;                          {write-host "Stopping RFPROD service on Backup server to prevent duplicate faxes."&lt;br /&gt;                                  $colItem1 = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Bkup" –filter "Name= 'RFPROD'"&lt;br /&gt;                                      ForEach ($objItem in $colItem1) {$objItem.StopService()}}        &lt;br /&gt;                      else&lt;br /&gt;                                 {write-host "No duplicate RFPROD service running on" $Bkup"."&lt;br /&gt;                                  ChkGPDup}&lt;br /&gt;                        }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;####Failover (Stop on main, start on Backup) for any failed service&lt;br /&gt;Function FailOverRFProdGP {$colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Main" –filter "Name= 'RFPROD'"&lt;br /&gt;                               ForEach ($objItem in $colItem) {$objItem.StopService()}&lt;br /&gt;                           &lt;br /&gt;                           $colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Main" –filter "Name= 'RFAXONFAX011024'"&lt;br /&gt;                               ForEach ($objItem in $colItem) {$objItem.StopService()}&lt;br /&gt;                           &lt;br /&gt;                           $colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Bkup" –filter "Name= 'RFPROD'"&lt;br /&gt;                               ForEach ($objItem in $colItem) {$objItem.StartService()}&lt;br /&gt;                           &lt;br /&gt;                           $colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Bkup" –filter "Name= 'RFAXONFAX011024'"&lt;br /&gt;                               ForEach ($objItem in $colItem) {$objItem.StartService()}&lt;br /&gt;                           &lt;br /&gt;                           write-host "RFPROD and RFAXONFAX011024 has been started on" $bkup"."}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;####Check all other services, per ini&lt;br /&gt;Function CheckSvcs {$colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Main" –filter "Name= '$Name'"&lt;br /&gt;                 $State = $colitem.state&lt;br /&gt;                 if ("$State" -eq "stopped")&lt;br /&gt;              {write-host "Failing over IM and GP to" $Bkup"."&lt;br /&gt;                      FailOverRFProdGP}        &lt;br /&gt;          else&lt;br /&gt;                     {write-host "Service" $Name "is already running on" $Main"."&lt;br /&gt;                      CheckRFProdDup}&lt;br /&gt;                 }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;####Start RFAXONFAX011024 on Backup&lt;br /&gt;Function StartGPBkup {$colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Bkup" –filter "Name= 'RFAXONFAX011024'"&lt;br /&gt;                       ForEach ($objItem in $colItem) {&lt;br /&gt;                           $objItem.StartService()}&lt;br /&gt;                       write-host "RFAXONFAX011024 has been started on" $bkup"."}&lt;br /&gt;&lt;br /&gt;####Start RFPROD on Backup&lt;br /&gt;Function StartRFProdBkup {$colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Bkup" –filter "Name= 'RFPROD'"&lt;br /&gt;                       ForEach ($objItem in $colItem) {&lt;br /&gt;                           $objItem.StartService()}&lt;br /&gt;                       write-host "RFPROD has been started on" $bkup"."}&lt;br /&gt;&lt;br /&gt;####Check RFAXONFAX011024&lt;br /&gt;Function CheckGP {$colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Main" –filter "Name= 'RFAXONFAX011024'"&lt;br /&gt;                 $State = $colitem.state&lt;br /&gt;                 if ("$State" -eq "stopped")&lt;br /&gt;              {write-host "Starting RFAXONFAX011024 service on Backup server."&lt;br /&gt;                      StartGPBkup}        &lt;br /&gt;          else&lt;br /&gt;                     {write-host "Service RFAXONFAX011024 is already running on" $Main"."&lt;br /&gt;                      CheckSvcs}&lt;br /&gt;                 }&lt;br /&gt;&lt;br /&gt;###Check RFPROD&lt;br /&gt;Function CheckRFProd {$colItem = get-wmiobject -class "Win32_Service" -namespace "root\cimv2" -computername "$Main" –filter "Name= 'RFPROD'"&lt;br /&gt;                 $State = $colitem.state&lt;br /&gt;                 if ("$State" -eq "stopped")&lt;br /&gt;              {write-host "Starting RFPROD service on Backup server."&lt;br /&gt;                      StartRFProdBkup}        &lt;br /&gt;          else&lt;br /&gt;                     {write-host "Service RFPROD is already running on" $Main"."&lt;br /&gt;                      CheckGP}&lt;br /&gt;                 }&lt;br /&gt;&lt;br /&gt;#### Open file and pasre varibles ####&lt;br /&gt;$INIFILE = Import-CSV -path "C:\Documents and Settings\rhoffelder\desktop\rfmonitor.ini"&lt;br /&gt;&lt;br /&gt;ForEach ($objItem in $INIFILE) {&lt;br /&gt;    $Name = $objItem.Name&lt;br /&gt;    $Main = $objItem.Main&lt;br /&gt;    $Bkup = $objItem.Bkup&lt;br /&gt;    &lt;br /&gt;    #### Ping Main Srver ####&lt;br /&gt;    $ping = new-object System.Net.NetworkInformation.Ping &lt;br /&gt;    $status = $ping.send($Main)&lt;br /&gt;    write-host $status&lt;br /&gt;    if($status) {CheckRFProd}        &lt;br /&gt;    &lt;br /&gt;    #### Ping Backup Server ####&lt;br /&gt;    else {$ping = new-object System.Net.NetworkInformation.Ping &lt;br /&gt;          $status = $ping.send($Bkup)&lt;br /&gt;          write-host $status&lt;br /&gt;            if($status) {FailOverRFProdGP}&lt;br /&gt;            Else {"Both servers offline!"}}}&lt;br /&gt;write-host "finished!"&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://www.thegenerationv.com/search/label/RightFax"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on RightFax&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-3895480040131775633?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/w_vhMwtSAkFjiIbhU5HtUSLOe4w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w_vhMwtSAkFjiIbhU5HtUSLOe4w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/w_vhMwtSAkFjiIbhU5HtUSLOe4w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w_vhMwtSAkFjiIbhU5HtUSLOe4w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=JOM9NB50qxw:H_X8_5fQlGk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=JOM9NB50qxw:H_X8_5fQlGk:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=JOM9NB50qxw:H_X8_5fQlGk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=JOM9NB50qxw:H_X8_5fQlGk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=JOM9NB50qxw:H_X8_5fQlGk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=JOM9NB50qxw:H_X8_5fQlGk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=JOM9NB50qxw:H_X8_5fQlGk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=JOM9NB50qxw:H_X8_5fQlGk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=JOM9NB50qxw:H_X8_5fQlGk:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/JOM9NB50qxw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/JOM9NB50qxw/rightfax-integration-module-in.html</link><author>noreply@blogger.com (Rik Hoffelder)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-sxgpBkynCho/TiRow19uoTI/AAAAAAAAAFY/7F6cOTZKZwU/s72-c/sample.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.thegenerationv.com/2011/07/rightfax-integration-module-in.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-4882890496873158831</guid><pubDate>Mon, 27 Jun 2011 20:56:00 +0000</pubDate><atom:updated>2011-06-27T16:01:56.115-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Application Virtualization</category><category domain="http://www.blogger.com/atom/ns#">Andy Paul</category><category domain="http://www.blogger.com/atom/ns#">XENApp</category><title>Technical Deep Dive: XenApp Load Evaluators</title><description>By: Andy Paul&lt;br /&gt;
&lt;hr /&gt;One of the often overlooked features of XenApp is truly understanding the load evaluators.  As a consultant, I commonly see environments using only the Default Load Evaluator.  If I am lucky, they might be using the Advanced Load Evaluator.  Rarely do I find organizations actively monitoring or customizing their load evaluators.&lt;br /&gt;
&lt;br /&gt;
Load Evaluators have not changed much since Presentation Server days, but amazingly they are not commonly optimized.  Every environment and every workload is different, so whichever load evaluator is implemented may vary, but they should be customized and monitored.&lt;br /&gt;
&lt;span class="fullpost"&gt; &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-3Tepv_vjreg/Tgjr77HYWiI/AAAAAAAAAGU/cIBZMRH1JeM/s1600/advacned_loadeval.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="291" src="http://4.bp.blogspot.com/-3Tepv_vjreg/Tgjr77HYWiI/AAAAAAAAAGU/cIBZMRH1JeM/s640/advacned_loadeval.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;Here is a screen shot of the XenApp 6 Advanced Load Evaluator, which is now the default assignment.  It creates a load based on CPU Utilization, Load Throttling, Memory Usage and Page Swaps.  The Default Load Evaluator (assigned by default in XenApp 5 and prior versions) measures Server User Load.&lt;br /&gt;
&lt;br /&gt;
I generally recommend creating a custom load evaluator based on resources, usually CPU Utilization, Load Throttling, Memory Usage and possibly Server User Load.  This way, I can spread the load across servers based on number of users, resource loads and help prevent login storms.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Understanding Loads&lt;/b&gt; &lt;br /&gt;
But assigning a Load Evaluator is only part of the battle.  You must also understand what and how that load is calculated.  A simple QFARM /LOAD will show you server loads (or QFARM /LTLOAD to see the server resource load without calculating Load Throttling.) However, if you are using a load evaluator with multiple components, what is causing the load?  The base algorithm for establishing actual load is &lt;b style="color: red;"&gt;Highest_Load + (Average_Other_Loads * .1)&lt;/b&gt;.  &lt;br /&gt;
&lt;br /&gt;
Assuming you have a load evaluator monitoring CPU Utilization, Memory Usage and Load Throttling, and you see a server with a 7800 load value, it may be dangerously close to 10000 (Full Load) since that 7800 is not the aggregate of all loads, but reflective of the highest load, which could be close to reporting full. In this case, perhaps that server is running at 78% Memory Usage, with a cap set to 80% in the load evaluator… one more process may send it over the edge.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Detailed Load Monitoring&lt;/b&gt;&lt;br /&gt;
So what can you do about it?  Knowing your environment is key, as is monitoring actual loads and adjusting evaluators or adding capacity as necessary.  To this end, you can run real-time analysis of the various components of a load evaluator using the &lt;a href="http://support.citrix.com/article/CTX106318" target="_blank"&gt;QUERYDS&lt;/a&gt; tool from Citrix.  Additional information is available under &lt;a href="http://support.citrix.com/article/CTX112082" target="_blank"&gt;CTX112082&lt;/a&gt;.  These were originally published for Presentation Server 4.0, but are still valid for all editions, including XenApp 6.  Please note, the output from QUERYDS will be hex values, and will need to be converted.  Most applications include a Hex-Decimal conversion function, or you can use a free online converter such as &lt;a href="http://easycalculation.com/hex-converter.php" target="_blank"&gt;http://easycalculation.com/hex-converter.php&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
The following table identifies the code values of the different load evaluator properties:&lt;br /&gt;
a -- Application User Load&lt;br /&gt;
2 -- Context Switches&lt;br /&gt;
1 -- CPU Utilization&lt;br /&gt;
7 -- Disk Data l/O&lt;br /&gt;
8 -- Disk Operations&lt;br /&gt;
9 -- IP Range&lt;br /&gt;
d -- Load Throttling&lt;br /&gt;
3 -- Memory Usage&lt;br /&gt;
4 -- Page Faults&lt;br /&gt;
6 -- Page Swaps&lt;br /&gt;
5 -- Scheduling&lt;br /&gt;
b -- Server User Load&lt;br /&gt;
&lt;br /&gt;
Using this information, take the sample below; consisting of three servers: &lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-jirFK2J-s-0/TgjreQysRnI/AAAAAAAAAGQ/xENbU-xo8Jc/s1600/queryds_sample.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://3.bp.blogspot.com/-jirFK2J-s-0/TgjreQysRnI/AAAAAAAAAGQ/xENbU-xo8Jc/s640/queryds_sample.png" width="422" /&gt;&lt;/a&gt;&lt;/div&gt;Server TEST02 has a load of 1610 (HEX 64a).  This load is comprised of:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Server User Load: 2 (b:2)&lt;/li&gt;
&lt;li&gt; Load Throttling: 0 (d:0)&lt;/li&gt;
&lt;li&gt; Memory Usage: 16 (3:10)&lt;/li&gt;
&lt;li&gt; CPU Utilization: 0 (1:0)&lt;/li&gt;
&lt;/ul&gt;These are percentages of 100, so a Memory Usage load of 16 is a load value of 1600.  Load Throttling is not calculated since there is no current logon event.  That leaves the average of Server User Load and CPU Utilization (200+0)/2*.1 = 10.  This makes the total load value of 1610. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Conclusion&lt;/b&gt; &lt;br /&gt;
Now that you have a way to view the load components (QUERYDS) and an understanding on how to interpret the results, these values can be read and automated into a monitoring solution - either real-time or historical.  Once a baseline is established, alerts can be generated as values approach full loads.  Based on this information, you can then decide if you should modify your evaluators or add capacity.&lt;br /&gt;
&lt;br /&gt;
&lt;hr /&gt;&lt;b&gt;Additional Reading:&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Download QUERYDS: &lt;a href="http://support.citrix.com/article/CTX106318" target="_blank"&gt;http://support.citrix.com/article/CTX106318&lt;/a&gt;&amp;nbsp; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://sbcengine.blogspot.com/2009/04/interesting-day-with-citrix-load.html" target="_blank"&gt;Andy's Thoughts: Interesting Day with Citrix Load Evaluators&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.virtualizationadmin.com/articles-tutorials/terminal-services/general/citrix-presentation-server-load-management-part3.html%20" target="_blank"&gt;VirtualizationAdmin.com: Server Load Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.brianmadden.com/blogs/brianmadden/archive/2007/05/04/understanding-the-new-logon-throttling-load-evaluator-options-in-citrix-presentation-server-4-5.aspx" target="_blank"&gt;Brian Madden: Understanding Load Throttling&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jhouseconsulting.com/2008/07/09/citrix-load-evaluators-25" target="_blank"&gt;J House Consulting: Citrix Load Evaluators&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-4882890496873158831?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3Pfeq8d1jXVrExWfuIVvJEQ_I0s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3Pfeq8d1jXVrExWfuIVvJEQ_I0s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3Pfeq8d1jXVrExWfuIVvJEQ_I0s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3Pfeq8d1jXVrExWfuIVvJEQ_I0s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=mVWLfHpMHCc:Q2WWVoW-3m0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=mVWLfHpMHCc:Q2WWVoW-3m0:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=mVWLfHpMHCc:Q2WWVoW-3m0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=mVWLfHpMHCc:Q2WWVoW-3m0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=mVWLfHpMHCc:Q2WWVoW-3m0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=mVWLfHpMHCc:Q2WWVoW-3m0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=mVWLfHpMHCc:Q2WWVoW-3m0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=mVWLfHpMHCc:Q2WWVoW-3m0:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=mVWLfHpMHCc:Q2WWVoW-3m0:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/mVWLfHpMHCc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/mVWLfHpMHCc/technical-deep-dive-xenapp-load.html</link><author>noreply@blogger.com (Andy Paul)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-3Tepv_vjreg/Tgjr77HYWiI/AAAAAAAAAGU/cIBZMRH1JeM/s72-c/advacned_loadeval.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2011/06/technical-deep-dive-xenapp-load.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-4601371102872401343</guid><pubDate>Tue, 08 Mar 2011 03:07:00 +0000</pubDate><atom:updated>2011-03-07T21:17:35.138-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">VMWare</category><category domain="http://www.blogger.com/atom/ns#">Andy Paul</category><category domain="http://www.blogger.com/atom/ns#">XENDesktop</category><category domain="http://www.blogger.com/atom/ns#">Windows 7</category><category domain="http://www.blogger.com/atom/ns#">VDI</category><title>XenDesktop 5 Deep Dive: Machine Creation Services on vSphere 4.1</title><description>By: Andy Paul&lt;br /&gt;
&lt;hr /&gt;When XenDesktop Desktop Studio is configured, a hosting infrastructure and storage system is defined.  This hosting infrastructure can be Citrix XenSerspver, VMWare ESX/vSphere, or Microsoft Hyper-V.  Storage for use by XenDesktop is also defined, which can be local storage or shared storage.  In a production vSphere environment, shared storage defined as VMWare Datastores is preferred.&lt;br /&gt;
&lt;br /&gt;
When using Machine Creation Services (MCS) in XenDesktop 5 Desktop Studio, a Master Image is identified when a Catalog is created.  MCS Catalogs can be designed for Dedicated or Pooled virtual desktops.  Pooled Assignments can be set for static assignment or random access.&lt;br /&gt;
&lt;br /&gt;
Dedicated Catalog virtual desktops retain all changes, including software installations and local data, in a local difference disk.  Pooled Catalog virtual desktops do not retain changes, the difference disk is reset upon reboot, leaving only a copy of the master image.  However, when using pooled desktops, the base image can be updated allowing changes from the master disk to be replicated to the deployed VMs, providing for centralized patch and application management.  Each deployed image, whether pooled or dedicated, will also contain an identity disk; all deployments utilize thin provisioning.&lt;span class="fullpost"&gt;&lt;br /&gt;
&lt;br /&gt;
The following chart highlights the benefits of each type of XenDesktop Catalog:&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="fullpost"&gt;&lt;a href="https://lh5.googleusercontent.com/-Izllr_PWOeY/TXWeUjixW5I/AAAAAAAAAFg/ecPkD9dB42A/s1600/catalog+chart.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="312" src="https://lh5.googleusercontent.com/-Izllr_PWOeY/TXWeUjixW5I/AAAAAAAAAFg/ecPkD9dB42A/s640/catalog+chart.png" width="640" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="fullpost"&gt;  Graphic taken from &lt;a href="http://support.citrix.com/article/CTX127587" target="_blank"&gt;CTX127587: XenDesktop 5 - Reference Architecture&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
During this test implementation, two Dedicated Catalogs are used to pilot XenDesktop 5.  One catalog will be based on Windows XP, the other catalog will be based on Windows 7.  These catalogs and the dedicated machines will be assigned to Desktop Groups for different business units. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt; Master Image Utilization&lt;/b&gt;&lt;br /&gt;
Once a master image is identified as part of the Catalog creation, a private-use clone of the VMDK is created for use by the catalog machines.  This cloned disk is separate from the Master Image VM, allowing that VM to be updated or deleted with no impact on the MCS deployed virtual desktops.&lt;br /&gt;
&lt;br /&gt;
This master image clone is copied to each Datastore defined during XenDesktop site setup.  This site definition can be modified to include additional storage as it becomes available.  If five datastores are defined the clone will be created on the first Datastore and then copied to the remaining four.&lt;br /&gt;
&lt;br /&gt;
Each catalog is linked to its own master image clone.  If multiple catalogs are defined, then multiple master clones will be generated.  Any additional machines created within a catalog will use the defined master image.  A master image can be changed to a different disk using the following command in PowerShell: Publish-ProvMasterVmImage (&lt;a href="http://forums.citrix.com/thread.jspa?messageID=1534982" target="_blank"&gt;click here&lt;/a&gt; for an example of using this command if necessary.) This change would only impact new machines created in the catalog, not existing machines already generated.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Impact on Storage&lt;/b&gt;&lt;br /&gt;
Since MCS uses thin-provisioning, using Pooled or Dedicated desktops should require less storage than existing VM creations.  On vSphere, the MCS service creates a snapshot for each VM called &lt;i&gt;“Do Not Delete – Critical.”&lt;/i&gt;  This snapshot is a reversion point back to initial deployment.  For Dedicated desktops, additional snapshots can be created using vCenter’s Snapshot Manager functionality.  &lt;br /&gt;
&lt;br /&gt;
The master image, stored on each Datastore, becomes a private-use read-only VMDK for each MCS created VM.  Depending on the NAS/SAN functionality, this image may be deduplicated or moved to high-utilization storage due to the increased read ratios.&lt;br /&gt;
&lt;br /&gt;
For Pooled machines, the snapshot growth will be limited since it is reset at each reboot.  Dedicated machine snapshots will grow over time as changes to the virtual desktop occur.  It is recommended to incorporate profile management and data redirection where possible in either scenario to increase user flexibility and reduce data changes inside the images.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Determining Storage Requirements&lt;/b&gt;&lt;br /&gt;
Since MCS uses thin-provisioning, only the amount of space required is actually used, allowing for a potential of over-allocation of storage.  When analyzing storage utilization, the key item to examine is the snapshot space utilized by each VM.  Since the master image is shared, this is a “fixed” cost, where snapshot growth will be dynamic.&lt;br /&gt;
&lt;br /&gt;
Please note, a snapshot can grow as large as the base disk, so if the master image is 40 GB in size, the associated snapshot for a dedicated machine can grow up to 40 GB in size; effectively doubling storage requirements if left unmanaged.&lt;br /&gt;
&lt;br /&gt;
To see snapshot space utilized in vCenter, select the Datastore in question, select the Storage Views tab.  This view will show the space used for each virtual machine as well as snapshot space used.  For MCS created machines, the space used is misleading, since it is also counting the base image size.  In the example below, the master image is 40 GB in size.  For VXPXDTest002 (highlighted), the Space Used is 46.11 GB, but the actual space used is really 6.11 GB since 40 GB is for the shared master image.  Of the 6.11 GB used, 4.09 GB is snapshot space.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh4.googleusercontent.com/-IGRNFuYMvKw/TXWdKKHyfrI/AAAAAAAAAFc/Qe8QYGGhKi4/s1600/MCS_Image_1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="292" src="https://lh4.googleusercontent.com/-IGRNFuYMvKw/TXWdKKHyfrI/AAAAAAAAAFc/Qe8QYGGhKi4/s640/MCS_Image_1.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;To see more exact detail, you can browse the Datastore, examining the folder for VXPXDTest002, as shown below.  Notice the total space used which is the active snapshot plus the memory swap file.  The base image is stored in its own folder:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh3.googleusercontent.com/-gNzK-Z57kZM/TXWbG392wMI/AAAAAAAAAFY/fzSoj6J204A/s1600/MCS_Image_2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="251" src="https://lh3.googleusercontent.com/-gNzK-Z57kZM/TXWbG392wMI/AAAAAAAAAFY/fzSoj6J204A/s640/MCS_Image_2.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;b&gt;Sizing Wizard&lt;/b&gt;&lt;br /&gt;
Along with this analysis, I have created an Excel worksheet called &lt;/span&gt;&lt;a href="http://dl.dropbox.com/u/16106774/MCS%20Sizing%20Wizard.xlsx" target="_blank"&gt;&lt;span class="fullpost"&gt;MCS Sizing Wizard&lt;/span&gt;&lt;/a&gt;&lt;span class="fullpost"&gt;. This worksheet will help determine the size required for MCS deployed dedicated machines.  The basic formulas are:&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;dt&gt;&lt;span class="fullpost"&gt; Determine size requirements for master image:  &lt;/span&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;span style="color: white;"&gt;.....&lt;/span&gt;&lt;span class="fullpost"&gt; [VMDK Size] * [# of Datastores]&lt;/span&gt;&lt;/dd&gt;
&lt;dt&gt;&lt;span class="fullpost"&gt; Determine size requirements for deployed virtual machines:&lt;/span&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;span style="color: white;"&gt;.....&lt;/span&gt;&lt;span class="fullpost"&gt; Create estimates for low, medium, and high usage snapshots&lt;/span&gt;&lt;/dd&gt; &lt;dd&gt;&lt;span style="background-color: white; color: white;"&gt;.....&lt;/span&gt;&lt;span class="fullpost"&gt; Per machine: [identity disk] + [RAM swap file] + [estimated size of snapshot] &lt;/span&gt;&lt;/dd&gt; &lt;dd&gt;&lt;span style="color: white;"&gt;.....&lt;/span&gt;&lt;span class="fullpost"&gt; Total VM sizing: [# of VMs] * [Per Machine Estimates] &lt;/span&gt;&lt;/dd&gt;
&lt;dt&gt;&lt;span class="fullpost"&gt; Determine total storage requirements&lt;/span&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;span style="color: white;"&gt;.....&lt;/span&gt;&lt;span class="fullpost"&gt;&lt;span style="color: white;"&gt; &lt;/span&gt;Most likely storage: [Expected VM storage] + [Master image storage]&lt;/span&gt;&lt;/dd&gt; &lt;/ul&gt;&lt;span class="fullpost"&gt;  Using the worksheet, creating 120 Windows 7 dedicated machines, spread across 5 datastores, with a 40 GB master VMDK, 4 GB RAM and an average snapshot size of 15 GB would use 2.4 TB of storage out of a maximum provision of 5.4 TB of storage.  If using standard (existing) VMs, the same number of machines would use approximately 5.1 TB of space, for a net savings of 2.8 TB of utilized SAN storage.  Using the worksheet, creating 120 Windows 7 dedicated machines, spread across 5 datastores, with a 40 GB master VMDK, 4 GB RAM and an average snapshot size of 15 GB would use 2.4 TB of storage out of a maximum provision of 5.4 TB of storage.  If using standard (existing) VMs, the same number of machines would use approximately 5.1 TB of space, for a &lt;b style="color: red;"&gt;net savings of 2.8 TB of utilized SAN storage&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt; About this Article&lt;/b&gt;&lt;br /&gt;
The purpose of this article is to summarize the underlying architecture and impact of using Machine Creation Services in a pilot environment.  This article is not intended to replace the XenDesktop Admin Guide or the XenDesktop PoC Implementation Guide.&lt;br /&gt;
&lt;br /&gt;
The scope of this article is to help  understand and manage the virtual machines created by MCS as well as understanding the storage requirements when using MCS.  The actual amount of storage will grow over time as the snapshots grow and should be managed appropriately.  Any sizing numbers are for illustrative purposes only and are no way intended as definitive calculations.&lt;br /&gt;
&lt;br /&gt;
To help with the additional planning, design and optimization areas, it is recommended to utilize the &lt;a href="https://community.citrix.com/kits/#/kit/1067009" target="_blank"&gt;XenDesktop Design Handbook Success Kit&lt;/a&gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Additional References&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://community.citrix.com/display/ocb/2011/02/16/XenDesktop+5+hosted-virtual+desktop+architecture+series+-+Update" target="_blank"&gt;XenDesktop 5 hosted-virtual desktop architecture series&lt;/a&gt; &lt;br /&gt;
&lt;a href="http://virtualfeller.com/2011/03/07/xendesktop-5-scalability-%E2%80%93-site-capacity/" target="_blank"&gt;XenDesktop 5 scalability: Site Capacity&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://virtualfeller.com/2011/03/02/pvs-or-mcs-%E2%80%93-we-talking-about-iops-again/" target="_blank"&gt;PVS or MCS: We Are Talking About IOPS Again&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://virtualfeller.com/2011/02/23/pvs-or-mcs-%E2%80%93-operations-is-important/" target="_blank"&gt;PVS or MCS: Operations Is Important&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://virtualfeller.com/2011/02/15/provisioning-services-or-machine-creation-services%e2%80%a6-big-picture-matters/" target="_blank"&gt;Provisioning Services or Machine Creation Services: Big Picture Matters&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://democenter.wordpress.com/2010/12/30/xendesktop-5-virtual-machine-creation-services-on-vsphere-4-1/" target="_blank"&gt;XenDesktop 5 Virtual Machine Creation Services on vSphere 4.1&lt;/a&gt;&lt;br /&gt;
&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-4601371102872401343?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qMgO6zVe4K-ubDdhrwsi7QOh6W0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qMgO6zVe4K-ubDdhrwsi7QOh6W0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qMgO6zVe4K-ubDdhrwsi7QOh6W0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qMgO6zVe4K-ubDdhrwsi7QOh6W0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=75JneW07NAI:EJLbMKLXEbw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=75JneW07NAI:EJLbMKLXEbw:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=75JneW07NAI:EJLbMKLXEbw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=75JneW07NAI:EJLbMKLXEbw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=75JneW07NAI:EJLbMKLXEbw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=75JneW07NAI:EJLbMKLXEbw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=75JneW07NAI:EJLbMKLXEbw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=75JneW07NAI:EJLbMKLXEbw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=75JneW07NAI:EJLbMKLXEbw:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/75JneW07NAI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/75JneW07NAI/xendesktop-5-deep-dive-machine-creation.html</link><author>noreply@blogger.com (Andy Paul)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh5.googleusercontent.com/-Izllr_PWOeY/TXWeUjixW5I/AAAAAAAAAFg/ecPkD9dB42A/s72-c/catalog+chart.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2011/03/xendesktop-5-deep-dive-machine-creation.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-1619236194929362322</guid><pubDate>Fri, 08 Oct 2010 14:34:00 +0000</pubDate><atom:updated>2010-10-08T10:25:21.076-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Rik Hoffelder</category><category domain="http://www.blogger.com/atom/ns#">Exchange 2010</category><category domain="http://www.blogger.com/atom/ns#">Exchange 2007</category><category domain="http://www.blogger.com/atom/ns#">Exchange</category><title>Bulk Create Exchange 2010 Databases</title><description>By:Rik Hoffelder&lt;hr /&gt;&lt;a href=""&gt;&lt;img style="MARGIN: 0px 10px 10px 0px; WIDTH: 137px; FLOAT: left; HEIGHT: 160px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5406264688147928658" border="0" alt="" src="http://3.bp.blogspot.com/_VZSWCia6uOk/SwbpFxrLllI/AAAAAAAAACk/QjUZwmLBGzk/s200/powershell.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here's a handy script I wrote to bulk create mailbox databases to follow a strict naming convention and consistent configuration.  It was designed to work with Exchange 2010, however it works just as well with 2007.  The intent is to help organizations maintain consistency using a simple process that can be performed by less skilled administrators.&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Script itself uses several command line parameters to create the variables needed for the scripts.  The following provides the script usage:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;.\createdbs.ps1 2010Server NumberOfDatabases DatabaseStartNumber DatabaseDrive LogDrive WarningQuota SendQuota SendReceiveQuota DeletedItemRetention MailboxRetention Oab PfDb&lt;br /&gt;&lt;br /&gt;The following is an example of proper usage:&lt;br /&gt;&lt;br /&gt;.\CreateDbs.PS1 EX2010 4 1 E D 450MB 500MB Unlimited 30 14 "\Default Offline Address List" "Public Folder Database 1"&lt;br /&gt;&lt;br /&gt;In the above example 4 databases are created on server EX2010 with the following names:&lt;br /&gt;&lt;br /&gt;EX2010-DB01-0500&lt;br /&gt;EX2010-DB02-0500&lt;br /&gt;EX2010-DB03-0500&lt;br /&gt;EX2010-DB04-0500&lt;br /&gt;&lt;br /&gt;The database are created on drive E, with the log files on drive D.  The mailbox store is set to issue size limit warnings at 450MB, prohibit send at 500MB, and prohibit send/receive is set to unlimited.  Next deleted items are retained for 30 days, while deleted mailboxes are retained for 14.  Finally the Offline Address book is set along with the public folder database used by each mailbox store.&lt;br /&gt;&lt;br /&gt;So let's suppose we need to create 3 more databases, but this time on drive G, with the logs on drive H.  Let's also set the mailbox size limit to 1GB.  You would run the following:&lt;br /&gt;&lt;br /&gt;.\CreateDbs.PS1 EX2010 3 5 G H 900MB 1GB 2GB 10 7 "\North America OAB" "Public Folder Database 2"&lt;br /&gt;&lt;br /&gt;This would have created databases EX2010-DB05-1000, EX2010-DB06-1000, and EX2010-DB07-1000 with 10 day deleted item retention, 7 day delete mailbox retention, a warning limit of 900MB, prohibit send at 1GB and prohibit send/receive at 2 GB.  The OAB would be set to North America OAB and use Public Folder Database 2.&lt;br /&gt;&lt;br /&gt;Notice how the DBxx value began with DB05 and the last four digits are now 1000.&lt;br /&gt;The DbStartNum parameter determine the beginning of the numbering scheme in the DBxx portion.  The -XXXX at the end  uses the ProhibitSend value to represent the mailbox send size limit, making it easy for administrators to identify where to place mailboxes by the database name.  A size limit of 125MB would produce a name SERVER-DBXX-0125 and so forth.&lt;br /&gt;&lt;br /&gt;It's simple and flexible. To run it simply copy it to a PS1 file then lanuch it from Exchange Management Shell.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;CreateDatabases.PS1&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;### BEGIN SCRIPT ###&lt;br /&gt;Param(&lt;br /&gt; [string] $2010Server = "",&lt;br /&gt; [decimal] $NumDatabases = "",&lt;br /&gt; [decimal] $DbStartNum = "",&lt;br /&gt;        [string] $DbDrive = "",&lt;br /&gt;        [string] $LogDrive = "",&lt;br /&gt; [string] $WarnQuota = "",&lt;br /&gt; [string] $SendQuota = "",&lt;br /&gt;        [string] $SendReceiveQuota = "",&lt;br /&gt; [string] $DeletedItemRetention = "",&lt;br /&gt; [string] $MailboxRetention = "", &lt;br /&gt; [string] $OAB = "",&lt;br /&gt; [string] $PfDb = ""&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;# This function validates the scripts parameters&lt;br /&gt;function ValidateParams&lt;br /&gt;{&lt;br /&gt;  $validInputs = $true&lt;br /&gt;  $errorString =  ""&lt;br /&gt;  if ($2010Server -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The 2010Server parameter is required. Please enter the name of the Exchange 2010 server to configure. Example KCCEX2010"&lt;br /&gt;  }&lt;br /&gt;   if ($NumDatabases -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The NumDatabases parameter is required. Please enter the number of mailbox databases that will be created on this Exchange 2010 server. Example 8."&lt;br /&gt;  }&lt;br /&gt;   if ($DbStartNum -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The DbStartNum parameter is required. Please enter the starting database number. Example 5."&lt;br /&gt;  }&lt;br /&gt;   if ($DbDrive -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The DbDrive parameter is required. Please enter the drive letter on which you will create mailbox databases. Example: E"&lt;br /&gt;  }&lt;br /&gt;   if ($LogDrive -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The LogDrive parameter is required. Please enter the drive letter on which you will create transaction logs. Example: D"&lt;br /&gt;  }&lt;br /&gt;   if ($WarnQuota -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The WarnQuota parameter is required. Please enter the vaule to issue mailbox size limit warning. Example: 450MB or 1.5GB"&lt;br /&gt;  }&lt;br /&gt;   if ($SendQuota -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The SendQuota parameter is required. Please enter the vaule to issue mailbox size limit exceeded. Example: 500MB or 1GB"&lt;br /&gt;  }&lt;br /&gt;   if ($SendReceiveQuota -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The SendReceiveQuota parameter is required. Please enter the vaule at which the mailbox stops accepting mail. Example: Unlimited or 550MB"&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;   if ($DeletedItemRetention -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The DeletedItemRetention parameter is required. Please enter the vaule in days. Example: 14"&lt;br /&gt;  }&lt;br /&gt;   if ($MailboxRetention -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The MailboxRetention parameter is required. Please enter the vaule in days. Example: 30"&lt;br /&gt;  }&lt;br /&gt;   if ($OAB -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The OAB parameter is required. Please enter the name of the offline address list to be used by this mailbox database in quotes. Example: 'Corporate OAB' "&lt;br /&gt;  }&lt;br /&gt;  if ($PfDb -eq "")&lt;br /&gt;  {&lt;br /&gt; $validInputs = $false&lt;br /&gt; $errorString += "`nMissing parameter: The PfDb parameter is required. Please enter the name of the public folder database in quotes. Example: 'Pub Folders DB 1'"&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  if (!$validInputs)&lt;br /&gt;  {&lt;br /&gt; Write-error "$errorString"&lt;br /&gt;  }&lt;br /&gt;  return $validInputs&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;### Validate the parameters ###&lt;br /&gt;$ifValidParams = ValidateParams;&lt;br /&gt;&lt;br /&gt;if (!$ifValidParams) { exit; }&lt;br /&gt;&lt;br /&gt;### Define Script variables ###&lt;br /&gt;$2010Server = $2010Server.ToUpper()&lt;br /&gt;$b = $NumDatabases + $DbStartNum&lt;br /&gt;$DeletedItemRetention = $DeletedItemRetention + ".00:00:00"&lt;br /&gt;$MailboxRetention = $MailboxRetention + ".00:00:00"&lt;br /&gt;&lt;br /&gt;$SendQuotaLen = $SendQuota.Length&lt;br /&gt;$DBSize = $SendQuotaLen - 2&lt;br /&gt;[decimal] $DBSizeNum = $SendQuota.substring(0,$DBSize)&lt;br /&gt;&lt;br /&gt;If ($DbSizeNum -le 9) {$DbExName = [string] $DbSizeNum + "000"}&lt;br /&gt;ElseIf ($DbSizeNum -ge 10 -and $DbSizeNum -le 99) {$DbExName = "00" + $DbSizeNum}&lt;br /&gt;ElseIf ($DbSizeNum -ge 100) {$DbExName = "0" + $DbSizeNum}&lt;br /&gt;&lt;br /&gt;If ($DbStartNum -gt 9) {$MdbName = $2010Server + "-DB" + $DbStartNum + "-" + $DbExName}&lt;br /&gt;Else {$MdbName = $2010Server + "-DB0" + $DbStartNum + "-" + $DbExName}&lt;br /&gt;$EdbFilePath = $DbDrive + ":\Exchange\Databases\" + $MdbName + "\" + $MdbName + ".EDB"&lt;br /&gt;$LogFolderPath = $LogDrive + ":\Exchange\Logs\" + $MdbName&lt;br /&gt;$MdbID = $2010Server + "\" + $MdbName&lt;br /&gt;&lt;br /&gt;### Create Mailbox Databases Loop ###&lt;br /&gt;Do  {New-MailboxDatabase -Name $MdbName -Server $2010Server -EdbFilePath $EdbFilePath -LogFolderPath $LogFolderPath -OfflineAddressBook $OAB -PublicFolderDatabase $PfDb&lt;br /&gt;;Mount-Database $MdbName&lt;br /&gt;;Set-MailboxDatabase –Identity $MdbName  –IssueWarningQuota $WarnQuota –ProhibitSendQuota $Sendquota –ProhibitSendReceiveQuota $SendReceiveQuota -DeletedItemRetention $DeletedItemRetention  -MailboxRetention $MailboxRetention  -RetainDeletedItemsUntilBackup $True&lt;br /&gt;;$DbStartNum++&lt;br /&gt;;If ($DbStartNum -gt 9) {$MdbName = $2010Server + "-DB" + $DbStartNum + "-" + $DbExName}&lt;br /&gt;Else {$MdbName = $2010Server + "-DB0" + $DbStartNum + "-" + $DbExName}&lt;br /&gt;;$EdbFilePath = $DbDrive + ":\Exchange\Databases\" + $MdbName + "\" + $MdbName + ".EDB"&lt;br /&gt;;$LogFolderPath = $LogDrive + ":\Exchange\Logs\" + $MdbName&lt;br /&gt;;$MdbID = $2010Server + "\" + $MdbName&lt;br /&gt;}&lt;br /&gt;Until ($DbStartNum -eq $b)&lt;br /&gt;### END SCRIPT ###&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://www.thegenerationv.com/search/label/Exchange"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on Exchange&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-1619236194929362322?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/IUm8B5EQlH51fIXp4nVkITjW1cU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IUm8B5EQlH51fIXp4nVkITjW1cU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/IUm8B5EQlH51fIXp4nVkITjW1cU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IUm8B5EQlH51fIXp4nVkITjW1cU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=q7O-IlCIrtE:E6_xiGtWwgA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=q7O-IlCIrtE:E6_xiGtWwgA:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=q7O-IlCIrtE:E6_xiGtWwgA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=q7O-IlCIrtE:E6_xiGtWwgA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=q7O-IlCIrtE:E6_xiGtWwgA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=q7O-IlCIrtE:E6_xiGtWwgA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=q7O-IlCIrtE:E6_xiGtWwgA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=q7O-IlCIrtE:E6_xiGtWwgA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=q7O-IlCIrtE:E6_xiGtWwgA:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/q7O-IlCIrtE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/q7O-IlCIrtE/bulk-create-exchange-2010-databases.html</link><author>noreply@blogger.com (Rik Hoffelder)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_VZSWCia6uOk/SwbpFxrLllI/AAAAAAAAACk/QjUZwmLBGzk/s72-c/powershell.jpg" height="72" width="72" /><thr:total>8</thr:total><feedburner:origLink>http://www.thegenerationv.com/2010/10/bulk-create-exchange-2010-databases.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-4466985269154264853</guid><pubDate>Mon, 06 Sep 2010 07:24:00 +0000</pubDate><atom:updated>2011-01-20T13:42:57.056-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Rick Rohne</category><category domain="http://www.blogger.com/atom/ns#">AGEE</category><title>Pre-Logon Client Choices in Access Gateway Enterprise</title><description>&lt;strong&gt;By: Rick Rohne&lt;/strong&gt;&lt;br /&gt;
&lt;hr /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/_yUI-6_lDTwY/TISfCWt-WgI/AAAAAAAAAUk/-yD0yVyTZpE/s1600/site.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="105" ox="true" src="http://2.bp.blogspot.com/_yUI-6_lDTwY/TISfCWt-WgI/AAAAAAAAAUk/-yD0yVyTZpE/s200/site.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;
This is an update to a previous article that I wrote about adding a pull-down menu with connection type choices on the logon page for Access Gateway Enterprise Edition. By default Access Gateway Enterprise Edition uses group extraction and EPA scans to determine what kind of connection a user can make. Access Gateway Enterprise also has a client choices screen after authentication that can provide end user selections. These policies may not always offer the best solution for your organization. Therefore configuring a pre-logon client choice may be the best option. &lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Background&lt;/strong&gt;&lt;br /&gt;
&lt;hr /&gt;
The following are some reasons why you would give users a selection box before authentication:&lt;br /&gt;
1. Give users a choice to access their appliacations, desktops, or VPN sessions&lt;br /&gt;
2. Allow users to access Sharepoint, OWA, and other clientless web applications using the same url.&lt;br /&gt;
3. Allows users to have more control, reducing support calls.&lt;br /&gt;
4. Get more out of Access Gateway Enterprise.&lt;br /&gt;
&lt;b&gt;I created this video to give you an idea on how this can be used:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;object height="385" width="480"&gt;&lt;param name="movie" value="http://www.youtube.com/v/75OTfQVUEUo?fs=1&amp;amp;hl=en_US"&gt;




&lt;/param&gt;
&lt;param name="allowFullScreen" value="true"&gt;




&lt;/param&gt;
&lt;param name="allowscriptaccess" value="always"&gt;




&lt;/param&gt;
&lt;embed src="http://www.youtube.com/v/75OTfQVUEUo?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Procedure&lt;/strong&gt;&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;
NOTE: The index.html file mentioned on this article is found under /netscaler/ns_gui/vpn&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;First create a cookie on the user's workstation&lt;/strong&gt;&lt;br /&gt;
&lt;hr /&gt;
This procedure creates a cookie on the user's workstation which will be evaluated by the session policy. The name of the cookie is NSCookie&lt;br /&gt;
&lt;br /&gt;
1. Download index.html to your workstation.&lt;br /&gt;
2. Open the file for editing with your preferred document editor software.&lt;br /&gt;
3. Locate the following section:&lt;br /&gt;
&lt;textarea name="textarea" onfocus="this.select();" style="height: 150px; width: 420px;"&gt; &amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;!-- Logon box --&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;tr class="mainPane"&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;td class="carbonBoxBottom" valign="bottom"&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;script language="javascript" type="text/javascript"&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;documentWriteGlowBoxUpper();&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&lt;/textarea&gt; &lt;br /&gt;
4. Add the following on the next available line&lt;br /&gt;
&lt;textarea name="textarea" onfocus="this.select();" style="height: 150px; width: 420px;"&gt; &amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;SCRIPT type="text/javascript"&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;function getCookie(name) { // use: getCookie("name");&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;var re = new RegExp(name + "=([^;]+)");&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;var value = re.exec(document.cookie);&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;return (value != null) ? unescape(value[1]) : null;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;}&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;var today = new Date();&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;var expiry = new Date(today.getTime() + 28 * 24 * 3600 * 1000); // plus 28 days&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;var expired = new Date(today.getTime() - 24 * 3600 * 1000); // less 24 hours&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;function setCookie(name, value) { // use: setCookie("name", value);&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;document.cookie=name + "=" + escape(value) + "; path=/; expires=" + expiry.toGMTString();&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;}&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;function storeValues(form) &amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;{&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;setCookie("choicevalue", form.choicevalue.value);&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;return true;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;}&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;/SCRIPT&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&lt;/textarea&gt; &lt;br /&gt;
&lt;br /&gt;
5. The next line should read:&lt;br /&gt;
&lt;textarea name="textarea" onfocus="this.select();" style="height: 150px; width: 420px;"&gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;FORM method="post" action="/cgi/login" name="vpnForm" autocomplete="off" style="margin:0"&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&lt;/textarea&gt;&lt;br /&gt;
6. Add storeValues(this);" so that it reads:&lt;br /&gt;
&lt;textarea name="textarea" onfocus="this.select();" style="height: 150px; width: 420px;"&gt;&amp;lt;BR&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;FORM method="post" action="/cgi/login" name="vpnForm" autocomplete="off" style="margin:0" onSubmit="return storeValues(this);"&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&lt;/textarea&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Next create the actual pull-down menu&lt;/strong&gt; &lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;
1. On the same index.html page locate the line that reads:&lt;br /&gt;
&lt;textarea name="textarea" onfocus="this.select();" style="height: 150px; width: 420px;"&gt; &amp;lt;BR&amp;gt;&amp;lt;/P&amp;gt;
&amp;lt;P&amp;gt;&amp;lt;SCRIPT language=JavaScript&amp;gt;ns_showpwd();&amp;lt;/SCRIPT&amp;gt;&amp;nbsp; 
&amp;lt;P&amp;gt;&lt;/textarea&gt; &lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
2. Add the following code. &lt;br /&gt;
&lt;textarea name="textarea" onfocus="this.select();" style="height: 150px; width: 420px;"&gt; 
&amp;lt;P&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD align=center&amp;gt;&amp;lt;SPAN class="CTXMSAM_LogonFont" style="padding-right:10px;"&amp;gt;Connection Type:&amp;lt;/SPAN&amp;gt;&amp;lt;/TD&amp;gt; &amp;lt;TD&amp;gt;&amp;lt;select name="choicevalue" size="1" style="width: 100px;"&amp;gt; &amp;lt;option value="MyDT"&amp;gt;My Desktop&amp;lt;/option&amp;gt; &amp;lt;option value="MyApps"&amp;gt;My Applications&amp;lt;/option&amp;gt; &amp;lt;/select&amp;gt; &amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt; 
&amp;lt;P&amp;gt;&lt;/textarea&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(Note: you can add as many OPTIONS as you wish. The Value’s m(x) will be used to match up against a session policy)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. Save the changes and copy the file to the /netscaler/ns_gui/vpn directory&lt;br /&gt;
Note: make sure to backup the original file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Create a procedure to allow the custom page to survive a reboot&lt;/strong&gt;&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;
1. Connect to the appliance using an SSH client such as PuTTY.&lt;br /&gt;
2. Type shell.&lt;br /&gt;
3. Make a directory on the hard drive to hold the custom file.&lt;br /&gt;
mkdir /var/customizations&lt;br /&gt;
4. Copy the modified page to the new directory.&lt;br /&gt;
&lt;br /&gt;
cp /netscaler/ns_gui/vpn/index.html /var/customizations/ &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5. Create a startup script file called rc.netscaler under /nsconfig (if one is not already present).&lt;br /&gt;
cd /nsconfig&lt;br /&gt;
touch rc.netscaler&lt;br /&gt;
&lt;br /&gt;
6. Copy the copy command into rc.netscaler.&lt;br /&gt;
echo cp /var/customizations/index.html /netscaler/ns_gui/vpn/index.html &amp;gt;&amp;gt; /nsconfig/rc.netscaler&lt;br /&gt;
Next you must modify the session policies to be based on the presence of the cookie instead of the default "true value".&lt;br /&gt;
&lt;br /&gt;
The expression syntax would look similar to that shown in the screen shot below:&lt;br /&gt;
&lt;br /&gt;
add vpn sessionPolicy&amp;nbsp;xMyDT-pol "REQ.HTTP.HEADER Cookie CONTAINS MyDT" XD_ONLY&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;a href="http://3.bp.blogspot.com/_yUI-6_lDTwY/TISVf3_58RI/AAAAAAAAAUM/2AjOYaBQzuU/s1600/sessionpol.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="257" ox="true" src="http://3.bp.blogspot.com/_yUI-6_lDTwY/TISVf3_58RI/AAAAAAAAAUM/2AjOYaBQzuU/s400/sessionpol.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/TISWBb4FT8I/AAAAAAAAAUU/GuFkcbMLfHw/s1600/profile.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" ox="true" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/TISWBb4FT8I/AAAAAAAAAUU/GuFkcbMLfHw/s400/profile.png" width="371" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;More Information&lt;/strong&gt;&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;
&lt;br /&gt;
The user will then be given a drop down menu on the default logon page. The cookie will be placed on their workstation and evaluated by the session policies. MyDT is the default which should always match the users Default connection while others will match other session policies.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;a href="http://2.bp.blogspot.com/_yUI-6_lDTwY/TISXEGhbjOI/AAAAAAAAAUc/wLS5A1u_RWs/s1600/site.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" ox="true" src="http://2.bp.blogspot.com/_yUI-6_lDTwY/TISXEGhbjOI/AAAAAAAAAUc/wLS5A1u_RWs/s320/site.png" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.thegenerationv.com/search/label/AGEE"&gt;&lt;img height="40" src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" /&gt;&lt;br /&gt;More information on Access Gateway Enterprise&lt;/a&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-4466985269154264853?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/47EkO3G633KwdjSDg1XJ0eDkXPw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/47EkO3G633KwdjSDg1XJ0eDkXPw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/47EkO3G633KwdjSDg1XJ0eDkXPw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/47EkO3G633KwdjSDg1XJ0eDkXPw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6RWu1h92RQ4:panfUm7WtJ8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6RWu1h92RQ4:panfUm7WtJ8:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6RWu1h92RQ4:panfUm7WtJ8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6RWu1h92RQ4:panfUm7WtJ8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=6RWu1h92RQ4:panfUm7WtJ8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6RWu1h92RQ4:panfUm7WtJ8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=6RWu1h92RQ4:panfUm7WtJ8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6RWu1h92RQ4:panfUm7WtJ8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6RWu1h92RQ4:panfUm7WtJ8:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/6RWu1h92RQ4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/6RWu1h92RQ4/pre-logon-client-choices-in-access.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_yUI-6_lDTwY/TISfCWt-WgI/AAAAAAAAAUk/-yD0yVyTZpE/s72-c/site.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/09/pre-logon-client-choices-in-access.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-8138926149237849595</guid><pubDate>Mon, 26 Jul 2010 04:39:00 +0000</pubDate><atom:updated>2010-07-26T02:44:08.139-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Application Virtualization</category><category domain="http://www.blogger.com/atom/ns#">XENDesktop</category><category domain="http://www.blogger.com/atom/ns#">XENServer</category><category domain="http://www.blogger.com/atom/ns#">XENApp</category><category domain="http://www.blogger.com/atom/ns#">Systems Administration</category><category domain="http://www.blogger.com/atom/ns#">IPad</category><title>IPad works as a Systems Administrator Tool</title><description>By: David Merrell&lt;hr /&gt;Last couple weeks I have been traveling back and forth to a client. During my trips I sat in the airport for several hours being bored and really did not want to break out the big 17 inch, 5 Pound laptop to get ahead of some work for a project I was working on.  So I was needing something to help to accomplish this while waiting for my plane.&lt;span class="fullpost"&gt; The project I was working on was a XenDesktop, XenApp POC for a university in north Texas. My boss has an IPAD and was showing off the Citrix Receiver and Citrix Dazzle a few weeks earlier. I started thinking it would be nice to have a light weight easy to use tool to help me instead of the laptop. Next trip to Texas I picked up a 64 Gb IPAD. The sales guy was asking what I was going to use it for, I told him business mainly and of course he tried to sell me the 3G version. I figured I have an awesome HTC Touch Pro 2, Windows Mobile phone which acts as a wireless access point, so didn't need the 3G charge. Here is the scenario that I used the IPad as an administrator tool: I was able to remote into all the infrastructure servers using for the environment finish configuration using Desktop Connect. I was able to use the Citrix Receiver to connect to a published Citrix XenCenter to administer the XenServers. The Citrix Receiver also allowed me to test the published XenApp applications and desktops; it also allowed me to test the XenDestops. The IPad and the listed apps below is a great set of tools to allow me to provide better support to our customers and be more efficient on the projects I work on.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;Here is a list of the apps and descriptions, I installed and use just for the purposes:&lt;br /&gt;&lt;table style="BORDER-COLLAPSE: collapse" border="0"&gt;&lt;colgroup&gt;&lt;col style="WIDTH: 213px"&gt;&lt;col style="WIDTH: 213px"&gt;&lt;col style="WIDTH: 213px"&gt;&lt;/colgroup&gt;&lt;tbody valign="top"&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt; &lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;APP&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;Review&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ICz6kYhWcgg/TE00NSjfcvI/AAAAAAAAACA/ceHtQRi6V64/s128/desktopconnect.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 127px;" src="http://lh6.ggpht.com/_ICz6kYhWcgg/TE00NSjfcvI/AAAAAAAAACA/ceHtQRi6V64/s128/desktopconnect.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;Desktop Connect&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: center"&gt;Desktop Connect is a fast, full-featured desktop viewer, optimized specifically for the IPad. View and control Windows, Mac OSX and Linux computers as if you were sitting in front of them, or observe others as if you were watching over their shoulder.&lt;br /&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;Desktop Connect is one of the best remote applications I have installed. As a systems administrator the RDP connection was easy to configure and use. The speed of the app is very efficient.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ICz6kYhWcgg/TE00ksTO6SI/AAAAAAAAACU/puEmsWESg_o/s128/logmein.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 127px;" src="http://lh6.ggpht.com/_ICz6kYhWcgg/TE00ksTO6SI/AAAAAAAAACU/puEmsWESg_o/s128/logmein.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;LogMeIn Ignition&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: center"&gt;One click on your iPad lets you remotely access one or more computers anywhere, anytime.&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;LogMeIn is a client based app that allows access to systems that may not have the ability to RDP or restricted by firewalls, I mainly use this app for my home network. This app provides another layer of security, it also was easy to setup and configure.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt;&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ICz6kYhWcgg/TE00NenpH4I/AAAAAAAAAB8/Tao88DhavoE/s128/CitrixReceiver.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 127px;" src="http://lh4.ggpht.com/_ICz6kYhWcgg/TE00NenpH4I/AAAAAAAAAB8/Tao88DhavoE/s128/CitrixReceiver.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;Citrix Receiver&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: center"&gt;Citrix Receiver for IPad is the perfect business solution for secure access to virtual desktops, applications and data.&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;As a Systems Engineer that works with XenDesktop, XenApp and XenServer setting up an administration group of apps and XenDesktop to support an environment the Citrix Receiver makes it easier to connect to tools such as the Citrix admin consoles.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt;&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_ICz6kYhWcgg/TE00kuQc_CI/AAAAAAAAACc/Z2AGhxTTpps/s128/Vtrace.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 127px;" src="http://lh4.ggpht.com/_ICz6kYhWcgg/TE00kuQc_CI/AAAAAAAAACc/Z2AGhxTTpps/s128/Vtrace.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;Vtrace&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: center"&gt;Vtrace is a visual traceroute application that shows a list of the networks serves from your machine to a target ip address or hostname on a google map.&lt;br /&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;This application is a great visual traceroute program, it works well as a network troubleshooting app.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt;&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ICz6kYhWcgg/TE00NmHjVRI/AAAAAAAAACE/nNh0Azye65c/s128/DNSLookup.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 127px;" src="http://lh3.ggpht.com/_ICz6kYhWcgg/TE00NmHjVRI/AAAAAAAAACE/nNh0Azye65c/s128/DNSLookup.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;DNS Lookup Tool&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: center"&gt;DNS lookup tool to find A records, MX records, Name Servers and reverse DNS records for IP addresses and domains.&lt;br /&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;The description pretty much says it all. At the time of writing this article, this is only an IPhone up but works well with the IPad.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_ICz6kYhWcgg/TE00kXUjALI/AAAAAAAAACM/e_G4oOpi3i8/s128/FreePing.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 127px;" src="http://lh6.ggpht.com/_ICz6kYhWcgg/TE00kXUjALI/AAAAAAAAACM/e_G4oOpi3i8/s128/FreePing.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;FreePing&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: center"&gt;FreePing is an ICMP Ping Application. It is designed to have a simple and intuitive user experience.&lt;br /&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;Again pretty much works as the description says, it also is only for the IPhone at the time of the writing.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt;&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_ICz6kYhWcgg/TE00khujFhI/AAAAAAAAACY/Tmam6EyVH0s/s128/TelnetLite.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 127px;" src="http://lh3.ggpht.com/_ICz6kYhWcgg/TE00khujFhI/AAAAAAAAACY/Tmam6EyVH0s/s128/TelnetLite.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;Mocha Telnet Lite&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: center"&gt;Mocha Telnet provides access to servers via Telnet&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;This is a good tool to telnet to ports on servers to make sure all the necessary ports are accessible.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px" valign="center"&gt;&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_ICz6kYhWcgg/TE00kuVhvPI/AAAAAAAAACQ/rNRVjhC6Qno/s128/iXen.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 127px;" src="http://lh5.ggpht.com/_ICz6kYhWcgg/TE00kuVhvPI/AAAAAAAAACQ/rNRVjhC6Qno/s128/iXen.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;&lt;span style="TEXT-DECORATION: underline"&gt;&lt;strong&gt;iXen&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="TEXT-ALIGN: center"&gt;This App helps you administrate common tasks on virtual machines running on a Citrix XenServer.&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-LEFT: 7px; PADDING-RIGHT: 7px"&gt;&lt;p style="TEXT-ALIGN: center"&gt;The main functions of this app allow you to Boot, Shutdown, Suspend, Rest and Turn off virtual machines. This is a handy tool if you do not have access to the XenServer console.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-8138926149237849595?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xFFo_DijIoR7FQRZ7OSafmhzVnQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xFFo_DijIoR7FQRZ7OSafmhzVnQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xFFo_DijIoR7FQRZ7OSafmhzVnQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xFFo_DijIoR7FQRZ7OSafmhzVnQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=XCpIB85tMIE:IikdXG2BoJw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=XCpIB85tMIE:IikdXG2BoJw:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=XCpIB85tMIE:IikdXG2BoJw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=XCpIB85tMIE:IikdXG2BoJw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=XCpIB85tMIE:IikdXG2BoJw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=XCpIB85tMIE:IikdXG2BoJw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=XCpIB85tMIE:IikdXG2BoJw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=XCpIB85tMIE:IikdXG2BoJw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=XCpIB85tMIE:IikdXG2BoJw:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/XCpIB85tMIE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/XCpIB85tMIE/ipad-works-as-systems-administrator.html</link><author>noreply@blogger.com (David Merrell)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/_ICz6kYhWcgg/TE00NSjfcvI/AAAAAAAAACA/ceHtQRi6V64/s72-c/desktopconnect.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.thegenerationv.com/2010/07/ipad-works-as-systems-administrator.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-5622863364410472008</guid><pubDate>Tue, 29 Jun 2010 04:35:00 +0000</pubDate><atom:updated>2010-06-29T07:21:02.821-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Scott Lane</category><category domain="http://www.blogger.com/atom/ns#">XENDesktop</category><category domain="http://www.blogger.com/atom/ns#">Jarian Gibson</category><category domain="http://www.blogger.com/atom/ns#">VDI</category><title>XenDesktop Deployments...Single or Multiple Hypervisor Infrastructure?</title><description>By:Jarian Gibson and Scott Lane&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;While working on a XenDesktop project in a huge VMware shop, I started thinking if a single hypervisor should be used or if multiple hypervisors should be used in XenDesktop deployments. Then I was on a conference call with Scott Lane, Senior Systems Engineer for Citrix in the Great Plains Area and also a co-author on this post, about the same XenDesktop project and we started discussing thoughts on this. A number of factors came to mind like cost of the hypervisor (VMware licenses for the XenDesktop project are adding a nice chunk of change to the cost of the deployment), hypervisor features, etc. In this blog post I am going to talk about things to consider about different hypervisors for XenDesktop deployments.&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;I often go into shops that already have large VMware infrastructures deployed and talk about XenDesktop. When I'm talking to the customer or potential customer about XenDesktop I always mention that with XenDesktop VDI, Enterprise, or Platinum Editions they will also get XenServer Enterprise Edition. This always gets mixed results. Most think I'm trying to push VMware out the door when I talk about XenServer. This is not the case at all. When I talk about XenServer I am focused on the XenDesktop environment and nothing else in their environment. I tell the customer that you may want to look at XenServer for the provisioned XenDesktop virtual Windows desktops and XenApp servers and then use their existing VMware infrastructure for the XenDesktop infrastructure components. Use XenServer that is included with XenDesktop for your XenDesktop Windows desktop and XenApp server infrastructure and continue to use your VMware infrastructure for everything else.&lt;br /&gt;&lt;br /&gt;I also talk about the open architecture of XenDesktop and that they can choose between Citrix XenServer, Microsoft Hyper-V, and VMware vSphere hypervisors for the XenDesktop virtual desktops. I talk about Hyper-V as another option and the benefits of using Hyper-V for the hypervisor in XenDesktop deployments especially when the customer is talking about deploying Windows 7 and Windows 2008 virtual machines in their XenDesktop infrastructure. Some think that having multiple hypervisors is too much to manage or there is a big learning curve. Most customers I have worked with that are strong in virtualization find XenServer pretty easy to learn. With tools like System Center Virtual Machine Manager that can manage ESX/vSphere and Hyper-V from a single console make management of multiple hypervisors easy for multiple hypervisor deployments. When System Center Virtual Machine Manager supports management of XenServer, all three hypervisors will be managed from a single console.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;XenDesktop deployments on Citrix XenServer considerations:&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Included with XenDesktop, no extra cost for the hypervisor&lt;/li&gt;&lt;br /&gt;&lt;li&gt;XenServer redundancy built-in (no management server to deploy)&lt;br /&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://support.citrix.com/article/CTX122458"&gt;CTX122458 - How to Integrate XenServer Redundantly into a XenDesktop Infrastructure&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.thegenerationv.com/2009/12/how-xendesktop-recovers-from-xenserver_07.html"&gt;The Generation V - How XenDesktop recovers from a XenServer failed pool master&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;li&gt;XenCenter is easy to use for both server virtualization and desktop administrators&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Single vendor to call for technical support&lt;/li&gt;&lt;br /&gt;&lt;li&gt;XenServer 5.6 features has made XenServer a more complete product&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Dynamic Memory Control&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Enhanced CPU compatibility for XenMotion&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Enhanced snapshots, including full system state and one-click revert&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Automation for Workload Balancing&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Administrative Delegation, Logging and Audit Reports&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;XenServer virtual machine tools have to be installed and maintained&lt;/li&gt;&lt;br /&gt;&lt;li&gt;XenServer can direct boot VHD files to update XenServer tools and Provisioning Services tools &lt;/li&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://support.citrix.com/article/CTX123395"&gt;Citrix Knowledge Center Article CTX123395 – How to Update Provisioning Server Target Device Software using a Network File Share with XenServer&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://community.citrix.com/display/ocb/2009/08/15/PVS+5.1+Direct+VHD+Boot+using+XenServer"&gt;The Citrix Blogs - PVS 5.1 Direct VHD Boot using XenServer&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;li&gt;New option in XenServer 5.6 to select network boot when building virtual machine template&lt;/li&gt;&lt;br /&gt;&lt;li&gt;XenServer has built-in optimizations for XenApp&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Citrix Virtual Appliances are released on XenServer first&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Having XenServer already in place makes you already prepared for Multi-GPU Passthrough for HDX 3D Pro Graphics and Distributed Virtual Switching (DVS) that are coming in tech preview/private beta soon. &lt;/li&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://community.citrix.com/display/ocb/2010/06/28/XenServer+Multi-GPU+Passthrough+for+HDX+3D+Pro+Graphics"&gt;The Citrix Blogs - XenServer Multi-GPU Passthrough for HDX 3D Pro Graphics&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://community.citrix.com/display/ocb/2010/06/28/Private+beta+release+of+XenServer+distributed+virtual+switching+%28DVS%29+coming+soon%21"&gt;The Citrix Blogs - Private beta release of XenServer distributed virtual switching (DVS) coming soon!&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;strong&gt;XenDesktop deployments on Microsoft Hyper-V R2 considerations:&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;System Center Virtual Machine Manager is needed to manage hosted virtual desktops&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Server and Desktop administrators who already use System Center products will already be familiar with the look and feel of System Center Virtual Machine Manager console&lt;/li&gt;&lt;br /&gt;&lt;li&gt;System Center Essentials 2010 could be used for smaller XenDesktop deployments (for XenDesktop deployments under 500 seats when supported)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Management server (System Center Virtual Machine Manager or Essentials 2010) can be single point of failure for management of hosted virtual desktops&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Microsoft Hyper-V Server 2008 R2 Edition is free with features like Live Migration, Host Clustering, etc but needs System Center Virtual Machine Manager or Essentials 2010 to manage hosted virtual desktops&lt;/li&gt;&lt;br /&gt;&lt;li&gt;System Center Virtual Machine Manager or Essentials 2010 console needs to be installed on XenDesktop Delivery Controllers and Provisioning Servers for management and for use with XenDesktop Setup Wizard&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Windows 7 virtual desktops and XenApp servers running on Windows 2008 have integration components built-in to the operating system. No need for 3rd party virtual machine tools to install and maintain.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Hyper-V can direct boot VHD files to update Provisioning Services tools&lt;br /&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://community.citrix.com/display/ocb/2009/07/28/New+Way+to+Upgrade+with+PVS+5.1+and+HyperV"&gt;The Citrix Blogs - New Way to Upgrade with PVS 5.1 and Hyper-V&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;li&gt;Legacy NIC needed for network boot/Provisioning Services and Synthetic NIC for all other traffic&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Network boot enabled in virtual machine settings&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Windows 7 and Windows 2008 on Hyper-V are better together&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Citrix and Microsoft relationship &lt;/li&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://support.citrix.com/article/CTX124687"&gt;Citrix Knowledge Center Article CTX124687 - XenDesktop with Microsoft Hyper-V Design Guide&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://community.citrix.com/display/ocb/2010/03/01/Seven+Things+I+Learned+Testing+XenDesktop+with+Hyper-V"&gt;The Citrix Blogs - Seven Things I Learned Testing XenDesktop with Hyper-V&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Citrix Essentials for Hyper-V for site recovery/disaster recovery&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;li&gt;System Center Virtual Machine Manager for mixed vSphere and Hyper-V deployments with XenServer support coming in the future for a possibly mixed environment of all 3 hypervisors&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Having Hyper-V already in place makes you already prepared for RemoteFX and Dynamic Memory that are coming in service pack 1&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;strong&gt;XenDesktop deployments on VMware vSphere considerations:&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Added cost of VMware infrastructure&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Has per processor/core licensing (systems that have processors with over 6 cores need Advanced or Enterprise Plus licenses)&lt;br /&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.vmware.com/download/eula/multicore.html"&gt;VMware Multi-Core Pricing &amp;amp; Licensing Policy&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.vmware.com/files/pdf/vsphere_pricing.pdf"&gt;VMware vSphere 4 Pricing, Packaging, and Licensing Overview&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;li&gt;vSphere/vCenter server is needed to manage virtual desktops&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Management server (vSphere/vCenter) can be single point of failure for management of hosted virtual desktops&lt;/li&gt;&lt;br /&gt;&lt;li&gt;VMware ESXi is free but needs vSphere/vCenter server/agents to manage hosted virtual desktops&lt;br /&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://support.citrix.com/article/CTX124952"&gt;Citrix Knowledge Center Article CTX124952 - Citrix Statement of Support for VMware ESXi and Citrix XenDesktop&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;li&gt;vSphere/vCenter has to be setup to allow HTTP access, default SSL certificate imported (VI 3.5), or SSL certificate needed (vSphere 4) for XenDesktop Delivery Controller access/management and for use with the XenDesktop Setup Wizard&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://jariangibson.com/2009/10/13/using-xendesktop-with-vmware/"&gt;Jarian Gibson - Using XenDesktop with VMware&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;VMware integration issues with Provisioning Services Target Devices - VMXNet3 driver issues with Windows Vista, 7, and 2008&lt;br /&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://support.citrix.com/article/CTX125361"&gt;Citrix Knowledge Center Article CTX125361 - ESX Target Device Fails to Boot&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;li&gt;VMware integration issues with XenDesktop Virtual Desktop Agent - Video driver issues with Windows Vista and Windows 7 &lt;/li&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://support.citrix.com/article/CTX124877"&gt;Citrix Knowledge Center Article CTX124877 - Unable to Connect to XenDesktop Virtual Desktop Agent on Vista or Windows 7 with WDDM Driver&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://support.citrix.com/article/CTX123952"&gt;Citrix Knowledge Center Article CTX123952 - Unable to Connect to XenDesktop Virtual Desktop Agent on Windows 7 with VMware Tools ESX 4.0 Update 1&lt;/a&gt; - also had to do this when installing XenDesktop Virtual Desktop Agent on Windows 7 or install would fail&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;li&gt;VMware virtual machine tools have to be installed and maintained&lt;/li&gt;&lt;br /&gt;&lt;li&gt;VMware virtual machine has to be reversed imaged to update virtual machine tools or Provisioning Services tools - Hyper-V or XenServer instance in VMware environment could also do this&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Network boot enabled in virtual machine BIOS by editing virtual machine properties to enter BIOS on next boot&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Need at least a 1MB disk attached or Target Device will BSOD&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://support.citrix.com/article/CTX119739"&gt;Citrix Knowledge Center Article CTX119739 - Provisioning Server and VMware ESX Interoperability Guide&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Most matured hypervisor with largest data center footprint&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;So as you can see a number of factors come into play when choosing a hypervisor for your XenDesktop infrastructure. Some customers I have worked with have stayed with their current hypervisor and kept a single hypervisor infrastructure all on VMware vSphere. While other customers I have worked with have gone with multiple hypervisor infrastructures having the XenDesktop infrastructure components on VMware vSphere and the virtual desktops on Citrix XenServer. I have even had one customer put everything relating to Citrix on Citrix XenServer and kept the rest of their infrastructure on VMware vSphere. I will be doing an install next month in a pure XenServer environment (They have been running Xen since long before the Citrix acquisition). The demo lab at my office and what we use for workshops is a mix of Citrix XenServer for the virtual appliances and Microsoft Hyper-V R2 for everything else. Microsoft Hyper-V R2 is getting more consideration and interest lately and I expect to start doing more and more XenDesktop deployments on Hyper-V soon.&lt;br /&gt;&lt;br /&gt;For XenDesktop deployments do you stick with a single or have multiple hypervisors? Every environment is different and everyone has their own take on this. With the way the economy has been customers are looking at other options instead of paying a premium for what they currently have. Especially since cost for and deployment of a XenDesktop infrastructure are a huge factors these days. Citrix XenServer and Microsoft Hyper-V R2 are getting more and more interest and gaining ground every day as the feature sets become more and more comparable with VMware vSphere. With XenDesktop having an open architecture you have options when it comes to the hypervisor. The hypervisor is becoming a commodity anyway, right?&lt;br /&gt;&lt;br /&gt;If you have found this article interesting or if you have any other insights, please feel free to leave comments on this article.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-5622863364410472008?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9yLvWFphWLf9pYZnfHQCLz5_bck/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9yLvWFphWLf9pYZnfHQCLz5_bck/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9yLvWFphWLf9pYZnfHQCLz5_bck/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9yLvWFphWLf9pYZnfHQCLz5_bck/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6Yzq_o2EJ0c:Dv1XVD0IADQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6Yzq_o2EJ0c:Dv1XVD0IADQ:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6Yzq_o2EJ0c:Dv1XVD0IADQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6Yzq_o2EJ0c:Dv1XVD0IADQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=6Yzq_o2EJ0c:Dv1XVD0IADQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6Yzq_o2EJ0c:Dv1XVD0IADQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=6Yzq_o2EJ0c:Dv1XVD0IADQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6Yzq_o2EJ0c:Dv1XVD0IADQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=6Yzq_o2EJ0c:Dv1XVD0IADQ:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/6Yzq_o2EJ0c" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/6Yzq_o2EJ0c/xendesktop-deploymentssingle-or.html</link><author>noreply@blogger.com (Jarian Gibson)</author><thr:total>1</thr:total><feedburner:origLink>http://www.thegenerationv.com/2010/06/xendesktop-deploymentssingle-or.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-5770866738376542647</guid><pubDate>Thu, 03 Jun 2010 15:03:00 +0000</pubDate><atom:updated>2010-06-03T11:12:07.279-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Rik Hoffelder</category><category domain="http://www.blogger.com/atom/ns#">Exchange 2007</category><category domain="http://www.blogger.com/atom/ns#">Exchange</category><title>Exchange 2007 Rollup Causes “Outlook Web Access was unable to initialize” errors</title><description>By:Rik Hoffelder&lt;hr /&gt;If you’re reading this chances are you have applied a rollup to Exchange 2007.  In my case it was Rollup 4 for Exchange 2007 SP2.  After applying the update OWA users began experiencing errors accessing the login page stating “Outlook Web Access was unable to initialize.  Contact your administrator.”  &lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;When this occurred MSExchangeOWA wrote a FormsRegistry error with Event ID 4 into that application log.  Specifically it stated the “More than one forms registry is named Premium” as shown below. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_VZSWCia6uOk/TAfGPFThx2I/AAAAAAAAAEc/-2_plppfj6A/s1600/1.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 208px; height: 229px;" src="http://3.bp.blogspot.com/_VZSWCia6uOk/TAfGPFThx2I/AAAAAAAAAEc/-2_plppfj6A/s320/1.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5478565434143917922" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After researching the problem on the web and finding nothing I did a little investigating and found the problem to be a simple case of an installer not cleaning up after itself.  In this case a directory named &lt;i&gt;Copy of premium&lt;/i&gt; existed in the same sub-directory as the &lt;i&gt;premium&lt;/i&gt; directory.  This is typically located under C:\Program Files\Microsoft\Exchange Server\ClientAccess\Owa\forms.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_VZSWCia6uOk/TAfSuF2wAyI/AAAAAAAAAEk/ScJje_mUpbQ/s1600/2.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 241px;" src="http://2.bp.blogspot.com/_VZSWCia6uOk/TAfSuF2wAyI/AAAAAAAAAEk/ScJje_mUpbQ/s320/2.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5478579161007129378" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To resolve the problem I simply deleted the &lt;i&gt;Copy of premium&lt;/i&gt; directory then ran IISRESET /NOFORCE.  This resolved the issue in my case.  I can’t say it will work for everyone, but since there is very little information about this error anywhere, I thought I would share at least one solution.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_VZSWCia6uOk/TAfS8lDAPZI/AAAAAAAAAEs/k8gWe06Bjh0/s1600/3.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 242px;" src="http://4.bp.blogspot.com/_VZSWCia6uOk/TAfS8lDAPZI/AAAAAAAAAEs/k8gWe06Bjh0/s320/3.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5478579409898192274" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://www.thegenerationv.com/search/label/Exchange"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on Exchange&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-5770866738376542647?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/CXeoDwcvUYrrIGVykzB7nJhBODU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CXeoDwcvUYrrIGVykzB7nJhBODU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/CXeoDwcvUYrrIGVykzB7nJhBODU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CXeoDwcvUYrrIGVykzB7nJhBODU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=2tQ7bwx-s9s:x8l-1PG3Cv8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=2tQ7bwx-s9s:x8l-1PG3Cv8:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=2tQ7bwx-s9s:x8l-1PG3Cv8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=2tQ7bwx-s9s:x8l-1PG3Cv8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=2tQ7bwx-s9s:x8l-1PG3Cv8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=2tQ7bwx-s9s:x8l-1PG3Cv8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=2tQ7bwx-s9s:x8l-1PG3Cv8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=2tQ7bwx-s9s:x8l-1PG3Cv8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=2tQ7bwx-s9s:x8l-1PG3Cv8:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/2tQ7bwx-s9s" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/2tQ7bwx-s9s/exchange-2007-rollup-causes-outlook-web.html</link><author>noreply@blogger.com (Rik Hoffelder)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_VZSWCia6uOk/TAfGPFThx2I/AAAAAAAAAEc/-2_plppfj6A/s72-c/1.JPG" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/06/exchange-2007-rollup-causes-outlook-web.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-2687429552501859056</guid><pubDate>Fri, 21 May 2010 22:00:00 +0000</pubDate><atom:updated>2010-05-21T17:24:57.274-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Netscaler</category><category domain="http://www.blogger.com/atom/ns#">XENDesktop</category><category domain="http://www.blogger.com/atom/ns#">Branch Repeater</category><category domain="http://www.blogger.com/atom/ns#">Rick Rohne</category><title>Application Networking - A New Career?</title><description>By:Rick Rohne&lt;hr /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_yUI-6_lDTwY/S_cGZFgiYaI/AAAAAAAAAT8/PZtfXR3IFAg/s1600/movie-ns.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" gu="true" src="http://4.bp.blogspot.com/_yUI-6_lDTwY/S_cGZFgiYaI/AAAAAAAAAT8/PZtfXR3IFAg/s320/movie-ns.png" /&gt;&lt;/a&gt;&lt;/div&gt;
I had the opportunity to meet and work with many of my fellow CTP’s last week at Synergy to discuss some of the challenges of XENDesktop, and XENApp in an Enterprise Environment.  In this video Timco Hazelaar  and I discuss where we think Application Networking fits in at an organizational level. 
&lt;div style="clear: both;"&gt;&lt;/div&gt;
&lt;span class="fullpost"&gt;
&lt;br&gt;
&lt;object  id='CustomCTVPlayer2155'  codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,47,0'  allowScriptAccess='always'  height='412'  width='486'  classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'&gt;  &lt;param value='http://www.citrix.com/tv/s/tv/players/ctv_viral_1_0.swf?ctv=2155&amp;autoStart=false&amp;height=412&amp;width=486&amp;hd=false' name='movie' /&gt; &lt;param value='high' name='quality' /&gt; &lt;param value='#ffffff' name='bgcolor' /&gt; &lt;param value='always' name='allowScriptAccess' /&gt; &lt;param value='true' name='allowFullScreen' /&gt; &lt;param name='wmode' value='opaque'  /&gt; &lt;embed  name='CustomCTVPlayer2155'  height='412'  width='486'  wmode='opaque'  align='middle'  pluginspage='http://www.adobe.com/go/getflashplayer'  type='application/x-shockwave-flash' allowScriptAccess='always'  allowFullScreen='true' bgcolor='#ffffff' quality='high'  src='http://www.citrix.com/tv/s/tv/players/ctv_viral_1_0.swf?ctv=2155&amp;autoStart=false&amp;height=412&amp;width=486&amp;hd=false'&gt; &lt;/embed&gt;&lt;/object&gt;
&lt;br&gt;
&lt;p&gt;
&lt;a href="http://www.citrix.com/tv/videos/2155" target="_blank"&gt;Comment below or at Citrix TV&lt;/a&gt; 

&lt;p&gt;
&lt;br&gt;
&lt;a href="http://www.thegenerationv.com/search/label/Netscaler"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on Application Networking&lt;/a&gt;

&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-2687429552501859056?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_HopPjHW3zOOGuI0Irb8hDCKw-0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_HopPjHW3zOOGuI0Irb8hDCKw-0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_HopPjHW3zOOGuI0Irb8hDCKw-0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_HopPjHW3zOOGuI0Irb8hDCKw-0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p2JPKpvPsx0:97VGqdXyHvI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p2JPKpvPsx0:97VGqdXyHvI:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p2JPKpvPsx0:97VGqdXyHvI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p2JPKpvPsx0:97VGqdXyHvI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=p2JPKpvPsx0:97VGqdXyHvI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p2JPKpvPsx0:97VGqdXyHvI:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=p2JPKpvPsx0:97VGqdXyHvI:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p2JPKpvPsx0:97VGqdXyHvI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p2JPKpvPsx0:97VGqdXyHvI:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/p2JPKpvPsx0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/p2JPKpvPsx0/application-networking-new-career.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_yUI-6_lDTwY/S_cGZFgiYaI/AAAAAAAAAT8/PZtfXR3IFAg/s72-c/movie-ns.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/05/application-networking-new-career.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-6608969329934835644</guid><pubDate>Fri, 14 May 2010 16:54:00 +0000</pubDate><atom:updated>2010-05-16T22:34:50.361-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Exchange Public Folders</category><category domain="http://www.blogger.com/atom/ns#">Exchange Migration</category><category domain="http://www.blogger.com/atom/ns#">Exchange 2003</category><category domain="http://www.blogger.com/atom/ns#">Exchange 2010</category><category domain="http://www.blogger.com/atom/ns#">Exchange</category><title>Replicate Public folders Between Exchange 2003 and 2010 Organizations Using the Interorg Replication Tool</title><description>By:Rik Hoffelder&lt;hr /&gt;&lt;a href="http://4.bp.blogspot.com/_VZSWCia6uOk/S-2GYmhujsI/AAAAAAAAADE/7uk7yN7zXLU/s1600/Capture1.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 46px; height: 47px;" src="http://4.bp.blogspot.com/_VZSWCia6uOk/S-2GYmhujsI/AAAAAAAAADE/7uk7yN7zXLU/s200/Capture1.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471176879542013634" /&gt;&lt;/a&gt;I wrote in my article, &lt;a href="http://www.thegenerationv.com/2010/03/cross-forest-migration-with-exchange_23.html"&gt;Cross-Forest Migration with Exchange 2010 is a Piece of Cake!&lt;/a&gt; that it is possible to synchronize public folder and free/busy data between Exchange 2003 and Exchange 2010 Forests using the free Interorg Replication Tool.  Since that time I have received a few questions on how I set that up and got it working.  So by popular demand, here are the steps I used along with screenshots to help get you going.   &lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;b&gt;First, a little background on the environment&lt;/b&gt;&lt;br /&gt;In my lab, as was the case as the production enviroment, I had Exchange 2003 running in a single domain Windows 2003 forest, set at Windows 2003 Functional Level.  Exchange 2010 is running in a single domain forest with Windows 2008 domain controllers, functional levels also set to 2003.  A Cross-Forest Trust was established, SIDHistory filter security relaxed with the intent of migrating all domain resources to the new forest, including Exchange 2010.  The Active Directory Migration Tool (ADMT 3.2) was used to migrate user accounts, groups etc as noted in &lt;a href="http://www.thegenerationv.com/2010/03/cross-forest-migration-with-exchange_23.html"&gt;Cross-Forest Migration with Exchange 2010 is a Piece of Cake!&lt;/a&gt; and mailbox GUIDs updated to prepare for the mailbox migration.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Setting Up Interorg Replication&lt;/b&gt;&lt;br /&gt;To preform the steps outlined below I was running version 6.5.7408 of the Interorg Replication Tool from the Exchange 2003 Toolkit, Exchange 2003 SP2, and Exchange 2010 with Rollup 1, though it should work with Rollups 2 or 3.&lt;br /&gt;&lt;br /&gt;1. Create a user account and mailbox to be used for the process in the Exchange 2003 organization.  This account must be granted Owner rights on every public folder that you plan to replicate.  For my purposes I used the EX2003\Administrator account, though not the most reocmmended for security reasons.&lt;br /&gt;&lt;br /&gt;2. Create a user account and mailbox to be used for the process in the Exchange 2010 forest.  This account must be granted Owner rights on every public folder that you plan to replicate.  For my purposes I used the EX2010\Administrator account, though not the most reocmmended for security reasons. &lt;i&gt;(NOTE: The public folder hierarchy must already exist in the Exchange 2010 forest, so you will need to pre-create the folders you will replicate from 2003.)&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;3. Create a top-level public folder named ExchsyncSecurityFolder in the Exchange 2003 organization.  Assign the account created in step 1 Folder Visible rights only.  Remove all other access rights for all other accounts.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_VZSWCia6uOk/S-2UyLvG7SI/AAAAAAAAADc/L6KwJIk_ui0/s1600/Capture3.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 143px; height: 200px;" src="http://2.bp.blogspot.com/_VZSWCia6uOk/S-2UyLvG7SI/AAAAAAAAADc/L6KwJIk_ui0/s200/Capture3.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471192712189766946" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;4. Create a top-level public folder named ExchsyncSecurityFolder in the Exchange 2010 organization.  Assign the account created in step 2 Folder Visible rights only.  Remove all other access rights for all other accounts.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_VZSWCia6uOk/S-2VXRPkSWI/AAAAAAAAADk/FtRkQY22A7k/s1600/Capture4.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 66px;" src="http://1.bp.blogspot.com/_VZSWCia6uOk/S-2VXRPkSWI/AAAAAAAAADk/FtRkQY22A7k/s200/Capture4.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471193349323245922" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;5. Install the Interorg Replication Tool replication service on the Exchange 2003 public folder server by running EXSSRV.EXE from the toolkit.  Click the Create button which will install the service on the server.  In my case I used the EX2003\Administrator account as the service account.  I had problems when using local system.  Administrator is also a local admin and Exchange Full Administrator&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_VZSWCia6uOk/S-2W4AJeksI/AAAAAAAAADs/yfoXfcPPYqc/s1600/Capture5.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 109px;" src="http://2.bp.blogspot.com/_VZSWCia6uOk/S-2W4AJeksI/AAAAAAAAADs/yfoXfcPPYqc/s200/Capture5.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471195011181613762" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;6. Open the Interorg Replication Configuration tool by running EXGCFG.EXE.  Click File -&gt; New to create a new Exchange Sync Configuration file (.esc).  Click Session from the menu bar then click Add - Public Folder Replication.&lt;br /&gt;&lt;br /&gt;7. In the Public Folder Session Configuration window enter PF 03 -&gt; 10 in the title field to indicate 2003 public folders replicating to 2010.  In the Publisher Organization section enter the Exchange 2003 public folder server and the mailbox name you created in step 1.  In the Subscriber Organization section enter the name of the Exchange 2010 public folder server and the mailbox name you created in step 2.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_VZSWCia6uOk/S-2YzTyiAkI/AAAAAAAAAD0/UYvk5RDrT7A/s1600/Capture6.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 271px;" src="http://3.bp.blogspot.com/_VZSWCia6uOk/S-2YzTyiAkI/AAAAAAAAAD0/UYvk5RDrT7A/s320/Capture6.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471197129577988674" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;8. Click the Advanced button under Publisher Organization then enter the credentials for the account you created in step 1.  Click the Advanced button under Subscriber Organization then enter the credentials for the account you created in step 2. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_VZSWCia6uOk/S-2Zqdi6ufI/AAAAAAAAAD8/r-yWPHpClFw/s1600/Capture7.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 236px; height: 320px;" src="http://3.bp.blogspot.com/_VZSWCia6uOk/S-2Zqdi6ufI/AAAAAAAAAD8/r-yWPHpClFw/s320/Capture7.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471198077089659378" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;9.  Click the Folder List button.  Click the Logon button under Publisher Public Folders and the Logon Button below Subscriber Public Folders.  This will allow you to view the available folders in both organizations.  Select a top-level folder under Publisher Public Folders and click the Add button.  Repeat this for each top-level folder you plan to replicate.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_VZSWCia6uOk/S-2bIUsJhnI/AAAAAAAAAEE/ieXuErMAKmM/s1600/Capture8.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 257px;" src="http://2.bp.blogspot.com/_VZSWCia6uOk/S-2bIUsJhnI/AAAAAAAAAEE/ieXuErMAKmM/s320/Capture8.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471199689620162162" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;10. Click Session from the menu bar then click Add - Schedule+ Free/Busy Replication.  Repeat steps 7 through 9 to replicate free busy from 2003 to 2010.&lt;br /&gt;&lt;br /&gt;11. Repeat steps 7 - 9 instead using Exchange 2010 as the Publisher and Exchange 2003 as the Subscriber to allow reverse replication.  Do this for both public folders and free/busy.  When the process is complete you will have at least 4 sessions in your configuration as shown below:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_VZSWCia6uOk/S-2dMHLMDZI/AAAAAAAAAEM/qVYj8DC91OM/s1600/Capture9.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 187px;" src="http://4.bp.blogspot.com/_VZSWCia6uOk/S-2dMHLMDZI/AAAAAAAAAEM/qVYj8DC91OM/s320/Capture9.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471201953734987154" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;12. After completing this you can now monitor the process (I have mine running every five minutes in the lab, hourly in production) using the EXGSRV.EXE console.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_VZSWCia6uOk/S-2d-KSV2VI/AAAAAAAAAEU/AbzwJkGdVbA/s1600/Capture10.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 154px;" src="http://1.bp.blogspot.com/_VZSWCia6uOk/S-2d-KSV2VI/AAAAAAAAAEU/AbzwJkGdVbA/s320/Capture10.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471202813563754834" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;br /&gt;For additional information on Interorg Replication Tool configuration and implementation I recommend checking out the full TechNet article &lt;a href="http://technet.microsoft.com/en-us/library/ee307369(EXCHG.80).aspx"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://www.thegenerationv.com/search/label/Exchange"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on Exchange&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;  &lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-6608969329934835644?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pI3DfSQpAom9l2nGSPcjXhbxR3w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pI3DfSQpAom9l2nGSPcjXhbxR3w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/pI3DfSQpAom9l2nGSPcjXhbxR3w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pI3DfSQpAom9l2nGSPcjXhbxR3w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ZmcH0K8iHBM:ggLcfkd4pgk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ZmcH0K8iHBM:ggLcfkd4pgk:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ZmcH0K8iHBM:ggLcfkd4pgk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ZmcH0K8iHBM:ggLcfkd4pgk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=ZmcH0K8iHBM:ggLcfkd4pgk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ZmcH0K8iHBM:ggLcfkd4pgk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=ZmcH0K8iHBM:ggLcfkd4pgk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ZmcH0K8iHBM:ggLcfkd4pgk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ZmcH0K8iHBM:ggLcfkd4pgk:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/ZmcH0K8iHBM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/ZmcH0K8iHBM/replicate-public-folders-between.html</link><author>noreply@blogger.com (Rik Hoffelder)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_VZSWCia6uOk/S-2GYmhujsI/AAAAAAAAADE/7uk7yN7zXLU/s72-c/Capture1.JPG" height="72" width="72" /><thr:total>7</thr:total><feedburner:origLink>http://www.thegenerationv.com/2010/05/replicate-public-folders-between.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-7549698304667588909</guid><pubDate>Fri, 14 May 2010 16:16:00 +0000</pubDate><atom:updated>2010-05-16T22:35:59.790-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Rik Hoffelder</category><category domain="http://www.blogger.com/atom/ns#">Exchange 2010</category><category domain="http://www.blogger.com/atom/ns#">Exchange</category><title>Exchange 2010 – What to Know About Mailbox Import/Export</title><description>By:Rik Hoffelder&lt;hr /&gt;&lt;a href="http://2.bp.blogspot.com/_VZSWCia6uOk/S-17O_93WwI/AAAAAAAAAC8/apxs0jRWgVo/s1600/Capture.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 70px; height: 69px;" src="http://2.bp.blogspot.com/_VZSWCia6uOk/S-17O_93WwI/AAAAAAAAAC8/apxs0jRWgVo/s200/Capture.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5471164619944319746" /&gt;&lt;/a&gt;Exchange administrators are often asked to transfer e-mail data for various reasons and this usually involves PSTs.  EXMERGE was always a great tool for this process; however Exchange 2007 introduced built-in functionality as a sort of replacement for EXMERGE.  I say sort of because the Import-Mailbox and Export-Mailbox cmdlets don’t offer all of the same functionality as EXMERGE, specifically a GUI interface and multi-threaded mailbox export/import.  That’s about the only downside to the cmdlets as they offer functionality not available to EXMERGE such as removing a message form mailbox and placing it another.  Finding and removing messages from mailboxes, such as viruses (remember ISSCAN and ILOVEYOU?).  It also works with mailbox recovery when using a recover storage group, not unlike EXMERGE, except I can recover a mailbox when the original user account was deleted, unlike the EXMERGE components of Exchange 2003 recovery.&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;Exchange 2010 Import-Mailbox and Export-Mailbox offer similar functionality as they did in Exchange 2007 with a few twists.  The first big improvement is in security.  In previous versions of Exchange an administrator required full mailbox access rights in order to import or export data using EXMERGE or Exchange 2007’s cmdlets.  That is no longer the case with Exchange 2010.  Among the new roles included with Role Based Access Control (RBAC) is the &lt;em&gt;&lt;strong&gt;Mailbox Import Export&lt;/strong&gt;&lt;/em&gt; role.  This role is required for anyone who must perform this task, but it is not enabled by default for any user or group including members of Organization Management.  As a result attempting to run the Import-Mailbox cmdlet will fail as an unrecognized command until the user is a member of the role group.  An administrator can grant membership using the following cmdlet:&lt;br /&gt;&lt;br /&gt;  &lt;em&gt;New-ManagementRoleAssignment –Role “Mailbox Import Export” –User “Administrator”&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;After joining the group, you must log off and back on in order to join, just like any other security group in the Windows world.&lt;br /&gt;&lt;br /&gt;Next you must install the 64-bit version of Outlook 2010 or later on the mailbox server where you will perform the import.  This must be the 64-bit version and it must be installed on the mailbox server role because Microsoft does not offer a 32-bit version of Exchange 2010 management tools.  Also note that it is required on the mailbox server, so simply placing it on a 64-bit management workstation will not suffice; it MUST be on the Exchange 2010 server although you can use a 64-bit workstation to run the actual process.&lt;br /&gt;&lt;br /&gt;A few items of note are that the Exchange 2010 version of Import-Mailbox and Export-Mailbox will not work against mailboxes hosted on Exchange 2003 or 2007 servers.  You can use EXMERGE against both of those versions.  And yes, EXMERGE still works against an Exchange 2007 server; you just have to set it up on a 32-bit workstation with Outlook and Exchange 2003 System Administration Console.  On the flip side, Exchange 2007 Import/Export will not work against mailboxes hosted on 2010 or 2003 either.&lt;br /&gt;&lt;br /&gt;Exchange 2010 RTM at least through Rollup 3 (most recent version at time of writing) has an annoying bug, in my opinion.  If you have a typical installation of a multi-role server (Hub, CAS, &amp; Mailbox), as many smaller organizations do, Import-Mailbox will fail with error -2147221219.  The only workaround to this is to bring up a mailbox-only server to perform the imports.  It will not work otherwise, it is not a security issue, it is a bug (maybe by design?).  So for organizations needing this functionality on a regular basis should plan accordingly.  I recommend building that as a virtual machine since it doesn’t require much resource when not in use.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-7549698304667588909?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rDIep7ypR7o7t7EBKOp_vJiqNuA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rDIep7ypR7o7t7EBKOp_vJiqNuA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rDIep7ypR7o7t7EBKOp_vJiqNuA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rDIep7ypR7o7t7EBKOp_vJiqNuA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p7Ca_fGxVZk:EnTYVxZTv_c:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p7Ca_fGxVZk:EnTYVxZTv_c:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p7Ca_fGxVZk:EnTYVxZTv_c:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p7Ca_fGxVZk:EnTYVxZTv_c:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=p7Ca_fGxVZk:EnTYVxZTv_c:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p7Ca_fGxVZk:EnTYVxZTv_c:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=p7Ca_fGxVZk:EnTYVxZTv_c:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p7Ca_fGxVZk:EnTYVxZTv_c:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=p7Ca_fGxVZk:EnTYVxZTv_c:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/p7Ca_fGxVZk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/p7Ca_fGxVZk/exchange-2010-what-to-know-about.html</link><author>noreply@blogger.com (Rik Hoffelder)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_VZSWCia6uOk/S-17O_93WwI/AAAAAAAAAC8/apxs0jRWgVo/s72-c/Capture.JPG" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://www.thegenerationv.com/2010/05/exchange-2010-what-to-know-about.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-4224495775130532181</guid><pubDate>Sat, 24 Apr 2010 20:15:00 +0000</pubDate><atom:updated>2010-04-24T15:33:22.101-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">XENDesktop</category><category domain="http://www.blogger.com/atom/ns#">Provisioning Server</category><category domain="http://www.blogger.com/atom/ns#">Rick Rohne</category><category domain="http://www.blogger.com/atom/ns#">SCCM</category><title>SCCM on XENDesktop or PVS Standard Target Devices</title><description>By:Rick Rohne&lt;hr /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/_yUI-6_lDTwY/S9NQo-5B-cI/AAAAAAAAASs/dBt1YsTiN4s/s1600/PVSandSCCM.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 0em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_yUI-6_lDTwY/S9NQo-5B-cI/AAAAAAAAASs/dBt1YsTiN4s/s320/PVSandSCCM.png" tt="true" /&gt;&lt;/a&gt;&lt;/div&gt;
Have you ever tried to manage your XENDesktop or PVS target devices using SCCM?  In some ways, managing the devices using SCCM is irrelevant due to the nature of how PVS works, but low and behold, I've run into a few companies that insist on using SCCM for inventory management and application installation.  The SCCM client, however, does not work well in a streamed OS environment.  If you've ever tried installing the SCCM client on a PVS image, you will notice that SCCM shows new machines with the same name in its collections every time a PVS&amp;nbsp;target device&amp;nbsp;reboots in standard mode.&amp;nbsp;This is because the SCCM client changes the GUID when an imageis pushed to new hardware. SCCM uses the GUID to keep track of Physical Hardware devices. &lt;br /&gt;
&lt;div style="clear: both;"&gt;&lt;/div&gt;
&lt;span class="fullpost"&gt;
&lt;br/&gt;
&lt;strong&gt;Overview how SCCM works&lt;/strong&gt;&lt;hr /&gt;
To give you an idea how it works, SMS uses the GUID of the computers to associate the Computer and OS with the SMS object. This GUID is stored in the c:\windows\SMSCFG.ini file. &lt;br /&gt;
&lt;br /&gt;
The GUID can be read from this file, also by querying WMI using this vb script. &lt;br /&gt;
&lt;div style="text-align: left;"&gt;
&lt;em&gt;----------------------------------------------------------------------------------------------------------------------------------&lt;/em&gt;&lt;/div&gt;
&lt;div style="text-align: left;"&gt;
&lt;em&gt;strComputer = "." &lt;/em&gt;&lt;/div&gt;
&lt;div style="text-align: left;"&gt;
&lt;em&gt;strNameSpace = "root\ccm" strClass = "CCM_Client=@" Set objClass = getObject("Winmgmts:{impersonationlevel=impersonate}!\\" &amp;amp; strComputer &amp;amp; "\" &amp;amp; strNameSpace &amp;amp; ":" &amp;amp; strClass) &lt;/em&gt;&lt;/div&gt;
&lt;div style="text-align: left;"&gt;
&lt;em&gt;strGUID = objClass.ClientID &lt;/em&gt;&lt;/div&gt;
&lt;div style="text-align: left;"&gt;
&lt;em&gt;Wscript.Echo strGUID &lt;/em&gt;&lt;/div&gt;
&lt;div style="text-align: left;"&gt;
&lt;em&gt;Set objClass = Nothing&lt;/em&gt; &lt;/div&gt;
-------------------------------------------------------------------------------------------------------------&lt;br /&gt;
The problem we see is in a Citrix Provisioned desktop, this file comes up with a duplicate GUID each time. This causes the SCCM client t re-generate theGUID and create a new file on every boot. &lt;br /&gt;
You can find this information here &lt;a href="http://support.microsoft.com/kb/837374" target="_blank"&gt;http://support.microsoft.com/kb/837374&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;The Fix&lt;/strong&gt; &lt;hr /&gt;
In order to persist the computers GUID, you must be using “cache to targets hard drive” when you place your systems in standard mode.  We use the hard drive to save the SCCMCFG.ini file after each reboot.&lt;br/&gt;
This also means that "cache to RAM" or "cache to Server" will not be sufficient because the cache will be purged on every reboot.
&lt;br/&gt;&lt;br/&gt;
Step 1. &lt;br /&gt;
To resolve this, first, you have to run a script when switching from private mode to standard mode. This is done by the XENDesktop Admin after he modifies the default image… &lt;br /&gt;
This script stops the SCCM service and deletes the c:\windows\SCCMCFG.ini file. &lt;br /&gt;
'--------------------------- SCCM Cleanup.vbs-------------------------------------- &lt;br /&gt;
&lt;em&gt;'Stop SCCM client strServiceName = "CCMExec" &lt;/em&gt;&lt;br /&gt;
&lt;em&gt;Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") &lt;/em&gt;&lt;br /&gt;
&lt;em&gt;Set colListOfServices = objWMIService.ExecQuery("Select * from Win32_Service Where Name ='" &amp;amp; strServiceName &amp;amp; "'") &lt;/em&gt;&lt;br /&gt;
&lt;em&gt;For Each objService in colListOfServices objService.StopService() Next ' Cleanup SCCM Set fso = CreateObject("Scripting.FileSystemObject") Set aFile = fso.GetFile("c:\windows\SMSCFG.ini") aFile.Delete&lt;/em&gt; &lt;br /&gt;
----------------------------------------------------------------------------------------&lt;br /&gt;
Step 2. &lt;br /&gt;
Now, you have to run a shutdown script and startup script that basically places the c:\windows\SCCMCFG.ini file on the Cache drive on shut down. When the computer boots up, it will check to see if the file exists on the cache drive. If it does not, the SCCM client will register itself to the SCCM server and create a new c:\windows\SCCMCFG.ini file. Upon shutdown, the c:\windows\SCCMCFG.ini file is copied to the cache drive. &lt;br /&gt;
&lt;br /&gt;
This is a simple batch file script that can be loaded into active directory as a computer startup script for the OU where XENDesktop computers reside. &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Startup Script&lt;/strong&gt;&lt;hr /&gt;
&lt;em&gt;IF EXIST G:\SMSCFG.ini COPY G:\SMSCFG.ini C:\Windows\SMSCFG.ini /y &amp;gt; c:\smserror.txt&lt;/em&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Shutdown Script&lt;/strong&gt;&lt;hr /&gt;
&lt;em&gt;COPY c:\windows\SMSCFG.ini G:\SMSCFG.ini /y &amp;gt; g:\smserror.txt&lt;/em&gt; &lt;br /&gt;
&lt;br /&gt;
Now computers that are manged by SCCM will show up as unique entries in the SCCM database.&lt;br /&gt;
NOTE: This was tested with SCCM 2007 R2, PVS 5.1, and XENDesktop 4
&lt;br/&gt;
&lt;br/&gt;
&lt;a href="http://www.thegenerationv.com/search/label/Provisioning%20Server"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on Provisioning Server&lt;/a&gt;

&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-4224495775130532181?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/iGv1LA0b03G49RW3Rl1KOZvfF20/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/iGv1LA0b03G49RW3Rl1KOZvfF20/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/iGv1LA0b03G49RW3Rl1KOZvfF20/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/iGv1LA0b03G49RW3Rl1KOZvfF20/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=a1g9PETYbM8:o533PZHR228:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=a1g9PETYbM8:o533PZHR228:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=a1g9PETYbM8:o533PZHR228:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=a1g9PETYbM8:o533PZHR228:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=a1g9PETYbM8:o533PZHR228:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=a1g9PETYbM8:o533PZHR228:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=a1g9PETYbM8:o533PZHR228:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=a1g9PETYbM8:o533PZHR228:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=a1g9PETYbM8:o533PZHR228:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/a1g9PETYbM8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/a1g9PETYbM8/sccm-on-xendesktop-or-pvs-standard.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_yUI-6_lDTwY/S9NQo-5B-cI/AAAAAAAAASs/dBt1YsTiN4s/s72-c/PVSandSCCM.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/04/sccm-on-xendesktop-or-pvs-standard.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-2026174255805876309</guid><pubDate>Sat, 24 Apr 2010 20:10:00 +0000</pubDate><atom:updated>2010-04-27T23:03:18.033-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">XENDesktop</category><category domain="http://www.blogger.com/atom/ns#">Provisioning Server</category><category domain="http://www.blogger.com/atom/ns#">Rick Rohne</category><title>Symantec Endpoint Protection on XENDesktop and PVS target devices</title><description>By:Rick Rohne&lt;hr /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/_yUI-6_lDTwY/S9NexHQMlQI/AAAAAAAAAT0/K_7VDY_avtw/s1600/symantec9.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 0em; margin-right: 3em;"&gt;&lt;img border="0" height="106" src="http://2.bp.blogspot.com/_yUI-6_lDTwY/S9NexHQMlQI/AAAAAAAAAT0/K_7VDY_avtw/s200/symantec9.png" tt="true" width="116" /&gt;&lt;/a&gt;&lt;/div&gt;
I’ve recently come across a couple of companies trying to install Symantec Endpoint Protection on their XENDesktop PC’s, and finding a very annoying outcome. First of all, the SEP client does not update completely or not at all, the SEP client blue screens during the installation, and/or the SEP manager display multiple entries in the database for the same host. There are a few root problems when installing the SEP client to a PXE booted shared image, and I was determined to find the answers… &lt;br /&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;span class="fullpost"&gt;
&lt;p&gt;
&lt;br/&gt;
&lt;strong&gt;Problem&lt;/strong&gt;&lt;hr /&gt;
After installing Symantec on a base image in XENDesktop, the client computers appear more than once in the Symantec console. This continues to happen after every boot. Alternatively, if you try to install Symantec SEP while booted to the network, you may receive a blue screen after the first reboot.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_yUI-6_lDTwY/S9NXNj0IzyI/AAAAAAAAAS0/0BoU5pWoWVM/s1600/symantec1.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="171" src="http://4.bp.blogspot.com/_yUI-6_lDTwY/S9NXNj0IzyI/AAAAAAAAAS0/0BoU5pWoWVM/s640/symantec1.png" tt="true" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="clear: both;"&gt;&lt;/div&gt;
&lt;strong&gt;Solution&lt;/strong&gt;&lt;hr /&gt;
Boot your VM using Microsoft Hyper-V or perform a reverse image when performing Symantec Endpoint Protection Installation.&amp;nbsp; This is required because SEP modifies the NIC drivers during installation.&amp;nbsp; Next,&amp;nbsp;Clean up the registry after the first boot as to allow the image to re-register with a unique Hardware ID for each Virtual Desktop.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Step by Step&lt;/strong&gt;&lt;br /&gt;
&lt;hr /&gt;
&lt;strong&gt;1. Import your XENDesktop OU&lt;/strong&gt;&lt;br /&gt;To ensure that your Virtual Desktops get the policies that are assigned, I recommend using the Symantec Endpoint Protection Manager Active Directory Import tool to import the OU for your XENDesktop computers. This will allow the OU to have custom policies and that will tailor to the XENDesktop farm.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_yUI-6_lDTwY/S9NYhmWoFCI/AAAAAAAAAS8/G5goCBwGj00/s1600/symantec2.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_yUI-6_lDTwY/S9NYhmWoFCI/AAAAAAAAAS8/G5goCBwGj00/s320/symantec2.png" tt="true" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;/div&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
Once you have the XENDesktop OU imported, you will see existing clients, and you can have the option to scan for new clients as they are added. The main reason for creating this OU is to ensure that the clients get a specific policy.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;strong&gt;2. Configure your policies&lt;/strong&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
I found that the High performance policy Template gives you the best policy for your Virtual Desktops. After duplicating the policy, you can modify the new policy with a few additional settings.&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;
In the File System Auto Protect, change the default settings of “Load Auto-Protect” to Symantec Endpoint Protection Start.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/S9NZSg0J5EI/AAAAAAAAATE/iX0ct_vFgOU/s1600/symantec3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/S9NZSg0J5EI/AAAAAAAAATE/iX0ct_vFgOU/s320/symantec3.png" tt="true" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;/div&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Exclude the .vdiskcache file if you are performing the write cache on the computer’s hard disk. &lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Since these Virtual desktops will always come up with the default image, you can exclude any scheduled scans. This will ensure that your virtual desktops have the best performance possible.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;br /&gt;&lt;strong&gt;3. Next, assign the policy to the new XENDesktop Group:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Using the SEP Manager Tool, you can right click on the policy and assign it to your XENDesktop group.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;a href="http://4.bp.blogspot.com/_yUI-6_lDTwY/S9NZpzOD4gI/AAAAAAAAATM/vXjHPkjsno4/s1600/symantec4.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="148" src="http://4.bp.blogspot.com/_yUI-6_lDTwY/S9NZpzOD4gI/AAAAAAAAATM/vXjHPkjsno4/s640/symantec4.png" tt="true" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;strong&gt;4. Prepare your image&lt;/strong&gt;&lt;br /&gt;NOW you are ready to boot the client and install the SEP client software. &lt;br /&gt;&lt;br /&gt;First, boot the client using Microsoft Hyper-V. (For information on how to use Hyper-V to update offline vDisks, see &lt;a href="http://www.thegenerationv.com/2010/02/using-hyper-v-for-pvs-vdisk-offline.html" target="_blank"&gt;http://www.thegenerationv.com/2010/02/using-hyper-v-for-pvs-vdisk-offline.html&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;5. Deploy the client to your Virtual PC&lt;/strong&gt;&lt;br /&gt;Perform the client deployment manually, ensure that the client deployment is visible to the end user as to ensure that you do not shut down before the client is finished installing.&lt;br /&gt;&lt;br /&gt;Once installed, perform a reboot and allow the client to come back online. Then you must manually delete the unique registry keys and xml files that associate this computer name to Symantec SEP Manager.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;6. Perform Registry and file system cleanup&lt;/strong&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Install the Symantec Endpoint Protection Client after all of the other installations are complete. &lt;/li&gt;
&lt;li&gt;Before you save the image, start the "Registry Editor." &lt;/li&gt;
&lt;li&gt;Locate and delete the following registry key:&lt;/li&gt;
&lt;/ul&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HKLM\SOFTWARE\Symantec\Symantec Endpoint Protection\SMC\SYLINK\SyLink\HardwareID&lt;br /&gt;
Reference:&lt;br /&gt;&lt;a href="http://service1.symantec.com/support/on-technology.nsf/854fa02b4f5013678825731a007d06af/0e2c1c8989fe2a268825748a004a565c?OpenDocument" target="_blank"&gt;http://service1.symantec.com/support/on-technology.nsf/854fa02b4f5013678825731a007d06af/0e2c1c8989fe2a268825748a004a565c?OpenDocument&lt;/a&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/_yUI-6_lDTwY/S9Nair9KLrI/AAAAAAAAATU/c7ErUpYPhYc/s1600/symantec5.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_yUI-6_lDTwY/S9Nair9KLrI/AAAAAAAAATU/c7ErUpYPhYc/s320/symantec5.png" tt="true" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Exit the "Registry Editor." &lt;/li&gt;
&lt;li&gt;Delete the C:\program Files\Common Files\Symantec Shared\HWID\sephwid.xml file&lt;/li&gt;
&lt;li&gt;Shut down the VM and publish the vDisk as a standard image.&lt;/li&gt;
&lt;li&gt;Create a batch file for your XENDesktop PC’s that will delete these entries. You can publish this batch file as a shut down script to ensure that the PC removes these entries every time the machine is shut down. Alternatively, you can just run these scripts when you are running in private mode before transitioning to standard mode.&lt;/li&gt;
&lt;li&gt;You will most likely see new entries show up for the Virtual Desktops in the Endpoint Protection Manager. This is because the hardware is virtual and will continue to change after every reboot. Therefore, it is important for you to perform a Desktop Group Sync when you are running reports. If this is completely un-manageable for your organization, you can also setup personalities for each of your virtual desktops that include the same hardware ID. This process will require you to run a script to import the Hardware ID into the registry on each boot. &lt;/li&gt;
&lt;/ul&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/_yUI-6_lDTwY/S9NbSMQNe-I/AAAAAAAAATc/L5jz87k0Tf0/s1600/symantec6.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_yUI-6_lDTwY/S9NbSMQNe-I/AAAAAAAAATc/L5jz87k0Tf0/s320/symantec6.png" tt="true" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;br /&gt;&lt;strong&gt;7. Verify Functionality&lt;/strong&gt;&lt;br /&gt;After you perform these procedures, you should see that all updates take place and that the correct policies are assigned to the desktops&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/S9Nbw62441I/AAAAAAAAATk/hlQ6MSPC7xU/s1600/symantec7.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="277" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/S9Nbw62441I/AAAAAAAAATk/hlQ6MSPC7xU/s400/symantec7.png" tt="true" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;/div&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/_yUI-6_lDTwY/S9NcO1UaMiI/AAAAAAAAATs/F1pS2X9FRtA/s1600/symantec8.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="302" src="http://3.bp.blogspot.com/_yUI-6_lDTwY/S9NcO1UaMiI/AAAAAAAAATs/F1pS2X9FRtA/s400/symantec8.png" tt="true" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
Reference: &lt;br /&gt;&lt;a href="http://service1.symantec.com/support/ent-security.nsf/854fa02b4f5013678825731a007d06af/7c87b2b11e0d18c48025765000518741?OpenDocument" target="_blank"&gt;http://service1.symantec.com/support/ent-security.nsf/854fa02b4f5013678825731a007d06af/7c87b2b11e0d18c48025765000518741?OpenDocument&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://service1.symantec.com/SUPPORT/ent-security.nsf/docid/2007110510364248" target="_blank"&gt;http://service1.symantec.com/SUPPORT/ent-security.nsf/docid/2007110510364248&lt;/a&gt;
&lt;br/&gt;&lt;br/&gt;
&lt;a href="http://service1.symantec.com/SUPPORT/ent-security.nsf/docid/2008123014151248" target="_blank"&gt;SEP Registration Process&lt;/a&gt;
&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.thegenerationv.com/search/label/Provisioning%20Server"&gt;&lt;img height="40" src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" /&gt;&lt;br /&gt;More information on Provisioning Server&lt;/a&gt;&lt;br /&gt;
&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-2026174255805876309?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hnK_BSH5dxgs67F71cGhdG3XaUs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hnK_BSH5dxgs67F71cGhdG3XaUs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hnK_BSH5dxgs67F71cGhdG3XaUs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hnK_BSH5dxgs67F71cGhdG3XaUs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4oWoZYevf7I:kFOyOD5F9Hs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4oWoZYevf7I:kFOyOD5F9Hs:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4oWoZYevf7I:kFOyOD5F9Hs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4oWoZYevf7I:kFOyOD5F9Hs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=4oWoZYevf7I:kFOyOD5F9Hs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4oWoZYevf7I:kFOyOD5F9Hs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=4oWoZYevf7I:kFOyOD5F9Hs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4oWoZYevf7I:kFOyOD5F9Hs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4oWoZYevf7I:kFOyOD5F9Hs:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/4oWoZYevf7I" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/4oWoZYevf7I/symantec-endpoint-protection-on.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_yUI-6_lDTwY/S9NexHQMlQI/AAAAAAAAAT0/K_7VDY_avtw/s72-c/symantec9.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/04/symantec-endpoint-protection-on.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-4751688616380788203</guid><pubDate>Fri, 23 Apr 2010 16:21:00 +0000</pubDate><atom:updated>2010-04-24T16:46:40.601-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Andy Paul</category><category domain="http://www.blogger.com/atom/ns#">XENServer</category><title>XenServer 5.6 Preview, Part 1: Dynamic Memory Control</title><description>By:Andy Paul&lt;br /&gt;
&lt;hr /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/_yUI-6_lDTwY/S9INjNSm-vI/AAAAAAAAASU/zkftkVMj0dM/s1600/Xen-garden.jpg" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 2em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_yUI-6_lDTwY/S9INjNSm-vI/AAAAAAAAASU/zkftkVMj0dM/s320/Xen-garden.jpg" tt="true" /&gt;&lt;/a&gt;&lt;/div&gt;
I've had the opportunity to work with the&lt;b&gt; XenServer 5.6 Beta &lt;/b&gt;and wanted to share a few of the new and improved features. With this latest release, Citrix XenServer is getting closer to the functionality of VMWare. I'm seeing more implementations of XenServer as it matures. Most of these implementations generally for new customers who do not have a virtualization initiatives or customers who are "Citrix shops." However, I do see more and more VMWare customers I work with who are adopting XenServer in parallel to their existing infrastructure.&lt;br /&gt;
&lt;br /&gt;
There is no denying that vSphere is the more mature and more robust product. Just like there is no denying that it is more expensive and can be more complex. I generally say that XenServer will get you 90% of the way there at a much lower price tag, and for most customers that is plenty. With these new updates, that margin of difference is decreasing.&lt;br /&gt;
&lt;div style="clear: both;"&gt;&lt;/div&gt;
&lt;span class="fullpost"&gt;
&lt;br /&gt;
XenServer 5.6 Beta includes a number of new features and ongoing improvements. The full list can be seen &lt;a href="http://www.citrix.com/lang/English/lp/lp_1340047.asp" target="_blank"&gt;here&lt;/a&gt;, but today, I want to focus on &lt;b&gt;Dynamic Memory Control&lt;/b&gt;. This is the feature that peaks the most interest of administrators.&lt;br /&gt;
&lt;span class="fullpost"&gt;&lt;br /&gt;Personally, I have never been a fan of over-allocating memory. Virtualization allows dynamic use of resources, but those resources are not limitless. However, there are times when you need to use overallocation, such as lab, PoC, and Test/Dev environments. Using the DMC in XenServer 5.6 through the XenCenter console is easy and intuitive. As you can see in the picture below, you can monitor the "big picture" of the host, as well as the individual impact on each VM -- so you really know how and where your memory is being used.&amp;nbsp; The first image below show the memory allocation without DMC configured (the host only has 4 GB of RAM); the second image shows the memory allocations after adjusting the memory ranges (the host is now over committed -118%)&lt;/span&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_Xbgwe0M0tXQ/S9HGN7D950I/AAAAAAAAAEE/POT0kJ8XHLw/s1600/DMC_Before.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="128" src="http://4.bp.blogspot.com/_Xbgwe0M0tXQ/S9HGN7D950I/AAAAAAAAAEE/POT0kJ8XHLw/s640/DMC_Before.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/_Xbgwe0M0tXQ/S9HGttbkx0I/AAAAAAAAAEM/kPlNE23zhuA/s1600/DMC_BigPicture.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="404" src="http://2.bp.blogspot.com/_Xbgwe0M0tXQ/S9HGttbkx0I/AAAAAAAAAEM/kPlNE23zhuA/s640/DMC_BigPicture.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span class="fullpost"&gt;&amp;nbsp;Note, the VMs are running in a variety of memory configurations:&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;XDPOCDDC VM is configured to run between 1024 and 2048 MB, the Guest OS (Win 2003) see 2048 available RAM&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;XDPOCWINXP1 was configured at 512 static, I modified it to range between 512 and 768.&amp;nbsp; Because it was not using DMC before this change, a reboot is required to complete the RAM increase&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;XDPOCWINXP2 was configured at 1024 static, I modified it to range between 768 and 1024.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;XDPOCWINXP3 is still configured for 512 static (min and max are the same value)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
Per Citrix -- &lt;i&gt;"Dynamic Memory Control. This feature can increase the number of VMs per host by permitting the memory utilization of existing VMs to be compressed so that additional VMs can boot on the host. Once VMs on that host are later shut down or migrated to other hosts, running VMs can reclaim unused physical host memory. Dynamic Memory Control is enabled by defining minimum and maximum memory settings for virtual machines."&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Basically, this is the over-commit VMWare has been long known for. Dynamic Memory Control (DMC) provides the following benefits:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;Memory can be added or removed without restarting the VM,&amp;nbsp; providing a seamless experience to the user.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;When host servers are full, DMC allows you to start more VMs on these servers, reducing the amount of memory allocated to the running VMs proportionally.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="fullpost"&gt;As memory requirements on the host change, DMC will auto-adjust the memory of running VMs, but will keep the memory within a range specified by the administrator.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
For each VM the administrator can set a &lt;b&gt;dynamic memory range&lt;/b&gt; - this is the range within which memory can be added/removed from the VM without requiring a reboot. When a VM is running the administrator can adjust the dynamic range. XenServer always guarantees to keep the amount of memory allocated to the VM within the dynamic range; therefore adjusting it while the VM is running may cause XenServer to adjust the amount of memory allocated to the VM.&amp;nbsp; &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_Xbgwe0M0tXQ/S9HH5Lek4gI/AAAAAAAAAEU/f67X3divjFs/s1600/DMC_Settings.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="212" src="http://4.bp.blogspot.com/_Xbgwe0M0tXQ/S9HH5Lek4gI/AAAAAAAAAEU/f67X3divjFs/s400/DMC_Settings.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
DMC allows you to configure dynamic minimum and maximum memory levels – creating a Dynamic Memory Range (DMR) that the VM will operate in. In XenCenter, this can be configure to a fixed memory, or a range.&amp;nbsp; The range can be defined manually or using the graphical tool to slide the setting points. This is analogous to Memory Reservations in VMWare.&lt;br /&gt;
&lt;hr /&gt;
&lt;b&gt;DMC Behavior: Automatic VM squeezing&lt;/b&gt;&lt;br /&gt;If a new VM is started on a XenServer with "full" memory already assigned the running VMs have their memory 'squeezed' to start new ones. The required extra memory is obtained by reducing the existing running VMs &lt;i&gt;&lt;b&gt;proportionally &lt;/b&gt;&lt;/i&gt;within their pre-defined dynamic ranges. Of course, if a VM is set to Fixed Memory and the Host is "full," the an "out of memory" failure will occur.&lt;br /&gt;&lt;br /&gt;When DMC is enabled, and the host's memory is plentiful, then all running VMs will receive their Dynamic Maximum Memory level. When a host's memory is scarce, all running VMs will receive their Dynamic Minimum Memory level (or close too it). Again, the memory sharing is proportional.&lt;br /&gt;
&lt;hr /&gt;
Please note, the Dynamic Memory Control requires a&lt;b&gt; Citrix Essentials for XenServer&lt;/b&gt; license. As of XenServer 5.6, this is centrally managed via the Citrix License Management Console. You can download XenServer 5.6 Beta as well as the require Essentials License files &lt;a href="https://www.citrix.com/English/ss/downloads/details.asp?downloadId=1863359&amp;amp;productId=683148#top" target="_blank"&gt;here&lt;/a&gt;&lt;i&gt; (MyCitrix Login is Required)&lt;/i&gt;.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/_Xbgwe0M0tXQ/S9HIfROV_SI/AAAAAAAAAEc/-dnYORVyNt4/s1600/XS_License.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="81" src="http://2.bp.blogspot.com/_Xbgwe0M0tXQ/S9HIfROV_SI/AAAAAAAAAEc/-dnYORVyNt4/s640/XS_License.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;b&gt;Next Installment: &lt;/b&gt;Role Based Security and XenCenter Changes
&lt;br&gt;
&lt;a href="http://www.thegenerationv.com/search/label/XENServer"&gt;&lt;img height="40" src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" /&gt;&lt;br /&gt;Read more about XenServer&lt;/a&gt; &lt;br /&gt;
&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-4751688616380788203?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oj57FzT9EabvkenuypzaxkMb1Do/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oj57FzT9EabvkenuypzaxkMb1Do/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oj57FzT9EabvkenuypzaxkMb1Do/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oj57FzT9EabvkenuypzaxkMb1Do/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=F0f8oqCW9sU:b4zXLora_zs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=F0f8oqCW9sU:b4zXLora_zs:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=F0f8oqCW9sU:b4zXLora_zs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=F0f8oqCW9sU:b4zXLora_zs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=F0f8oqCW9sU:b4zXLora_zs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=F0f8oqCW9sU:b4zXLora_zs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=F0f8oqCW9sU:b4zXLora_zs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=F0f8oqCW9sU:b4zXLora_zs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=F0f8oqCW9sU:b4zXLora_zs:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/F0f8oqCW9sU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/F0f8oqCW9sU/xenserver-56-preview-part-1-dynamic.html</link><author>noreply@blogger.com (Andy Paul)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_yUI-6_lDTwY/S9INjNSm-vI/AAAAAAAAASU/zkftkVMj0dM/s72-c/Xen-garden.jpg" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/04/xenserver-56-preview-part-1-dynamic.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-2741287132152478568</guid><pubDate>Thu, 25 Mar 2010 14:21:00 +0000</pubDate><atom:updated>2010-04-24T16:44:53.990-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Rik Hoffelder</category><category domain="http://www.blogger.com/atom/ns#">Provisioning Server</category><category domain="http://www.blogger.com/atom/ns#">SCVMM</category><category domain="http://www.blogger.com/atom/ns#">System Center</category><category domain="http://www.blogger.com/atom/ns#">Windows Server 2008</category><category domain="http://www.blogger.com/atom/ns#">Hyper-V</category><title>Learn XenDesktop 4 on Hyper-V 2.0 for Free!</title><description>By:Rik Hoffelder &lt;hr /&gt;&lt;a href="http://3.bp.blogspot.com/_VZSWCia6uOk/S6t0VKvZGRI/AAAAAAAAAC0/vnH75ITbkf8/s1600/vlabs_title.gif"&gt;&lt;img style="MARGIN: 0px 10px 10px 0px; WIDTH: 400px; FLOAT: left; HEIGHT: 66px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5452579680871323922" border="0" alt="" src="http://3.bp.blogspot.com/_VZSWCia6uOk/S6t0VKvZGRI/AAAAAAAAAC0/vnH75ITbkf8/s200/vlabs_title.gif" /&gt;&lt;/a&gt;Microsoft recently released a new lab as part of their TechNet Virtual Lab series that allows you to learn how to integrate Citrix XenDesktop 4 with Hyper-V 2.0. As regular readers of this site know, The Generation V has touted Citrix and Microsoft as “Better Together” for some time. This free 90 minute virtual lab will allow you to learn how these two products integrate and how easy it is to deploy and manage your VDI environment. You’ll see why we believe this.&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;The virtual lab walks you through System Center Virtual Machine Manager, Citrix Delivery Services, and Citrix Provisioning server. This coupled with a Hyper-V 2.0 virtualization platform makes for a solid operating and management infrastructure. What makes this even better is you have the opportunity to explore other aspects of these applications and services; you don’t have to follow the lab steps necessarily, although I strongly recommend it your first time through.&lt;br /&gt;&lt;br /&gt;You can access this &lt;a href="https://cmg.vlabcenter.com/default.aspx?moduleid=281742e3-2613-42da-bd58-2c3578f039b4"&gt;free lab here&lt;/a&gt;. Microsoft offers many other &lt;a href="http://technet.microsoft.com/en-us/virtuallabs/default.aspx"&gt;virtual labs&lt;/a&gt; on a wide range of products at no charge. Many labs are pre-configured for a specific situation, such as an Exchange migration, or SQL upgrade, while others a fully install and preconfigured giving you an opportunity to try a product without investing time in building your own lab. This is a great learning tool and it’s FREE! Yes there is a catch, isn’t that always the case? So what is it? Well the labs are time limited, after time expires it resets, but you can run them as often as you like. Did I mention it’s FREE? So, what are waiting for, browse on over and give one a try today!&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://www.thegenerationv.com/search/label/Hyper-V"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on Hyper-V&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-2741287132152478568?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/M9bUVlkBZ6htoKHM1GZRr7GQSFc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/M9bUVlkBZ6htoKHM1GZRr7GQSFc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/M9bUVlkBZ6htoKHM1GZRr7GQSFc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/M9bUVlkBZ6htoKHM1GZRr7GQSFc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=A2wbVuVPwdE:FJdFv7KgBwc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=A2wbVuVPwdE:FJdFv7KgBwc:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=A2wbVuVPwdE:FJdFv7KgBwc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=A2wbVuVPwdE:FJdFv7KgBwc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=A2wbVuVPwdE:FJdFv7KgBwc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=A2wbVuVPwdE:FJdFv7KgBwc:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=A2wbVuVPwdE:FJdFv7KgBwc:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=A2wbVuVPwdE:FJdFv7KgBwc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=A2wbVuVPwdE:FJdFv7KgBwc:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/A2wbVuVPwdE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/A2wbVuVPwdE/learn-xendesktop-4-on-hyper-v-20-for.html</link><author>noreply@blogger.com (Rik Hoffelder)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_VZSWCia6uOk/S6t0VKvZGRI/AAAAAAAAAC0/vnH75ITbkf8/s72-c/vlabs_title.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.thegenerationv.com/2010/03/learn-xendesktop-4-on-hyper-v-20-for.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-2239211677748824396</guid><pubDate>Tue, 23 Mar 2010 20:22:00 +0000</pubDate><atom:updated>2010-05-10T10:33:44.504-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Scripting</category><category domain="http://www.blogger.com/atom/ns#">Exchange 2003</category><category domain="http://www.blogger.com/atom/ns#">Rik Hoffelder</category><category domain="http://www.blogger.com/atom/ns#">Exchange 2010</category><category domain="http://www.blogger.com/atom/ns#">Exchange</category><title>Cross-Forest Migration with Exchange 2010 is a piece of cake!</title><description>By:Rik Hoffelder &lt;hr /&gt;&lt;a href="http://4.bp.blogspot.com/_VZSWCia6uOk/S6klMPZ8buI/AAAAAAAAACs/HRFhqeJUzbQ/s1600-h/cake.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 98px; height: 115px;" src="http://4.bp.blogspot.com/_VZSWCia6uOk/S6klMPZ8buI/AAAAAAAAACs/HRFhqeJUzbQ/s200/cake.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5451929716132703970" /&gt;&lt;/a&gt;&lt;strong&gt;Overview&lt;/strong&gt;&lt;br /&gt;It has been a while since I've posted anything new on The Generation V as I have been neck deep in projects. One of them involved a cross-forest Exchange migration as part of a larger AD migration. In this project the customer was migrating Exchange 2003 in Forest A to Exchange 2010 in Forest B and they needed to do it on a budget. In other words, no third party tools if at all possible. As the title suggests, with free tools from Microsoft and built-in features of Exchange 2010, it was remarkably easy.&lt;br /&gt;&lt;div style="clear: both;"&gt;&lt;/div&gt;Over the years Microsoft has added many tools, most free, to assist in numerous management and migration tasks. For this project I used the Active Directory Migration Tool 3.1, Exchange Sync from the Exchange 2003 toolkit, CVSDE, VBScripts, and PowerShell to perform all of the tasks. This saved the customer the many thousands of dollars third party software would have cost and not necessarily made the process any easier.&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;div style="clear: both;"&gt;&lt;/div&gt;I will not go into the specifics of the AD migration part of the project, just know that all user and group accounts were migrated using ADMT 3.1. I also did not use ILM 2007 FP1 SP1 to provide GAL sync as this wasn't necessary due to the relatively small size of the project (about 600 mailboxes) and the rarity of account/mailbox additions/changes/deletions in this environment during the co-existence period. Even in that case, creating new accounts or modifying DLs followed a document process I created that eliminated the need for GAL sync. I would suggest ILM for larger organizations and those that make many changes during co-existence.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Prepare Routing&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Prior to the Exchange migration, I had to establish a routing method to be used during the co-existence period between Exchange forests. This is necessary because both Exchange forests must be authorative for the primary SMTP namespace of customer.com. To do this I established a proxy address of ex2003.local for Exchange 2003 and ex2010.local for Exchange 2010.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I then added ex2010.local to the Accepted Domain Hub Transport organization configuration and added %m@ex2010.local as a proxy address to each affected E-mail Address Policy. Next I added the %m@ex2003.local proxy address to each Exchange 2003 Recipient Policy and selected the "This organization is responsible for delivery …" checkbox. All recipients were updated with the new policies.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Next I created SMTP connectors in each Exchange forest to forward to the other's proxy address space. For example the Exchange 2003 SMTP connector routes @ex2010.local to the Exchange 2010 forest and vice versa.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Prepare User Accounts&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;The Active Directory Migration Tool was used to migrate the Forest A user and group accounts into Forest B. (ADMT is also a free tool available from Microsoft's public download site &lt;a href="http://microsoft.com/downloads"&gt;http://microsoft.com/downloads&lt;/a&gt;). After the accounts were migrated I exported the displayName, samAccountName, mailNickname, and mail values for all mailbox-enabled users in Forest A using CSVDE as follows:&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 36pt"&gt;csvde -l displayName, samAccountName, mailNickname, mail -r "objectclass=user" &lt;span style="font-family:Verdana;font-size:8;"&gt;-f &lt;/span&gt;c:\2003_Mailboxes.csv&lt;br /&gt;&lt;/p&gt;&lt;p&gt;This was done to use these values to mail-enable each user account in Forest B. By mail-enabling (not mailbox-enable) the Exchange 2003 users now appear in the Exchange 2010 address book allowing migrated users to communicate with unmigrated users seamlessly, thus eliminating part of the need for ILM in this project.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Before mail-enabling the Forest B users I changed the domain portion of each e-mail address to ex2003.local to use as an input value for the bulk mail-enable process. I also renamed the field in the CSV file to match the input values I used in the Exchange Management Shell cmdlet. DisplayName was changed to Name, samAccountName was changed to Identity, mailNickname was changed to Alias, and mail was changed to EmailAddress. I then ran the following cmdlet to complete the update:&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 36pt"&gt;&lt;em&gt;Import-CSV C:\2003_Mailboxes.csv ForEach-Object –process {Enable-MailUser –Identity $_.Identity –Alias $_.Alias -EmailAddress $_.EmailAddress}&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;This would of course need to be manually updated for any new user accounts migrated over from Forest A.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The final step to prepare the users is run the Prepare-MoveRequest.PS1 script against the mail-enabled users. &lt;a href="http://technet.microsoft.com/en-us/library/ee861103.aspx"&gt;Prepare-MoveRequest.PS1&lt;/a&gt; is a script created by Microsoft that updates the Forest B mail-enabled user with the MsExchMailboxGUID attribute from Forest A. This value will be used by the New-MoveRequest cmdlet to match the source Exchange 2003 mailbox to a target 2010 user. This little free script along with the –RemoteLegacy switch in the New-MoveRequest cmdlet are the new features in Exchange 2010 that help eliminate the need for third party tools in all but the most complex of cross-forest migrations.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I ran the following cmdlets in 2010 EMS, reusing the 2003.Mailboxes.CSV from the previous step:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;$UserCredentials = Get-Credential&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 36pt"&gt;&lt;em&gt;Import-CSV C:\2003_Mailboxes.csv ForEach-Object –process {Prepare-MoveRequest.ps1 -Identity $_.Identity -RemoteForestDomainController ex03.ex2003.local -RemoteForestCredential $UserCredentials –UseLocalObject}&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;For those new to PowerShell in general, EMS in particular, the $UserCredentials = Get-Credential cmdlet will open a dialog box requesting to enter the credentials of an account in Forest A with rights to migrate the data from Exchange 2003. Enter the credentials accordingly or the migration will fail with an error message containing 0x80004005, which means access denied in the entire Microsoft world.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Prepare Distribution Groups&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Next I had to mail-enable the distribution groups migrated from Forest A. The ADMT will migrate the groups and group members as a group type of Distribution but it will not bring over Exchange attributes. This required two steps, first each migrated group had to be changed to a Universal group, as they were domain local or global groups in Forest A. Distribution Groups in Exchange 2007/2010 are Universal in scope as a result domain local or global groups cannot be mail-enabled. To do this I ran the following cmdlet in Exchange 2010 Management Shell:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;Import-CSV C:\groups.csv ForEach-Object –process {Set-Group –Identity &amp;amp;_.Name –Universal}&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;I then ran the following script to mail-enable the Universal groups.&lt;br /&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 36pt"&gt;&lt;em&gt;Import-CSV C:\groups.csv ForEach-Object –process {Enable-DistributionGroup =Identity &amp;amp;_.Name}&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;Now keep in mind that any new users created in Forest A and added to the Forest A version of this group, will become a member of the Forest B version of the group after the user account is migrated with the "Fix Group Memberships" option selected, thus negating the need for ILM.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Prepare Public Folders &amp;amp; Free/Busy&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;This migration occurred over a period of several weeks. Users were fully migrated to Forest B, meaning they were accessing Exchange 2003 from Forest B user credentials on workstations operating in the Forest B domain. After all users, groups, and workstations were migrated, I began the mailbox migration process.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;This company relies on Public Folder data in several areas to collaborate and share information. As a result I had to maintain both public folder and free/busy synchronization between Exchange forests for a period of time. To do this I used the good old Exchange &lt;a href="http://technet.microsoft.com/en-us/library/ee307369(EXCHG.80).aspx"&gt;Inter-Organization Replication Tool&lt;/a&gt;. At preset this tool is not designed for use with Exchange 2010, but version 6.5.7408 is supported with Exchange 2007. I thought what the heck there isn't that much difference in public folder functionality between 2007 and 2010 so I gave it a try … in my lab first of course. What do you know, the darn thing worked and it worked very well.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;To get it up and running I followed the steps outlined in this article: &lt;a href="http://technet.microsoft.com/en-us/library/ee307369(EXCHG.80).aspx"&gt;http://technet.microsoft.com/en-us/library/ee307369(EXCHG.80).aspx&lt;/a&gt;. It took a couple hours to get it fully functional in the customer environment, but it did the job very well and cost nothing but billable time! Hey I gotta eat too, right?&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Migrating the Mailboxes&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;This is another area where Exchange 2010 really shines. The New-MoveRequest cmdlet offers a command-line only switch –RemoteLegacy. This switch tells Move Request to migrate a mailbox from a different Exchange 2003 or 2007 forest. It uses the MsExchMailboxGUID to match the source 2003/2007 mailbox in the remote forest with the target mail-enabled user in the Exchange 2010 forest, which was established earlier using Prepare-MoveRequest.PS1.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;$UserCredentials = Get-Credential&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p style="MARGIN-LEFT: 36pt"&gt;&lt;em&gt;New-MoveRequest –Identity migtest1 -RemoteLegacy -TargetDatabase "Mailbox Database 1" -RemoteGlobalCatalog 'ex03.ex2003.local' -TargetDeliveryDomain 'ex2010.local' -RemoteCredential $UserCredentials&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;When the move request completes it converts the target mail-enabled user to a mailbox-enabled user. It then deletes the source mailbox and converts the user to mail-enabled. As part of that process it adds a proxy address of @ex2010.local as the primary SMTP allowing users on the legacy forest to see the migrated mailbox in the global address list.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Finally using a group policy object I created a VB Script based user logon that creates a new Outlook profile by using a PRF file. The script checks for the presence of a specific profile name, if it doesn't find it Outlook is launched with the PRF as follows:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Path\Outlook.EXE Path\Update.PRF&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;It's quick it's easy and the code I used was readily available through a simple Bing search.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Final Words&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;I don't exactly recommend this process for large scale migrations, but for those of you operating on a budget and can't afford 10+ USD per mailbox for a one time use tool; this is will get you by. It isn't perfect, but it worked well for this project.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://www.thegenerationv.com/search/label/Exchange"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on Exchange&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-2239211677748824396?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6xI732UMFry-kVVQFy6iJeLb0RI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6xI732UMFry-kVVQFy6iJeLb0RI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6xI732UMFry-kVVQFy6iJeLb0RI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6xI732UMFry-kVVQFy6iJeLb0RI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ydkt0wm67Ck:Ax2MmoMEa-k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ydkt0wm67Ck:Ax2MmoMEa-k:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ydkt0wm67Ck:Ax2MmoMEa-k:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ydkt0wm67Ck:Ax2MmoMEa-k:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=ydkt0wm67Ck:Ax2MmoMEa-k:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ydkt0wm67Ck:Ax2MmoMEa-k:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=ydkt0wm67Ck:Ax2MmoMEa-k:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ydkt0wm67Ck:Ax2MmoMEa-k:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=ydkt0wm67Ck:Ax2MmoMEa-k:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/ydkt0wm67Ck" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/ydkt0wm67Ck/cross-forest-migration-with-exchange_23.html</link><author>noreply@blogger.com (Rik Hoffelder)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_VZSWCia6uOk/S6klMPZ8buI/AAAAAAAAACs/HRFhqeJUzbQ/s72-c/cake.JPG" height="72" width="72" /><thr:total>27</thr:total><feedburner:origLink>http://www.thegenerationv.com/2010/03/cross-forest-migration-with-exchange_23.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-6861010598932370991</guid><pubDate>Thu, 04 Mar 2010 19:52:00 +0000</pubDate><atom:updated>2010-03-05T10:31:22.340-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Scott Lane</category><category domain="http://www.blogger.com/atom/ns#">Application Virtualization</category><category domain="http://www.blogger.com/atom/ns#">XENApp</category><category domain="http://www.blogger.com/atom/ns#">Citrix Reciever</category><title>Citrix and Microsoft:  Better together for “merchandising” applications</title><description>By:Scott E. Lane&lt;hr /&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/S5ERK70q9_I/AAAAAAAAASM/9FpS5g7mWIM/s1600-h/AppMerch.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 0em; margin-right: 1em;"&gt;&lt;img border="0" kt="true" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/S5ERK70q9_I/AAAAAAAAASM/9FpS5g7mWIM/s320/AppMerch.png" /&gt;&lt;/a&gt;
What exactly is application merchandising? It is a term that we will start hearing more and more about in the industry. Especially as desktop virtualization becomes more prevalent and application virtualization technologies continue to mature. We will also see more of a focus on this as companies start to leverage “bring your own PC initiatives”. This document is an overview of how Citrix and Microsoft are working together to enable easy, iTunes-like access to corporate issued applications that are delivered with different technologies.&lt;br /&gt;
&lt;a href="http://www.citrix.com/English/NE/news/news.asp?newsID=1855682" target="_blank"&gt;This News Article&lt;/a&gt; details a joint announcement between Citrix and Microsoft to extend the capabilities of Application Virtualization. This means that Citrix will add value to App-V in a similar manner to the way Citrix has for years added value to RDS or Terminal Services.&lt;br /&gt;
&lt;br /&gt;
&lt;span class="fullpost"&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
Overview&lt;hr&gt;
First off let me approach this from a very high level, and then I'll get specific about the moving pieces that make this all happen. Basically, you have three methods for placing applications inside of virtual desktops.&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Install the applications directly onto the base vdisk image that comprises the virtual desktops. This is less attractive because each time an application requires updates, the vdisk requires updates. However, it does afford a very fast launch for the user when the application icon is clicked. We typically see this for core system apps like anti-virus and the Citrix Receiver Framework (more on that in a moment). We also see it sometimes for apps that everyone has, like Adobe Reader and the corporate MS Office Standard.&lt;/li&gt;
&lt;li&gt;Stream the apps into the virtual desktop. This would be either XenApp streaming or MS App-V (hence the announcement). The bigger issue here is once we supply applications that aren't installed, how do we merchandise them to the users? I'll have more on that in a moment, but this is part of the bigger Citrix Microsoft partnership. The advantage of streaming these apps is that one vanilla desktop image can host a wide variety of applications for different user classes, depending upon who logs in. The application set dynamically assembles for the user upon logon to the VDI session. Additionally, even if you installed office into the base OS image, you can leverage streaming or application virtualization technologies for differing versions. For example, say you've standardized your company on Office 2007. But then someone says they have an old Access database on Office 97 and it won't convert. You can stream Access 97 to this user or group exclusively and it won't interfere with Office 07. This is true whether Office 07 is installed or streamed. We are able to do this because streaming, both in Citrix or MS App-V flavor places the application execution into isolation environments on the target. In this case the target being the virtual desktop. Management of streamed apps really helps with overall application delivery. That's because file shares, which Citrix calls App Hubs, hold single instance streaming profiles of each app to be delivered thru streaming. That means patching these apps doesn't require the VDI disk image to be modified. It also means that an app administrator can apply patches to the app image just once, replicate it to all "app hubs", and have the patch automatically be in place for all users. Application streaming can also enable offline usage of centralized apps. This is not pertinent to VDI approaches. But it is very useful for road warriors who carry laptops, and in the near future for our XenClient laptop hypervisor users.&lt;/li&gt;
&lt;li&gt;XenApp hosted approach. You are most familiar with this one, as most Citrix customers deliver apps this way. Its the application running on a XenApp server and showing up on a target. But in VDI, the target for XenApp hosted application is the virtual desktop itself. The reasons why this is chosen for delivery in a VDI world are varied. One would be that you already have applications set up and tuned for delivery in this method, and that it makes sense to continue using XenApp infrastructures in this manner. Also, it depends on the data tier location. For example if the VDI infrastructure is in Kansas City but the application backend itself resides somewhere far away, it would make sense to deliver the application with a XenApp hosted infrastructure located at the remote location where the application resides. Additionally, there are sometimes resource intensive applications that will cut into your VDI session per hypervisor host scalability. These apps are sometimes better off being delivered from a XenApp server where their resource needs can be better managed while keeping balanced in the hypervisor silos.&lt;/li&gt;
&lt;/ol&gt;
Delivery Framework&lt;hr&gt;
Okay, now I've described 3, and really 4 methods for placing applications inside virtual desktops. The "install on vdisk" option is pretty self explanatory. But when we choose the other methods, we suddenly end up with a bunch of clients, client interfaces, and client updates. The user suddenly has different methods to get their apps depending on how they are delivered. That's where Citrix comes into a partnership again with Microsoft with two new technologies, Receiver and Dazzle.&lt;br /&gt;&lt;br /&gt;Receiver is a client framework that you install on an endpoint, and in this case the base Vdisk of your VDI infrastructure. It is the "keeper of the clients" or what we now call plug-ins. Once receiver is in place it talks back to a virtual appliance, Merchandising Server.&lt;br /&gt;&lt;br /&gt;Merchandising Server runs as a small footprint on a XenServer back in the datacenter. Administrators install the plug-ins there, and configure which plug-ins (versions) are to be used. When the user logs into their VDI session the Receiver checks with the Merchandising Server. If there is a newer version of say the ICA Client (now called the Plug-in for Hosted Apps), the new version is automatically downloaded and made available for the user in the VDI session. Same is true for the Citrix streaming client (now called the Citrix offline plug-in). We'll do other plug-ins too from the Citrix side including the Password Manager Agent and the Access Gateway Secure Access Client (which doesn't apply in VDI, but its great for laptop users again, and XenClient users in the future). But here's the MS and Citrix marriage again, we'll also deliver the App-V streaming client thru Receiver, so that it’s always kept up to date.&lt;br /&gt;&lt;br /&gt;So now with of the plug-ins in place, we need one central place for users to get their apps. Typically users expect them to be on the Start Menu. But with so many varied ways to get applications into the virtual desktops, only the "hard installed into the vdisk" apps are showing in the Start menu. That's where Citrix Dazzle comes in. We call this delivery "merchandising" the applications, much like iTunes provides a self service store for music and video content. Dazzle is a self service store for application content.&lt;br /&gt;&lt;br /&gt;Dazzle can be pushed out and managed thru, you guessed it, the Citrix Receiver and Merchandising Server. Once I open Dazzle, I can pick and choose from all of the apps being made available to me. The sources can be App-V, Citrix Streaming, or Citrix Hosted. If I'm a road warrior who uses a laptop or XenClient, I am told if the application is available for offline use, and I can choose appropriately. Once I select my apps, they appear in the start menu. The user can then put icons on the desktop if they wish. File type association works.&lt;br /&gt;&lt;br /&gt;So there is one final piece to this simple puzzle. As you know, when I log off a VDI session, the pooled VM reboots and any changes made while the VM was running are thrown away. That means all of the icons for the apps that I selected, right? Not when profile management is in place. That's why Citrix has Profile Management. It’s a lot like roaming profiles, extending the base profile infrastructure that MS provides us. Profile Manager takes the user environment changes, like the desktop shortcuts and Start Menu changes, and migrates them off when the VDI session is logged off. When the user logs back in, perhaps to a completely different pooled VDI VM, the users profile settings are automatically applied. That means the icons are there for launch.&lt;br /&gt;&lt;br /&gt;So what if I need a new app, and I go into Dazzle and can't find it? In future releases we will include application requesting. When a user requests an app it will set off a workflow to get the request reviewed, and ultimately fulfilled if appropriate.&lt;br /&gt;&lt;br /&gt;So that's our vision, and after that explanation of how all of these pieces fit together, and what they do, where is Citrix with releasing these components. Here are the current releases, as of this writing, with the status of functionality.&lt;br /&gt;&lt;br /&gt;Citrix Receiver&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;Currently available, version 1.1&lt;/li&gt;
&lt;li&gt;App-V plug-in support is expected in future release&lt;/li&gt;
&lt;/ul&gt;
Receiver supports the following new plug-in releases:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Online plug-in 11.2 (XenApp Hosted)&lt;/li&gt;
&lt;li&gt;Offline plug-in 5.2 (XenApp Streaming)&lt;/li&gt;
&lt;li&gt;Service monitoring plug-in 5.1 (EdgeSight)&lt;/li&gt;
&lt;li&gt;Secure access plug-in 4.6.1 (Access Gateway)&lt;/li&gt;
&lt;li&gt;Dazzle Tech Preview&lt;/li&gt;
&lt;li&gt;Communications plug-in 3.0 (EasyCall)&lt;/li&gt;
&lt;li&gt;Profile Management plug-in 2.0&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;Citrix Merchandising Server&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;Currently available, version 1.2&lt;/li&gt;
&lt;li&gt;Must run on a XenServer as a virtual appliance&lt;/li&gt;
&lt;li&gt;Support for other hypervisor platforms expected in the future&lt;/li&gt;
&lt;li&gt;Manages the setup of Citrix Receiver component that is running in VDI desktops and mobile endpoints&lt;/li&gt;
&lt;li&gt;Enables "plug-ins" to support multiple types of delivery services&lt;/li&gt;
&lt;li&gt;Centralizes management of all updates&lt;/li&gt;
&lt;li&gt;Enables access to web-based user support services&lt;/li&gt;
&lt;li&gt;Offers robust management reporting feature&lt;/li&gt;
&lt;/ul&gt;
Citrix Dazzle&lt;br /&gt;&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;Currently available, version 1.1&lt;/li&gt;
&lt;/ul&gt;
This is basically a Tech Preview version, I have noticed the following issues/workarounds:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;This version is English only&lt;/li&gt;
&lt;li&gt;Launching Dazzle invokes an animated splash screen which requires Windows Media. For quicker launches, especially in VDI situations, this splash screen can be disabled by simply renaming the windows media source file&lt;/li&gt;
&lt;li&gt;This release doesn't inform users when certain streamed apps are not configured for their OS&lt;/li&gt;
&lt;li&gt;Pass thru authentication is not available yet. However, users can choose to have their credentials saved for subsequent launches.&lt;/li&gt;
&lt;li&gt;Receiver does not yet officially support App-V plug-ins, however, there is a documented way to deploy App-V plugins with the Merchandising Server. It is in tech preview right now. Dazzle can merchandise App-V apps, this being done as published content thru XenApp or a published app (which pulls the App-V package to the XenApp server and connects the user thru ICA). We will probably see more App-V options within the XenApp console itself in coming releases/feature packs.&lt;/li&gt;
&lt;/ul&gt;
Availability&lt;hr&gt;
So to answer a question you probably have by now, are we there yet? Well no, not quite. But I expect in the very near term we will have new releases.  &lt;a href="http://www.citrix.com/English/NE/news/news.asp?newsID=1855682%20is%20" target="_blank"&gt;This announcement&lt;/a&gt; is nearly 7 months old now. I know we have made significant progress in these areas, as it is a VERY high priority. I also know that internally at Citrix we have all of this working. Check out the attached video; My colleague at Citrix proves this is not vaporware, and note this video was recorded 7 months ago. 

&lt;object  id='CustomCTVPlayer773'  codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,47,0'  allowScriptAccess='always'  height='412'  width='486'  classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'&gt;  &lt;param value='http://www.citrix.com/tv/s/tv/players/ctv_viral_1_0.swf?ctv=773&amp;autoStart=false&amp;height=412&amp;width=486&amp;hd=false' name='movie' /&gt; &lt;param value='high' name='quality' /&gt; &lt;param value='#ffffff' name='bgcolor' /&gt; &lt;param value='always' name='allowScriptAccess' /&gt; &lt;param value='true' name='allowFullScreen' /&gt; &lt;param name='wmode' value='opaque'  /&gt; &lt;embed  name='CustomCTVPlayer773'  height='412'  width='486'  wmode='opaque'  align='middle'  pluginspage='http://www.adobe.com/go/getflashplayer'  type='application/x-shockwave-flash' allowScriptAccess='always'  allowFullScreen='true' bgcolor='#ffffff' quality='high'  src='http://www.citrix.com/tv/s/tv/players/ctv_viral_1_0.swf?ctv=773&amp;autoStart=false&amp;height=412&amp;width=486&amp;hd=false'&gt; &lt;/embed&gt;&lt;/object&gt;

&lt;div style="clear: both;"&gt;
&lt;/div&gt;

Following Kurt’s steps, I have actually pieced it together in a lab. Nothing official here, but we could see a full release of Dazzle with XenApp6 (Project Parra). Who knows? We may see more details on App V delivery. I honestly don’t know myself, as I’m not in Product Management. But I can assure you this tight Microsoft integration is a very high priority for Citrix, and we can expect the missing pieces to be in place very quickly. &lt;br /&gt;&lt;br /&gt;Keep your ear to the ground for timeframe announcements.

&lt;a href="http://www.thegenerationv.com/search/label/Application Virtualization"&gt;&lt;img height="40" src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" /&gt;&lt;br /&gt;Read Even MORE!!!&lt;/a&gt;

&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-6861010598932370991?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/w-ulnd8Es6qSqcMYsuhCB8zpipc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w-ulnd8Es6qSqcMYsuhCB8zpipc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/w-ulnd8Es6qSqcMYsuhCB8zpipc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w-ulnd8Es6qSqcMYsuhCB8zpipc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=Wd4OWrR2PU4:vFOtuuH6Sy8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=Wd4OWrR2PU4:vFOtuuH6Sy8:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=Wd4OWrR2PU4:vFOtuuH6Sy8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=Wd4OWrR2PU4:vFOtuuH6Sy8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=Wd4OWrR2PU4:vFOtuuH6Sy8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=Wd4OWrR2PU4:vFOtuuH6Sy8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=Wd4OWrR2PU4:vFOtuuH6Sy8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=Wd4OWrR2PU4:vFOtuuH6Sy8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=Wd4OWrR2PU4:vFOtuuH6Sy8:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/Wd4OWrR2PU4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/Wd4OWrR2PU4/citrix-and-microsoft-better-together.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_yUI-6_lDTwY/S5ERK70q9_I/AAAAAAAAASM/9FpS5g7mWIM/s72-c/AppMerch.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/03/citrix-and-microsoft-better-together.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-392015569489045756</guid><pubDate>Sat, 20 Feb 2010 05:29:00 +0000</pubDate><atom:updated>2010-04-23T17:35:37.589-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Andy Paul</category><category domain="http://www.blogger.com/atom/ns#">XENServer</category><category domain="http://www.blogger.com/atom/ns#">Provisioning Server</category><category domain="http://www.blogger.com/atom/ns#">Hyper-V</category><title>Direct Booting a VHD in XenServer</title><description>By:Andy Paul&lt;hr /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/S9IgUgHev2I/AAAAAAAAASc/6VKsmQ8TEBg/s1600/VirtualHardDisk2.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/S9IgUgHev2I/AAAAAAAAASc/6VKsmQ8TEBg/s320/VirtualHardDisk2.png" tt="true" /&gt;&lt;/a&gt;&lt;/div&gt;
Running XenServer, you may run into instances where you needed to directly mount and boot a VHD file in XenServer. I have encountered this several times, including migrating a virtual server from Hyper-V to XenServer as well as updating XenTools and Provisioning Tools for Citrix-based deployments.&lt;br /&gt;
&lt;br /&gt;

The following process will take you through preparing a storage repository in XenServer and importing your VHD file for direct boot.&lt;br /&gt;
&lt;div style="clear: both;"&gt;&lt;/div&gt;
&lt;span class="fullpost"&gt;

&lt;b&gt;PART I - Creating an EXT3 DRIVE&lt;/b&gt;&lt;br /&gt;
&lt;hr /&gt;
VHD files require an NFS or EXT3 formatted storage repository. The standard install of XenServer creates a local storage repository using LVM format. You can destroy this and create an EXT partition instead. In my XenServer farms where I am using shared storage, I like to create at least one host with an EXT drive for flexibility.&lt;br /&gt;&lt;i&gt;Please note, this will also destroy ANY VMs on that partition, so proceed with caution. &lt;/i&gt;&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Connect to your XenServer command line interface. You can use XenCenter for this, but I like to use &lt;a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank"&gt;PuTTY&lt;/a&gt; for the copy/paste and scroll features.&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Collect your necessary information:&lt;/li&gt;
&lt;br /&gt;
&lt;ol type="A"&gt;
&lt;li&gt;Find the default SR device ID (DEFAULT_SR_PHYSDEVS=) In a single disk system this should be /dev/sda3:&amp;nbsp; &lt;b&gt;# cat /etc/xensource-inventory &lt;/b&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Determine the UUID for your default SR: &lt;b&gt;# xe sr-list type=lvm&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Determine the UUID your default SRs PBD your default SR: &lt;b&gt;# xe pbd-list sr-uuid=your SR UUID &lt;/b&gt;&lt;i&gt;(from step 2b above)&lt;/i&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;in a multi-host pool, you want to make sure you reference to correct host.&amp;nbsp; You can find this results step 2a under the label INSTALLATION_UUID= or run the command: &lt;b&gt;# xe host-list&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/ol&gt;
&lt;ol&gt;
&lt;li value="3"&gt;Destroy the existing LVM partition:&lt;/li&gt;
&lt;br /&gt;
&lt;ol type="A"&gt;
&lt;li&gt;Disconnect the default SR: &lt;b&gt;# xe pbd-unplug uuid=your PBD UUID&lt;/b&gt; &lt;i&gt;(from 2c above)&lt;/i&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Remove the default SR: &lt;b&gt;# xe sr-destroy uuid=your SR UUID&lt;/b&gt; &lt;i&gt;(from 2b above)&lt;/i&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/ol&gt;
&lt;ol&gt;
&lt;li value="4"&gt;Create EXT partition&lt;/li&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;# xe sr-create content-type="Local SR" host-uuid=[YOUR HOST ID] type=ext device-config-device=[YOUR DEVICE] shared=false name-label=" Local EXT3"&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;u&gt;NOTE:&lt;/u&gt; &lt;/b&gt;This command takes a few minutes to run and will return the UUID of the new partion when complete.&amp;nbsp; Also, if you are on a single host system, you can tab after host-uuid= to poplate the host-id value&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Example Command:&lt;i&gt; &lt;b&gt;# xe sr-create content-type="local SR" host-uuid=0d1c9ba5-2304-46d9-8b75-459f41fb7f8a type=ext device-config-device=/dev/sda3 shared=false name-label="Local EXT3"&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ol&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_Xbgwe0M0tXQ/S39viFraDgI/AAAAAAAAADk/wp3Xg3QNlYA/s1600-h/putty_cmds2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="468" src="http://4.bp.blogspot.com/_Xbgwe0M0tXQ/S39viFraDgI/AAAAAAAAADk/wp3Xg3QNlYA/s640/putty_cmds2.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;b&gt;YOUR NEW SR IS READY TO USE AND SHOULD APPEAR IN XENCENTER&lt;/b&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/_Xbgwe0M0tXQ/S39yxo0rAyI/AAAAAAAAAD8/uuFLRPXxOUI/s1600-h/xs+Changes.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="130" src="http://3.bp.blogspot.com/_Xbgwe0M0tXQ/S39yxo0rAyI/AAAAAAAAAD8/uuFLRPXxOUI/s400/xs+Changes.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;However, if you need to define a default SR, such as in a single host / single drive system, use the following:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Set the default SR: &lt;b&gt;# xe pool-param-set default-SR=YOUR NEW SR UUID uuid=&lt;/b&gt;xxxxxxxx&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Set your SR as the default location for suspended VM images: &lt;b&gt;# xe pool-param-set suspend-image-SR= YOUR NEW SR UUID uuid=&lt;/b&gt;xxxxxxxxxx&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;b&gt;PART II - COPYING VHD FILES TO XENSERVER&lt;/b&gt;&lt;br /&gt;
&lt;hr /&gt;
&lt;ol&gt;
&lt;li&gt;Connect to your target XenServer with an SCP Utility to copy the files. I have used &lt;a href="http://winscp.net/eng/index.php" target="_blank"&gt;WinSCP&lt;/a&gt; with good results.&lt;/li&gt;
&lt;li&gt;Copy to /var/run/sr-mount/[uuid of ext3 SR create in Part 1]&amp;nbsp;&lt;/li&gt;
&lt;li&gt;If using explorer mode of WinSCP, you can drag and drop your files to initiate the copy&lt;/li&gt;
&lt;/ol&gt;
&lt;i&gt;&lt;b&gt;IMPORTANT NOTE: &lt;/b&gt;MAKE SURE YOU COPY YOUR FILES TO THE &lt;a href="http://sbcengine.blogspot.com/2010/02/recovering-from-xenserver-root-drive.html" target="_blank"&gt;CORRECT PARTITION&lt;/a&gt;!!!! (not the Root!)&lt;/i&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/_Xbgwe0M0tXQ/S39we_BRX0I/AAAAAAAAADs/8AwtlZ3cywg/s1600-h/ext3_sr.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="231" src="http://2.bp.blogspot.com/_Xbgwe0M0tXQ/S39we_BRX0I/AAAAAAAAADs/8AwtlZ3cywg/s400/ext3_sr.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;hr /&gt;
&lt;b&gt;PART III - DIRECT MOUNTING&lt;/b&gt;&lt;br /&gt;
&lt;hr /&gt;
&lt;ol&gt;
&lt;li&gt;In XenCenter, create a new VM with setting similar to the configuration of the VHD you copied over.&amp;nbsp; &lt;i&gt;&lt;b&gt;DO NOT POWER ON THIS VM&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;Using your SSH utility, note the name (UUID) of the new VHD file created by the wizard.&lt;/li&gt;
&lt;li&gt;Delete this file (UUID.VHD)&lt;/li&gt;
&lt;li&gt;rename your target VHD to this UUID name&lt;/li&gt;
&lt;li&gt;Power on your machine... and if everything goes right, VIOLA!&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/_Xbgwe0M0tXQ/S39wrCnZaNI/AAAAAAAAAD0/P1o0UypSTMM/s1600-h/transfer_vhd.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="141" src="http://3.bp.blogspot.com/_Xbgwe0M0tXQ/S39wrCnZaNI/AAAAAAAAAD0/P1o0UypSTMM/s400/transfer_vhd.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
Your VHD is now imported and locally mounted.&amp;nbsp; Once you power on the VM, you can update drivers, files, etc. If you plan on provisioning this server, connect a new blank vDisk and use XenConvert to capture an updated image. If you have enough storage space, I recommend keeping this image on the server for future updates/captures.&lt;br /&gt;
&lt;hr /&gt;
&lt;b&gt;Additional Reading:&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.thegenerationv.com/2010/02/using-hyper-v-for-pvs-vdisk-offline.html" target="_blank"&gt;Using Hyper-V for PVS vDisk Offline Maintenance&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.thegenerationv.com/2009/12/upgrading-provisioning-services-vdisks.html" target="_blank"&gt;Upgrading Provisioning Services vDisks...&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://community.citrix.com/display/ocb/2009/08/15/PVS+5.1+Direct+VHD+Boot+using+XenServer" target="_blank"&gt;PVS 5.1 Direct VHD Boot using XenServer&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-392015569489045756?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/v3c8lXlpARuum8WnDjKrEbk258k/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/v3c8lXlpARuum8WnDjKrEbk258k/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/v3c8lXlpARuum8WnDjKrEbk258k/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/v3c8lXlpARuum8WnDjKrEbk258k/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=zlG3dSqcSYA:zfIyn2y8l8o:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=zlG3dSqcSYA:zfIyn2y8l8o:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=zlG3dSqcSYA:zfIyn2y8l8o:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=zlG3dSqcSYA:zfIyn2y8l8o:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=zlG3dSqcSYA:zfIyn2y8l8o:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=zlG3dSqcSYA:zfIyn2y8l8o:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=zlG3dSqcSYA:zfIyn2y8l8o:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=zlG3dSqcSYA:zfIyn2y8l8o:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=zlG3dSqcSYA:zfIyn2y8l8o:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/zlG3dSqcSYA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/zlG3dSqcSYA/direct-booting-vhd-in-xenserver.html</link><author>noreply@blogger.com (Andy Paul)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_yUI-6_lDTwY/S9IgUgHev2I/AAAAAAAAASc/6VKsmQ8TEBg/s72-c/VirtualHardDisk2.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/02/direct-booting-vhd-in-xenserver.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-832869179272147825</guid><pubDate>Mon, 08 Feb 2010 06:35:00 +0000</pubDate><atom:updated>2010-02-09T19:09:35.177-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Provisioning Server</category><category domain="http://www.blogger.com/atom/ns#">Rick Rohne</category><category domain="http://www.blogger.com/atom/ns#">Hyper-V</category><title>Using Hyper-V for PVS VDisk Offline Maintenance</title><description>By:Rick Rohne&lt;br /&gt;
&lt;hr /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/S2-w_Opn8NI/AAAAAAAAASE/FDSclvBJ8pQ/s1600-h/computeronnet.jpg" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 0em; margin-right: 1em;"&gt;&lt;img border="0" kt="true" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/S2-w_Opn8NI/AAAAAAAAASE/FDSclvBJ8pQ/s320/computeronnet.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
I’ve recently been toying with the idea of using Microsoft Hyper-V to perform offline maintenance of my Provisioning Server VDisks. Furthermore, I’ve discovered that it is very possible to install the Hyper-V role directly on the PVS server or servers in your production environment. &lt;span class="fullpost"&gt;&lt;br /&gt;
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;br /&gt;
While this may not be the best solution for all deployments, I have found that installing the hyper-V role directly on the PVS server saves a lot of time when having to perform tasks such as updating PVS target device software, Anti-Virus software that modifies the network stack, or updating physical computer network drivers.&lt;br /&gt;
This blog hosted on the Citrix Blog site shows exactly how to use Hyper-V to update your Vdisk images. Be sure to follow these instructions to the “T”.. &lt;a href="http://community.citrix.com/display/ocb/2009/07/28/New+Way+to+Upgrade+with+PVS+5.1+and+HyperV" target="_blank"&gt;Using Hyper-V to update Offline vDisks&lt;/a&gt; , and since the best way to get super performance out of your PVS server is to run it on a Windows Server 2008 x64 box, it just makes sense to use the same server to run the hyper-v role. &lt;br /&gt;
&lt;br /&gt;
If you choose to do this, I strongly suggest adding a new directory outside of your PVS store to perform the offline maintenance. You may also choose to keep the Hyper-V services stopped when you are not using them, and finally, create a dedicated network on the Hyper-V host (maybe your management network) to assign your external network to your VM’s. Although these steps are not necessary, it will ensure that your hyper-V services never interfere with your PVS services.&lt;br /&gt;
&lt;br /&gt;
I would like to know if anyone else is doing this, I currently have one production deployment and my own lab running this scenario and it really does seem to work great.
&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-832869179272147825?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/34igtuPEtqSifm9zewKE3mnG5To/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/34igtuPEtqSifm9zewKE3mnG5To/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/34igtuPEtqSifm9zewKE3mnG5To/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/34igtuPEtqSifm9zewKE3mnG5To/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=IBWD74z3q7E:T1vSrbLShb8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=IBWD74z3q7E:T1vSrbLShb8:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=IBWD74z3q7E:T1vSrbLShb8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=IBWD74z3q7E:T1vSrbLShb8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=IBWD74z3q7E:T1vSrbLShb8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=IBWD74z3q7E:T1vSrbLShb8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=IBWD74z3q7E:T1vSrbLShb8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=IBWD74z3q7E:T1vSrbLShb8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=IBWD74z3q7E:T1vSrbLShb8:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/IBWD74z3q7E" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/IBWD74z3q7E/using-hyper-v-for-pvs-vdisk-offline.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_yUI-6_lDTwY/S2-w_Opn8NI/AAAAAAAAASE/FDSclvBJ8pQ/s72-c/computeronnet.jpg" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/02/using-hyper-v-for-pvs-vdisk-offline.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-4774062663557663839</guid><pubDate>Thu, 14 Jan 2010 05:20:00 +0000</pubDate><atom:updated>2010-01-13T23:56:58.446-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">XENServer</category><category domain="http://www.blogger.com/atom/ns#">Rick Rohne</category><title>Agentless backup for Citrix XenServer VM's</title><description>By:Rick Rohne&lt;hr /&gt;
&lt;a href="http://www.thegenerationv.com/" imageanchor="0" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 3em;"&gt;&lt;img border="0" ps="true" src="http://4.bp.blogspot.com/_yUI-6_lDTwY/S06r7vS9CqI/AAAAAAAAAR8/faTzWqCjJJ8/s320/XEN.jpg" /&gt;&lt;/a&gt;One of the great things about Virtualization is the ability to take quick snapshots of your XENServer VM’s so that you have a restore point to go back to at any time; however, keeping snapshots in your XENServer Storage Repositories is not always the answer to a good solid disaster recovery plan. &lt;br /&gt; Take a look at this product which performs automated online snapshots and archives of your XenServer VM's.
&lt;div style="clear: both;"&gt;
&lt;/div&gt;
&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;strong&gt;There is always a free way for everything&lt;/strong&gt;&lt;br /&gt;
&lt;hr /&gt;
You can use the XENAPI to perform automated snapshots and even schedule this on a Windows Server, you can even go so far as to archive these images off using SSH etc. But anytime scripting is involved, you have to take into account the changes, additions, and deletions of VM’s in your environment. You can learn more about automating XENServer backups using the XENAPI on the Citrix XENServer Codeshare site &lt;a href="http://community.citrix.com/cdn/xs/codeshare" target="_blank"&gt;http://community.citrix.com/cdn/xs/codeshare&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Alike (Agentless Snapshots) &lt;/strong&gt;&lt;a href="http://www.quorumsoft.com/" target="_blank"&gt;http://www.quorumsoft.com/&lt;/a&gt;&lt;br /&gt;
&lt;hr /&gt;
I’ve been using Alike to perform automated snapshots and backups of the VM’s in my lab since it first came out of BETA. Alike is a Citrix Ready product that can perform an agentless snapshot and download of your XenServer VM’s to the servers Disk. This may seem trivial, however, Alike actually performs De-duplication of the snapshots and provides an easy to use interface that allows you to schedule a backup job and perform restores without any downtime. &lt;br /&gt;Take a look at some of the key features of Alike:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Data Deduplication - Performs block-level data deduplication across all VMs backed up&lt;/li&gt;
&lt;li&gt;Friendly UI - This easy-to-use User Interface will get you backing up quickly&lt;/li&gt;
&lt;li&gt;XenServer Integration -&amp;nbsp;Leverages XenServer snapshots to capture guest VM state. Recomended XenServer 5.5&lt;/li&gt;
&lt;li&gt;Pool Support - Alike is pool-aware and can back up guests deployed to a XenServer storage pool&lt;/li&gt;
&lt;li&gt;Quiesce Support - Quiesced snapshots are supported in XenServer 5.5&lt;/li&gt;
&lt;li&gt;Supported Storage Repositories (SRs) - Alike Supports any SR in XenServer 5.5&lt;/li&gt;
&lt;li&gt;Point-in-time restore - Versions each snapshot that is backed up&lt;/li&gt;
&lt;li&gt;Syslog integration - Logging can be sent to a syslog server email/paging notifications&lt;/li&gt;
&lt;li&gt;Flexible Scheduling - Jobs can be scheduled daily, weekly, or monthly; may be configured for multiple runs per day&lt;/li&gt;
&lt;/ul&gt;
&lt;strong&gt;How Alike Works&lt;/strong&gt;&lt;hr /&gt;
1. The Alike scheduler service launches a Job and connects to the appropriate XenServer host.&lt;br /&gt;
2. A snapshot of the Virtual Machine (with or without Quiescence) is created.&lt;br /&gt;
3. The snapshot image is exported to the temporary work area in an XVA format.&lt;br /&gt;
4. Guest image white space is eliminated, then downloaded and processed (deduplicated, compressed and encrypted).&lt;br /&gt;
5. Only delta data is vaulted to the storage repository for permanent storage.&lt;br /&gt;6. The backup is now complete and resides safely on disk. &lt;br /&gt;

&lt;p&gt;&lt;/p&gt;Now if that’s not enough, here’s an excellent video that pretty much tells you the rest of my story:&lt;br /&gt;
&lt;p&gt;&lt;/p&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/2BOM3hmEjN8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en_US&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;



&lt;/param&gt;
&lt;param name="allowFullScreen" value="true"&gt;



&lt;/param&gt;
&lt;param name="allowScriptAccess" value="always"&gt;



&lt;/param&gt;
&lt;embed src="http://www.youtube.com/v/2BOM3hmEjN8&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en_US&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Keep in mind, however, that even if you are taking snapshots of your VM’s, it is still a good practice to also perform a nightly agent backup of the data that is within the VM. By using both technologies, you can perform an easy restore of your XenServer VM’s so that all the applications and server settings are restored as well as get all the data since the last daily or hourly backup.&lt;br /&gt;
&lt;p&gt;&lt;/p&gt;
&lt;strong&gt;My experiences&lt;/strong&gt;&lt;hr /&gt;
1. It's much faster than scripting.&lt;br /&gt;
2. Works with Citrix Storagelink technology (Netapp storage).&lt;br /&gt;
3. New VM's can be automatically added to the Backups.&lt;br /&gt;
4. You can even clean up the old snapshots.&lt;br /&gt;
5. It would be nice if it worked with XenServer Tags to automate scheduling.&lt;br /&gt;
6. I'm hoping it works with Hyper-V and other Virtualization software soon. &lt;/br&gt;
&lt;p&gt;&lt;/p&gt;
&lt;br /&gt;For more information on Alike and to get updated pricing, visit their website at &lt;a href="http://www.quorumsoft.com/" target="_blank"&gt;http://www.quorumsoft.com/&lt;/a&gt; &lt;br /&gt;&lt;p&gt;&lt;/p&gt;
&lt;a href="http://www.thegenerationv.com/search/label/XENServer"&gt;&lt;img height="40" src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" /&gt;&lt;br /&gt;Read about other products that work with XenServer&lt;/a&gt; &lt;br /&gt;
&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-4774062663557663839?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/tTbPoiIxrGM0wWNrIXiVvAzqWys/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/tTbPoiIxrGM0wWNrIXiVvAzqWys/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/tTbPoiIxrGM0wWNrIXiVvAzqWys/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/tTbPoiIxrGM0wWNrIXiVvAzqWys/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=UYhfoB8S0ME:MbrCcXUiReY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=UYhfoB8S0ME:MbrCcXUiReY:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=UYhfoB8S0ME:MbrCcXUiReY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=UYhfoB8S0ME:MbrCcXUiReY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=UYhfoB8S0ME:MbrCcXUiReY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=UYhfoB8S0ME:MbrCcXUiReY:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=UYhfoB8S0ME:MbrCcXUiReY:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=UYhfoB8S0ME:MbrCcXUiReY:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=UYhfoB8S0ME:MbrCcXUiReY:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/UYhfoB8S0ME" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/UYhfoB8S0ME/agentless-backup-for-citrix-xenserver.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_yUI-6_lDTwY/S06r7vS9CqI/AAAAAAAAAR8/faTzWqCjJJ8/s72-c/XEN.jpg" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/01/agentless-backup-for-citrix-xenserver.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-7943413075618388962</guid><pubDate>Wed, 13 Jan 2010 00:01:00 +0000</pubDate><atom:updated>2010-03-05T10:31:58.094-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Scott Lane</category><category domain="http://www.blogger.com/atom/ns#">XENDesktop</category><category domain="http://www.blogger.com/atom/ns#">XENServer</category><category domain="http://www.blogger.com/atom/ns#">VDI</category><title>Citrix Desktop Virtualization</title><description>By:Rick Rohne / Video by Scott Lane&lt;hr /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://www.thegenerationv.com/2010/01/citrix-desktop-virtualization.html" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/S00OaFURdhI/AAAAAAAAARk/94qxe_ykwDQ/s320/Video.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
In this video, Scott Lane gives a very well driven presentation of the Citrix Desktop Virtualization solution. He has a good focus on the user experience, along with nice coverage of all the things you will be concerned about in a typical vdi environment. Great one to share with the boss if you are considering a VDI solution!&lt;br /&gt;
&lt;table border="1"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;HDX&lt;br /&gt;
&lt;/td&gt;&lt;td&gt;  XENServer  &lt;br /&gt;
&lt;/td&gt;&lt;td&gt;  XENDesktop  &lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt; Dazzle  &lt;br /&gt;
&lt;/td&gt;&lt;td&gt;  XD Setup tool  &lt;br /&gt;
&lt;/td&gt;&lt;td&gt;  Provisioning Server  &lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;span class="fullpost"&gt;&lt;br /&gt;
&lt;p&gt;

&lt;object allowscriptaccess="always" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,47,0" height="412" id="CustomCTVPlayer1607" width="486"&gt;  &lt;param value='http://www.citrix.com/tv/s/tv/players/ctv_viral_1_0.swf?ctv=1607&amp;autoStart=false&amp;height=412&amp;width=486&amp;hd=false' name='movie' /&gt;
 &lt;param value='high' name='quality' /&gt;
 &lt;param value='#ffffff' name='bgcolor' /&gt;
 &lt;param value='always' name='allowScriptAccess' /&gt;
 &lt;param value='true' name='allowFullScreen' /&gt;
 &lt;param name='wmode' value='opaque'  /&gt;
 &lt;embed  name='CustomCTVPlayer1607'  height='412'  width='486'  wmode='opaque'  align='middle'  pluginspage='http://www.adobe.com/go/getflashplayer'  type='application/x-shockwave-flash' allowScriptAccess='always'  allowFullScreen='true' bgcolor='#ffffff' quality='high'  src='http://www.citrix.com/tv/s/tv/players/ctv_viral_1_0.swf?ctv=1607&amp;autoStart=true&amp;height=412&amp;width=486&amp;hd=false'&gt; &lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;p&gt;
&lt;a href="http://www.thegenerationv.com/search/label/XENDesktop"&gt;&lt;img height="40" src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" /&gt;&lt;br /&gt;More Information on XENDesktop...  Check it out!&lt;/a&gt;

&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-7943413075618388962?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DWnbREb-bo5pjnun0asWSv4STWQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DWnbREb-bo5pjnun0asWSv4STWQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DWnbREb-bo5pjnun0asWSv4STWQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DWnbREb-bo5pjnun0asWSv4STWQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4Tg-8m02v1k:azPgQJhmyT8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4Tg-8m02v1k:azPgQJhmyT8:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4Tg-8m02v1k:azPgQJhmyT8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4Tg-8m02v1k:azPgQJhmyT8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=4Tg-8m02v1k:azPgQJhmyT8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4Tg-8m02v1k:azPgQJhmyT8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=4Tg-8m02v1k:azPgQJhmyT8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4Tg-8m02v1k:azPgQJhmyT8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=4Tg-8m02v1k:azPgQJhmyT8:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/4Tg-8m02v1k" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/4Tg-8m02v1k/citrix-desktop-virtualization.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_yUI-6_lDTwY/S00OaFURdhI/AAAAAAAAARk/94qxe_ykwDQ/s72-c/Video.jpg" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2010/01/citrix-desktop-virtualization.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-1829253324375725366</guid><pubDate>Wed, 23 Dec 2009 01:20:00 +0000</pubDate><atom:updated>2010-01-13T19:26:16.358-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Netscaler</category><category domain="http://www.blogger.com/atom/ns#">VPX</category><category domain="http://www.blogger.com/atom/ns#">Rick Davis</category><title>NetScaler MPX vs. VPX - The finer differences</title><description>By:Rick Davis&lt;hr /&gt;&lt;a href="http://www.thegenerationv.com" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 0em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://atna5w.bay.livefilestore.com/y1p6SmRp3vCS3YdGWaWgeHdDC23keS3Q95WYA0yrAgiu1Dochbr9Ms0K-F-8Zmr0F0DG5qQ7BQn9ogkel4-9C6KvHMuqYEj9rXY/gears.jpg" /&gt;&lt;/a&gt;The NetScaler VPX virtual appliance has some decisive differences from its MPX hardware counterparts.  While the performance differences are well documented, some of the finer points are a bit obscure and not readily discoverable.   While none of them are likely to be show stoppers, it’s important to be familiar with the limitations.&lt;br /&gt;&lt;br /&gt;&lt;div style="clear: both"&gt;&lt;/div&gt;&lt;div&gt;Here’s a short table I’ve assembled describing the impact of the hypervisor on the NetScaler virtual appliance as compared to the network stack of the MPX:
&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0"  style="border-collapse:collapse;border:none;mso-border-alt:solid black .5pt;  mso-border-thememso-yfti-tbllook:1184;mso-padding-alt:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;  &lt;tbody&gt;&lt;tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes"&gt;   &lt;td width="173" valign="top"  style="width:1.8in;border:solid black 1.0pt;   mso-border-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;b&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;MPX&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="319" valign="top"  style="width:239.4pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-left:none;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;b&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;VPX&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="173" valign="top"  style="width:1.8in;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;Native 802.1q VLAN Tagging&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="319" valign="top"  style="width:239.4pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;Tagging is defined on the hypervisor. &lt;span&gt; &lt;/span&gt;XenServer is limited to 7 tagged networks and   16 on VMware.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="173" valign="top"  style="width:1.8in;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;Native 802.3ad Link Aggregation&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="319" valign="top"  style="width:239.4pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;802.3ad is not supported by XenServer.&lt;span&gt;  &lt;/span&gt;&lt;/span&gt;Source Level Balancing (SLB) NIC   bonding is the closest parallel and offers NIC redundancy with great   performance.&lt;span&gt;  &lt;/span&gt;But not all switches work   well with SLB so be sure to test under load, plug both links into a single   switch, or skip SLB entirely in favor of native NetScaler device failover.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="173" valign="top"  style="width:1.8in;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;Device Fail-over&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="319" valign="top"  style="width:239.4pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;Failover is supported between VPX   devices through NetScaler's native redundancy mechanism.&lt;span&gt;  So there's no need for &lt;/span&gt;XenMotion or VMotion support with the VPX.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style="mso-yfti-irow:4;mso-yfti-lastrow:yes"&gt;   &lt;td width="173" valign="top"  style="width:1.8in;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;Dedicated SSL Chipset&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="319" valign="top"  style="width:239.4pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themepadding:0in 5.4pt 0in 5.4ptcolor:text1;"&gt;   &lt;p class="MsoNormal" style="margin-bottom:0in;margin-bottom:.0001pt;line-height:   normal"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;span style="font-family:Calibri;"&gt;No SSL chipsets are available to the   VPX, but none the less, it is capable of 300 3DES and 1000 RC4 sessions.&lt;span&gt;  &lt;/span&gt;At double the VPN capacity, VPX makes a great   upgrade path from Secure Gateway by providing a full SSL-VPN, Smart   Access, and improved security.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="fullpost"&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;b&gt;Licensing Changes in VPX 9.1 Build 100.3: &lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="fullpost"&gt;&lt;span&gt;&lt;span&gt;For VPX appliances only, the 9.1_100.3 license software will check the MAC address of the FIRST INTERFACE listed.  In previous builds, the license software checked the MAC address of the NEWEST INTERFACE.  For VPX customers who upgrade to 9.1_100.3, this change will invalidate licenses on VMs which had more than one interface.  They will need to revisit MyCitrix.com licensing portal to re-host their license. &lt;a href="http://support.citrix.com/article/ctx122426"&gt;CTX122426 - NetScaler VPX Licensing Guide&lt;/a&gt; has been updated with the rehosting instructions.&lt;br /&gt;&lt;br /&gt;VPX owners are allowed to relicense their VPX system up to 3 times. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="fullpost"&gt;&lt;span&gt;&lt;span&gt;&lt;b&gt;References:&lt;/b&gt;  &lt;a href="http://support.citrix.com/servlet/KbServlet/download/20636-102-641906/XenServer-5.5.0-Update1-reference.pdf"&gt;XenServer Administrator's Guide: Chapter 4, Networking&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-1829253324375725366?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/WG4I4JCWsvjPuUbXN1fEZcA0wk0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WG4I4JCWsvjPuUbXN1fEZcA0wk0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/WG4I4JCWsvjPuUbXN1fEZcA0wk0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WG4I4JCWsvjPuUbXN1fEZcA0wk0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=FFh_uB8ZN04:TGDm6tJ7qMo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=FFh_uB8ZN04:TGDm6tJ7qMo:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=FFh_uB8ZN04:TGDm6tJ7qMo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=FFh_uB8ZN04:TGDm6tJ7qMo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=FFh_uB8ZN04:TGDm6tJ7qMo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=FFh_uB8ZN04:TGDm6tJ7qMo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=FFh_uB8ZN04:TGDm6tJ7qMo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=FFh_uB8ZN04:TGDm6tJ7qMo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=FFh_uB8ZN04:TGDm6tJ7qMo:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/FFh_uB8ZN04" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/FFh_uB8ZN04/netscaler-mpx-vs-vpx-finer-differences.html</link><author>noreply@blogger.com (Rick Davis)</author><feedburner:origLink>http://www.thegenerationv.com/2009/12/netscaler-mpx-vs-vpx-finer-differences.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4905178565969126651.post-3683645909886894415</guid><pubDate>Sun, 13 Dec 2009 05:24:00 +0000</pubDate><atom:updated>2009-12-17T21:55:16.676-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Netscaler</category><category domain="http://www.blogger.com/atom/ns#">Rick Rohne</category><category domain="http://www.blogger.com/atom/ns#">Command Center</category><title>Citrix Command Center Basics with Netscaler</title><description>By:Rick Rohne&lt;hr /&gt;&lt;a href="http://www.thegenerationv.com" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 0em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://atna5w.bay.livefilestore.com/y1pszpNVlq9pLREUcUI2l0XYSUvLuRA8AkCEWj9DCo6vicD_7XUHm6fMCvEo3GBHqco4ssjM0UXKg2gDXvFECNM4cXvv4G2Uozy/growingtrend.png" /&gt;&lt;/a&gt;
&lt;p&gt;If you have been working with Citrix Netscaler, VPX, Access Gateway Enterprise, Application Firewall, or Brach Repeater you are probably interested in ways to collect statistics, reports, and alerts for all your Application Networking devices… Citrix Command Center is just the tool to use, and when configured right, you can get a deep understanding of how your devices are operating in the field. Here, I’m going to go over some of the basic Command Center setup tasks to get you on your way to total knowledge of your Application Networking Infrastructure.&lt;/p&gt;&lt;br /&gt;
&lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;span class="fullpost"&gt;

&lt;P&gt;
Citrix Command Center is an SSH and SNMP monitoring station that also triples as Config Archiving and mission control center for all of Citrix’s Application Networking gear (both physical and virtual). You can use it to build graphs and receive alerts on system usage and individual entity usage. You can also use it to upload batched commands or transfer configs from development to production. Best of all, it’s included with your purchase of Netscaler Enterprise, Application Firewall, Access Gateway Enterprise, or Branch Repeater. &lt;/p&gt;
&lt;br/&gt;&lt;p&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/_yUI-6_lDTwY/SyR3OyglIDI/AAAAAAAAAQ8/MtrYQ0fmDwk/s1600-h/Overview.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://3.bp.blogspot.com/_yUI-6_lDTwY/SyR3OyglIDI/AAAAAAAAAQ8/MtrYQ0fmDwk/s640/Overview.png" /&gt;&lt;/a&gt;&lt;/div&gt;
 &lt;div style="clear: both"&gt;&lt;/div&gt; 
&lt;strong&gt;Who should use Command Center?&lt;/strong&gt;&lt;hr/&gt;
• Anyone that has two or more Branch Repeaters, Netscalers, Netscaler VPX, or Application Firewalls.&lt;br /&gt;
• Any time you will be transferring your configs from test to development&lt;br /&gt;
• When you are using Application Firewall&lt;br /&gt;
• When you want to be alerted on up/down events (i.e. when a Service fails and recovers such as the Citrix XML service or your e-commerce web site).&lt;br /&gt;
• When you want to keep historic trends of your ANG Infrastructure (i.e. Authentications, VServer hits, Packets received and transmitted, or http requests per second to your Web Sites etc.).&lt;br /&gt;
• If you will be writing policies and actions based on traffic usage i.e. Sure Connect or MAX client.
&lt;/p&gt;
&lt;br/&gt;&lt;p&gt;&lt;strong&gt;Installation&lt;/strong&gt;&lt;hr/&gt;
When setting up Command Center (CCC) for the first time, it’s probably a good idea to have a beefy server and a database that can hold plenty of gathered statistics. It supports a MYSQL, Microsoft SQL, or Oracle datastore and it will generally get pretty big (depending on how much information you gather and how long you keep it. Here is a link to the installation guide (It supports both Windows and Linux installations)
&lt;a href="http://support.citrix.com/servlet/KbServlet/download/16492-102-18206/CC_RN.pdf" TARGET="_blank"&gt;Citrix Command Center Installation Guide 3.3&lt;/a&gt; .&lt;/p&gt;
&lt;p&gt;
After you have it setup, you can choose to run CCC manually or as a Windows Service. If you want to run it as a service, simply run the "C:\Program Files\Citrix\Citrix Command Center\bin\InstallCCAsService.bat" file. This will set the service to start automatically and also install an Apache service on TCP port 9090 (unsecure) or 8443 (secure). It’s managed using a web browser pointed at the Server IP with the port specified during setup. The default username is root with the password of public.&lt;/p&gt;

&lt;br/&gt;&lt;p&gt;&lt;strong&gt;First Steps&lt;/strong&gt;&lt;hr/&gt;
The first thing you will want to do is go to the Admin tab to setup some default settings for your CCC installation. Here you can: &lt;br /&gt;
• Change the Authentication and authorization settings to Local User accounts or central Directory accounts. &lt;br /&gt;
• Configure Log rotations and how long to keep logs around&lt;br /&gt;
• Configure your email server default settings&lt;br /&gt;
• Configure Inventory settings (Such as whether certificates are backed up etc.&lt;br /&gt;&lt;/p&gt;

&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/SyQQLUkJFQI/AAAAAAAAAP8/nQKIIOFRc6Y/s1600-h/Admin.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/SyQQLUkJFQI/AAAAAAAAAP8/nQKIIOFRc6Y/s640/Admin.png" /&gt;&lt;/a&gt; &lt;br /&gt;
 &lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;p&gt;After you have your default settings configured, you will want to create a MAP (Under Citrix Network). A Map is a collection of similar devices with similar roles (Such as an HA pair or a quad of devices in a GSLB configuration). Once you setup your map with all the default information, you can then add devices to the map individually or by running a discovery with an IP range (see below). &lt;/p&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/SyQQTGcaYxI/AAAAAAAAAQE/qkjNnsZ1nSc/s1600-h/maps.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/SyQQTGcaYxI/AAAAAAAAAQE/qkjNnsZ1nSc/s640/maps.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
 &lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;p&gt;Provided that you have not locked down the snmp managers in your ANG devices, Command Center will automatically configure the SNMP community and Trap destinations. It is a good idea to later lock down the SNMP manager hosts to just the devices that will be enabled for management.&lt;br /&gt;&lt;/div&gt;
&lt;strong&gt;&lt;em&gt;NOTE: If an SNMP manager or SNMP manager Network is defined, the automatic configuration will fail. Simply delete all SNMP managers and run the discovery again, or manually configure the SNMP settings.&lt;/em&gt;&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;
Once the MAP has been defined, you will start collecting Alarms, however, you must still do some manual configuration if you want to receive alerts or build custom graphs.&lt;/p&gt;

&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/_yUI-6_lDTwY/SyR3OyglIDI/AAAAAAAAAQ8/MtrYQ0fmDwk/s1600-h/Overview.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://3.bp.blogspot.com/_yUI-6_lDTwY/SyR3OyglIDI/AAAAAAAAAQ8/MtrYQ0fmDwk/s640/Overview.png" /&gt;&lt;/a&gt;&lt;/div&gt;
 &lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;br/&gt;&lt;p&gt;&lt;strong&gt;Alarms&lt;/strong&gt;&lt;hr/&gt;
Alarms can be found under the Fault tab. The Alarms section shows Active Alarms and the status of the Alarm. Not all alarms are enabled by default, Citrix Netscaler comes with some basic alarms that are already configured such as Entity up/down status, Config Changes, Login Failures, HA failover etc.. If you would like to get alarms for typical tasks such as CPU, memory, or Disk usage you will have to configure the alarm thresholds on each device (Or batch a command to configure all the devices from Command Center).&lt;/p&gt;


&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/SyR3yVkJHtI/AAAAAAAAARE/rMN1BStSxc8/s1600-h/Alarms.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/SyR3yVkJHtI/AAAAAAAAARE/rMN1BStSxc8/s640/Alarms.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;

 &lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;p&gt;If you would like to setup email alerts, you will want to configure Alarm Triggers. With Alarm triggers you can select what emails addresses receive information on what alarms. You can target specific categories or failure objects and you can use Wild Cards for matching similar failure objects. 
&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;NOTE: if you want Command Center to alert on part of a service name for multiple services called SVC_Email_01 and SVC_Email_02, you can add *Email* in the failure object.&lt;/em&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/_yUI-6_lDTwY/SyQQnswRgfI/AAAAAAAAAQc/A3N5Cq2nx10/s1600-h/alarms3.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://2.bp.blogspot.com/_yUI-6_lDTwY/SyQQnswRgfI/AAAAAAAAAQc/A3N5Cq2nx10/s640/alarms3.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
 &lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;br/&gt;&lt;p&gt;&lt;strong&gt;Graphing and Reporting statistics&lt;/strong&gt;&lt;hr /&gt;
Reporting is one of my favorite features of Command Center because it allows you to know exactly what is going on with your Application Infrastructure and web applications such as:&lt;br /&gt;
• CPU, Disk and memory usage over time&lt;br /&gt;
• How much traffic is being received and at what are the peak times&lt;br /&gt;
• How many SSL VPN connections are occurring&lt;br /&gt;
• Authentication Successes and failures&lt;br /&gt;
• Reporting also helps you identify if you are using the right size device&lt;br /&gt;&lt;br /&gt;
The first thing you must do when configuring reporting is configure your Polled Counters… You can configure Counters under the Performance tab of Command Center. Some counters are configured by default; however, you should go in and disable counters that you will not use as well as select counters that are important to your organization. &lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;em&gt;NOTE: The more counters that are selected, the more processing the Command Center will have to do. Also, Counters with a Plus sign next to them will require additional processing by the appliances. These counters provide the most detailed information such as service and Vserver hit counts, packet rates, etc.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;a href="http://3.bp.blogspot.com/_yUI-6_lDTwY/SyQQvTm3VBI/AAAAAAAAAQk/jZrcn1tXqPg/s1600-h/performance1.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://3.bp.blogspot.com/_yUI-6_lDTwY/SyQQvTm3VBI/AAAAAAAAAQk/jZrcn1tXqPg/s640/performance1.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
 &lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;p&gt;
Once you have your counters selected, wait about 5 – 10 minutes and run a quick report or setup a custom report… Custom reports are reports that can be re-used and scheduled and sent to an email distribution. To start, select quick report or Add Custom report from its view.&lt;/p&gt;
&lt;p&gt;
Select the devices and the counters that you would like to see in your report, and select finish.&lt;/p&gt;

&lt;a href="http://4.bp.blogspot.com/_yUI-6_lDTwY/SyQQ5TK09yI/AAAAAAAAAQs/nRCcz-vRjiM/s1600-h/performance5.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://4.bp.blogspot.com/_yUI-6_lDTwY/SyQQ5TK09yI/AAAAAAAAAQs/nRCcz-vRjiM/s640/performance5.png" /&gt;&lt;/a&gt; &lt;br /&gt;

 &lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;br /&gt;
Here you can see the counters in the view of your choice. &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;a href="http://1.bp.blogspot.com/_yUI-6_lDTwY/SyQQ-UOJ3ZI/AAAAAAAAAQ0/pq5OmX365oo/s1600-h/performance3.png" imageanchor="1" style="clear: left; cssfloat: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" ps="true" src="http://1.bp.blogspot.com/_yUI-6_lDTwY/SyQQ-UOJ3ZI/AAAAAAAAAQ0/pq5OmX365oo/s640/performance3.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
 &lt;div style="clear: both"&gt;&lt;/div&gt;
&lt;br/&gt;&lt;p&gt;&lt;strong&gt;Central Configuration&lt;/strong&gt;&lt;hr /&gt;
The Configuration gives you a single place to execute common tasks for your devices. You can Update Certificates, or Generate Certificates from a central location. You can also use Custom tasks to Batch configurations from Test to Production. You can read more about the custom tasks in a previous blog that I wrote about creating Template configurations for Application Firewall &lt;a href="http://www.thegenerationv.com/2009/12/netscalers-application-firewall-goes.html"&gt;Application Firewall goes Commando&lt;/a&gt;&lt;/p&gt;
&lt;br/&gt;&lt;p&gt;
&lt;strong&gt;This is just the beginning&lt;/strong&gt;&lt;hr /&gt;
There are many other things you can do with Command Center, if you are running any of Citrix’s application networking products in production, I encourage you to download this and give it a try…. Although there is not a whole lot of documentation on Command Center, you can get some useful information from the Admin and User Guides found at &lt;a href="http://support.citrix.com/product/nscc/v3.3" TARGET="_blank"&gt;http://support.citrix.com/product/nscc/v3.3&lt;/a&gt;&lt;br /&gt;
&lt;p&gt;
&lt;a href="http://www.thegenerationv.com/search/label/Netscaler"&gt;&lt;img src="http://s3c3lg.bay.livefilestore.com/y1p9P988KiT-N2bLaQKFk_4thL0qnXFfXWJePS1eXnIr-K8k5yHnNZRoApnZZnNl2BugYZQqBR0k3UjXBQYHRHe9pdmEWTj7uyP/more.jpg" width="40" height="40" /&gt;&lt;br /&gt;More information on Netscaler&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4905178565969126651-3683645909886894415?l=www.thegenerationv.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/QTxmird9-XUxUbTIJB6MrTTYduU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QTxmird9-XUxUbTIJB6MrTTYduU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/QTxmird9-XUxUbTIJB6MrTTYduU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QTxmird9-XUxUbTIJB6MrTTYduU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=-KfB-SZEKu8:6UUqw52BXPs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=-KfB-SZEKu8:6UUqw52BXPs:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=-KfB-SZEKu8:6UUqw52BXPs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=-KfB-SZEKu8:6UUqw52BXPs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=-KfB-SZEKu8:6UUqw52BXPs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=-KfB-SZEKu8:6UUqw52BXPs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?i=-KfB-SZEKu8:6UUqw52BXPs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=-KfB-SZEKu8:6UUqw52BXPs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheGenerationV?a=-KfB-SZEKu8:6UUqw52BXPs:TzevzKxY174"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheGenerationV?d=TzevzKxY174" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheGenerationV/~4/-KfB-SZEKu8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/TheGenerationV/~3/-KfB-SZEKu8/citrix-command-center-basics-with.html</link><author>noreply@blogger.com (Rick Rohne)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_yUI-6_lDTwY/SyR3OyglIDI/AAAAAAAAAQ8/MtrYQ0fmDwk/s72-c/Overview.png" height="72" width="72" /><feedburner:origLink>http://www.thegenerationv.com/2009/12/citrix-command-center-basics-with.html</feedburner:origLink></item></channel></rss>

