Xen Document Days/TODO: Difference between revisions

From Xen
Jump to navigationJump to search
No edit summary
 
(216 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{WarningLeft|The Xen Project Wiki has been subject to a severe spam attack in the last several months. To solve this and keep the wiki usable for everyone, we had to lock down the wiki and create an editors group. Please [http://xenproject.org/component/content/article/100-misc/145-request-to-be-made-a-wiki-editor.html fill out this form] and we will add you to the group.}}
Go back to [[Xen Document Days]]
----
Go back to [[Xen Project Document Days]]



== Requested Documentation ==
== Requested Documentation ==


{{Info|Feel free to comment on items using the following convention:
{{InfoLeft|Feel free to comment on items using the following convention:
<pre>* {{Comment|~~~~:}} your comment</pre>
<pre>* {{Comment|~~~~:}} your comment</pre>
Feel free to add new workitems using the following convention:
Feel free to add new workitems using the following convention:
<pre>==== Workitem ===
<pre>==== Workitem ====
~~~~: work-item description
~~~~: work-item description
</pre>}}
</pre>}}


== THEME OF THE MONTH: "Beginner Information" ==
=== In progress (some just need double checking whether finished) ===


We've seen an increase of interest from potential new users recently and we need to make sure that people can successfully get started with 4.6 using our current set of Wiki pages. We have been slowly replacing the '''xm''' references with '''xl''', but we could use people to read over many of the existing pages to make sure they still make sense with the latest release.
==== A Xen Performance Tuning Guide ====
* Which workloads work for which virt mode. Network considerations. NUMA. VCPU Pinning. Etc.
* 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.]
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 19:50, 25 June 2012 (UTC):}} Work has been done on [[Tuning]]. Not sure whether more needs to be done.
* {{Comment|[[User:StefanoStabellini|Stefano]] 30 June 2012:}} The guide is in a decent state but I will keep improving it during the next doc days.
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 15:54, 19 September 2012 (UTC):}} Needs a quick sanity check for Xen 4.2
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 12:48, 22 January 2013 (UTC):}} Is this done?


Pages of special interest include:
==== Better XCP Overview Documentation ====
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 08:02, 25 September 2012 (UTC):}} See [[XCP Overview]] & [[XCP Release Features]] - these need a little bit more work


* [[Xen Project Beginners Guide]] (recently revised, but could use a read-through)
==== Update docs for transition to git ====
* [[Getting Started]]
* [[Xen Project Best Practices]]
* [[Xen Common Problems]]


And, of course, any other page which needs to reflect the realities of working with 4.6.
We are planning to switch the primary Xen repositories to git at some point, a bunch of documentation will necessarily require updating.


== Other Items of Interest ==
* [[Submitting Xen Patches]]
* [[Compiling Xen From Source]]
* Presumably numerous other places...
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 13:46, 29 January 2013 (UTC):}} [[Submitting_Xen_Patches_with_Git]] has been created
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 13:46, 29 January 2013 (UTC):}} [[:Category:Developers]] links to both documents
* Not sure this has been entirely completed. Probably needs to be linked better and made accessible


The following topics also need addressing:
==== 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
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 09:48, 27 March 2012 (UTC):}} [[:Category:Security]] contains some security related docs
* {{Comment|[[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 Docs that where migrating content would make sense and update such as (we can attach PDF's to the wiki now for starters, or we can use a [http://www.appropedia.org/Appropedia:Porting_PDF_files_to_MediaWiki conversion tool]
** http://bits.xensource.com/Xen/docs/user.pdf
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 15:59, 19 September 2012 (UTC):}} Some good articles came out of XenSummit NA (these can be built upon).
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 14:01, 29 January 2013 (UTC):}} Changes to [[Securing Xen]] & [[Driver Domain]]
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 14:01, 29 January 2013 (UTC):}} Got funding to document XSM; contract in place, but contractor is currently ill. This is the main outstanding issues.


==== Xen PV Architecture Documentation ====
=== Items Requested by Users ===


The following requests have appeared in our IRC channel and UserVoice for additional documentation. Recent requests include the following (feel free to add additional topics as they appear):
Something like a SDM for Xen PV "processors".


* Development Documentation: An overview of the driver architecture. This may already exist, but it needs to be more prominently visible. If it's out there, it is not as easy to find as it should be.
Add pages to [[:Category:Paravirtualised Architecture]]
* User Documentation: Simple example of moving a VM from one machine to another offline and possibly changing toolsets as it goes. Wei recently gave the summary below in ##xen. We need a page with more meat on the bones, particularly for migrating between toolkits and across multiple versions of the hypervisor (e.g., moving from 4.1 to 4.4).
xm save domain image; scp image user@remote:~; scp domu.cfg user@remote:~;
modify domu.cfg on remote host; xl restore
* User Documentation: Update to the [[Xen_Windows_GplPv]] doc. The drivers are still used, but the information on the page is dated. It needs a refresh.
* Build a NEW HOW-TO describing how to create a Xen 4.5.1 AMD64 environment. This should include sub-HOWTOs for networking and DomU creation.
From Uservoice:
All the examples for installing and using Xen are currently antiquated.
Can someone just record how they set up a new system using
Ubuntu 14/15, Xen 4.5.1, and XAPI/xl? Sections on setting up
networking, passthru, BIOS bugs and *NIX/Win/OSX would be
exactly what is needed.


=== New HowTos Needed ===
* [[X86 Paravirtualised Memory Management]]
We've got a lot of good information in the documentation, but it isn't always in a form that will help someone use a particular feature for the first time. Or, the information is present, but it might need to be brought up-to-date.
** Needs OS specifics adding (e.g. Linux paravirt_ops)
* Grant Tables
* Event Channels
* I/O (blk in OK shape, net could catch up)
* ...
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 14:03, 29 January 2013 (UTC):}} [[Event Channel Internals]] was added
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 14:03, 29 January 2013 (UTC):}} Not sure how complete


Some of these possible topics include:
<hr>

* Installing on ARM (need a basic HowTo)
* Using Xen Project with common applications (see [http://www.xenproject.org/help/questions-and-answers/citrix-netscaler-not-working-in-xen-4-4-0.html this Q&A post] about Citrix Netscaler)
* Get up and running with MirageOS
* HowTo use smbios_firmware option. See [http://www.gossamer-threads.com/lists/xen/devel/313599 this thread] for background.
* Any other niche topic which doesn't have a good HowTo-type doc page

=== Man pages loose ends ===
* [http://lists.xenproject.org/archives/html/xen-devel/2015-04/msg02814.html move the xenstat/xentrace manpages into docs]
* there are a few misc documents scattered through tools/ which would be better moved into docs/

=== Other Pages loose ends and questions ===
* [[Talk:Setting_boot_order_for_domUs]]

=== Remnants of the Great 4.5 Clean-Up ===
There are a lot of pages which rely on '''xm''' which need to be updated to '''xl'''. If you notice one and don't have time to fix it, add it here for others to do:
* [[Xen_Project_Beginners_Guide]] (should default to '''xl''', and give a nod to '''xm''' for old releases)
** [[User:Lars.kurth|Lars.kurth]] 12:00, 27 February 2015 (UTC) : This may not be entirely straightforward and may need to wait until we have a Debian version shipping Xen 4.5 - although jessie ships 4.4. Some of the text also refers to quite old xen versions, which should be looked at. For example it does use xen-tools and other external tools are in use and someone will need to go through the page and check whether everything works as intended.
** For example xen-tools, xt-create-xen-config seems to have something which writes a sudo stanza for you, involving xm. xm-create-image has the ability to start images with xm. It does NOT have a config option (--xen-toolstack=xl) for changing the command, but contains a heuristic to try and figure our what to use (see [https://github.com/xtaran/xen-tools/search?utf8=%E2%9C%93&q=sub+findXenToolstack]). Thus, it may be easy to fix, although AFAICT it isn't used everywhere. Information from "dpkg -L xen-tools | xargs grep -e '\bxm\b' |less". Overall conclusion: there are some nits to pick, but by and large it will work just fine with xl. The package ought to be updated.

* [[XenCommonProblems]]
* [[Xen_FAQ_High_Availability]]
* [[Xen_Project_Best_Practices]]

=== Performance-related Documentation ===
The documentation on Performance Tuning seems thin, given the importance of the subject:
* [[:Category:Performance]] Lists the Performance docs currently available. It seems rather sparse.
* [[Network_Throughput_and_Performance_Guide]] Has lots of interesting information, but it is oriented for XenServer/XCP. This needs to be recast as a true Xen Project document.
* [[Tuning_Xen_for_Performance]] Is potentially the most important document, but it has only a few topics and not that many details. There is some discussion about this page in section [http://wiki.xenproject.org/wiki/Xen_Document_Days/TODO#A_Xen_Performance_Tuning_Guide 3.12]

=== Integration Documentation ===
These documents are for projects which users need to use in conjunction with Xen Project. The goal of these documents is not to repeat the documentation found in other projects, but to give people the essential information required to integrate them into their Xen Project installation.

Most of these documents are still quite new and can benefit from improvements by people who have used these projects.

* Using [[Ceph]] storage with Xen Project
* Using [[Gluster]] file system with Xen Project
* Using [[ConVirt]] virtualization management platform with Xen Project
* Using Xen Project in [[OpenStack]] clouds
* Using Xen Project in [[CloudStack]] clouds
* Using Xen Project in [[OpenNebula]] clouds
* [[Unikernels]] (e.g., Mirage OS, LING, HaLVM, OSv, etc.) and how they relate to Xen Project

=== Missing bits in Beginners Guide ===
[[Xen_Project_Beginners_Guide]] has a few TODOs in it. In particular, it is missing some diagrams

=== (IMPORTANT) Linux Distros ===
It seems that the list of Linux Distros which support Xen is a lot larger than listed on this wiki.
* [http://www.funtoo.org/Xen Funtoo]
* [https://wiki.mageia.org/en/XEN Mageia]
* [https://www.univention.de/en/products/ucs/ Univention Corporate Server (UCS)]
* Are there others?


=== Easy tasks for Beginners ===
=== Easy tasks for Beginners ===
You may weant to read [[Help:Contents|Wiki Help]] if you do not have an account.
You may want to read [[Help:Contents|Wiki Help]] if you do not have an account.


==== Migrate useful blog posts to wiki ====
==== Migrate useful blog posts to wiki ====
Sift through blog.xen.org and copy useful posts to wiki. This will mainly be a reformatting exercise. Before you copy an article, perform a search on the wiki (headline or key word) to see whether the post exists already. If in doubt, ask on the IRC channel.
Sift through [http://blog.xenproject.org/ blog.xenproject.org] and copy useful posts to wiki. This will mainly be a reformatting exercise. Before you copy an article, perform a search on the wiki (headline or key word) to see whether the post exists already. If in doubt, ask on the IRC channel.


==== Fix articles that need attention ====
==== Fix articles that need attention ====
Line 77: Line 120:
==== Pages With Comments or Improvement Suggestions ====
==== Pages With Comments or Improvement Suggestions ====
* We ask users to highlight issues using '''talk pages''', following the conventions outlined in [[Help:Talk Pages]]. Comments made using these conventions can be identified using the [[:Category:Pages with comments]].
* We ask users to highlight issues using '''talk pages''', following the conventions outlined in [[Help:Talk Pages]]. Comments made using these conventions can be identified using the [[:Category:Pages with comments]].

==== Links to Developer Documents on XenBits ====
There are a number of developer-related documents which are hosted on [http://xenbits.xenproject.org/docs/unstable/index.html XenBits] which should be locatable through this Wiki. Ideally, someone should work backwards from the [http://xenbits.xenproject.org/docs/unstable/index.html XenBits document index] to make sure each document exists in a link from the appropriate Wiki page.

If no appropriate Wiki page exists, one should be created or listed here for creation. For function-specific docs which don't necessarily deserve a Wiki page, we should have a catch-all page to let people know that these docs exist.


==== Missing Pages ====
==== Missing Pages ====
* [[Special:WantedPages]] - You can find missing pages by going to this link. There are several courses of actoin that can be taken:
* [[Special:WantedPages]] - You can find missing pages by going to this link. There are several courses of action that can be taken:
** The page is needed : Add <code><nowiki>{{TODO|With a comment}}</nowiki></code> to the top of the page
** The page is needed : Add <code><nowiki>{{TODO|With a comment}}</nowiki></code> to the top of the page
** The page is not needed : Remove the reference to the page (follow the link in the bracket besides the page)
** The page is not needed : Remove the reference to the page (follow the link in the bracket besides the page)
Line 86: Line 134:


{{Comment|[[User:Double-p|Double-p]] 09:55, 25 February 2013 (UTC):}} There are a gazillion Template-Whatever including a TODO, really needed?
{{Comment|[[User:Double-p|Double-p]] 09:55, 25 February 2013 (UTC):}} There are a gazillion Template-Whatever including a TODO, really needed?

{{Comment|[[User:Lars.kurth|Lars.kurth]] 17:40, 25 March 2013 (UTC):}} See [[#Special:WantedPages_broken]]
{{Comment|[[User:Lars.kurth|Lars.kurth]] 17:40, 25 March 2013 (UTC):}} See [[#Special:WantedPages_broken]]

==== Update links to defunct gentoo-wiki.com site ====

According to [http://www.gentoo-wiki.info/] it is lost and not coming back. That site has archives but it seems like [http://wiki.gentoo.org/wiki/] is the new home. Pages referring to gentoo-wiki.info ought to be updated.


<hr>
<hr>


=== Xen : Open work items ===
=== Xen : Open work items ===

==== Documentation for bootloader (grub) integration ====

Need to document available `/etc/default/grub` settings such as `GRUB_CMDLINE_XEN`, `GRUB_CMDLINE_XEN_DEFAULT``, and `GRUB_CMDLINE_LINUX_XEN_REPLACE` + `GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT` (which override the default `GRUB_CMDLINE_LINUX` and `GRUB_CMDLINE_LINUX_DEFAULT` for Xen entries. This could be improved both in upstream grub and in our docs.

==== Review and Update: xenpm usage recommendations ====
There is [[Xen power management]] and [[Xenpm command]] which may all be outdated. These should probably be reviewed and updated.
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 10:09, 12 February 2015 (UTC):}} There has been a bit of activity on [[Talk:Xen power management]] which needs to be merged

==== User focused guide for setting up host EFI boot ====

We have http://xenbits.xenproject.org/docs/unstable/misc/efi.html but could use something a bit more user focused, e.g. a walkthrough type guide.


==== UEFI Secure Boot ====
==== UEFI Secure Boot ====
Write a document on how to sign the xen binary for UEFI Secure Boot. Potential reference here: [http://www.rodsbooks.com/efi-bootloaders/secureboot.html Dealing With Secure Boot]
Write a document on how to sign the xen binary for UEFI Secure Boot. Potential reference here: [http://www.rodsbooks.com/efi-bootloaders/secureboot.html Dealing With Secure Boot]


==== Manpages for xe command ====
==== Mirage OS ====
While much documentation is available at [http://www.openmirage.org/docs/ their website], we need to have pages here which describe Mirage OS and give useful pointers to their docs.
Write manpages for xe and it's 361 subcommands.

* A team led by [[user:GrantMcWilliams|Grant McWilliams]] and including [[user:Matthew.Spah|Matthew Spah]], [[user:Lisa.Nguyen|Lisa Nguyen]] and [[user:MRWebberOne|Mike Webber]] is currently working on documenting the xe command and will continue to do so until completed. Moving the source repo to xen-org has been [[http://lists.xen.org/archives/html/xen-api/2012-09/msg00053.html proposed]].
Ideally, it would be good to have extensive documentation for this project on this Wiki, as Mirage OS is being fostered by Xen Project.

==== Documentation on lib(xen)vchan ====

The header has some stuff, but a more complete guide would be useful.

The usage of the example code is also not documented. http://lists.xen.org/archives/html/xen-users/2014-01/msg00162.html has some (incomplete) info.

==== Update [[Xen Windows GplPv]] page ====
The page is sorely out of date (e.g., the download pages don't appear to exist anymore). Even though there are other Windows PV drivers, this set is still in demand.


==== Describe the different ways, and necessary components, to create PVs using xl ====
==== Describe the different ways, and necessary components, to create PVs using xl ====
Line 114: Line 187:
All in all, this a complex topic that needs clarification. Doing this based on the lowest common denominator, xl, would clarify many things. In addition, baseline performance data on all of the above would help a great deal. Matthias volunteered to run the majority of needed perf tests
All in all, this a complex topic that needs clarification. Doing this based on the lowest common denominator, xl, would clarify many things. In addition, baseline performance data on all of the above would help a great deal. Matthias volunteered to run the majority of needed perf tests


==== HOWTO : using xl trigger to poweroff or firing off NMIs ====
==== Review and Update: xenpm usage recommendations ====
Howto on using xl trigger to poweroff or firing off NMIs.
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 : How to Set Up Nested Virtualization ====
See [http://lists.xen.org/archives/html/xen-users/2012-10/msg00311.html this thread]


==== HOWTO: Chain pypxeboot and pygrub====
==== HOWTO: Chain pypxeboot and pygrub====
Line 130: Line 197:
* {{Comment|[[User:Fheigl|Fheigl]]:}} How could it be popular given the state of documentation. <= Key issue to the left of this sentence.
* {{Comment|[[User:Fheigl|Fheigl]]:}} How could it be popular given the state of documentation. <= Key issue to the left of this sentence.
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 16:03, 19 September 2012 (UTC):}} wondering whether [https://vimeo.com/46125332 this video] contains what is needed
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 16:03, 19 September 2012 (UTC):}} wondering whether [https://vimeo.com/46125332 this video] contains what is needed
* {{Comment|[[User:Ijc|Ijc]] 11:01, 25 June 2014 (UTC):}} Although I've not watched the whole thing I stepped through that video enough to see all the slides (I think) and I didn't see anything about this topic or anything like it.
* {{Comment|[[User:Ijc|Ijc]] 11:17, 25 June 2014 (UTC):}} I've downloaded pypxeboot 0.0.3 and as far as I can tell the fallback to pygrub is supposed to happen automatically if pxelinyx.cfg says to do a local boot. If this doesn't Just Work then I think that is a code bug rather than a documentation issue. I'd recommend retiring this docs TODO in favour of a bug report to the pypxeboot authors and/or xen-devel. I googled around a bit and didn't find any existing bug reports anywhere.


==== Refactor/refresh ARM h/w information ====

* '''(DONE)''' [[Xen ARM with Virtualization Extensions]] effectively duplicates the list of supported h/w in [[Xen_ARM_with_Virtualization_Extensions#Hardware|#Hardware]] and [[Xen_ARM_with_Virtualization_Extensions#Platform_specific_configuration|#Platform specific configuration]], make it a single list.
* Update [[Xen_ARM_with_Virtualization_Extensions/Arndale|Arndale]] info to be less Linaro specific now that mainline is usable.
* Refactor [[Xen ARM with Virtualization Extensions/OdroidXU]] and [[Xen ARM with Virtualization Extensions/Arndale]] into a generic Eynos page + board specific notes. (and check other platform vs. board combinations).
<hr>
<hr>


=== Visually distinguish Xen, MirageOS and Community Documentation better ===
=== XCP : Open work items ===
{{Comment|[[User:Lars.kurth|Lars.kurth]] 15:32, 28 January 2013 (UTC):}} Users are getting confused when looking at wiki pages. If there was a visual way to distinguish Xen, MirageOS and Other content better, this would help. We could use colors and skinning when it comes to various elements, as well as mascots/logos:

==== XCP Beginners Guide ====
{{Comment|[[User:Lars.kurth|Lars.kurth]] 15:32, 28 January 2013 (UTC):}} We are missing the equivalent of the [[Xen Beginners Guide]] for XCP.
* {{Comment|[[User:Double-p|Double-p]] 09:39, 25 March 2013 (UTC):}} see [[XCP Beginners Guide]] for review/additions

==== Make titles of XCP and XAPI documentation consistent ====
{{Comment|[[User:Lars.kurth|Lars.kurth]] 13:09, 28 January 2013 (UTC):}} Often XCP related docs do not have XCP in the title, this makes it hard to find XCP related documents in titles. This is really hurting XCP users. Maybe this needs to be followed through in page categorisation also. Here is my proposal:
* XCP related user documents should start with <code><nowiki>XCP:</nowiki></code>
* Design documents - these are design documents should probably be labelled <code><nowiki>Component-Name:</nowiki></code>, e.g. <code><nowiki>XAPI:</nowiki></code>, etc.
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 16:36, 28 January 2013 (UTC):}} Would need to take [[#Visually_distinguish_Xen.2C_XCP_and_Community_Documentation_better|the next item]] into account. In other words using '''XCP:...''', '''XCP:XAPI:...''', etc. would make more sense and would allow implementing namespaces later.

'''Also see:'''
* [http://lists.xen.org/archives/html/xen-api/2013-01/msg00223.html Proposal on xen-api list]

==== Visually distinguish Xen, XCP and Community Documentation better ====
{{Comment|[[User:Lars.kurth|Lars.kurth]] 15:32, 28 January 2013 (UTC):}} Users are getting confused when looking at wiki pages. If there was a visual way to distinguish Xen, XCP and Other content better, this would help. We could use colors and skinning when it comes to various elements, as well as masocts/logos:
* For example: [[Help:Contents]] has a different feel (and colour scheme)
* For example: [[Help:Contents]] has a different feel (and colour scheme)
* This could be replicated in trail boxes and other elements
* This could be replicated in trail boxes and other elements
* We can also use mascots (note we don't have an XCP mascot)
* We can also use mascots


'''But first, I need to investigate what is possible.'''
'''But first, I need to investigate what is possible.'''


{{Comment|[[User:Lars.kurth|Lars.kurth]] 16:14, 28 January 2013 (UTC):}} Looks as if the only way this can be done is via [http://www.mediawiki.org/wiki/Manual:Using_custom_namespaces Custom Namespaces]. The only way to do this properly is to
{{Comment|[[User:Lars.kurth|Lars.kurth]] 16:14, 28 January 2013 (UTC):}} Looks as if the only way this can be done is via [http://www.mediawiki.org/wiki/Manual:Using_custom_namespaces Custom Namespaces]. The only way to do this properly is to
* Have different namespaces for Xen, XCP, ... and Community stuff and keep all the common stuff in Xen
* Have different namespaces for Xen, MirageOS, ... and Community stuff and keep all the common stuff in Xen
* The name spaces could then be styled differently, for example the '''Help''' namespace includes the '''ns-12''' style into the body attributes, whereas the '''Main (default)''' namespace uses the '''ns-14''' style.
* The name spaces could then be styled differently, for example the '''Help''' namespace includes the '''ns-12''' style into the body attributes, whereas the '''Main (default)''' namespace uses the '''ns-14''' style.
* Custom namespaces can be created by changing the config and are linked to custom styles
* Custom namespaces can be created by changing the config and are linked to custom styles
Line 163: Line 222:


'''Implications''' of using custom namespaces:
'''Implications''' of using custom namespaces:
* '''Search''': Pages in a custom namespace do not show up in default search results. So if we had a custom XCP namespace, it would mean that search results for XCP would not show up. One would need to go to '''Advanced Search''' and select XCP
* '''Search''': Pages in a custom namespace do not show up in default search results. So if we had a custom MirageOS namespace, it would mean that search results for MirageOS would not show up. One would need to go to '''Advanced Search''' and select MirageOS
* '''Rename''': Renaming pages is possible and as straightforward as renaming pages
* '''Rename''': Renaming pages is possible and as straightforward as renaming pages
* '''Xen Namespace''': The Xen namespace exists already, this may need to be renamed
* '''Xen Namespace''': The Xen namespace exists already, this may need to be renamed
Line 185: Line 244:
===== '''Issue 3:''' Missing categories are spamming the list =====
===== '''Issue 3:''' Missing categories are spamming the list =====
* Solution: mark with {{tl|Stub category}}
* Solution: mark with {{tl|Stub category}}
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 18:03, 25 March 2013 (UTC):}} Started marking pages with {{tl|Stub category}}

==== Categories are not returned in search ====
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 13:54, 29 January 2013 (UTC):}} Categories do not get returned when searching. To find a category, once has to go to Advanced, click Categories and search for say ''security''.
* We need to investigate whether there are better options for search (e.g. additional mediawiki plug-ins) or config options to change this behaviour


==== Categories & Indexes ====
==== Categories & Indexes ====
Line 199: Line 255:


=== Docs that need attention or are missing ===
=== Docs that need attention or are missing ===
* Make XAPI docs (built from source) available on xen.org
* Make XAPI docs (built from source) available on XenProject.org
* some more xenstore docs (i.e. recent python bindings that were sent to the -users list)
* PVOPS portal on xen.org - Konrad volunteered
** {{Comment|[[User:Ijc|Ijc]] 12:13, 25 June 2014 (UTC):}} I don't think these are included in Xen? Need a reference.
* some more xenstore docs (i.e. recent python bindings that were sent to the -users list
* Using libxenstat python bindings (imo they're broken)
* Using libxenstat python bindings (imo they're broken)
** {{Comment|[[User:Ijc|Ijc]] 12:13, 25 June 2014 (UTC):}} Is this a bug report? If they are broken we should fix them (as well as potentially documenting them)
* More PV protocol docs (see recent patches to blkif.h for example)
* More PV protocol docs (see recent patches to blkif.h for example)
** {{Comment|[[User:Ijc|Ijc]] 12:13, 25 June 2014 (UTC):}} blkif.h and netif.h are perhaps the most critical ones and those are now pretty good. But the rest (fbif.h, kbdif.h, pciif.h, usbif.h, tmpif.h and vscsiif.h) could all stand to be improved.
* Document xenstore paths used by guests and toolstack etc
* Document xenstore paths used by guests and toolstack etc
** {{Comment|[[User:Ijc|Ijc]] 16:10, 26 November 2012 (UTC):}} This is now in tree: http://xenbits.xen.org/docs/unstable/misc/xenstore-paths.html
** {{Comment|[[User:Ijc|Ijc]] 16:10, 26 November 2012 (UTC):}} This is now in tree: http://xenbits.xen.org/docs/unstable/misc/xenstore-paths.html


== Done Recently ==
== Done Recently ==
==== Submitting Xen Patches ====
[[user:Dunlapg|George Dunlap]]: Updated [[Submitting Xen Patches]] to have recommended workflow for git; moved Mercurial-specifc instructions to [[Submitting Xen Patches - mercurial]] .


=== In progress (some just need double checking whether finished) ===
==== Document release signing keys and fingerprints etc ====
* [[FreeBSD_Dom0]] - confirmed up-to-date (Feb, 2015)
We should publish the key ids and fingerprints somewhere.
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 13:54, 29 January 2013 (UTC):}} See [http://www.xen.org/projects/xenhv_keys.html OpenPGP keys]

==== Better Statements on Compatibility ====
There seems to be some confusion in the wider Linxu community about XL/XM compatibility. Maybe some specific questions in an FAQ/the release notes. Also migration compatibility comes up often. Any articles related to compatibility should be listed in [[:Category:Compatibility]], which I am willing to clean up.
* {{Comment|[[User:Anthony|Anthony]] 14:33, 26 November 2012 (UTC):}} I add a bunch of pages to the category, and add few link in the category to upgrade from xend to xl.
* {{Comment|[[User:Anthony|Anthony]] 17:19, 26 November 2012 (UTC):}} I also redirect [[XL in Xen 4.2]] to [[XL]] as they had both the same content minus few things.
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 12:48, 22 January 2013 (UTC):}} Is this done?
* {{Comment|[[User:Ijc|Ijc]] 16:39, 25 January 2013 (UTC):}} I think we also need to cover compatibility confusion about 3.x vs 4.x.
* {{Comment|[[User:Ijc|Ijc]] 15:03, 28 January 2013 (UTC):}} I've added [[Xen Version Compatibility]] and a link from [[Xen FAW Compatibility]]. I think this is probably done for now?

==== Security related docs ====
[[user:Dunlapg|George Dunlap]]: Revamped [[Driver_Domain]] and [[Securing_Xen]]


==== cpupools intro / howto ====
==== Draft a list of Questions for a User Survey ====
* [[User:Lars.kurth|Lars.kurth]] 10:09, 30 April 2014 (UTC) : See [[Xen Project User Survey]]
[[user:Dunlapg|George Dunlap]]: See [[Cpupools_Howto]]
* [[User:Lars.kurth|Lars.kurth]] 4 Feb 2015 (UTC) : Russell and Sarah are driving this now


==== Clear up Xen TODO List ====
* [[Setting_boot_order_for_domUs]]
* [[XenDevelopmentProjects]] - although this will need maintaining
* Revamp http://wiki.xen.org/wiki/Xen_PCI_Passthrough. Should be more organized, easier to follow, less verbose, more thorough, and more up-to-date.
* 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.
* Make [[:Category:Host_Install|Host Install]] and [[:Category:Guest_Install|Guest Install]] more useful
** {{Comment|[[User:Lars.kurth|Lars.kurth]]:}} Note: both pages share [[Template:Distro_Resources]]
** Docs for many distros are missing: identify what docs are missing or out of date and put them on the todo list
* Feature Status Doc : [[Xen_Release_Features]]
* [[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]].
*[[Tuning]]
* vcpu pinning (part of [[Tuning]])


==== Xen 4.3 / 4.4 Documentation : Spice Config Example for upstream QEMU ====
==== Document Policy on Maintenance Releases ====
Take [http://lists.xenproject.org/archives/html/xen-users/2013-06/msg00423.html this thread] and convert into an Example
Which releases are supported, for how long. Owners. As well as a mechanism for individuals (or vendors) to take ownership of older releases (as is the case for Xen 3.4).
* {{Comment|[[User:Ijc|Ijc]] 16:07, 26 November 2012 (UTC):}} Attempt to document current process: http://lists.xen.org/archives/html/xen-devel/2012-11/msg01389.html
* {{Comment|[[User:Lars.kurth|Lars.kurth]] 12:48, 22 January 2013 (UTC):}} Is this done, see [[Xen_Maintenance_Releases]]?
* {{Comment|[[User:Ijc|Ijc]] 14:01, 22 January 2013 (UTC):}} Doc is complete and patches to reference it are in the various trees.


{{Comment|[[User:Lars.kurth|Lars.kurth]] 16:56, 9 April 2014 (UTC)}} Created [[SPICE_support_in_Xen]] for now
==== Document {deb,rpm,tar}-pkg targets in kernel ====


[[Mainline_Linux_Kernel_Configs]] talks about the obsolete and Debian specific <code>make-kpkg</code> tool. Should reference the kernels own <code>foo-pkg</code> targets instead.
* {{Comment|[[User:Ijc|Ijc]] 12:12, 28 January 2013 (UTC):}} Done. Made a bunch of other cleanups too.


[[Category:Community]]
[[Category:Community]]

Latest revision as of 09:54, 19 January 2016

Icon Ambox.png The Xen Project Wiki has been subject to a severe spam attack in the last several months. To solve this and keep the wiki usable for everyone, we had to lock down the wiki and create an editors group. Please fill out this form and we will add you to the group.

Go back to Xen Project Document Days


Requested Documentation

Icon Info.png Feel free to comment on items using the following convention:
* {{Comment|~~~~:}} your comment

Feel free to add new workitems using the following convention:

==== Workitem ====
~~~~: work-item description


THEME OF THE MONTH: "Beginner Information"

We've seen an increase of interest from potential new users recently and we need to make sure that people can successfully get started with 4.6 using our current set of Wiki pages. We have been slowly replacing the xm references with xl, but we could use people to read over many of the existing pages to make sure they still make sense with the latest release.

Pages of special interest include:

And, of course, any other page which needs to reflect the realities of working with 4.6.

Other Items of Interest

The following topics also need addressing:

Items Requested by Users

The following requests have appeared in our IRC channel and UserVoice for additional documentation. Recent requests include the following (feel free to add additional topics as they appear):

  • Development Documentation: An overview of the driver architecture. This may already exist, but it needs to be more prominently visible. If it's out there, it is not as easy to find as it should be.
  • User Documentation: Simple example of moving a VM from one machine to another offline and possibly changing toolsets as it goes. Wei recently gave the summary below in ##xen. We need a page with more meat on the bones, particularly for migrating between toolkits and across multiple versions of the hypervisor (e.g., moving from 4.1 to 4.4).
xm save domain image; scp image user@remote:~; scp domu.cfg user@remote:~; 
modify domu.cfg on remote host; xl restore
  • User Documentation: Update to the Xen_Windows_GplPv doc. The drivers are still used, but the information on the page is dated. It needs a refresh.
  • Build a NEW HOW-TO describing how to create a Xen 4.5.1 AMD64 environment. This should include sub-HOWTOs for networking and DomU creation.
From Uservoice:
All the examples for installing and using Xen are currently antiquated.
Can someone just record how they set up a new system using 
Ubuntu 14/15, Xen 4.5.1, and XAPI/xl? Sections on setting up 
networking, passthru, BIOS bugs and *NIX/Win/OSX would be 
exactly what is needed.

New HowTos Needed

We've got a lot of good information in the documentation, but it isn't always in a form that will help someone use a particular feature for the first time. Or, the information is present, but it might need to be brought up-to-date.

Some of these possible topics include:

  • Installing on ARM (need a basic HowTo)
  • Using Xen Project with common applications (see this Q&A post about Citrix Netscaler)
  • Get up and running with MirageOS
  • HowTo use smbios_firmware option. See this thread for background.
  • Any other niche topic which doesn't have a good HowTo-type doc page

Man pages loose ends

Other Pages loose ends and questions

Remnants of the Great 4.5 Clean-Up

There are a lot of pages which rely on xm which need to be updated to xl. If you notice one and don't have time to fix it, add it here for others to do:

  • Xen_Project_Beginners_Guide (should default to xl, and give a nod to xm for old releases)
    • Lars.kurth 12:00, 27 February 2015 (UTC) : This may not be entirely straightforward and may need to wait until we have a Debian version shipping Xen 4.5 - although jessie ships 4.4. Some of the text also refers to quite old xen versions, which should be looked at. For example it does use xen-tools and other external tools are in use and someone will need to go through the page and check whether everything works as intended.
    • For example xen-tools, xt-create-xen-config seems to have something which writes a sudo stanza for you, involving xm. xm-create-image has the ability to start images with xm. It does NOT have a config option (--xen-toolstack=xl) for changing the command, but contains a heuristic to try and figure our what to use (see [1]). Thus, it may be easy to fix, although AFAICT it isn't used everywhere. Information from "dpkg -L xen-tools | xargs grep -e '\bxm\b' |less". Overall conclusion: there are some nits to pick, but by and large it will work just fine with xl. The package ought to be updated.

Performance-related Documentation

The documentation on Performance Tuning seems thin, given the importance of the subject:

Integration Documentation

These documents are for projects which users need to use in conjunction with Xen Project. The goal of these documents is not to repeat the documentation found in other projects, but to give people the essential information required to integrate them into their Xen Project installation.

Most of these documents are still quite new and can benefit from improvements by people who have used these projects.

  • Using Ceph storage with Xen Project
  • Using Gluster file system with Xen Project
  • Using ConVirt virtualization management platform with Xen Project
  • Using Xen Project in OpenStack clouds
  • Using Xen Project in CloudStack clouds
  • Using Xen Project in OpenNebula clouds
  • Unikernels (e.g., Mirage OS, LING, HaLVM, OSv, etc.) and how they relate to Xen Project

Missing bits in Beginners Guide

Xen_Project_Beginners_Guide has a few TODOs in it. In particular, it is missing some diagrams

(IMPORTANT) Linux Distros

It seems that the list of Linux Distros which support Xen is a lot larger than listed on this wiki.

Easy tasks for Beginners

You may want to read Wiki Help if you do not have an account.

Migrate useful blog posts to wiki

Sift through blog.xenproject.org and copy useful posts to wiki. This will mainly be a reformatting exercise. Before you copy an article, perform a search on the wiki (headline or key word) to see whether the post exists already. If in doubt, ask on the IRC channel.

Fix articles that need attention

Review Categorization

Pages With Comments or Improvement Suggestions

Links to Developer Documents on XenBits

There are a number of developer-related documents which are hosted on XenBits which should be locatable through this Wiki. Ideally, someone should work backwards from the XenBits document index to make sure each document exists in a link from the appropriate Wiki page.

If no appropriate Wiki page exists, one should be created or listed here for creation. For function-specific docs which don't necessarily deserve a Wiki page, we should have a catch-all page to let people know that these docs exist.

Missing Pages

  • Special:WantedPages - You can find missing pages by going to this link. There are several courses of action that can be taken:
    • The page is needed : Add {{TODO|With a comment}} to the top of the page
    • The page is not needed : Remove the reference to the page (follow the link in the bracket besides the page)
    • Note that the list of Wanted pages contains lots of needed translations and categories, which you can ignore
    • If in doubt, ask for help on the IRC channel

Pictogram voting comment 15px.png Double-p 09:55, 25 February 2013 (UTC): There are a gazillion Template-Whatever including a TODO, really needed? Pictogram voting comment 15px.png Lars.kurth 17:40, 25 March 2013 (UTC): See #Special:WantedPages_broken

Update links to defunct gentoo-wiki.com site

According to [2] it is lost and not coming back. That site has archives but it seems like [3] is the new home. Pages referring to gentoo-wiki.info ought to be updated.


Xen : Open work items

Documentation for bootloader (grub) integration

Need to document available `/etc/default/grub` settings such as `GRUB_CMDLINE_XEN`, `GRUB_CMDLINE_XEN_DEFAULT``, and `GRUB_CMDLINE_LINUX_XEN_REPLACE` + `GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT` (which override the default `GRUB_CMDLINE_LINUX` and `GRUB_CMDLINE_LINUX_DEFAULT` for Xen entries. This could be improved both in upstream grub and in our docs.

Review and Update: xenpm usage recommendations

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

User focused guide for setting up host EFI boot

We have http://xenbits.xenproject.org/docs/unstable/misc/efi.html but could use something a bit more user focused, e.g. a walkthrough type guide.

UEFI Secure Boot

Write a document on how to sign the xen binary for UEFI Secure Boot. Potential reference here: Dealing With Secure Boot

Mirage OS

While much documentation is available at their website, we need to have pages here which describe Mirage OS and give useful pointers to their docs.

Ideally, it would be good to have extensive documentation for this project on this Wiki, as Mirage OS is being fostered by Xen Project.

Documentation on lib(xen)vchan

The header has some stuff, but a more complete guide would be useful.

The usage of the example code is also not documented. http://lists.xen.org/archives/html/xen-users/2014-01/msg00162.html has some (incomplete) info.

Update Xen Windows GplPv page

The page is sorely out of date (e.g., the download pages don't appear to exist anymore). Even though there are other Windows PV drivers, this set is still in demand.

Describe the different ways, and necessary components, to create PVs using xl

Raised by mail by Matthias Blankenhaus (who is prepared to take the lead, but needs help): This document would describe the different ways, and necessary components that each way requires, to create PVs using xl. Right now there are at least the following cases:

  • loopbacked vhds
    • single partition format
    • disk format
  • qemu backed vhds
    • qcow / qcow2
  • LVS backed image

This is not a complete list. Also the mileage of each case differs depending on the kernel features enabled in dom0/domu and also depending on the Xen version. Furthermore, certain format require additional infrastructure like the tap device.

All in all, this a complex topic that needs clarification. Doing this based on the lowest common denominator, xl, would clarify many things. In addition, baseline performance data on all of the above would help a great deal. Matthias volunteered to run the majority of needed perf tests

HOWTO : using xl trigger to poweroff or firing off NMIs

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

HOWTO: Chain pypxeboot and pygrub

How to chain pypxeboot and pygrub

  • Pictogram voting comment 15px.png Lars.kurth 10:35, 27 March 2012 (UTC): Is pypxeboot popular at all?
  • Pictogram voting comment 15px.png 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.
  • Pictogram voting comment 15px.png 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.
  • Pictogram voting comment 15px.png Fheigl: How could it be popular given the state of documentation. <= Key issue to the left of this sentence.
  • Pictogram voting comment 15px.png Lars.kurth 16:03, 19 September 2012 (UTC): wondering whether this video contains what is needed
  • Pictogram voting comment 15px.png Ijc 11:01, 25 June 2014 (UTC): Although I've not watched the whole thing I stepped through that video enough to see all the slides (I think) and I didn't see anything about this topic or anything like it.
  • Pictogram voting comment 15px.png Ijc 11:17, 25 June 2014 (UTC): I've downloaded pypxeboot 0.0.3 and as far as I can tell the fallback to pygrub is supposed to happen automatically if pxelinyx.cfg says to do a local boot. If this doesn't Just Work then I think that is a code bug rather than a documentation issue. I'd recommend retiring this docs TODO in favour of a bug report to the pypxeboot authors and/or xen-devel. I googled around a bit and didn't find any existing bug reports anywhere.

Refactor/refresh ARM h/w information


Visually distinguish Xen, MirageOS and Community Documentation better

Pictogram voting comment 15px.png Lars.kurth 15:32, 28 January 2013 (UTC): Users are getting confused when looking at wiki pages. If there was a visual way to distinguish Xen, MirageOS and Other content better, this would help. We could use colors and skinning when it comes to various elements, as well as mascots/logos:

  • For example: Help:Contents has a different feel (and colour scheme)
  • This could be replicated in trail boxes and other elements
  • We can also use mascots

But first, I need to investigate what is possible.

Pictogram voting comment 15px.png Lars.kurth 16:14, 28 January 2013 (UTC): Looks as if the only way this can be done is via Custom Namespaces. The only way to do this properly is to

  • Have different namespaces for Xen, MirageOS, ... and Community stuff and keep all the common stuff in Xen
  • The name spaces could then be styled differently, for example the Help namespace includes the ns-12 style into the body attributes, whereas the Main (default) namespace uses the ns-14 style.
  • Custom namespaces can be created by changing the config and are linked to custom styles
  • The styles are then defined in MediaWiki:Common.css

Implications of using custom namespaces:

  • Search: Pages in a custom namespace do not show up in default search results. So if we had a custom MirageOS namespace, it would mean that search results for MirageOS would not show up. One would need to go to Advanced Search and select MirageOS
  • Rename: Renaming pages is possible and as straightforward as renaming pages
  • Xen Namespace: The Xen namespace exists already, this may need to be renamed
  • Categories and Namespaces: Categories cross namespaces. In other words, Category:XXX would go across all namespaces. As an example, see Category:Wiki_Management

Mediwiki Issues

Special:WantedPages broken

Issue 1: Pages that need translation are spamming the list
  • Solution: fix language templates and mark with {{Stub translation}}
  • Pictogram voting comment 15px.png Lars.kurth 16:48, 28 January 2013 (UTC): There is something wrong with the language templates, essentially spamming the wanted pages. Do ignore these instructions until fixed.
  • Pictogram voting comment 15px.png Lars.kurth 23:28, 11 February 2013 (UTC): Fixed language template issues by removing most languages from the templates
  • Pictogram voting comment 15px.png Lars.kurth 18:03, 25 March 2013 (UTC): Started marking pages with {{Stub translation}}
Issue 2: Missing templates are spamming the list
Issue 3: Missing categories are spamming the list

Categories & Indexes

  • Pictogram voting comment 15px.png Lars.kurth 13:54, 29 January 2013 (UTC): Combined categories such as list all XCP FAQs have been asked for sevceral times
  • Investigate plug-ins

Developer Docs

Docs that need attention or are missing

  • Make XAPI docs (built from source) available on XenProject.org
  • some more xenstore docs (i.e. recent python bindings that were sent to the -users list)
    • Pictogram voting comment 15px.png Ijc 12:13, 25 June 2014 (UTC): I don't think these are included in Xen? Need a reference.
  • Using libxenstat python bindings (imo they're broken)
    • Pictogram voting comment 15px.png Ijc 12:13, 25 June 2014 (UTC): Is this a bug report? If they are broken we should fix them (as well as potentially documenting them)
  • More PV protocol docs (see recent patches to blkif.h for example)
    • Pictogram voting comment 15px.png Ijc 12:13, 25 June 2014 (UTC): blkif.h and netif.h are perhaps the most critical ones and those are now pretty good. But the rest (fbif.h, kbdif.h, pciif.h, usbif.h, tmpif.h and vscsiif.h) could all stand to be improved.
  • Document xenstore paths used by guests and toolstack etc

Done Recently

In progress (some just need double checking whether finished)

Draft a list of Questions for a User Survey


Xen 4.3 / 4.4 Documentation : Spice Config Example for upstream QEMU

Take this thread and convert into an Example

Pictogram voting comment 15px.png Lars.kurth 16:56, 9 April 2014 (UTC) Created SPICE_support_in_Xen for now