Univention Bugzilla – Bug 32115
Move UMC processing from UMC backend module to UVMMd itself
Last modified: 2023-06-28 10:46:09 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.
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.