wiki:AlternCv2/Specs

Version 7 (modified by benjamin, 6 years ago) (diff)

menu v2

Menu V2 : V2: général? l'API Web-AlternD? - Les specs logicielles? - Template et Bureau

Spécifications de la V2

On indique pour chaque logiciel le ou les services concernés, le nom du package debian Plus bas, soft par soft :

  • On justifie ces choix, si possible en comparant avec d'autres softs, nommés par leur package debian et mis en italique.
  • On explique comment on implémentera le lien entre le soft, puppet, les bases éventuelles, le AlternD, la norme du bureau web.

L'idée est de commencer par 1 soft dans chaque service à implémenter, quitte à pouvoir développer un module d'un second gestionnaire DNS par exemple, ou d'un second webserveur (lighttpd) etc. mais ce plus tard.

Liste des logiciels

Justifications, intégration dans Puppet et AlternD

Postfix

  • Comparaison : exim, sendmail
  • Intégration : config par fichier main.cf et master.cf édité, virtual users en base mysql

Cyrus

  • Comparaison : courier, uw-imap
  • Intégration : config par puppet, virtual users en base mysql partagée avec postfix, quotas par boite aussi :)

Bind

  • Comparaison : Comparer avec maradns ou mydns
  • Intégration : Fichier named.conf, named.conf.options par Puppet (y compris pour la gestion secondaire), fichiers zones gérés par Puppet (consulter le gars de puppet pour voir s'il a une solution simple pour ne pas faire exploser puppet si on lui demande de gérer les zones ...)

Apache2

  • Comparaison : apache1 et lighttpd
  • Intégration : Conf gérée par Puppet, VHosts gérés par Puppet depuis la base de données.

Mailman

  • Comparaison : sympa
  • Intégration : Fichier /etc/mailman/mm_cfg.py géré par puppet, listes gérées par Puppet (utilisation des binaires de mailman, check des fichiers depuis la base, fonctions évoluées : régénération des archives, fichiers customs d'archive ou de listinfo ...)

Php5

  • Comparaison : pas besoin
  • Intégration : configuration dans apache par vhost via puppet ?

Mysql5

  • Comparaison : pas besoin
  • Intégration : création de bases directement depuis AlternD, gestion des droits itou. (y a-t-il un intérêt à utiliser Puppet ici ?)

IMP

  • Comparaison : Squirrelmail
  • Intégration : Je ne connais pas bien imp, est-il configurable ? si oui, on gère son fic de conf par Puppet, éventuellement quelques options.

Awstats

  • Comparaison : Webalizer (arf)
  • Intégration : Configuration paramétrable par modèle dans Puppet, paramétrable depuis le bureau (divers plugins, etc.)

AlternD

AlternD est le démon en python de gestion de l'interaction entre le bureau, les services et le système.

Il fonctionne de manière modulaire comme suit :

  • Un module par soft implémentant l'API de pilotage générale des services.
  • Un module qui gère les utilisateurs, leurs services, quotas, droits etc.
  • Un core qui colle le tout de manière cohérente et fournit via XML-RPC les fonctions de l'API Web.

Bureau Web

Le bureau web est une appli php toute bête qui utilise XML-RPC pour authentifier les utilisateurs, afficher les services, permettre aux utilisateurs de paramétrer leur hébergement, le tout d'une manière plutôt jolie et accessible.