[Debian-pan-maintainers] Debian packaging: qemu-web-desktop
Roland Mas
roland.mas at gnurandal.com
Wed Apr 20 14:11:02 BST 2022
Bonjour,
Je me suis peut-être mal exprimé : je n'arrive pas (encore ?) à
reproduire le bug. Fonctionnement nominal, en d'autres termes « chez moi
ça marche » ;-)
Je reprends ma question sur les IP : vous dites que les IP sont à
127.0.0.1, mais est-ce que grades-01.synchrotron-soleil.fr se résout en
127.0.0.1 sur le serveur lui-même ? Ou tout du moins, est-ce que ça se
résout en l'IP sur laquelle écoute le VNC ? Essayez "ss -tlpn|grep vnc"
sur grades-01, puis "getent hosts grades-01.synchrotron-soleil.fr" pour
savoir ce qui écoute sur quoi et vers quelle IP websockify va tenter de
se connecter. (Commandes à lancer après démarrage de la VM)
Roland.
Le 20/04/2022 à 10:22, FARHI Emmanuel a écrit :
> Bonjour Roland,
>
> merci pour ces nouvelles. Le fait que vous puissiez reproduire le bug
> est déjà en soi encourageant. Les processus qemu et websockify/novnc
> sont bien en route et les IP (127.0.0.1 lorsque tout tourne en local)
> sont bonnes il me semble.
> Je vais continuer également mes tests de mon coté afin d'identifier ce
> qui cloche.
> La machine grades-01 n'est malheureusement pas accessible depuis
> l'extérieur.
>
> Emmanuel.
>
> ------------------------------------------------------------------------
> *De: *"roland mas" <roland.mas at gnurandal.com>
> *À: *"FARHI Emmanuel" <emmanuel.farhi at synchrotron-soleil.fr>
> *Cc: *"PICCA Frederic-Emmanuel"
> <frederic-emmanuel.picca at synchrotron-soleil.fr>
> *Envoyé: *Mardi 19 Avril 2022 20:31:30
> *Objet: *Re: Debian packaging: qemu-web-desktop
>
> Voilà, le paquet 22.04.17+ds1-1 est en route vers unstable, avec un
> patch sur le script de téléchargement des images de VM (que je viens
> de soumettre sous forme de merge request).
>
> Je l'ai installé sur un PC vierge de tout travail préalable (mon PC
> habituel est en attente d'une alimentation neuve qui devrait arriver
> dans la semaine, je travaille donc sur un autre en attendant). J'ai pu
> tester le fonctionnement nominal, avec service_port_multiple à 0 comme
> à 1. J'ai déjà une info pertinente : j'ai aussi les messages "Couldn't
> set uid/gid/priority, closing connection". Et " Connection refused"
> autant que "Failed to connect to server", ça me semble plutôt être un
> problème de lancement de processus. Est-ce que de votre côté le qemu
> est bien lancé, est-ce qu'il écoute bien sur la bonne adresse IP et le
> bon port ? Je n'arrive pas à résoudre grades-01.synchrotron-soleil.fr
> ici, est-ce que votre DNS interne est correct ?
>
> En tout cas, j'essaierai sur d'autres environnements pour reproduire
> le bug.
>
> Roland.
>
> Le 19/04/2022 à 10:17, Roland Mas a écrit :
>
> Bonjour,
>
> Je m'en occupe. Je vais commencer par packager la nouvelle version
> upstream, et je m'occupe de ce debug dès que c'est bon..
>
> Roland.
>
> Le 18/04/2022 à 13:11, FARHI Emmanuel a écrit :
>
> Bonjour Roland,
>
> J'ai pas mal travaillé sur le projet qemu-web-desktop. La
> principale motivation a été de n'utiliser qu'un seul port de
> communication pour websockify, avec des TokenFile. La
> configuration par défaut utilise toujours un port noVNC
> (:60xx) par connexion (et par port VNC :590x). Le nouveau
> mécanisme se choisit avec l'option dans le fichier
> /etc/qemu-web-desktop/config.pl
>
> * $config{service_port_multiple} = 0;
>
> (au lieu de 1 par défaut). Le nouveau mecanisme a un seul port
> websockify est plus sur, car il ne necessite que l'ouverture
> d'un port sur les réseaux d'entreprise, plutot qu'une plage de
> ports que les IT n'aiment pas (a juste titre).
>
> Avec le git upstream du projet
> <https://gitlab.com/soleil-data-treatment/soleil-software-projects/remote-desktop>,
> tout se passe bien au début (sudo make install, accès au
> service, lancement de qemu, et websockify en mode 'daemon').
> Un fichier qui fait le lien entre le Token websockify (ici
> TTUHIzPJ) et le port est crée dans
> /var/lib/qemu-web-desktop/snapshots/websockify-target.d/ avec
> la syntaxe
>
> * TTUHIzPJ: 127.0.0.1:5901
>
> Mais on obtient le message dans le browser noVNC '*[X] Failed
> to connect to server*'.
>
> Le log de apache montre:
>
> # sudo tail -200 /var/log/apache2/error.log
> [Mon Apr 18 12:43:40.366067 2022] [mpm_itk:warn] [pid 258231]
> (itkmpm: pid=258231 uid=134, gid=106)
> itk_post_perdir_config(): setgid(33): Operation not permitted
> [Mon Apr 18 12:43:40.366082 2022] [mpm_itk:warn] [pid 258231]
> Couldn't set uid/gid/priority, closing connection.
>
> Si on lance le websockify en avance a la main, on obtient le
> message suivant lorsque l'on clique sur le lien du serveur web
>
> * https://grades-01.synchrotron-soleil.fr:6001/vnc.html?resize=scale&autoconnect=true&path=?token=TTUHIzPJ
>
> j'ai modifié la ligne
> /usr/lib/python3/dist-packages/websockify/websocketproxy.py,
> lignes 121-122 afin d'afficher la cause de l'erreur:
>
> except Exception as e:
> self.log_message("Failed to connect to %s:%s: %s",
> self.server.target_host, self.server.target_port, e)
>
> puis (idem en tant qu'utilisateur courant, root ou
> _qemu-web-desktop):
> $ websockify --web /usr/share/novnc --token-plugin=TokenFile
> --token-source=/var/lib/qemu-web-desktop/snapshots/websockify-target.d/
> --cert=/etc/apache2/certificate/apache-certificate.crt
> --key=/etc/apache2/certificate/apache.key 6001
> WebSocket server settings:
> - Listen on :6001
> - Web server. Web root: /usr/share/novnc
> - SSL/TLS support
> - proxying from :6001 to targets generated by TokenFile
> 192.168.3.225 - - [18/Apr/2022 12:26:16] 192.168.3.225:
> SSL/TLS (wss://) WebSocket connection
> 192.168..3.225 - - [18/Apr/2022 12:26:16] 192.168.3.225: Path:
> '/?token=3SmaqaOg'
> 192.168.3.225 - - [18/Apr/2022 12:26:16] connecting to:
> grades-01.synchrotron-soleil.fr:5905
> 192.168.3.225 - - [18/Apr/2022 12:26:16] Failed to connect to
> grades-01.synchrotron-soleil.fr:5905: *[Errno 111] Connection
> refused*
>
> Cette erreur se produit sur nos deux serveur GPU avec le meme
> système Bullseye. Par contre sur mon ordi portable en
> Bullseye, ca marche. Il y a donc un truc qui m'échappe, et qui
> semble indiquer un problème de droits.
>
> J'ai fait des tests à la main, qui confirment cela. Un
> lancement tout a la main fonctionne (y compris en tant que
> _qemu-web-desktop ou utilisateur courant):
>
> # qemu-img create -f qcow2 /tmp/snap1.qcow2 10G
> # mkdir /tmp/websockify-target.d
> # FILE=/tmp/websockify-target.d/target1
> # dd status=none of=${FILE} << EOF
> target1: 127.0.0.1:5901
> EOF
> # qemu-system-x86_64 -smp 4 -name
> qemu-web-desktop_TTUHIzPJ:farhie:Debian11-Bullseye.qcow2
> -machine pc,accel=kvm -enable-kvm -cpu host,kvm=off -m 8192
> -device virtio-balloon -hda /tmp/snap1.qcow2 -boot d -cdrom
> /var/lib/qemu-web-desktop/machines/slax.iso -device
> ich9-ahci,id=ahci -netdev user,id=mynet0 -device
> virtio-net,netdev=mynet0 -usb -device usb-tablet -vga qxl
> -boot c -fsdev
> local,security_model=passthrough,id=fsdev0,path=/mnt -device
> virtio-9p-pci,id=fs0,fsdev=fsdev0,mount_tag=host_mnt -fsdev
> local,security_model=passthrough,id=fsdev1,path=/media -device
> virtio-9p-pci,id=fs1,fsdev=fsdev1,mount_tag=host_media -vnc
> 127.0.0.1:1
>
> # websockify --web /usr/share/novnc --token-plugin=TokenFile
> --token-source=/tmp/websockify-target.d
> --record=/tmp/websocket.log
> --cert=/etc/apache2/certificate/apache-certificate.crt
> --key=/etc/apache2/certificate/apache.key 6001
>
> et connexion sur:
>
> * https://grades-01.synchrotron-soleil.fr:6001/vnc.html?resize=scale&autoconnect=true&path=?token=target1
> <https://grades-01.synchrotron-soleil.fr:6001/vnc..html?resize=scale&autoconnect=true&path=?token=target1>
>
> marche alors sur les deux serveur GPU (mais pas a travers le
> service web).
>
> Vous êtes plus habitué aux environnements apache/mpm_itk et je
> ne sais pas comment aller plus loin que mes tests ci-dessus.
>
> Pourriez-vous consacrer quelques heures sur le nouveau contrat
> de 100h (déjà entamé) pour mettre a jour l'upstream avec la
> version 22.04.17, et faire des tests d'installation sur un
> environnement vierge avec l'option
> '$config{service_port_multiple}=0;' ? Je ferai ensuite des
> tests similaires sur les serveurs GPU où le système est
> installé (actuellement en 'multiple=1').
>
> Merci d'avance, Emmanuel.
>
> --
> / ___|__/\_| | | ____|_ _| | FARHI Emmanuel
> \___ \\ | | | _| | || | Div Exp/Data Reduction and
> Analysis Team
> ___) /_ _| |___| |___ | || |___ Tel : +33 (1) 69 35 96 04
> |____/ \/ |_____|_____|___|_____| Saint-Aubin BP 48 - 91192
> GIF/YVETTE CEDEX
> SYNCHROTRON http://www.synchrotron-soleil.fr
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-pan-maintainers/attachments/20220420/e96b41d0/attachment-0001.htm>
More information about the Debian-pan-maintainers
mailing list