diff --git a/docs/architecture.html.in b/docs/architecture.html.in index 5e56716615..7a5cf2dca8 100644 --- a/docs/architecture.html.in +++ b/docs/architecture.html.in @@ -19,32 +19,16 @@ in "Domain 0", which is the primary Linux OS loaded on the machine. That OS kernel provides most if not all of the actual drivers used by the set of domains. It also runs the Xen Store, a database of information shared by the -hypervisor, the kernels, the drivers and the xen daemon. Xend. The xen daemon -supervise the control and execution of the sets of domains. The hypervisor, +hypervisor, the backend drivers, any running domains, and libxl (aka libxenlight). +libxl provides a set of APIs for creating and managing domains, which can be used +by applications such as the xl tool provided by Xen or libvirt. The hypervisor, drivers, kernels and daemons communicate though a shared system bus implemented in the hypervisor. The figure below tries to provide a view of this environment:
-The library can be initialized in 2 ways depending on the level of -privilege of the embedding program. If it runs with root access, -virConnectOpen() can be used, it will use three different ways to connect to -the Xen infrastructure:
-The library will usually interact with the Xen daemon for any operation -changing the state of the system, but for performance and accuracy reasons -may talk directly to the hypervisor when gathering state information at -least when possible (i.e. when the running program using libvirt has root -privilege access).
-If it runs without root access virConnectOpenReadOnly() should be used to -connect to initialize the library. It will then fork a libvirt_proxy -program running as root and providing read_only access to the API, this is -then only useful for reporting and monitoring.
+The library will interact with libxl for all management operations +on a Xen system.
+Note that the libvirt libxl driver only supports root access.
xen:///
URI.
-
-If XenD is running and configured in /etc/xen/xend-config.sxp
:
-
-(xend-unix-server yes) --
-then it listens on a Unix domain socket, usually at
-/var/lib/xend/xend-socket
. You may pass a different path
-using a file URI such as:
-
-virsh -c ///var/run/xend/xend-socket --
http://...
(xend-http-server)
-
-If XenD is running and configured in /etc/xen/xend-config.sxp
:
-
-
-(xend-http-server yes) --
-then it listens on TCP port 8000. libvirt allows you to
-try to connect to xend running on remote machines by passing
-http://hostname[:port]/
, for example:
-
-
-virsh -c http://oirase/ list --
-This method is unencrypted and insecure and is definitely not -recommended for production use. Instead use libvirt's remote support. -
--Notes: -
-"xen"
"xen"
. This will continue to refer to the Xen
hypervisor. However you should prefer a full xen:///
URI in all future code.
-
- -Libvirt continues to support connections to a separately running Xen -proxy daemon. This provides a way to allow non-root users to make a -safe (read-only) subset of queries to the hypervisor. -
-
-There is no specific "Xen proxy" URI. However if a Xen URI of any of
-the ordinary or legacy forms is used (eg. NULL
,
-""
, "xen"
, ...) which fails, and the
-user is not root, and the Xen proxy socket can be connected to
-(/tmp/libvirt_proxy_conn
), then libvirt will use a proxy
-connection.
-
-You should consider using libvirt remote support -in future. Since 0.8.6 libvirt doesn't contain -the Xen proxy anymore and you should use libvirtd instead.