Jump to: navigation, search

Difference between revisions of "Main Page/cobbler"

(Replaced content with "redirector: glance image-update centos-minimal --property usb_redirector="{'bus': 'usb', 'type': 'spicevmc'}"")
Line 1: Line 1:
https://blueprints.launchpad.net/nova/+spec/libvirt-virtio-scsi-driver already support controller
+
redirector:
  
ovirt:
+
glance image-update centos-minimal --property usb_redirector="{'bus': 'usb', 'type': 'spicevmc'}"
https://github.com/oVirt/ovirt-node
 
kimchi
 
https://github.com/kimchi-project/kimchi
 
 
 
follow kimii gi
 
yum install xxxx
 
./autogen.sh --system
 
make
 
make rpm
 
 
 
autoconf、automake、createrepo、livecd-tools、appliance-tools-minimizer
 
 
 
(1)selinux common-install.ks.in selinux --disabled
 
(2)recipe/Make.am
 
printf "repo --name=fedora20 --baseurl=http://186.100.8.148/repo/fedora/releases/$(FEDORA)/Everything/${ARCH}/os\n" > repos.ks ;\
 
printf "repo --name=ovirt-node --baseurl=file:///root/rpmbuild/RPMS/noarch\n" >> repos.ks ;\
 
printf "repo --name=kimchi --baseurl=file:///home/kimchi/kimchi-master/rpm/RPMS/x86_64\n" >> repos.ks ;\
 
 
 
...
 
This work is licensed under a Creative Commons Attribution 3.0 Unported
 
License.
 
 
 
http://creativecommons.org/licenses/by/3.0/legalcode
 
 
 
====================================================
 
tag
 
Add support for USB 2.0 controller
 
====================================================
 
 
 
Users have requirements of using USB device, the detailed information can refer
 
to BP in https://blueprints.launchpad.net/nova/+spec/usb-passthrough.
 
 
 
If not specify appropriate USB controller for USB device, USB device will
 
use the default piix3-usb-uhci, which results in some problems.
 
 
 
1. The low speed of USB device.
 
 
 
2. If use spice client to redirect USB device to VM, the mismatched speed may
 
prevent the connection.
 
 
 
 
 
USB 2.0 has other good point that it will result in dramatically lower CPU usage
 
when the USB tablet is present for VNC/SPICE.
 
 
 
As described above, I think that support USB 2.0 controller is valuable in
 
Openstack.
 
 
 
 
 
Problem description
 
===================
 
tag
 
Use cases:
 
 
 
1. User creates a VM, the system creates a default ehci USB controller,  attach
 
USB tablet to the ehci controller.
 
 
 
 
 
Proposed change
 
===============
 
tag
 
1. Add function of create ehci controller in libvirt driver when create
 
VM.
 
 
 
2. Add function of specify USB controller for USB tablet in libvirt driver
 
when create VM.
 
 
 
Alternatives
 
------------
 
 
 
None
 
 
 
Data model impact
 
-----------------
 
tag
 
1. Use object 'LibvirtConfigGuestController' for USB controller in libvirt driver,
 
create ehci xml in 'get_guest_config' function.
 
 
 
The xml may like:
 
 
 
<controller type='usb' index='1' model='ehci'/>
 
 
 
All values of above properties are constant.
 
 
 
2. Add 'address' element to USB tablet object 'LibvirtConfigGuestInput',
 
specify ehci controller in 'get_guest_config' function.
 
 
 
The xml may like:
 
 
 
<input type='tablet' bus='usb'>
 
 
 
<address type='usb' bus='1' port='1'/>
 
 
 
</input>
 
 
 
The values of address are constant.
 
 
 
REST API impact
 
---------------
 
 
 
None
 
 
 
Security impact
 
---------------
 
 
 
None
 
 
 
Notifications impact
 
--------------------
 
 
 
None
 
 
 
Other end user impact
 
---------------------
 
 
 
None
 
 
 
Performance Impact
 
------------------
 
 
 
None
 
 
 
Other deployer impact
 
---------------------
 
 
 
None
 
 
 
Developer impact
 
----------------
 
 
 
None
 
 
 
Implementation
 
==============
 
 
 
Assignee(s)
 
-----------
 
 
 
Primary assignee:
 
  <Jing Yuan>
 
 
 
 
 
Work Items
 
----------
 
Step 1: Create ehci xml in 'get_guest_config' function.
 
 
 
Step 2: Modify USB tablet object, specify ehci controller for USB tablet
 
in 'get_guest_config' function.
 
 
 
Dependencies
 
============
 
 
 
None
 
 
 
 
 
Testing
 
=======
 
 
 
None
 
 
 
 
 
Documentation Impact
 
====================
 
 
 
None
 
 
 
 
 
References
 
==========
 
 
 
https://blueprints.launchpad.net/nova/+spec/usb-passthrough
 
 
 
 
 
..
 
This work is licensed under a Creative Commons Attribution 3.0 Unported
 
License.
 
 
 
http://creativecommons.org/licenses/by/3.0/legalcode
 
 
 
===================================
 
Support function of USB-redirection
 
===================================
 
 
 
We provide VDI(Virtual Desktop)solution for customers, our customers have strong
 
requirements for using USB devices.
 
 
 
The typical use cases and our solutions are described as below:
 
Customers want to use local USB printers or USB scanners with
 
TC(Thin-Client), because remote desktop protocol like ICA have already supported
 
USB-redirection, so customers only need to attach USB device to TC, the protocol
 
can map USB device to VM.
 
 
 
 
 
Problem description
 
===================
 
tag
 
 
 
Use cases 1:
 
 
 
A end user wants to print some documents in cloud environments, him perform the
 
following steps:
 
 
 
1. Create a VM with virtual USB-redirection devices.
 
 
 
2. Use TC with spice client to connect to VM, insert USB printer to TC, select
 
printer to redirect to VM in GUI of spice client.
 
 
 
3. User can see printer in VM and use printer to print documents.
 
 
 
Use cases 2:
 
 
 
A end user wants to take a video chat with friends in cloud environments, him
 
perform the following steps:
 
 
 
1. Create a VM with virtual USB-redirection devices.
 
 
 
2. Use TC with spice client to connect to VM, insert USB camera to TC, select
 
camera to redirect to VM in GUI of spice client.
 
 
 
3. User can see camera in VM and take video chat with friends.
 
 
 
Use cases 3:
 
 
 
A end user wants a on-line shopping, which needs a USB-key for more secure payment.
 
 
 
1. Create a VM with virtual USB-redirection devices.
 
 
 
2. Use TC with spice client to connect to VM, insert USB-key to TC, select
 
USB-key to redirect to VM in GUI of spice client.
 
 
 
3. User can see USB-key in VM, the security check and payment plugin in
 
Browser like IE can use USB-key for authentication.
 
 
 
 
 
Proposed change
 
===============
 
tag
 
 
 
1. Add function of create USB-redirection device in libvirt driver.
 
 
 
2. Support specify USB-redirection device in image properties and create VM
 
with this kind of image. If libvirt driver find this kind of property it then
 
construct related xml.
 
 
 
Alternatives
 
------------
 
 
 
None
 
 
 
Data model impact
 
-----------------
 
tag
 
 
 
1. Add USB-redirection device data object in libvirt driver, the libvirt xml may
 
like:
 
 
 
<redirdev bus='usb' type='spicevmc'>
 
 
 
<address type='usb' bus='1' port='2'/>
 
 
 
</redirdev>
 
 
 
All values of above properties are constant. The USB-redirection device use port
 
2 of echi controller. BTW: The BP about echi controller can refer to
 
https://review.openstack.org/#/c/88334/
 
 
 
2. Use key-value to specify USB-redirection device in image, the command may like:
 
 
 
glance image-update img1 --property redirection_devices="{'bus': usb, 'type': 'spicevmc'}"
 
 
 
REST API impact
 
---------------
 
 
 
None
 
 
 
Security impact
 
---------------
 
 
 
None
 
 
 
Notifications impact
 
--------------------
 
 
 
None
 
 
 
Other end user impact
 
---------------------
 
 
 
None
 
 
 
 
 
Performance Impact
 
------------------
 
 
 
None
 
 
 
 
 
Other deployer impact
 
---------------------
 
 
 
None
 
 
 
 
 
Developer impact
 
----------------
 
 
 
None
 
 
 
Implementation
 
==============
 
 
 
Assignee(s)
 
-----------
 
 
 
Primary assignee:
 
  <Jing Yuan>
 
 
 
 
 
Work Items
 
----------
 
Step 1: Add object of USB-redirection device in libvirt driver.
 
 
 
Step 2: Create VM with image which contains property of USB-redirection device.
 
 
 
Dependencies
 
============
 
 
 
None
 
 
 
 
 
Testing
 
=======
 
 
 
None
 
 
 
 
 
Documentation Impact
 
====================
 
 
 
It is necessary to add doc for how to use this new function.
 
 
 
 
 
References
 
==========
 
 
 
None
 

Revision as of 03:36, 26 April 2014

redirector:

glance image-update centos-minimal --property usb_redirector="{'bus': 'usb', 'type': 'spicevmc'}"