I am submitting this case on behalf of Ryan Scott with self-review
approval, for which I believe it qualifies.  If anyone feels otherwise
I will promote this to a fast-track.

The project requests minor/patch binding.


thx,
-jg


----------


xVM Hypervisor Remote Access (virtd)
====================================

1. Background

Part of the xVM gate [1] is libvirt, an LGPL library originally created by
Red Hat that gives applications access to different hypervisors.  See
http://www.libvirt.org/ for details.  Currently, the xVM gate contains
libvirt version 0.2.3.  Version 0.4.0 was released in December, and we plan
on putting this version back to the xVM gate along with Xen 3.1.2.

[1] - For those unfamiliar with the xVM gate, it is quite similar to the
onnv gate in terms of schedule and gatekeepers.  The source is available at
http://dlc.sun.com/osol/on/downloads/b84/xvm-src.tar.bz2

2. Remote Access

A new binary was introduced in 0.3.3: /usr/lib/virtd, which allows remote
access to the Xen hypervisor.  Since we skipped 0.3.3, we will be
introducing this binary with our putback of 0.4.0.

As an example, to access the hypervisor on remote machine foo, a user can
run:

        virsh -c xen+ssh://root at foo/

This creates a tunnel over ssh to the Xen hypervisor on the remote machine.

virtd is implemented as the smf service svc:/system/xvm/virtd:default.
This service depends on svc:/system/xvm/xend and svc:/system/xvm/console.

3. Library Interfaces

Since there are no current users of the library outside of the xVM gate,
we do not feel it is necessary to list all of the APIs at this point.

Since these interfaces are controlled by an external body, a classification
of Volatile seems appropriate.  However, the creators of libvirt do seem to
pay attention to stability, so the project team may consider upgrading this
level as uses of this library increase in the future.

This case requests minor release binding.

----------------------------------------------------------------------------
| Interface                     | Stability     | Comments                 |
+-------------------------------+---------------+--------------------------+
| /usr/lib/virtd                | Volatile      | xVM Remote Access Daemon |
| svc:/system/xvm/virtd:default | Volatile      | smf service for virtd    |
| Library API Interfaces        | Volatile      |                          |
+-------------------------------+---------------+--------------------------+

4. Security

The external version supplies four access mechanisms: TCP (plain text),
ssh, TLS, and unix sockets.  Plain text over TCP will be disabled because
it does not meet Secure By Default rules.  Unix sockets will be allowed,
but limited by directory permissions to root on the the local machine.  TLS
will also be disabled.  TLS support may or may not be added in the future
(with the additional ARC work if appropriate).  Initially, ssh will be the
only remote access method.  The combination of socket permissions and ssh
authentication ensures that this project meets the Secure By Default
rules.

5. Privilege

As described in the original Xen case, PSARC 2006/260, only root may access
the hypervisor.  libvirt 0.4.0 does include a framework to allow read-only
access to non-privileged users.  Implementing this on Solaris remains an
open task for the project team, depending on funding.  If completed, this
work will require a more detailed ARC case.

6. Approval

Since this case represents a simple port of external code, we feel an
automatic self-approval is acceptable.


Reply via email to