Distros: Difference between revisions
Rcpavlicek (talk | contribs) |
|||
(29 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
== LINUX |
== LINUX DISTRIBUTIONS: WHAT TO TEST AFTER PACKAGING == |
||
=== mkinitrd |
=== mkinitrd, mkinitramfs and dracut === |
||
mkinitrd |
mkinitrd, mkinitramfs or dracut should be able to generate bootloader entries for Xen Project, see [[XenParavirtOps#GRUB1_and_GRUB2_.28Booting.29|this page]] for an example. |
||
=== Dom0 support in Linux === |
=== Dom0 support in Linux === |
||
The Linux kernel packaged with the distribution should be compiled with Xen support, see [[Mainline_Linux_Kernel_Configs|this page]]. Booting the machine with Xen and the default kernel should complete successfully. |
The Linux kernel packaged with the distribution should be compiled with Xen Project support, see [[Mainline_Linux_Kernel_Configs|this page]]. Booting the machine with Xen Project and the default kernel should complete successfully. If a user installs Xen Project dom0 packages, then the default boot entry should be changed to one that brings up the Xen Project kernel and dom0 successfully. |
||
=== init scripts: xencommons === |
=== init scripts: xencommons === |
||
Xen relies on an init script called '''xencommons''' to initialize all the services. |
Xen Project relies on an init script called '''xencommons''' to initialize all the services. |
||
It should be executed by default at boot time. |
It should be executed by default at boot time. |
||
=== qemu-xen-traditional and qemu-xen === |
=== qemu-xen-traditional and qemu-xen === |
||
The two device model binaries Xen relies on should be installed in the location where Xl expect them to be, that by default is '''/usr/lib/xen/bin''', and can be changed modifying '''tools/libxl/_libxl_paths.h'''. |
The two device model binaries Xen Project relies on should be installed in the location where Xl expect them to be, that by default is '''/usr/lib/xen/bin''', and can be changed modifying '''tools/libxl/_libxl_paths.h'''. |
||
=== Xen udev scripts === |
=== Xen Project udev scripts === |
||
The Xen udev scripts should be installed correctly: after creating the default bridge named '''xenbr0''', starting a guest with a vif, the vif should be added to the bridge automatically. |
The Xen Project udev scripts should be installed correctly, see [http://xenbits.xenproject.org/hg/xen-4.1-testing.hg/raw-file/494aa5ecd2e1/tools/hotplug/Linux/xen-backend.rules /etc/udev/rules.d/xen-backend.rules]: after manually creating the default bridge named '''xenbr0''', starting a guest with a vif, the vif should be added to the bridge automatically. |
||
=== External Links === |
|||
[https://bugzilla.redhat.com/show_bug.cgi?id=738085 patch to reduce spurious Xen Project entries in grub menu] |
|||
== LINUX DISTRIBUTIONS: SUGGESTED CONFIGURATIONS == |
|||
=== LVM === |
|||
Setting up '''lvm''' is strongly suggested: storing raw disk images in lvm volumes is the fastest possible configuration as you can exploit the in-kernel disk backend (CONFIG_XEN_BLKDEV_BACKEND in the Linux kernel config). |
|||
Then you can use: |
|||
disk = [ 'phy:/dev/vol0/lvm_volume0,xvda,w' ] |
|||
in your VM config file. |
|||
See [[ Storage_options | this page ]] for more informations about the storage options available. |
|||
=== Tuning === |
|||
You can find a list of tuning parameters [[Tuning | here]]. |
|||
=== Linux Kernel Config Options === |
|||
The following document contains [[Mainline_Linux_Kernel_Configs#Configuring_the_Kernel|a list of Xen Project Related Linux Kernel Config Options]] |
|||
== LINUX DISTRIBUTIONS: USER EXPERIENCE == |
|||
=== Meta packages === |
|||
For convenience, a Xen Project meta-package should be provided that contains the hypervisor, the xen tools and documentation. |
|||
=== Installation === |
|||
The basic flow of Xen Project installation should be: |
|||
* Install distro; |
|||
* Install Xen Project packages or the Xen Project meta-package (as part of this the bootloader entries would be updated); |
|||
* Update-grub (or equivalent); |
|||
* Reboot, and you are ready to go. |
|||
=== Man pages === |
|||
Xen Project comes with man pages, see |
|||
* [[Xen_Man_Pages|Xen Project Man Pages (via Wiki)]] |
|||
* [http://xenbits.xenproject.org/docs/unstable/man/ Xen Project Man pages for unstable] |
|||
They should be installed automatically with the xen-tools package and made available to users. The source and make files of the man pages (and documentation in general) are in [http://xenbits.xenproject.org/hg/xen-unstable.hg/ xen-unstable.hg]/docs |
|||
== LINUX DISTRIBUTIONS: THINGS TO TEST IN VIRTUAL MACHINES == |
|||
=== Networking === |
|||
The paravirtualized network driver needs to work and be enabled by default. |
|||
Test that '''xen-netfront''' is included in the ramdisk of your installer. People may need it for PXE boot installs. |
|||
=== Disk === |
|||
Make sure the disk paravirtualized driver is working and enabled by default. |
|||
Test that '''xen-blkfront''' is included in the ramdisk of your installer otherwise the installer won't see any available disks. |
|||
[[Category:Xen]] |
|||
[[Category:Developers]] |
Latest revision as of 14:58, 21 April 2014
LINUX DISTRIBUTIONS: WHAT TO TEST AFTER PACKAGING
mkinitrd, mkinitramfs and dracut
mkinitrd, mkinitramfs or dracut should be able to generate bootloader entries for Xen Project, see this page for an example.
Dom0 support in Linux
The Linux kernel packaged with the distribution should be compiled with Xen Project support, see this page. Booting the machine with Xen Project and the default kernel should complete successfully. If a user installs Xen Project dom0 packages, then the default boot entry should be changed to one that brings up the Xen Project kernel and dom0 successfully.
init scripts: xencommons
Xen Project relies on an init script called xencommons to initialize all the services. It should be executed by default at boot time.
qemu-xen-traditional and qemu-xen
The two device model binaries Xen Project relies on should be installed in the location where Xl expect them to be, that by default is /usr/lib/xen/bin, and can be changed modifying tools/libxl/_libxl_paths.h.
Xen Project udev scripts
The Xen Project udev scripts should be installed correctly, see /etc/udev/rules.d/xen-backend.rules: after manually creating the default bridge named xenbr0, starting a guest with a vif, the vif should be added to the bridge automatically.
External Links
patch to reduce spurious Xen Project entries in grub menu
LINUX DISTRIBUTIONS: SUGGESTED CONFIGURATIONS
LVM
Setting up lvm is strongly suggested: storing raw disk images in lvm volumes is the fastest possible configuration as you can exploit the in-kernel disk backend (CONFIG_XEN_BLKDEV_BACKEND in the Linux kernel config).
Then you can use:
disk = [ 'phy:/dev/vol0/lvm_volume0,xvda,w' ]
in your VM config file. See this page for more informations about the storage options available.
Tuning
You can find a list of tuning parameters here.
Linux Kernel Config Options
The following document contains a list of Xen Project Related Linux Kernel Config Options
LINUX DISTRIBUTIONS: USER EXPERIENCE
Meta packages
For convenience, a Xen Project meta-package should be provided that contains the hypervisor, the xen tools and documentation.
Installation
The basic flow of Xen Project installation should be:
- Install distro;
- Install Xen Project packages or the Xen Project meta-package (as part of this the bootloader entries would be updated);
- Update-grub (or equivalent);
- Reboot, and you are ready to go.
Man pages
Xen Project comes with man pages, see
They should be installed automatically with the xen-tools package and made available to users. The source and make files of the man pages (and documentation in general) are in xen-unstable.hg/docs
LINUX DISTRIBUTIONS: THINGS TO TEST IN VIRTUAL MACHINES
Networking
The paravirtualized network driver needs to work and be enabled by default. Test that xen-netfront is included in the ramdisk of your installer. People may need it for PXE boot installs.
Disk
Make sure the disk paravirtualized driver is working and enabled by default. Test that xen-blkfront is included in the ramdisk of your installer otherwise the installer won't see any available disks.