Difference between revisions of "Xen Document Days/TODO"

From Xen
m (Big work items)
(Cleaned up TODO list)
Line 5: Line 5:
 
{{Info|Feel free to add items. Feel free to comment on items. When you comment, please add a sub bullet and sign with '''<nowiki>~~~~: your comment</nowiki>''' which will resolve into your wikiname and date.}}
 
{{Info|Feel free to add items. Feel free to comment on items. When you comment, please add a sub bullet and sign with '''<nowiki>~~~~: your comment</nowiki>''' which will resolve into your wikiname and date.}}
   
=== Big work items ===
+
=== Open work items ===
   
  +
==== Xen Wikipedia page ====
* Review and update http://en.wikipedia.org/wiki/Xen - in particular the "Host: Unix-like systems" is out-of-date. The Guest section is too.
 
  +
Review and update http://en.wikipedia.org/wiki/Xen - in particular the "Host: Unix-like systems" is out-of-date. The Guest section is too.
   
  +
==== Getting started with Xen using xen-tools ====
* Given that we are getting a lot more total novices to the community I was wondering whether it makes sense to add something like: getting started with xen-tools. See http://www.virtuatopia.com/index.php/Building_a_Xen_Guest_Domain_using_Xen-Tools and http://xen-tools.org/software/xen-tools/ and http://www.gossamer-threads.com/lists/xen/users/246910 this. Interesting quote:
 
  +
Given that we are getting a lot more total novices to the community I was wondering whether it makes sense to add something like: getting started with xen-tools. See http://www.virtuatopia.com/index.php/Building_a_Xen_Guest_Domain_using_Xen-Tools and http://xen-tools.org/software/xen-tools/ and http://www.gossamer-threads.com/lists/xen/users/246910 this.
   
  +
==== Make [[:Category:Host_Install|Host Install]] and [[:Category:Guest_Install|Guest Install]] more useful ====
Pretty similar to the setup I use all the time on my own. "Just works",
 
  +
* [[User:Lars.kurth|Lars.kurth]] Note: both pages share [[Template:Distro_Resources]]
once you get around some issues, particularly the network setup.
 
  +
* The feedback I got was that the table should contain under other resources
  +
** Link to index/category page (maybe tidy these)
  +
** Link to host install for that distro (typically a link to a distro doc)
  +
** Link to guest install for that distro (typically a link to a distro doc)
  +
** Docs for many distros are missing: note that people will usually search for docs on the Xen wiki first. So often a shim, just linking to an external doc is good enough
   
  +
==== Feature Status Doc ====
1. Do not dedicate physical partitions to each VMs. It's too unflexible,
 
  +
For end-users showing which features are expected to work in 4.0 and, possibly 4.1.2. Most people don't know if Feature X is even supposed to work on the Xen build their distro uses. And almost everything is broken somewhere! This is tricky since 4.0 (debian) still has rough edges like immediate panic when doing mem-set on a HV domU by mistake
almost nobody uses it so (unless they really know what they are doing),
 
  +
** [[User:Lars.kurth|Lars.kurth]] One way to approach handle this is to go through release notes and old blog posts and collate a table.
you will not find much references about issues specific to that setup.
 
The most simple way is to store VM's disks as files. A better one, but
 
little bit more complex, to use LVM volumes. If you are already familiar
 
with LVM you probably want to go straight for LVM.
 
   
  +
==== XCP Overview ====
2. Set up your network manually, not via xend's network scripts. Do not
 
  +
Similar to [[Xen Overview]])
attempt to export raw ethX to your VM's. Instead, set up a ethernet
 
bridge on each ethX you wish to use, which is a regular way. Then, in
 
the config file of each VM, you may specify to which bridge it should be
 
plugged.
 
http://wiki.xen.org/wiki/XenNetworking
 
   
  +
==== A Xen Performance Tuning Guide ====
3. Use xen-tools to perform the initial install of the VM's, it does
 
  +
* Which workloads work for which virt mode. Network considerations. NUMA. VCPU Pinning. Etc.
good job taking care of lots of small details. The default config file
 
  +
* Examples from the KVM world: [http://sheepdog.taobao.org/people/zituan/kvm_tuning.html Guest perf tuning], [http://www.linux-kvm.org/page/Tuning_KVM KVM options affecting performance], [http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/index.jsp?topic=%2Fliaat%2Fliaattunkickoff.htm Comprehensive guide covering pinning, caching, memory, huge pages, etc.]
is heavily commented.
 
http://www.virtuatopia.com/index.php/Building_a_Xen_Guest_Domain_using_Xen-Tools
 
   
  +
==== Improve networking documentation ====
* '''Distros and Users''': we need to provide better information on Xen users and distros
 
  +
Expand [[Host Configuration/Networking]] docs to cover non-bridge network configurations supported by xend (e.g. routed, nat'd). Possibly split into a page per config.
** [[:Category:Host_Install]] and [[:Category:Guest_Install]] are a good start
 
  +
** What is missing are links that show how to '''create distro bugs''' for specific distros, etc.
 
  +
==== A Xen Security Guide ====
** Other documentation which points users to specific distros. Maybe we should have a page per distro that contains Xen with relevant information int it?
 
  +
The different options in Xen for Security, trade-offs, how to set them up, how to test Xen for security and how to optimize for different scenarios
*** --[[User:Lars.kurth|Lars.kurth]] 13:50, 28 May 2012 (UTC): see [[Template:Distro_Resources]]
 
* '''Feature status docs''' for end-users showing which features are expected to work in 4.0 and, possibly 4.1.2. Most people don't know if Feature X is even supposed to work on the Xen build their distro uses. And almost everything is broken somewhere! This is tricky since 4.0 (debian) still has rough edges like immediate panic when doing mem-set on a HV domU by mistake
 
** [[User:Lars.kurth|Lars.kurth]] One way to approach handle this is to go through release notes and old blog posts and collate a table.
 
* '''An XCP Overview''' (similar to [[Xen Overview]])
 
* '''A Xen Security Guide:''' The different options in Xen for Security, trade-offs, how to set them up, how to test Xen for security and how to optimize for different scenarios
 
 
** [[User:Lars.kurth|Lars.kurth]] 09:48, 27 March 2012 (UTC): [[:Category:Security]] contains some security related docs
 
** [[User:Lars.kurth|Lars.kurth]] 09:48, 27 March 2012 (UTC): [[:Category:Security]] contains some security related docs
 
** [[User:Lars.kurth|Lars.kurth]] 11:01, 4 April 2012 (UTC): It would be good if we could document a) XSM, b) Introspection API, c) Xen and SELinux in Dom0, d) Memory Access API (introduced in 4.1)
 
** [[User:Lars.kurth|Lars.kurth]] 11:01, 4 April 2012 (UTC): It would be good if we could document a) XSM, b) Introspection API, c) Xen and SELinux in Dom0, d) Memory Access API (introduced in 4.1)
Line 47: Line 42:
 
** http://bits.xensource.com/Xen/docs/user.pdf
 
** http://bits.xensource.com/Xen/docs/user.pdf
   
  +
==== VCPU pinning ====
In progress:
 
  +
Some more documentation outside the context of NUMA, see [[Xen_Numa_Scheduling_and_Placement]]
* An Overview over Xen for people who do not yet use Xen, to help them make a decision on whether Xen is for them (aka "Why Xen" and "Which Xen") (be sure to mention "fastest" ;)
 
** [[User:Lars.kurth|Lars.kurth]] 09:48, 27 March 2012 (UTC): am working on this and am almost ready to publish on the wiki
 
   
  +
==== xenpm usage recommendations ====
Done recently:
 
  +
There is [[Xen power management]] and [[Xenpm command]] which may all be outdated. These should probably be reviewed and updated.
* '''A Xen Overview''' which explains the top level architectural features and options, trade-offs and links to examples tutorials that show how you set these up
 
** [[User:Lars.kurth|Lars.kurth]] 09:48, 27 March 2012 (UTC): [[:Category:Overview]] is a starting point, but this is patchy right now
 
** [[User:Lars.kurth|Lars.kurth]] 22:35, 19 April 2012 (UTC): We have [[Paravirtualization (PV)]] & [[PV on HVM]]. I also have some bits and pieces that I have written for the new website, which could be moved to the wiki.
 
** [[User:Lars.kurth|Lars.kurth]] 22:35, 19 April 2012 (UTC): [[Getting Started]] and [[Xen Overview v2]]
 
* '''A Xen Tuning Guide:''' different options in Xen impacting performance, how to set them up, how to tune
 
** [[User:Lars.kurth|Lars.kurth]] 09:48, 27 March 2012 (UTC): [[:Category:Performance]] contains some performance related docs
 
* List i.e. stuff what to test after packaging. This would avoid the current state of affairs where most distros are infact broken w/re to Xen. See [[Distros]]
 
   
  +
==== HOWTO : using xm trigger to poweroff or firing off NMIs ====
=== Categories ===
 
  +
Howto on using xm trigger to poweroff or firing off NMIs.
* Review the Debian and Openstack categories and add documentation that exists in other places.
 
* Installation Guides
 
** ijc: How to install on various distros. Tag with [[:Category:Host Install]] and [[:Category:Guest_Install]]. We seem to only have one or two of these but I thought we had more. Perhaps need to link to external sites (e.g. distro wikis/docs)
 
** [[User:Lars.kurth|Lars.kurth]] 09:52, 27 March 2012 (UTC): moved a few from [[:Category:RefToExternalArticle]] to Guest Install. May be worth looking at http://grantmcwilliams.com/tech/virtualization/xen-howtos and http://grantmcwilliams.com/tech/virtualization/xcp-howtos
 
* [[User:Ijc|Ijc]] 06:14, 28 April 2012 (UTC): [[:Category:Host Configuration]] has some TBDs in it and needs more pages adding.
 
* [[User:Ijc|Ijc]] 06:47, 28 April 2012 (UTC): [[Host OS Install Considerations]] as a place to describe consdierations which are useful before installing the domain 0 OS.
 
   
  +
==== HOWTO: Setting boot order for domUs (PV and HVM) ====
=== Admin docs ===
 
* Setting boot order for domUs (PV and HVM)
+
Howto set up boot order for domUs (all virt modes)
* Chaining pypxeboot and pygrub
 
** ijc: pypxeboot == tools/misc/xenpvnetboot?
 
** [[User:Lars.kurth|Lars.kurth]] 10:35, 27 March 2012 (UTC): I found http://sourceforge.net/projects/pypxeboot/ - I don't actually know how added this request. Is pypxeboot popular at all?
 
[[User:Fheigl|Fheigl] I added that. It is somewhat common, OVM 2 and OVM 3 rely on it for PXE installs. I'm not sure if xenpvnetboot is the same, or works. The use case is "you want to use the same installation server for Xen VMs and phys. servers. You want to be able to reinstall them based on PXE reply.
 
There is documentation for pypxeboot, but there is no (afaik) documentation for how pygrub is used as a fallback loader.
 
We wasted many days just to get some hack that can't even load a newer kernel. Which sucks, in the end you spend more time/money making PV PXE boot work than you save by using virtualized servers.
 
   
  +
==== HOWTO: Chain pypxeboot and pygrub====
  +
How to chain [http://sourceforge.net/projects/pypxeboot/ pypxeboot] and pygrub
  +
* [[User:Lars.kurth|Lars.kurth]] 10:35, 27 March 2012 (UTC): Is pypxeboot popular at all?
  +
* [[User:Fheigl|Fheigl] I added that. It is somewhat common, OVM 2 and OVM 3 rely on it for PXE installs. I'm not sure if xenpvnetboot is the same, or works. The use case is "you want to use the same installation server for Xen VMs and phys. servers. You want to be able to reinstall them based on PXE reply.
  +
* [[User:Fheigl|Fheigl] There is documentation for pypxeboot, but there is no (afaik) documentation for how pygrub is used as a fallback loader. We wasted many days just to get some hack that can't even load a newer kernel. Which sucks, in the end you spend more time/money making PV PXE boot work than you save by using virtualized servers.
   
  +
=== Done Recently ===
* xenpm usage recommendations
 
  +
* [[Xen Overview]] which explains the top level architectural features and options, trade-offs and links to examples tutorials that show how you set these up
* setting up vnc mime magic for xen in firefox (oracle has srpms for a vnc client plugin)
 
  +
* List i.e. stuff what to test after packaging. This would avoid the current state of affairs where most distros are infact broken w/re to Xen. See [[Distros]]
  +
* Installation Guides: How to install on various distros. Tag with [[:Category:Host Install]] and [[:Category:Guest_Install]].
 
* vcpu pinning
 
* vcpu pinning
* using xm trigger to poweroff or firing off NMIs
 
* Expand [[Host Configuration/Networking]] docs to cover non-bridge network configurations supported by xend (e.g. routed, nat'd). Possibly split into a page per config.
 
   
 
== Developer Docs ==
 
== Developer Docs ==

Revision as of 15:04, 22 June 2012

Go back to Xen Document Days

Requested Documentation

Icon Info.png Feel free to add items. Feel free to comment on items. When you comment, please add a sub bullet and sign with ~~~~: your comment which will resolve into your wikiname and date.


Open work items

Xen Wikipedia page

Review and update http://en.wikipedia.org/wiki/Xen - in particular the "Host: Unix-like systems" is out-of-date. The Guest section is too.

Getting started with Xen using xen-tools

Given that we are getting a lot more total novices to the community I was wondering whether it makes sense to add something like: getting started with xen-tools. See http://www.virtuatopia.com/index.php/Building_a_Xen_Guest_Domain_using_Xen-Tools and http://xen-tools.org/software/xen-tools/ and http://www.gossamer-threads.com/lists/xen/users/246910 this.

Make Host Install and Guest Install more useful

  • Lars.kurth Note: both pages share Template:Distro_Resources
  • The feedback I got was that the table should contain under other resources
    • Link to index/category page (maybe tidy these)
    • Link to host install for that distro (typically a link to a distro doc)
    • Link to guest install for that distro (typically a link to a distro doc)
    • Docs for many distros are missing: note that people will usually search for docs on the Xen wiki first. So often a shim, just linking to an external doc is good enough

Feature Status Doc

For end-users showing which features are expected to work in 4.0 and, possibly 4.1.2. Most people don't know if Feature X is even supposed to work on the Xen build their distro uses. And almost everything is broken somewhere! This is tricky since 4.0 (debian) still has rough edges like immediate panic when doing mem-set on a HV domU by mistake

    • Lars.kurth One way to approach handle this is to go through release notes and old blog posts and collate a table.

XCP Overview

Similar to Xen Overview)

A Xen Performance Tuning Guide

Improve networking documentation

Expand Host Configuration/Networking docs to cover non-bridge network configurations supported by xend (e.g. routed, nat'd). Possibly split into a page per config.

A Xen Security Guide

The different options in Xen for Security, trade-offs, how to set them up, how to test Xen for security and how to optimize for different scenarios

VCPU pinning

Some more documentation outside the context of NUMA, see Xen_Numa_Scheduling_and_Placement

xenpm usage recommendations

There is Xen power management and Xenpm command which may all be outdated. These should probably be reviewed and updated.

HOWTO : using xm trigger to poweroff or firing off NMIs

Howto on using xm trigger to poweroff or firing off NMIs.

HOWTO: Setting boot order for domUs (PV and HVM)

Howto set up boot order for domUs (all virt modes)

HOWTO: Chain pypxeboot and pygrub

How to chain pypxeboot and pygrub

  • Lars.kurth 10:35, 27 March 2012 (UTC): Is pypxeboot popular at all?
  • [[User:Fheigl|Fheigl] I added that. It is somewhat common, OVM 2 and OVM 3 rely on it for PXE installs. I'm not sure if xenpvnetboot is the same, or works. The use case is "you want to use the same installation server for Xen VMs and phys. servers. You want to be able to reinstall them based on PXE reply.
  • [[User:Fheigl|Fheigl] There is documentation for pypxeboot, but there is no (afaik) documentation for how pygrub is used as a fallback loader. We wasted many days just to get some hack that can't even load a newer kernel. Which sucks, in the end you spend more time/money making PV PXE boot work than you save by using virtualized servers.

Done Recently

  • Xen Overview which explains the top level architectural features and options, trade-offs and links to examples tutorials that show how you set these up
  • List i.e. stuff what to test after packaging. This would avoid the current state of affairs where most distros are infact broken w/re to Xen. See Distros
  • Installation Guides: How to install on various distros. Tag with Category:Host Install and Category:Guest_Install.
  • vcpu pinning

Developer Docs

Docs that need attention or are missing

  • Make XAPI docs (built from source) available on xen.org
  • PVOPS portal on xen.org - Konrad volunteered
  • some more xenstore docs (i.e. recent python bindings that were sent to the -users list
  • Using libxenstat python bindings (imo they're broken)
  • More PV protocol docs (see recent patches to blkif.h for example)
  • Document xenstore paths used by guests and toolstack etc
  • Xen command line options documentation in tree (started, but not complete)

Wiki Maintenance

Fix artcles that need attention

Review Categorization

We need to go through some of the categies on the http://wiki.xen.org/wiki/Main_Page and decise whether there are documents in each category that need to be highlighted in a trail, etc.

Loose ends on migration