Jump to content
Welcome to our new Citrix community!
  • 0

Cross-Platform Support for Multiple Hypervisors: OS Layer built in XenServer - unable to create a platform layer for AHV


Jonathan Cooley1709157328

Question

ELM version 4.15.0.5

XenServer: 7.1

Nutanix AHV: 5.8

 

I'm attempting to achieve a configuration where we have a single 2012R2 OS layer and have the ability to create layered images with this single OS layer for use with multiple Hypervisors. My "golden image" was built and imported on XenServer. I've attempted to create both a platform layer for publishing and a packaging platform layer on AHV and in both scenarios the packaging machine fails to boot, resulting in a BSOD with the error: INACCESSIBLE_BOOT_DEVICE. I rolled back the OS layer to a version where no virtualization tools were installed and the the BSOD still occurs on the AHV packaging machine. I do have a XenServer publishing platform layer that boots without any issues.

 

I have experienced difficulty finding any guides or information for configuring layered images for Cross-platform support. Any assistance would be greatly appreciated.

Link to comment

8 answers to this question

Recommended Posts

  • 1

Are you trying to create the packaging machine on Nutanix or XenServer?  I think you need to create the packaging machine for the platform layers on XenServer and add in the Hypervisor tools required by Nutanix there.  That way when you publish to Nutanix you have the proper drivers.

 

But i have never used XenServer to Nutanix maybe someone who has will also provide guidance.

 

Rob

  • Like 1
Link to comment
  • 1

The problem, I think, is that Windows can't boot until it has drivers for the virtio SCSI controller.  So until the Nutanix tools and the virtio drivers are installed, it won't boot.  You would need to start your Platform Layer in XenServer first, and install the virtio drivers there.  Finalize, and then version it in Nutanix.  I cheerfully admit that I have not done this myself, but it certainly seems logical: you can't boot until you have boot-device drivers already in the image.  So you have to install the drivers first on a platform that you can boot on.

 

At least, it's a thing to try.

  • Like 1
Link to comment
  • 0
20 minutes ago, Rob Zylowski1709158051 said:

Are you trying to create the packaging machine on Nutanix or XenServer?  I think you need to create the packaging machine for the platform layers on XenServer and add in the Hypervisor tools required by Nutanix there.  That way when you publish to Nutanix you have the proper drivers.

 

But i have never used XenServer to Nutanix maybe someone who has will also provide guidance.

 

Rob

 

I am attempting to create the packaging machine on AHV via the platform creation wizard.  I have been working under the assumption that a unique platform layer is needed for each hypervisor/provisioning system/broker combination in the environment. So with the single OS layer I was assuming that I would create a dedicated platform layer for both AHV and XenServer. Going through the platform configuration wizard for AHV, the packaging machine gets the BSOD.

 

This blog post is the most detail I can find regarding cross-platform capabilities: https://www.citrix.com/blogs/2017/05/31/what-is-citrix-app-layering-cross-platform-support/?_ga=2.131070991.1836057174.1547505379-101267798.1546878859

Link to comment
  • 0
1 minute ago, Gunther Anderson said:

The problem, I think, is that Windows can't boot until it has drivers for the virtio SCSI controller.  So until the Nutanix tools and the virtio drivers are installed, it won't boot.  You would need to start your Platform Layer in XenServer first, and install the virtio drivers there.  Finalize, and then version it in Nutanix.  I cheerfully admit that I have not done this myself, but it certainly seems logical: you can't boot until you have boot-device drivers already in the image.  So you have to install the drivers first on a platform that you can boot on.

 

At least, it's a thing to try.

I'll follow your and Rob's suggestion and give it a shot. Based on the content that I have read regarding dedicated platform layers, I thought the ELM connectors worked some magic for the target hypervisor to get the device to boot. I'm still confused as to why the documentation and blog posts seem to indicate that a dedicated platform layer is required for each hypervisor. It makes sense when considering isolation; however, I don't know how it's achieved.

 

I'll provide an update.

Link to comment
  • 0

Actually its because of this issue that you need dedicated platform layers for each hypervisor.  The hypervisor tools for where you do packaging will go in the os layer so they are available without a platform layer whne packaging.   Then the tools for each additional hypervisor go in the platform layer for that hypervisor.  Its just we have a chicken before the egg issue with the nutanix storage drivers in this case.  Thouhg that issue is common across hypervisors.

Link to comment
  • 0

Rather than creating a new version on my existing XenServer layer, I created a new platform layer with the first version using the XenServer connector and installing the AHV VirtIO drivers in the XenServer packaging machine. After finalizing, I created a 2nd version utilizing the AHV connector in an attempt to boot into the AHV packaging machine - this time with the VirtIO drivers installed. Now I'm getting a different BSOD, with the error details: SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (without any reference to a device driver or error code).

 

I went back to the XenServer packaging machine and removed all hidden devices. Finalized, added another version and booted via the AHV connector and still the same BSOD. I also created a version of the platform layer that used a version of the OS layer with no XenTools and it also resulted with the same BSOD.

 

Link to comment
  • 0

I had the same problem. We use only one OS layer. This OS layer was created on vmware. It has vmware tools installed on it. I got version from OS layer and removed vmware tools. I created a new platform using this version on vmware. I installed Nutanix NGT and VirtIO on the opened VM. Then I got a new version from the platform layer on Nutanix AHV  based on this version. Unfortunately this was not the solution. The machine has crashed into a bsod state. But I found the solution. Then I got a new version on the vmware connector by choosing the version without vmware tools on the OS layer. I installed nutanix NGT and VirtIO to this version. Then I created a new platform layer on Nutanix AHV connector based on this version and the VM created on Nutanix worked without any problems. For multi-hypervisor use without creating a new OS layer, it would be healthy to version the hypervisor tools on the OS.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...