Академический Документы
Профессиональный Документы
Культура Документы
1.0 Edition
Citrix XenServer 5.6 Virtual Machine Installation Guide Copyright 2009 Citrix All Rights Reserved. Version: 5.6 Citrix, Inc. 851 West Cypress Creek Road Fort Lauderdale, FL 33309 United States of America Disclaimers This document is furnished "AS IS." Citrix, Inc. disclaims all warranties regarding the contents of this document, including, but not limited to, implied warranties of merchantability and fitness for any particular purpose. This document may contain technical or other inaccuracies or typographical errors. Citrix, Inc. reserves the right to revise the information in this document at any time without notice. This document and the software described in this document constitute confidential information of Citrix, Inc. and its licensors, and are furnished under a license from Citrix, Inc. Citrix Systems, Inc., the Citrix logo, Citrix XenServer and Citrix XenCenter, are trademarks of Citrix Systems, Inc. in the United States and other countries. All other products or services mentioned in this document are trademarks or registered trademarks of their respective companies. Trademarks Citrix XenServer XenCenter
1.0 Edition
Table of Contents
iii
Windows 2000 Server ......................................................................................................... 13 Windows 7 ....................................................................................................................... 13 Windows Vista .................................................................................................................. 13 Windows XP SP3 .............................................................................................................. 13
iv
Machine Name .................................................................................................................. 28 IP address ........................................................................................................................ 28 MAC address .................................................................................................................... 28 Release Notes ........................................................................................................................... 29 Debian Lenny 5.0 .............................................................................................................. 29 Red Hat Enterprise Linux 4.5 to 4.8 ....................................................................................... 29 Preparing a RHEL 4.5 to 4.8 guest for cloning .................................................................. 30 RHEL Graphical Network Install Support ......................................................................... 31 Red Hat Enterprise Linux 5 .................................................................................................. 31 Preparing a RHEL 5.x guest for cloning .......................................................................... 31 CentOS 4 ......................................................................................................................... 31 CentOS 5 ......................................................................................................................... 32 Oracle Enterprise Linux 5 ..................................................................................................... 32 SUSE Enterprise Linux 9 ..................................................................................................... 32 SUSE Enterprise Linux 10 SP1 ............................................................................................. 32 SUSE Enterprise Linux 11 .................................................................................................... 32
Selecting a package format .......................................................................................................... 39 OVF best practices .................................................................................................................... 39 Exporting VMs as an appliance ..................................................................................................... 39 Importing appliances ................................................................................................................... 40 Operating System Fixups ..................................................................................................... 41 Importing disk images ................................................................................................................. 42 Supported disk image formats .............................................................................................. 43 Troubleshooting the XenServer OVF Appliance Wizard ........................................................................ 43 Wizard does not start ......................................................................................................... 44 Errors after completing the wizard ......................................................................................... 44 Errors when trying to start an imported VM ............................................................................. 46
A. Creating ISO images ............................................................................. 47 B. Setting Up a Red Hat Installation Server ............................................ 48
Copying installation media ........................................................................................................... 48 Enable remote access ................................................................................................................. 48 NFS ................................................................................................................................ 48 FTP ................................................................................................................................. 49 HTTP .............................................................................................................................. 49
Index ............................................................................................................ 52
vi
Creating VMs
This chapter provides an overview of how VMs are created and lists virtual memory and virtual disk size minimums, describes the differences in virtual device support for the members of the XenServer product family. This chapter also discusses physical to virtual conversion (P2V), cloning templates, and importing previously-exported VMs.
Overview
VMs are created from templates. A template is a "gold image" that contains all the various configuration settings to instantiate a specific VM. XenServer ships with a base set of templates, which range from generic "raw" VMs that can boot an OS vendor installation CD or run an installation from a network repository to complete pre-configured OS instances. Different operating systems require slightly different settings in order to run at their best. XenServer templates are tuned to maximize operating system performance. The Linux templates create Pure Virtual (PV) guests, as opposed to the HVM guests created by the Windows and Other Install Media templates. Other Install Media template Linux installations are not supported. There are three basic methods by which VMs are created using templates: using a complete pre-configured template. Installing from a CD or an ISO image onto the appropriate template. Installing from vendor media on a network installation server directly onto a template. See Installing Linux VMs to find out which methods are supported for which Linux flavor operating systems. Windows VMs can be installed from a CD or an ISO image. Creating VMs by installing Windows operating systems onto the appropriate templates is described in Installing Windows VMs. Creating VMs by installing Linux operating systems onto the appropriate templates is described in Installing Linux VMs. Additionally, VMs can be created by: using the physical-to-virtual (P2V) and virtual-to-virtual (V2V) conversion tool XenConvert importing an existing, exported VM converting an existing VM to a template These methods are described in this chapter.
When configuring guest memory, please be careful not to exceed the maximum amount of physical memory addressable by your operating system. Setting a memory maximum that's greater than the operating system supported limit may lead to stability problems within your guest. Operating System Windows 7 32-bit Minimum RAM 1GB Maximum RAM 4GB Disk space Minimum 16GB, 40GB or more recommended Minimum 20GB Minimum 32GB Minimum 10GB, 40GB or more recommended 16GB 2GB 1.5GB 2GB 800MB 800MB 800MB 800MB 1GB 1.5GB 800MB 4GB
Windows Vista 32-bit Windows Server 2003 Windows XP SP2/3 Windows 2000 SP4 CentOS 4.5, 4.6, 4.7 CentOS 5.0, 5.1, 5.2, 5.3, 5.4 Red Hat Enterprise Linux 4.5, 4.6, 4.7, 4.8 Red Hat Enterprise Linux 5.0, 5.1, 5.2, 5.3, 5.4 SUSE Linux Enterprise Server 9 SP2/3/4 SUSE Linux Enterprise Server 10 SP1/2, 11 Oracle Enterprise Linux 5.0, 5.1, 5.2, 5.3, 5.4 Debian Lenny Note:
1GB 256MB 256MB 256MB 256MB 512MB 256MB 512MB 256MB 512MB 512MB 128MB
4GB 32GB 32GB 32GB 16GB 16GB 16GB 16GB 32GB 32GB 16GB 32GB
Some 32-bit Windows operating systems can support more than 4 GB of RAM through the use of a special mode - physical address extension (PAE) mode. Administrators wishing to reconfigure a VM with greater
than 4 GB of RAM must use the xe CLI, and not XenCenter, as the CLI does not impose any upper bounds for memory-static-max. For more information on how to set the memory static max, please refer to the Dynamic Memory Control chapter, in the XenServer Administrator's Guide.
Linux VMs 32
*
A maximum of 8 VCPUs are supported by XenCenter. except for SLES 10 SP1 and RHEL 4.x, which support 3. RHEL 5.0/5.1/5.2 support 3, but can support 7 when the kernel is patched with the Citrix Tools for Virtual Machines. The same applies for Oracle and CentOS 5.0/5.1/5.2
Cloning an existing VM
You can make a copy of an existing VM by cloning from a template. Templates are ordinary VMs which are intended to be used as master copies to instantiate VMs from. A VM can be customized and converted into a template, but be sure to follow the appropriate preparation procedure for the VM (see the section called Preparing to clone a Windows VM for Windows and the section called Preparing to clone a Linux VM for Linux). Templates cannot be used as normal VMs. XenServer has two mechanisms for cloning VMs: a full copy, or a faster Copy-on-Write (CoW) mode which only writes modified blocks to disk. The CoW mode is only supported for file-backed VMs. CoW is designed to save disk space and allow fast clones, but will slightly slow down normal disk performance. A template can be fast-cloned multiple times without slowdown, but if a template is cloned into a VM and the clone converted back into a template, disk performance can linearly decrease depending on the number of times this has happened. In this event, the vm-copy CLI command can be used to perform a full copy of the disks and restore expected levels of disk performance. Resource pools introduce some complexities around creating custom templates and cloning them. If you create a template on a server in a pool, and all virtual disks of the source VM are on shared storage
repositories, the operation of cloning that template will be forwarded to any server in the pool that can see those shared SRs. However, if you create the template from a source VM that has any virtual disks on a local SR, then the clone operation can only execute on the server that can access that SR.
Importing an exported VM
You can create a VM by importing an existing exported VM. Like cloning, exporting and importing a VM is way to create additional VMs of a certain configuration. You might, for example, have a special-purpose server configuration that you use many times. Once you have set up a VM the way you want it, you can export it, and import it later to create another copy of your specially-configured VM. You can also use export and import to move a VM to a XenServer host that in another resource pool. When importing a VM, you can choose to preserve the MAC address on any virtual network interfaces associated with it. If you choose to generate a new MAC address, be sure to follow the appropriate preparation procedure for the imported VM. See the section called Preparing to clone a Windows VM for Windows and the section called Preparing to clone a Linux VM for Linux. Importing an exported VM may take some time, depending on the size of the VM and the speed and bandwidth of the network connection between the XenServer host and XenCenter. When VMs are imported XenServer re-attaches the VM VIFs to any network that has the same name as the network on the server that the VM was exported from. If no matching network can be found a new private network is created and the VM VIFs are attached to that.
Exporting a VM
An existing VM can be exported using XenCenter or the CLI. This section describes using the CLI. For details on exporting using XenCenter, see the XenCenter online Help. The following procedure assumes that you have multiple XenServer hosts and that you are administering them using the CLI on a separate machine (that is, a machine that is not one of the XenServer hosts) where you can maintain a library of export files. Citrix recommends not exporting a VM to a XenServer host filesystem.
Note: Be sure to include the .xva extension when specifying the export filename. If the exported VM does not have this extension and you attempt to import it using XenCenter, it might fail to recognize the file as a valid XVA file. 3. The export process might take some time to complete. When finished, the command prompt returns.
Importing a VM
An exported VM file can be imported using XenCenter or the CLI. This section describes using the CLI. For details on importing using XenCenter, see the XenCenter online Help.
The following procedure assumes that you are administering the XenServer host using the CLI on a separate machine (that is, a machine that is not one of your XenServer hosts) where you maintain a library of export files.
You can import the VM to another SR on the target XenServer host by adding the optional sr-uuid parameter:
xe vm-import -h <hostname> -u <root> -pw <password> \ filename=<pathname_of_export_file> sr-uuid=<uuid_of_target_sr>
You can also preserve the MAC address of the original VM by adding the optional preserve parameter set to true:
xe vm-import -h <hostname> -u <root> -pw <password> \ filename=<pathname_of_export_file> preserve=true
2.
The import process might take some time to complete. When finished, the command prompt returns the UUID of the newly-imported VM.
VM Block Devices
In the para-virtualized (PV) Linux case, block devices are passed through as PV devices. XenServer does not attempt to emulate SCSI or IDE, but instead provides a more suitable interface in the virtual environment in the form of xvd* devices. It is also sometimes possible (depending on the OS) to get an sd* device using the same mechanism, where the PV driver inside the VM takes over the SCSI device namespace. This is not desirable so it is best to use xvd* where possible for PV guests (this is the default for Debian and RHEL). For Windows or other fully virtualized guests, XenServer emulates an IDE bus in the form of an hd* device. When using Windows, installing the Citrix Tools for Virtual Machines installs a special PV driver that works in a similar way to Linux, except in a fully virtualized environment.
Windows 7 (x86) can be used to install Windows 7, 32-bit. Windows 7 (x64) can be used to install Windows 7, 64-bit. Windows Vista (x86) can be used to install Windows Vista 32-bit. The Enterprise edition is supported. Windows XP SP3 (x86) can be used to install Windows XP Service Pack 3, 32-bit. Earlier service packs are not supported. Windows XP SP2 (x86) can be used to install Windows XP Service Pack 2, 32-bit. Earlier service packs are not supported. The Windows VM can be installed either from an install CD in a physical CD-ROM drive on the XenServer host, or from an ISO image of your Windows media. See Appendix A, Creating ISO images for information on how to make an ISO image from a Windows install CD and make it available for use.
Additional arguments to the mount command may be passed in, for advanced use. If making a Windows SMB/CIFS share available to the XenServer host, either use XenCenter to make it available, or connect to the host console and run the command:
xe-mount-iso-sr unc_path -t smbfs -o username=myname/myworkgroup
The unc_path argument should have back-slashes replaces by forward-slashes. -t cifs can be used for CIFS instead of SMB. Examples:
xe-mount-iso-sr //server1/myisos -t cifs -o username=johndoe/mydomain xe-mount-iso-sr //server2/iso_share -t smbfs -o username=alice
After mounting the share, any ISOs in it should be available by name from the CD pulldown list in XenCenter, or as CD images from the CLI commands. The ISO should be attached to an appropriate Windows template.
4. 5.
Copy the ISO images into this directory, taking care not to fill up the control domain filesystem. Verify that the ISO image is available for use by using the xe vdi-list command, or by checking in XenCenter. Warning: Be extremely careful with copying ISOs directly onto the control domain filesystem, as it has limited space available. A network share is a much safer mechanism for storing large numbers of ISO images. If the control domain does fill up, unpredictable behavior will result.
Windows PV drivers
The Citrix paravirtualized network and SCSI drivers (Citrix Tools for Virtual Machines) provide high performance I/O services without the overhead of traditional device emulation. During the installation of a Windows operating system, XenServer uses traditional device emulation to present a standard IDE controller and a standard network card to the VM. This allows Windows to complete its installation using built-in drivers, but with reduced performance due to the overhead inherent in emulation of the controller drivers. After Windows is installed, install the Citrix high-speed PV drivers. These are on an ISO available to the virtual CD-ROM drive of the Virtual Machine. These drivers replace the emulated devices and provide highspeed transport between Windows and the XenServer product family software. Note: While a Windows VM functions without them, performance is significantly hampered unless these drivers are installed. Running Windows VMs without these drivers is not supported. Some features, such as live relocation across physical hosts, will only work with the PV drivers installed and active. Attach the Windows PV drivers ISO to the VM by using the Install Tools menu in XenCenter, or by directly attaching the built-in xs-tools.iso ISO image on the VM using the CLI. Once the ISO is attached, doubleclick on the xensetup.exe installer executable and follow the on-screen prompts. Note: To silently install the Citrix Tools for Virtual Machines and prevent the system from rebooting afterwards, use the /S and /norestart options: <install_dir>/xensetup.exe /S /norestart The Windows PV drivers are installed by default in the C:\Program Files\Citrix\XenTools directory on the VM. The Citrix Tools for Virtual Machines can also be installed on a provisioned Windows machine by running the executable windows-pvdrivers-xensetup.exe, located in the client_install/ directory of the installation CD.
3.
Remote Desktop
The graphical console for Windows can be either a standard console using an emulated graphics card, or an RDP connection. For Windows VMs, there is a Switch to Remote Desktop button on the Console tab in XenCenter. Clicking it disables the standard graphical console, and switches to using Remote Desktop instead. The button will be disabled if you do not have Remote Desktop enabled in the VM. To enable it, install the PV drivers and follow the procedure to enable Remote Desktop:
5.
10
Installing a BIOS-locked VM
1. Run the vm-install copy-bios-strings-from command and specify the host-uuid as the host from which the strings should be copied (i.e. the host that the media was supplied with):
11
xe vm-install copy-bios-strings-from=<host uuid> \ template=<template name> sr-name-label=<name of sr> \ new-name-label=<name for new VM>
This returns the UUID of the newly created VM. For example:
xe vm-install copy-bios-strings-from=46dd2d13-5aee-40b8-ae2c-95786ef4 \ template="CentOS 5.3" sr-name-label=Local\ storage \ new-name-label=newcentos 7cd98710-bf56-2045-48b7-e4ae219799db
2.
If the relevant BIOS strings from the host have been successfully copied into the VM, the command vm-is-bios-customized will confirm this:
xe vm-is-bios-customized uuid=<VM uuid>
For example:
xe vm-is-bios-customized \ uuid=7cd98710-bf56-2045-48b7-e4ae219799db This VM is BIOS-customized.
Note: When you start the VM, it will be started on the physical host from which you copied the BIOS strings. A VM can be BIOS-generic: the VM has generic XenServer BIOS strings; BIOS-customized: the VM has a copy of the BIOS strings of a particular host in the pool; without BIOS strings: immediately after its creation. Warning: It is your responsibility to comply with any EULAs governing the use of any BIOS-locked operating systems that you install.
Release Notes
There are many versions and variations of Windows with different levels of support for the features provided by XenServer. This section lists notes and errata for the known differences.
12
example, the first disk may show up as Disk 1, the next disk hotplugged as Disk 0, a subsequent disk as Disk 2, and then upwards in the expected fashion. There is a bug in the VLC player DirectX backend that causes yellow to be replaced by blue when playing video if the Windows display properties are set to 24-bit color. VLC using OpenGL as a backend works correctly, and any other DirectX- or OpenGL-based video player works too. It is not a problem if the guest is set to use 16-bit color rather than 24. The PV Ethernet Adapter reports a speed of 2 Gbps in Windows VMs. This speed is a hardcoded value and is not relevant in a virtual environment because the virtual NIC is connected to a virtual switch. The NIC will actually perform at the same rate as the physical NIC.
Windows 7
No known issues
Windows Vista
Microsoft Vista recommends a root disk of size 20GB or higher. The default size when installing this template is 24GB, which is 4GB greater than the minimum. Consider increasing this.
Windows XP SP3
Windows XP does not support disks larger than 2TB (terabytes) in size. See this article in the Windows Hardware Developer Central website.
13
Built-in
14
Distribution
Notes
Requires installing Citrix Tools for Virtual Machines after installing RHEL to apply the Citrix RHEL 4.8 kernel. Supported provided they use the 5.4 or later kernel. Supported provided they use the 5.4 or later kernel.
Red Hat Enterprise Linux 5.0, 5.1, 5.2, 5.3, 5.4 32-bit Red Hat Enterprise Linux 5.0, 5.1, 5.2, 5.3, 5.4 64-bit SUSE Linux Enterprise Server 9 SP4 SUSE Linux Enterprise Server 10 SP1, SP2 32bit/64-bit SUSE Linux Enterprise Server 10 SP3 32-bit
SUSE Linux Enterprise Server 10 SP3 64-bit SUSE Linux Enterprise Server 11 32-bit/64-bit CentOS 4.5, 4.6, 4.7, 4.8 CentOS 5.0, 5.1, 5.2, 5.3, 5.4 32-bit CentOS5.0, 5.1, 5.2, 5.3, 5.4 64-bit Oracle Enterprise Linux 5.0, 5.1, 5.2, 5.3, 5.4 32-bit Oracle Enterprise Linux 5.0, 5.1, 5.2, 5.3, 5.4 64-bit
Distributions not present in the above list are not supported. However, distributions that use the same installation mechanism as Red Hat Enterprise Linux 5 (for example Fedora Core 6) might be successfully installed using the same template. Note: Creating 32-bit Linux VMs on a host that has more than 128GB of memory is not supported.
15
allow quick and simple VM creation for use with XenServer product features such as XenMotion, Dynamic Memory Control, and High Availability. Warning: Demo Linux VMs should not be used for running production workloads. The VMs are instantiated by running the vm-install command on the CLI, or by cloning the template using XenCenter. For example, using the CLI on Linux:
xe vm-install template-name="Demo Linux VM" new-name-label=<demo>
When you first boot the VM you are prompted for a root password, a VNC password (for graphical use), and a hostname. You will need to add a network interface if you installed the VM using the CLI. Note: The Demo Linux VM template is only available if you install the separate Linux pack (that is, the linux.iso).
Specify the installation repository this should be a standard Debian mirror with at least the packages required to install the base system and the additional packages you plan to select during the Debian installer:
xe vm-param-set uuid=<UUID> other-config:install-repository=<path_to_repository>
An example of a valid repository path is http://ftp.<xx>debian.org/debian where <xx> is your country code (see the Debian mirror list for a list of these). For multiple installations Citrix recommends
16
using a local mirror or apt proxy to avoid generating excessive network traffic or load on the central repositories. 3. 4. 5. Start the VM; it boots straight into the Debian installer:
xe vm-start uuid=<UUID>
Follow the Debian Installer procedure to install the VM in the configuration you require. See below for instructions on how to install the guest utilities and how to configure graphical display.
Using the UUID returned, set the root disk to not be bootable:
xe vbd-param-set uuid=<root_disk_uuid> bootable=false
The result of this command should give you something like SCSI 0:0:0:0 for the name-label field. 5. Add a virtual CD-ROM to the new VM using the XenServer host CD drive name-label parameter as the cd-name parameter:
xe vm-cd-add vm=<vm_name> cd-name="<host_cd_drive_name_label>" device=3
6. 7. 8. 9.
Get the UUID of the VBD corresponding to the new virtual CD drive:
xe vbd-list vm-uuid=<vm_uuid> type=CD params=uuid --minimal
Insert the Debian Lenny installation CD into the CD drive on the XenServer host.
10. Open a console to the VM with XenCenter or an SSH terminal and follow the steps to perform the OS installation. 11. Start the VM; it boots straight into the Debian installer:
xe vm-start uuid=<UUID>
12. See the sections that follow for instructions on how to install the guest utilities and how to configure graphical display.
17
2.
Set the kernel command-line correctly for the VM before starting it. This can be done using XenCenter's New VM wizard or by executing an xe CLI command like the following:
xe vm-param-set uuid=<uuid> PV-args=<preseed_arguments>
Installing Red Hat, CentOS, Oracle Enterprise, and SUSE Enterprise Linux
This section provides an overview of installing Red Hat, CentOS, Oracle Enterprise, and SUSE Enterprise. For information about the general Linux VM installation process, see Installing Linux VMs.
18
4. Follow the process for installing the Linux Guest Agent, setting the time, and configuring the VNC. See the overview Installing Linux VMs.
Installing Red Hat, CentOS, Oracle Enterprise, and SUSE Enterprise Linux from vendor media
XenServer supports the installation of the following Linux operating systems from vendor media in the XenServer host DVD/CD-ROM drive: Red Hat Enterprise Linux 5.0-5.4, 32-bit Red Hat Enterprise Linux 5.0-5.4, 64-bit CentOS 4.5-4.6 CentOS 5.0-5.4, 32-bit CentOS 5.0-5.4, 64-bit Oracle Enterprise Linux 5.0-5.4, 32-bit Oracle Enterprise Linux 5.0-5.4, 64-bit SUSE Enterprise Linux, 10, SP1, SP2, 32-bit SUSE Enterprise Linux, 10, SP1, SP2, SP3, 64-bit SUSE Enterprise Linux, 11, 32-bit SUSE Enterprise Linux, 11, 64-bit Other Linux operating systems need to be installed from a network installation server. See the section called Installing Linux from a network installation server to a VM.
This command returns the UUID of the new VM. 4. 5. 6. Get the UUID of the root disk of the new VM:
xe vbd-list vm-uuid=<vm_uuid> userdevice=0 params=uuid --minimal
Using the UUID returned, set the root disk to not be bootable:
xe vbd-param-set uuid=<root_disk_uuid> bootable=false
The result of this command should give you something like SCSI 0:0:0:0 for the name-label field. 7. Add a virtual CD-ROM to the new VM using the XenServer host CD drive name-label parameter as the cd-name parameter:
xe vm-cd-add vm=<vm_name> cd-name="<host_cd_drive_name_label>" device=3
19
8. 9.
Get the UUID of the VBD corresponding to the new virtual CD drive:
xe vbd-list vm-uuid=<vm_uuid> type=CD params=uuid --minimal
12. Open a console to the VM with XenCenter or an SSH terminal and follow the steps to perform the OS installation. Note: The console in XenCenter supports VNC graphical installation of the Red Hat, Oracle, and CentOS operating systems. Ensure that the virtual machine has enough memory allocated for this to be enabled. If you set the memory allocation to 512MB or higher, you will be prompted to start VNC after the initial text screens. Choosing to continue using VNC and setting a password will enable the Switch to Graphical Console button.
20
Note: When installing a new Linux-based VM, it is important to fully finish the installation and reboot it before performing any other operations on it. This is analogous to not interrupting a Windows installation which would leave you with a non-functional VM.
To install a Linux VM from a network-accessible copy of vendor media using the CLI
1. Run the command
xe vm-install template=<template> new-name-label=<name_for_vm> \ sr-uuid=<storage_repository_uuid>
This command returns the UUID of the new VM. 2. 3. 4. Find the UUID of the network that you want to connect to. For example, if it is the one attached to xenbr0:
xe network-list bridge=xenbr0 --minimal
Set the install-repository key of the other-config parameter to the path of your network repository. For example, to use http://server/RedHat/5.0 as the URL of the vendor media:
xe vm-param-set uuid=<vm_uuid> \ other-config:install-repository=<http://server/redhat/5.0>
5. 6.
Start the VM
xe vm-start uuid=<vm_uuid>
Connect to the VM console using XenCenter or VNC and perform the OS installation.
3. 4.
On the command line, use vm-param-set to set the PV-args parameter to make use of a Kickstart file
xe vm-param-set uuid=<vm_uuid> PV-args=<"ks=http://server/path ksdevice=eth0">
Set the repository location so XenServer knows where to get the kernel and initrd from for the installer boot:
xe vm-param-set uuid=<vm_uuid> other-config:install-repository=<http://server/path>
Note:
21
To install using a kickstart file without the New VM wizard, you can add the appropriate command to the Advanced OS boot parameters text box. For example, for RHEL 5.4, this command would be ks=nfs:telos:/linux/distros/auto-install/rhel54.cfg.
If the kernel has been upgraded, or the VM was upgraded from a previous version, reboot the VM now. Note: CD-ROM drives and ISOs attached to Linux Virtual Machines appear as /dev/xvdd instead of as /dev/ cdrom as you might expect. This is because they are not true CD-ROM devices, but normal devices. When the CD is ejected by either XenCenter or the CLI, it hot-unplugs the device from the VM and the device disappears. This is different from Windows Virtual Machines, where the CD remains in the VM in an empty state.
22
3.
As a third alternative, independent_wallclock=1 may also be passed as a boot parameter to the VM.
Set up a VNC password (not having one is a serious security risk) using the vncpasswd command, passing in a filename to write the password information to. For example:
vncpasswd /etc/vncpass
4.
Modify your gdm.conf file (/etc/gdm/gdm.conf) to configure a VNC server to manage display 0 by extending the [servers] section as follows:
[servers] 0=VNC [server-VNC] name=VNC command=/usr/bin/Xvnc -geometry 800x600 -PasswordFile /etc/vncpass BlacklistTimeout=0 flexible=true
5.
Restart GDM, and then wait for the graphical console to be detected by XenCenter:
/etc/init.d/gdm restart
Note: You can check that the VNC server is running using a command like ps ax | grep vnc.
23
Before setting up your Red Hat VMs for VNC, be sure that you have installed the Linux guest agent. See the section called Installing the Linux guest agent for details. To configure VNC on Red Hat VMs, you need to modify the GDM configuration. The GDM configuration is held in a file whose location varies depending on the version of Red Hat Linux you are using. Before modifying it, first determine the location of this configuration file; this file will then be modified in a number of subsequent procedures in this section.
With configuration files on Red Hat Linux 3 and 4, this should be added above the [serverStandard] section. With configuration files on Red Hat Linux 5, this should be added into the empty [servers] section. 3. Modify the configuration so that the Xvnc server is used instead of the standard X server: If you are using Red Hat Linux 3 or 4, there will be a line just above that reads:
0=Standard
Modify it to read:
0=VNC
If you are using Red Hat Linux 5 or greater, add the above line just below the [servers] section and before the [server-VNC] section. 4. Save and close the file.
Restart GDM for your change in configuration to take effect, by running the command /usr/sbin/gdmrestart.
24
Note: Red Hat Linux uses runlevel 5 for graphical startup. If your installation is configured to start up in runlevel 3, change this for the display manager to be started (and therefore to get access to a graphical console). See the section called Checking runlevels for further details.
Firewall settings
The firewall configuration by default does not allow VNC traffic to go through. If you have a firewall between the VM and XenCenter, you need to allow traffic over the port that the VNC connection uses. By default, a VNC server listens for connections from a VNC viewer on TCP port 5900 + n, where n is the display number (usually just zero). So a VNC server setup for Display-0 will listen on TCP port 5900, Display-1 is TCP-5901, and so on. Consult your firewall documentation to make sure these ports are open. You might want to further customize your firewall configuration if you want to use IP connection tracking or limit the initiation of connections to be from one side only.
Alternatively, you can disable the firewall until the next reboot by running the command service iptables stop, or permanently by running chkconfig iptables off. This can of course expose additional services to the outside world and reduce the overall security of your VM.
where the value of the geometry parameter can be any valid screen width and height. 4. Save and close the file.
25
Use the arrow keys to select Network Services in the left menu, then Tab to the right menu and use the arrow keys to select Remote Administration. Press Enter. In the Remote Administration screen, Tab to the Remote Administration Settings section. Use the arrow keys to select Allow Remote Administration and press Enter to place an X in the check box. Tab to the Firewall Settings section. Use the arrow keys to select Open Port in Firewall and press Enter to place an X in the check box. Tab to the Finish button and press Enter. A message box is displayed, telling you that you will need to restart the display manager for your settings to take effect. Press Enter to acknowledge the message. The original top-level menu of YaST appears. Tab to the Quit button and press Enter.
stream tcp no nobody /usr/X11R6/bin/Xvnc :42 -inetd -once -query localhost -geometry 1024x768 -depth 16 UNLISTED 5901
2. 3. 4.
Save and close the file. Restart the display manager and xinetd service with the following commands:
26
SUSE Linux uses runlevel 5 for graphical startup. If your remote desktop does not appear, verify that your VM is configured to start up in runlevel 5. Refer to the section called Checking runlevels for details.
Firewall settings
By default the firewall configuration does not allow VNC traffic to go through. If you have a firewall between the VM and XenCenter, you need to allow traffic over the port that the VNC connection uses. By default, a VNC server listens for connections from a VNC viewer on TCP port 5900 + n, where n is the display number (usually just zero). So a VNC server setup for Display-0 will listen on TCP port 5900, Display-1 is TCP-5901, etc. Consult your firewall documentation to make sure these ports are open. You might want to further customize your firewall configuration if you want to use IP connection tracking or limit the initiation of connections to be from one side only.
Use the arrow keys to select Security and Users in the left menu, then Tab to the right menu and use the arrow keys to select Firewall. Press Enter. In the Firewall screen, Tab to the Firewall Configuration: Settings section. Use the arrow keys to select the Allowed Services in the left menu. Tab to the Firewall Configuration: Allowed Services fields on the right. Use the arrow keys to select the Advanced... button (near the bottom right, just above the Next button) and press Enter. In the Additional Allowed Ports screen, enter 5900 in the TCP Ports field. Tab to the OK button and press Enter. Tab back to the list of screens on the left side and use the arrow keys to select Start-Up. Tab back to the right and Tab to the Save Settings and Restart Firewall Now button and press Enter. Tab to the Next button and press Enter, then in the Summary screen Tab to the Accept button and press Enter, and finally on the top-level YaST screen Tab to the Quit button and press Enter. Restart the display manager and xinetd service with the following commands:
/etc/init.d/xinetd restart rcxdm restart
Alternatively, you can disable the firewall until the next reboot by running the rcSuSEfirewall2 stop command, or permanently by using YaST. This can of course expose additional services to the outside world and reduce the overall security of your VM.
27
server_args
where the value of the geometry parameter can be any valid screen width and height. 3. 4. Save and close the file. Restart the VNC server:
/etc/init.d/xinetd restart rcxdm restart
Checking runlevels
Red Hat and SUSE Linux VMs use runlevel 5 for graphical startup. This section describes how to verify that your VM is configured to start up in runlevel 5 and how to change it if it is not. 1. Check /etc/inittab to see what the default runlevel is set to. Look for the line that reads:
id:n:initdefault:
If n is not 5, edit the file to make it so. 2. You can run the command telinit q ; telinit 5 after this change to avoid having to actually reboot to switch runlevels.
Machine Name
A cloned VM is another computer, and like any new computer in a network, it must have a unique name within the network domain it is part of.
IP address
A cloned VM must have a unique IP address within the network domain it is part of. Generally, this is not a problem if DHCP is used to assign addresses; when the VM boots, the DHCP server will assign it an IP address. If the cloned VM had a static IP address, the clone must be given an unused IP address before being booted.
MAC address
There are two situations when Citrix recommends disabling MAC address rules before cloning: 1. In some Linux distributions, the MAC address for the virtual network interface of a cloned VM is recorded in the network configuration files. However, when you clone a VM, XenCenter assigns the new cloned
28
VM a different MAC address. As a result, when the new VM is started for the first time, the network does recognize the new VM and does not come up automatically. 2. Some Linux distributions use udev rules to remember the MAC address of each network interface, and persist a name for that interface. This is intended so that the same physical NIC always maps to the same eth<n> interface, which is particularly useful with removable NICs (like laptops). However, this behavior is problematic in the context of VMs. For example, if you configure two virtual NICs when you install a VM, and then shut it down and remove the first NIC, on reboot XenCenter shows just one NIC, but calls it eth0. Meanwhile the VM is deliberately forcing this to be eth1. The result is that networking does not work. If the VM uses persistent names, Citrix recommends disabling these rules before cloning. If for some reason you do not want to turn persistent names off, you must reconfigure networking inside the VM (in the usual way). However, the information shown in XenCenter will not match the addresses actually in your network.
Release Notes
Most modern Linux distributions support Xen paravirtualization directly, but have different installation mechanisms and some kernel limitations.
29
If you try to install RHEL 4.x on a VM that has more than two virtual CPUs (which RHEL 4.x does not support), an error message incorrectly reports the number of CPUs detected. RHEL 4.7 contains a bug which normally prevents it from booting on a host with more than 64GiB of RAM (Red Hat Bugzilla 311431). For this reason XenServer RHEL 4.7 guests are only allocated RAM addresses in the range below 64GiB by default. This may cause RHEL 4.7 guests to fail to start even if RAM appears to be available, in which case rebooting or shutting down other guests can cause suitable RAM to become available. If all else fails, temporarily shut down other guests until your RHEL 4.7 VM can boot. Once you have succeeded in booting your RHEL 4.7 VM, install the Citrix Tools for Virtual Machines and run the command:
xe vm-param-remove uuid=<vm_uuid> param-name=other-config \ param-key=machine-address-size
to remove the memory restriction. On some hardware (generally newer systems), the CPU will generate occasional spurious page faults which the OS should ignore. Unfortunately all versions of RHEL 4 fail to ignore the spurious fault and it causes them to crash (Red Hat Bugzilla 465914). This has been fixed in our kernel. The RHEL 4 VM templates have been set with the suppressspurious-page-faults parameter. This assures that the installation will continue safely to the point that the standard kernel is replaced with the Citrix-provided kernel. There is a performance impact with this parameter set, so, after the VM installation is complete, at the VM command prompt, run the command:
xe vm-param-remove uuid=<vm_uuid> other-config: \ param-key=suppress-spurious-page-faults
In RHEL 4.5 to 4.7, if a xenbus transaction end command fails it is possible for the suspend_mutex to remain locked preventing any further xenbus traffic. Applying the Citrix RHEL 4.8 kernel resolves this issue. [EXT-5] RHEL 4.7, 4.8, sometimes when there are many devices attached to a VM, there is not enough time for all of these devices to connect and startup fails. [EXT-17] In RHEL 4.5 to 4.8, use of the XFS filesystem can lead to kernel panic under exceptional circumstances. Applying the Citrix RHEL 4.8 kernel resolves this issue. [EXT-16 ] In RHEL 4.5 to RHEL 4.8, the kernel can enter no tick idle mode with RCU pending; this leads to a guest operating system lock up. Applying the Citrix RHEL 4.8 kernel resolves this issue. [EXT-21] In RHEL 4.7, 4.8, VMs may crash when a host has 64GiB RAM or higher configured. Applying the Citrix RHEL 4.8 kernel resolves this issue. [EXT-30] In RHEL 4.5 to 4.8 and 5.0 to 5.3, the network driver contains an issue that can, in rare circumstances, lead to a kernel deadlock. Applying the Citrix RHEL 4.8 kernel resolves this issue. [EXT-45]
30
You will be prompted to provide networking configuration for the new VM so that VNC communication can be enabled. The standard graphical installer will then be displayed.
CentOS 4
Please refer to the section called Red Hat Enterprise Linux 4.5 to 4.8 for the list of CentOS 4 release notes. Unlike RHEL4, CentOS includes a third-party updates mechanism known as yum. The xe-guestutilities RPM will install a XenServer entry for yum, allowing you to pick up kernel updates provided by Citrix using the standard update mechanism as they become available.
31
CentOS 5
Please refer to the section called Red Hat Enterprise Linux 5 for the list of CentOS 5 release notes.
to
FORCE_PERSISTENT_NAMES=no
32
Updating VMs
This chapter discusses updating VMs with new Linux kernel revisions, updating Windows operating systems, applying Windows Service Packs, and updates to XenServer PV drivers and VM utilities. Upgrades to VMs are typically required when moving to a new version of XenServer. The following are current issues involving upgrading VMs running on XenServer to this version: XenMotion of Windows VMs is not supported until the PV drivers are upgraded. Suspend/Resume of Windows VMs is not supported until the PV drivers are upgraded. The use of certain anti-virus and firewall applications can crash the Windows VM unless the PV drivers are upgraded.
33
34
35
This illustration shows how selecting a host and right-clicking on it is the only way to launch the Disk Image Import wizard. To start an Appliance Wizard, select the object in the XenCenter tree where you want to export from or import to, and then select one of the following: Action Export VMs as an appliance Import appliances Import a disk image Menu command File > Appliance Export File > Appliance Import Right-click the host where you want to import the image and select Disk Image Import
Tip: You can also start the Appliance Export and Appliance Import wizards by right-clicking on an object and selecting the menu command. When you launch an Appliance Wizard, the node you selected in the XenCenter tree determines the scope of the wizard. For example, if you select a host and then launch the Appliance Export Wizard, the wizard only displays the VMs that are powered off on that host.
36
Scope of wizard Powered off VMs on any host to which XenCenter is currently connected. All powered off VMs on all hosts in the pool. All powered off VMs on the host. Only the VM selected.
This illustration shows how when a user selects Host84 before launching the Appliance Export Wizard, the wizard automatically narrows its scope to only the powered off VMs on that host. The Appliance Import Wizard supports importing OVF appliance packages. However, due to subtle incompatibilities, the Appliance Import Wizard cannot import all OVF content. See the section called XenServer OVF Appliance Wizard requirements for a list of tested OVF content. The XenServer OVF Appliance Wizard also gives you the ability to export packages in OVF and OVA format. For example, you could export a complete XenApp farm that you have already prepared for deployment with Sysprep, Microsoft's System Preparation Utility for Windows deployments.
37
Citrix XenConvert 2.1 and higher XenServer OVF Appliance Wizard (this tool) The XenServer OVF Appliance Wizard requires the following: To run the XenServer OVF Appliance Wizard, you must be logged in as root or have the Pool Administrator Role Based Access Control (RBAC) role associated with your user account. DHCP has to be running on the management network XenServer is using. The XenServer OVF Appliance Wizard requires local storage on the server on which you are running it. When importing from non-XenServer sources, you may want to run the Operating System Fixups while importing the appliance. For more information about Operating System Fixups, see the section called Operating System Fixups.
More information
For more information about OVF and OVA formats, see the following:
38
CTX121652: [Overview of the Open Virtualization Format] (http://support.citrix.com/article/CTX121652) [Open Virtualization DSP0243_1.1.0.pdf) Format Specification] (http://www.dmtf.org/standards/published_documents/
39
Importing appliances
The Appliance Import Wizard lets you import appliances from OVF or OVA packages. When you import the appliance, it recreates the VMs described in the package in the target location you specify. These newly recreated VMs are configured with the same resources as the original VMs. Importing appliance packages consists of seven major tasks, which you perform with the XenServer OVF Appliance Wizard: 1. Selecting the package to import. 2. Reviewing (and accepting) the EULAs associated with the software in that appliance package. 3. Selecting the Home Server for the VMs. 4. Selecting the target location that you want to use as storage for the VMs in the package. 5. Selecting the network for the VMs in the package. 6. Providing responses for security settings in the package. 7. Running Operating System Fixups (enabled by default), a XenServer utility that fixes potential issues in the operating systems on the imported VMs. Each task corresponds with a wizard page. Errors may appear on the Progress page if the import is unsuccessful.
40
Where you launch the Appliance Import Wizard, determines the server that appears as the home server. For example, if you have a resource pool selected when you launch the wizard, the server that appears as Home Server is the entire pool or any individual hosts within that pool.
This illustration shows how selecting Pool30 when you launch the Import Appliance wizard causes the wizard to specify that entire pool as its Home Server. 3. Continue selecting options in the appliance wizard. Detailed information about the choices in each page, see the XenServer OVF Appliance Wizard help in the XenCenter Help.
41
The options to run Operating System Fixups appear on the following wizard pages: Wizard Import Appliance Disk Image Import Page Select advanced import options VM definition
Depending on the guest operating system and original hypervisor host, additional configuration changes, driver installation, or other actions may be required following using the fixup option. Tip: See CTX124961, Operating System Fixup in the XenCenter 5.6 OVF Appliance Plug-in for additional troubleshooting information. Requirements To run Operating System Fixups, you must have an ISO SR configured at the target XenServer or XenServer pool. If you do not have an ISO SR configured, you are prompted to configure and specify one. Note: XenServer does not support sharing a single ISO SR among many non-pooled XenServers. It is preferred that your XenServers are in a pool and the ISO SR is created to be used by all hosts in that pool. Importing a multiVM OVF package into a group of non-pooled XenServers may result in failed import due to the Fixup ISO not being found on each XenServer. It is important to ensure that when using non-pooled XenServers, that each host has a configured ISO SR with a Fixup ISO in the ISO SR. 1. Create an NFS or CIFS (Windows) share from a file server host. 2. Have a user account that has read/write access to this share. 3. Create an ISO SR (using the user account and share from above) using the CLI or XenCenter.
42
VM from its disk image, including the number of disk images associated with the VM, the processor, storage, network, and memory requirements and so on. Without this information, it can be much more complex and error-prone when trying to recreate the VM. Importing disk images consists of two major tasks, which you perform with the XenServer Disk Image Import Wizard: 1. Selecting a disk image to import. 2. Enter information for XenCenter to use to create the VM after the image is imported (that is, "defining" the VM). Note: Running Fixups on disk images may or may not be required. It is impossible to account for every potential device driver or other component installed and required by the original hardware platform (virtual or bare metal). In some cases, Fixups may not be able to ensure the disk imported will successfully boot as a XenServer VM. See CTX124961, Operating System Fixup in the XenCenter 5.6 OVF Appliance Plug-in for additional information regarding Fixup, operating systems and disk import types.
43
incompatibilities, host memory constraints, or ISO SR issues. Likewise, issues with the TransferVM template, a template specifically designed to facilitate importing and exporting VMs, may cause problems.
"TransferVM Missing."
44
Possible Causes If Cancel is pressed while importing an appliance package, the files created while attempting to import or export the appliance package are left in the destination folder (as debris) and need to be removed from the target XenServer. When Cancel is pressed, one of two things may occur: 1. A warning may appear stating that canceling the current operations may leave the targeted VMs unusable. In some situations, if you cancel an import, XenServer might not be able to return itself to a clean state and leaves the debris. If this occurs, the VM may be left in an unusable state. If you find a virtual disk image left over from a canceled import and attempt to use it, the virtual disk image will probably be incomplete and unusable. 2. If the import is canceled, XenServer attempts to clean up any debris remaining. This is done to leave XenServer in its pre-import state.
Corrective Action Delete the debris and attempt to reimport the package. If this fails, consider importing the individual disk image files in the OVF package using the Disk Image Import wizard.
The TransferVM template may not be installed or may have been accidentally deleted.
Reinstall XenServer 5.6 or higher and ensure the target XenServer has local storage prior to installation.
45
Possible Causes This error may occur for either of the following reasons: There are no active sessions (that is, no VMs shutdown) available for export. The TransferVM template is not installed on the host from which you are attempting to perform the action. The TransferVM template will not install unless the host has local storage.
Corrective Action Either shutdown the VMs you want to export or reinstall XenServer 5.6 or higher on the host, provided it has local storage.
Import Failures
The ISO SR may not contain the Fixup ISO. This may be a problem with stand alone hosts that are not in a pool trying to share the same ISO SR. XenServer does not support multiple un-pooled hosts sharing the same ISO SR and the Wizard will only select from the first ISO SR it finds. An attempt to import a multiVM OVF into two or more stand alone hosts that mount different ISO SRs.
Join hosts to a pool and mount an ISO SR. For standalone hosts that are not in a pool and that use a separate ISO SR, ensure each ISO SR has a copy of the Fixup ISO. Manually copy the Fixup ISO into the ISO SR if necessary.
The fixup process was enabled against a Windows XP or Windows Server 2003 WIM with an IDE controller. The fixup process was not enabled against a Windows XP or Windows Server 2003 WIM with a SCSI controller.
Delete the imported VM, rerun Disk Import Wizard and clear the Run Fixups check box. Delete the imported VM, rerun Disk Import Wizard and check the Run Fixups check box.
Important: Before attempting to reimport the appliance, delete any files created during the import from the folder containing the appliance package.
46
This will take some time. When the operation is completed successfully, you should see something like:
1187972+0 records in 1187972+0 records out
On a Windows computer
Windows computers do not have an equivalent operating system command to create an ISO. Most CDburning tools have a means of saving a CD as an ISO file. One simple and free utility is ISO Recorder. It works on Windows XP SP2/SP3, Windows 2000, and Windows Server 2003. Once installed, right-click on a CD/DVD drive and select Create image from CD from the context menu.
47
3. 4. 5.
Remove the first CD, put in the next one, and repeat for each of the CDs you have. Note: Copying the subsequent disks will overwrite some files, but these are generic files such as license.txt that appear on each CD, and this is not a problem.
NFS
To install over NFS you must meet certain conditions on the server: The installation directory must be exported To export your installation directory, edit the /etc/exports file and add an entry for /install to it:
/install *(ro)
Save the edited exports file and make the NFS daemon reread its configuration file:
exportfs -r
48
This configures the most basic read-only export to all hosts on our network. If you want to include more advanced options in your export, such as exporting to certain hosts only, or on a certain subnet only, see the man page for the exports file: exports (5). NFS needs to be installed and running To check, type the command:
showmount -e hostname
Running the showmount command without the hostname parameter will check the local system. If NFS is not active, you will see a message similar to
showmount: ServerA: RPC: Program not registered
FTP
To enable installation over FTP, you must allow FTP access to the installation directory on the server. This can be either anonymous FTP access or access through a named account with a password. If you want anonymous FTP to point to a different directory, you can use symlinks to point to the installation directory on the server.
HTTP
If you have a web server running and want to enable HTTP access to your installation server, add symlinks from your document root to the installation server directory to grant access. The installation server is now ready to use. Record the server name or IP address and the directory path to the installation directory you created.
49
VM crashes
If you are experiencing VM crashes, it is possible that a kernel crash dump can help identify the problem. If the crash is reproducible, follow this procedure to send the crash dumps to Citrix.
50
to ensure that the VM in question is shut down (the value of power-state will be halted). 2. You can use the UUID as follows:
xe-edit-bootloader -u <linux_vm_uuid> -p <partition_number>
The partition number represents the slice of the disk which has the filesystem. In the case of the default Debian template, this is 1 since it is the first partition. 3. You will be dropped into an editor with the grub.conf file for the specified VM loaded. Make the changes to fix it, and save the file, exit the editor, and start the VM.
51
Index
C
Cloning VMs, 4, 28 Configuring VNC firewall settings, RHEL, 25 firewall settings, SLES, 27 for Red Hat VMs, 23 for SUSE VMs, 25 Converting a VM to a template, 2 Creating an ISO image, 47 Creating VMs converting VM to a template, 2 From pre-configured template, 2 Importing an exported VM, 2 installing OS from a CD or ISO, 2 installing OS from a network repository, 2 overview, Windows, 2 XenConvert, 2
sysprep, 10
T
Template definition of, Linux VMs, 2 pre-configured (Debian), 2 Windows VMs, 2 Time handling, in Linux VMs time handling, in VMs, 22 Troubleshooting Linux VM boot problems, 51 Linux VM general problems, 50 Windows VM general problems, 51
V
Virtual devices, limitations on, 4 VMs installing by P2V, 4 non-paravirtualized (Windows), paravirtualized, 16 Paravirtualized, 19, 20 Remote Desktop, 10
D
Drivers, Windows paravirtualized, 9
W
Windows multi-processor HAL, SMB/CIFS share, mounting ISO from, 8
I
Importing VMs, 2, 5 Installation server, for installing Red Hat VMs, 48
L
Limits, virtual disk space, 2 Linux guest agent, 22 runlevels, 28
X
XenConvert, 4
N
NFS server, mounting ISO from, 8
P
P2V Windows, 4 XenConvert, 4 Physical to virtual conversion (see P2V)
R
Release notes Linux VMs, 29 Windows VMs, 12 Remote Administration, SUSE Linux, 26
S
Sysprep, for preparing Windows VM for cloning
52