Bug 32115 - Move UMC processing from UMC backend module to UVMMd itself
Move UMC processing from UMC backend module to UVMMd itself
Status: CLOSED WONTFIX
Product: UCS
Classification: Unclassified
Component: Virtualization - UVMM
UCS 4.2
Other Linux
: P5 enhancement (vote)
: ---
Assigned To: UCS maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-07-29 15:14 CEST by Philipp Hahn
Modified: 2023-06-28 10:46 CEST (History)
2 users (show)

See Also:
What kind of report is it?: Development Internal
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional): Cleanup
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Philipp Hahn univentionstaff 2013-07-29 15:14:49 CEST
Currently UVMM translates queries and requests multiple times:
0. qemu-kvm || xen
  unix-socket(QMP)  || http(Xen-RPC)
1. libvirtd @ server
  libvirt-RPC
2. libvirt @ master
  UMCP(Python-pickle)
3. uvmm-UMC-Module @ master
  HTTP(JSON)
4. Browser @ client

This is a maintenance overhead and also implies a small performance problem, since currently multiple implementations have to be maintained.

It would help if the uvmm-UMC-module part would be moved into UVMMd itself, so that the uvmm-JavaScript-Code would more-or-less directly talks to UVMMd itself, where the UMC module passes through all data:
1. The Python representation is only used by the UMC backend module and by the uvmm-CLI-tool.
2. DVS is no longer relevant, so one one other interfaces with UVMMd directly.
3. No more maintenance of univention.uvmm.protocol and dunivention.uvmm.command.

Long-term it would be best if UMCP would be replaced by REST or some other something commonly accepted RPC mechanism.


For the performance issues I have no hard data, but a simple UMCP command to query one VM takes 1 second longer than talking to UVMMd directly on xen12:
  uri="qemu://$(hostname -f)/system"
  uuid="c78e2da0-17a6-4f4a-336b-190bf3cc1717"
  UMCC () { umc-command -r -U Administrator -P univention "$@"; }
  time UMCC uvmm/domain/get -o domainURI="$uri#$uuid"
real    0m1.067s
user    0m0.200s
sys     0m0.020s
  time uvmm domain_info "$uri" "$uuid"
real    0m0.081s
user    0m0.068s
sys     0m0.008s


See Bug #20818 more more cleanup.
Comment 1 Ingo Steuwer univentionstaff 2020-07-03 20:51:54 CEST
This issue has been filed against UCS 4.2.

UCS 4.2 is out of maintenance and many UCS components have changed in later releases. Thus, this issue is now being closed.

If this issue still occurs in newer UCS versions, please use "Clone this bug" or reopen it and update the UCS version. In this case please provide detailed information on how this issue is affecting you.