Jump to: navigation, search

Difference between revisions of "XenAPI"

Line 6: Line 6:
 
== Summary ==
 
== Summary ==
  
  [[XenServer]]: Commercial, supported product from Citrix.
+
  XenServer: Commercial, supported product from Citrix.
  
  Xen Cloud Platform: Open-source equivalent of [[XenServer]] (and the development project for the toolstack).
+
  Xen Cloud Platform: Open-source equivalent of XenServer (and the development project for the toolstack).
  
  XenAPI: The management API exposed by [[XenServer]] and Xen Cloud Platform.
+
  XenAPI: The management API exposed by XenServer and Xen Cloud Platform.
  
This specification covers Nova support for [[XenServer]] and Xen Cloud Platform through XenAPI.  Note that this does not imply support for other Xen-based platforms such as those shipped with RHEL 5 or SUSE.
+
This specification covers Nova support for XenServer and Xen Cloud Platform through XenAPI.  Note that this does not imply support for other Xen-based platforms such as those shipped with RHEL 5 or SUSE.
  
 
== Release Note ==
 
== Release Note ==
  
Nova may now use [[XenServer]] or Xen Cloud Platform as a virtualization platform.
+
Nova may now use XenServer or Xen Cloud Platform as a virtualization platform.
  
 
== Rationale ==
 
== Rationale ==
Line 24: Line 24:
 
== Assumptions ==
 
== Assumptions ==
  
The [[OpenStack]] project will not ship the XenAPI.py module.  Users will need to get that from http://wiki.xensource.com/xenwiki/XCP_SDK or http://community.citrix.com/cdn/xs/sdks.
+
The OpenStack project will not ship the XenAPI.py module.  Users will need to get that from http://wiki.xensource.com/xenwiki/XCP_SDK or http://community.citrix.com/cdn/xs/sdks.
  
 
== Design ==
 
== Design ==

Revision as of 21:03, 7 September 2010

  • Launchpad Entry: NovaSpec:austin-xenapi
  • Created: 7 September 2010
  • Contributors: Ewan Mellor

Summary

XenServer: Commercial, supported product from Citrix.
Xen Cloud Platform: Open-source equivalent of XenServer (and the development project for the toolstack).
XenAPI: The management API exposed by XenServer and Xen Cloud Platform.

This specification covers Nova support for XenServer and Xen Cloud Platform through XenAPI. Note that this does not imply support for other Xen-based platforms such as those shipped with RHEL 5 or SUSE.

Release Note

Nova may now use XenServer or Xen Cloud Platform as a virtualization platform.

Rationale

User stories

Assumptions

The OpenStack project will not ship the XenAPI.py module. Users will need to get that from http://wiki.xensource.com/xenwiki/XCP_SDK or http://community.citrix.com/cdn/xs/sdks.

Design

The pre-existing interface between Nova and the virtualization platform is through libvirt, with various calls to libvirt (and virsh) from Nova's compute and monitoring layers. There is also a libvirt simulation module, for unit testing without making calls to the a platform.

In order to add XenAPI support, we propose a new layer (nova.virt) that abstracts over the calls to libvirt. Through this abstract interface, the main body of Nova can make virtualization calls without reference to any particular platform. This interface will then be implemented by modules for libvirt (nova.virt.libvirt_conn), XenAPI (nova.virt.xenapi), or a simulator(nova.virt.fake).