Documentation technique
Principales fonctionnalités
Observation des postes élèves (VNC avec websokify, en cas de problème : cliquer sur le lien dans l'aide et accepter le certificat) ;
L'authentification est centralisée et gérée par eoleflask-aaa, donc plus de cron pour effacer les fichiers de sessions sur le serveur
Une section EOP dans le diagnose fait un TCPCheck des ports 8788 de controle-vnc et 6080 de websockify.
EOP est une application flask
servie par gunicorn
, dialoguant avec controle-vnc
grâce à une clé secrète et gérée par apache en reverse-proxy.
En cas de dysfonctionnement il faut vérifier :
l'état du service
eoleflask
;l'état du service
controle-vnc
.
Si le module est en mode conteneur il faut utiliser les commandes suivantes dans le conteneur web, pour se rendre dans le conteneur web : # ssh web .
Vérifier le service eoleflask.
Vérifier les logs dans /var/log/eoleflask/gunicorn-error.log
et /var/log/eoleflask/gunicorn-access.log
.
S'il y a une erreur
NoApplicationError: No application loaded
alors il faut vérifier la présence d'un lien symbolique dans/etc/eole/flask/enabled/
pointant vers le fichier/etc/eole/flask/available/eop.conf
.
S'il y a une erreur
CookieError: Invalid Attribute envole.user
, il faut mettre à joureole-posh
ou supprimer le cookie$envole.user
.
Relancer le service :
# service eoleflask restart
Vérifier le service controle-vnc.
Contrôler les logs dans /var/log/controle-vnc/main.log
.
Vérifier que le service est bien à l'écoute sur le port 8788 :
# netstat -ndtal | grep 8788
Et que le port 8788 n'est pas bloqué par le pare-feu (seulement pour le mode conteneur) :
# iptables -L | grep 8788
S'assurer de la correspondance de la clé secrète contenue dans /etc/controlevnc/.secret
et la variable SECRET_KEY
du fichier /etc/eole/flask/available/eop.conf
.
Remarque
En mode conteneur, dans le cas d'un module AmonEcole par exemple, le fichier de log /var/log/controle-vnc/main.log
se trouve dans le conteneur fichier
.
Vérifier le service apache.
Vérifier que les modules apache pour le proxy inverse sont bien activés :
# a2enmod proxy proxy_http
# service apache restart
Tester EOP sans passer par le proxy inverse (de l'extérieur par tunnel SSH) :
# ssh -L 9999:127.0.0.1:5000 root@<adresse IP du module>
Puis entrer dans un navigateur l'URL : http://localhost:9999/documents
Les journaux de l'application EOP sont accessibles dans le fichier /var/log/eoleflask/eop.log
.