{"id":2026,"date":"2012-01-22T09:21:05","date_gmt":"2012-01-22T17:21:05","guid":{"rendered":"http:\/\/greg.porter.name\/wordpress\/?p=2026"},"modified":"2012-02-04T14:51:38","modified_gmt":"2012-02-04T22:51:38","slug":"xenserver-6-0-upgrade-notes-and-tips","status":"publish","type":"post","link":"https:\/\/greg.porter.name\/wordpress\/?p=2026","title":{"rendered":"XenServer 6.0 Upgrade Notes and Tips"},"content":{"rendered":"<p><a href=\"https:\/\/www.citrix.com\/xenserver\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2028 alignnone\" title=\"xenserver_banner\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xenserver_banner.png\" alt=\"xenserver_banner\" width=\"501\" height=\"173\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xenserver_banner.png 955w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xenserver_banner-300x103.png 300w\" sizes=\"auto, (max-width: 501px) 100vw, 501px\" \/><\/a><\/p>\n<p>I&#8217;ve been running XenServer 5.X at home for a test lab for a couple of years.\u00a0 It&#8217;s been stable and easy to use.\u00a0 Upgrading to XenServer 6.0 has been on my to-do list, and I finally got around to it this weekend.\u00a0 On my old clunky hardware, I had a few issues, so here&#8217;s some notes on what I did&#8230;<\/p>\n<p><!--more--><\/p>\n<h1>Upgrade Issues<\/h1>\n<p>First of all, get XenCenter 6, the management GUI for XenServer.\u00a0 Use 6.0 to do the upgrade with.\u00a0 One of the features is &#8220;rolling pool upgrade&#8221; which manages the upgrade process for you.<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/rolling_pool_upgrade.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2037 alignnone\" title=\"rolling_pool_upgrade\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/rolling_pool_upgrade.png\" alt=\"rolling_pool_upgrade\" width=\"495\" height=\"331\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/rolling_pool_upgrade.png 825w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/rolling_pool_upgrade-300x200.png 300w\" sizes=\"auto, (max-width: 495px) 100vw, 495px\" \/><\/a><\/p>\n<p>One of the fundamental choice you have to make is &#8220;Upgrade Mode&#8221; &#8211; Automatic or Manual.\u00a0 Automatic requires a network place to stage the install files.\u00a0 Manual means &#8220;burn a CD&#8221;.\u00a0 I had a NFS location available, so I fiddled with trying to use this unsuccessfully.\u00a0 I finally burned a CD.\u00a0 (Later I stumbled across a clue&#8230;\u00a0 This network location should *NOT* contain the .iso you download, it&#8217;s supposed to be the unpacked files from the .iso.\u00a0 I hadn&#8217;t done that.\u00a0 If you did, it&#8217;d probably be fine.)<\/p>\n<p>The basic process from the rolling pool upgrade is to stop the VMs on the master, reboot, upgrade the master, stop the VMs on the next pool member, reboot, upgrade the member, lather, rinse, repeat.\u00a0 If you choose Manual like I did, the it&#8217;ll prompt you to insert the CD you burned at the appropriate times.<\/p>\n<p>My pool master upgraded without a problem.\u00a0 This is on a Dell AMD T105 I got on E-Bay.\u00a0 This has been a solid, if boring server.\u00a0 (I&#8217;d guess this is actually on the <a href=\"https:\/\/hcl.xensource.com\/\">Hardware Compatibility List<\/a>, that&#8217;s why I had no problems&#8230;)<\/p>\n<p>My second pool member is some old AMD based PC I cobbled together from parts on hand.\u00a0 This one is decidedly *NOT* on the HCL, and it showed.<\/p>\n<p>(Warning &#8211; crappy action pictures follow.\u00a0 Sorry, I&#8217;m not a real photographer.)<\/p>\n<p>The first part of the installer is fine.\u00a0 (Fine = I can type at the prompt.)<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen1.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2054\" title=\"xen1\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen1.JPG\" alt=\"xen1\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen1.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen1-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen1-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<p>As all the &#8220;crap&#8221; scrolls by, notice that it seems to not be able to use the PS\/2 controller it finds (&#8220;Failed to obtain physical IRQ 12&#8221;, etc.), which means that it has issues with the mouse and keyboard.\u00a0 It hangs an inordinately long time at the &#8220;detecting hardware&#8221; line, but does eventually move past it.<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen2.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2055\" title=\"xen2\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen2.JPG\" alt=\"xen2\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen2.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen2-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen2-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<p>The symptom I had on this old clunky non-HCL hardware is that I can&#8217;t type once the text installer starts.<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen3.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2056\" title=\"xen3\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen3.JPG\" alt=\"xen3\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen3.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen3-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen3-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<p>To get past this, I restarted it, and then hit F2 at the first screen.\u00a0 This will show all the options available.\u00a0 Type safe and continue.\u00a0 The installer starts fine, and completes fine.<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen4.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2065\" title=\"xen4\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen4.JPG\" alt=\"xen4\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen4.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen4-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen4-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<p>After the installer is complete, and the server reboots the first time the new install hangs forever on a white Citrix Xenserver screen.\u00a0 You never get the usual progress bar at the bottom.\u00a0 It just hangs here, white, forever (I dubbed this the &#8220;white screen of hang&#8221;.)\u00a0 I guess the actual install pukes on the bad hardware too.<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen5.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2067\" title=\"xen5\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen5.JPG\" alt=\"xen5\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen5.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen5-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen5-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<p>After much googling, <a href=\"https:\/\/forums.citrix.com\/thread.jspa?threadID=295133\">I found others that had used the kernel option noapic to get past this<\/a>.\u00a0 You can manually pass this option to XenServer at boot time as follows.<\/p>\n<p>At boot time, quickly type menu at the first boot: prompt.\u00a0 (You don&#8217;t have much time&#8230;)<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen6.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2068\" title=\"xen6\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen6.JPG\" alt=\"xen6\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen6.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen6-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen6-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<p>XenServer is trying to boot &#8216;xe&#8217;, so (quickly!) arrow down to xe.\u00a0 Hit tab.<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen7.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2069\" title=\"xen7\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen7.JPG\" alt=\"xen7\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen7.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen7-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen7-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<p>Now you can add the option &#8216;noapic&#8217;.\u00a0 Arrow back, back, back until you get on the first line, right after &#8230;xen.gz and add the word noapic.<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen8.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2071\" title=\"xen8\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen8.JPG\" alt=\"xen8\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen8.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen8-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen8-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<p>Yay!\u00a0 the server boot normally!\u00a0 Whatever noapic does, it does the trick.<\/p>\n<p><a href=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen9.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2076\" title=\"xen9\" src=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen9.JPG\" alt=\"xen9\" width=\"491\" height=\"368\" srcset=\"https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen9.JPG 2272w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen9-300x224.jpg 300w, https:\/\/greg.porter.name\/wordpress\/wp-content\/uploads\/2012\/01\/xen9-1024x768.jpg 1024w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/p>\n<h3><strong>Note!\u00a0 This is a one time trick!\u00a0 Every time you boot the XenServer you have to use noapic.\u00a0 The next time it boots, you&#8217;ll get the &#8220;white screen of hang&#8221; again unless you interrupt the boot again and pass it noapic. <\/strong><\/h3>\n<p>This is not fun, especially since XenCenter will now warn you there are 4 updates that need to be applied, and every one of those needs 2 reboots, 8 reboots total.<\/p>\n<p>To fix it (hopefully) permanently, edit the \/boot\/extlinux.conf and add the noapic entry in the same spot, under the xe entry.<\/p>\n<p>Change the xe stanza that looks like:<\/p>\n<pre>label xe\r\n # XenServer\r\n kernel mboot.c32\r\n append \/boot\/xen.gz dom0_mem=752M lowmem... &lt;snip&gt;<\/pre>\n<p>And add the nopic as so.<\/p>\n<pre>label xe\r\n # XenServer\r\n kernel mboot.c32\r\n append \/boot\/xen.gz noapic dom0_mem=752M lowmem... &lt;snip&gt;<\/pre>\n<p>This will allow XenServer to boot every time with no fiddling.\u00a0 (There may be additional places noapic should go, but this location worked for me.)<\/p>\n<p>I then applied the updates XenCenter recommended, and I could reboot at will without typing.<\/p>\n<p>It&#8217;s possible that future updates will overwrite this, so if your funky XenServer gets the &#8220;white screen of hang&#8221;, you&#8217;ll have to make this change again.<\/p>\n<h1>XenServer Tool Issues<\/h1>\n<p>On Windows VM&#8217;s, after the XenServer upgrade, XenCenter will complain that Tools is out of date.\u00a0 You need to install the latest tools.\u00a0 This isn&#8217;t a big deal, but I fiddled around with it for an inordinately long time, since I didn&#8217;t bother to read the instructions.<\/p>\n<p>First of all, on my Windows 7 and Server 2008 R2 VMs, I didn&#8217;t have .Net 4.0.\u00a0 This is required.\u00a0 Get .Net 4.0 and install it.\u00a0 This may require a reboot of the VM.\u00a0 I downloaded the <a href=\"https:\/\/www.microsoft.com\/download\/en\/details.aspx?id=17851\">.Net 4.0 installer<\/a> from Microsoft, right clicked it, and said &#8220;Run as administrator&#8221;.\u00a0 (Even though I was already administrator, the installer seems happier doing it this way.)\u00a0 After this installs, run Windows update again, get all of the .Net updates, reboot as needed, run Windows update again, lather, rinse, repeat, until your .Net installation is fully patched.<\/p>\n<p>Then, from XenCenter, highlight the VM and pick VM from the top bar, Install XenServer tools.\u00a0 All this really does is mount the installer stuff as a CD in the VM.\u00a0 Autorun will probably prompt you to run the installer.\u00a0 Don&#8217;t do this.\u00a0 Right click on the CD and select Open.\u00a0 Right click on the installer and pick &#8220;Run as administrator&#8221; (even if you are one.)\u00a0 This will require a VM reboot again.<\/p>\n<p>I don&#8217;t know if I just wasn&#8217;t holding my mouth right or what, but I went around and around with installing .Net 4.0 and XenServer tools.\u00a0 I installed both, rebooted, XenCenter would report &#8220;XenServer Tools not installed&#8221;, try again, reboot, lather, rinse, repeat.\u00a0 Eventually, it will install, and XenCenter will be happy with your VMs (happy = properly report memory and disk usage, and not complain about Tools).\u00a0 This was especially true with the Server 2008 R2 VMs.\u00a0 I fiddled with their network adapters extensively.\u00a0 I disabled, enabled, removed device in Device Manager and rescanned, etc, etc.\u00a0 My final configuration has just IPv4 configured (deselect IPv6 &#8211; on by default) and in the adapter advanced configuration, all TCP offload settings set to disabled (all offload settings are on by default).\u00a0 You can tell if it&#8217;s not happy, it won&#8217;t connect to anything or it&#8217;ll blue screen.\u00a0 (<a href=\"https:\/\/forums.citrix.com\/thread.jspa?messageID=1499775&amp;#1499775\">Posts like this vaguely mention IPv4 only and disable offload&#8230;<\/a>)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been running XenServer 5.X at home for a test lab for a couple of years.\u00a0 It&#8217;s been stable and easy to use.\u00a0 Upgrading to XenServer 6.0 has been on my to-do list, and I finally got around to it&hellip; <a href=\"https:\/\/greg.porter.name\/wordpress\/?p=2026\" class=\"more-link\">Continue Reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2026","post","type-post","status-publish","format-standard","hentry","category-content"],"_links":{"self":[{"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2026","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2026"}],"version-history":[{"count":56,"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2026\/revisions"}],"predecessor-version":[{"id":2036,"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2026\/revisions\/2036"}],"wp:attachment":[{"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2026"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2026"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/greg.porter.name\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2026"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}