Projet

Général

Profil

Evolution #8028

pouvoir lancer genconfig et eop dans deux instances différentes d'eoleflask

Ajouté par Bruno Boiget il y a environ 10 ans. Mis à jour il y a environ 10 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Début:
Echéance:
% réalisé:

100%

Temps estimé:
8.00 h
Temps passé:
Distribution:
EOLE 2.4

Description

Pour plus de sécurité, il serait souhaitable de pouvoir servir les application flask critiques (genconfig) dans une instance séparée des autres applications.

il faudrait pouvoir passer au 'loader' d'applications un sous répertoire de /etc/eole/flask ou lire les configurations des applications à charger.

nécessite plusieurs modifications:

- passage du paramètre et prise en compte dans loader.py (répertoire de configurations)
- voir comment on peut gérer l'activation ou non des applis via eflckcl
- modifier les fichiers apps.mk des applications pour mettre les fichiers de conf au bon endroit
- adapter la fonction de génération des clés secrètes d'applications si besoin
- gerer le lancement des instances gunicorn: en dur dans le script d'init eoleflask, ou automatiquement ?

à voir dans un deuxième temps:

- gérer aussi des sous-répertoire pour les fichiers statiques des application (/usr/share/eole/flask)


Demandes liées

Lié à EOP - Anomalie #8015: EOP n'est pas accessible depuis l'extérieur Fermé 02/05/2014
Lié à eole-genconfig - Tâche #8053: limiter genconfig l'instance 'eoleadmin' d'eoleflask Fermé 30/10/2014

Révisions associées

Révision 1e9c8450 (diff)
Ajouté par Bruno Boiget il y a environ 10 ans

Gestion de sous répertoire de configuration pour eoleflask

ref #8028
ref #8015

Révision 697ec6c3 (diff)
Ajouté par Bruno Boiget il y a environ 10 ans

Ajout des templates nginx/gunicorn pour les instances d'eoleflask

ref #8028

Révision fcb1411a (diff)
Ajouté par Bruno Boiget il y a environ 10 ans

initialisation de la deuxième instance flask (eoleapps)

- ajout du script d'init pour eoleapps
- mise en place des fichiers de configuration nginx pour eoleapps

ref #8028

Révision 7a9b281e (diff)
Ajouté par Bruno Boiget il y a environ 10 ans

Correction de repertoire non créés dans eoleflask.mk

ref #8028

Révision 726ce895 (diff)
Ajouté par Bruno Boiget il y a environ 10 ans

correction typo dans postinst (ref #8028)

Révision c337d292 (diff)
Ajouté par Bruno Boiget il y a environ 10 ans

correction eoleflask.mk + fix sur activation de la configuration nginx

ref #7968
ref #8028

Historique

#1 Mis à jour par Bruno Boiget il y a environ 10 ans

  • Description mis à jour (diff)

#2 Mis à jour par Bruno Boiget il y a environ 10 ans

  • Statut changé de Nouveau à Accepté
  • Assigné à mis à Bruno Boiget
  • % réalisé changé de 0 à 80

Le fonctionnement mis en oeuvre pour l'instant est le suivant:

2 instances d'eoleflask sont mises en place avec des services différents:

- eoleflask : localhost:5000 (eventuellement, renommer le service eoleadmin pour plus de clarté)
- eoleapps : localhost:10000

la première instance fonctionne toujours de la même façon qu'avant et sert eoleauth/genconfig
la deuxième sert aussi eoleauth/genconfig mais n'est pas accessible à l'extérieur via nginx

genconfig est accessible dans les deux instances du fait qu'il est 'enabled' au niveau du répertoire /etc/eole/flask/enabled qui est commun à toutes les instances

pour terminer la séparation, il faut le désactiver et le réactiver seulement au niveau de /etc/eole/flask/eoleadmin/enabled/ de la manière suivante:

  1. eflkctl disable eolegenconfig
  2. eflkctl enable eolegenconfig eoleadmin
  3. service eoleflask restart
  4. service eoleapps restart

pour rendre eop accessible dans l'instance eoleapps:

  1. eflkctl disable eop (si déjà configuré)
  2. eflkctl enable eop eoleapps
  3. service eoleapps restart

il manquera ensuite à :

  • activer la configuration nginx d'eoleapps (déjà livrée dans /etc/nginx/sites-available)
  • ajouter une règle d'accès pour rendre eoleapps accessible de l'extérieur (nginx sert l'instance sur le port 3000)

pour limiter les risques de problèmes:

  • mettre une dépendance sur la version d'eole-flask-server pour pouvoir utiliser eflkctl avec un nom d'instance (paquets eole-genconfig et eole-eop)
  • vérifier que les ports choisis pour eoleapps sont convenables (10000 sur localhost pour flask, 3000 pour nginx)

#3 Mis à jour par Bruno Boiget il y a environ 10 ans

décisions restant à prendre sur le fonctionnement:

  • lancement par défaut ou non de l'instance eoleapps (pour l'instant les 2 sont toujours lancés sur localhost)
  • ajouter une question dans applications web pour activer eoleapps via nginx dans le dictionnaire d'eoleflask ?
  • voir si des améliorations sont à prévoir sur eflkctl

attention au dépendances avec d'autres variables (activation d'eop forcée à non quand eoleapps n'est pas accessible via nginx ?)

#4 Mis à jour par Philippe Caseiro il y a environ 10 ans

La partie infrastructure est résolus mais il reste des choses a faires (cf nouvelle demande)

#5 Mis à jour par Philippe Caseiro il y a environ 10 ans

  • Statut changé de Accepté à Résolu

#6 Mis à jour par Philippe Caseiro il y a environ 10 ans

  • % réalisé changé de 80 à 100

#7 Mis à jour par Philippe Caseiro il y a environ 10 ans

  • Statut changé de Résolu à Fermé

Formats disponibles : Atom PDF