Cette page n'est plus actualisée. À partir de BlueMind 4.8, veuillez consulter la nouvelle documentation BlueMind

Architecture des services

Sur cette page :

En rapport :
Les ports
Applications et composants

  • BM-Core est le composant central de BlueMind. Il est le centre de gestion unique des données et des règles métier. C'est le seul composant à accéder à la base de données.

  • Toutes les fonctionnalités sont exposées en eb Services et peuvent donc être pilotées par d'autres applications.

  • Tous les composants, internes ou externes, utilisent les Web Services. Cela a pour avantage de limiter les flux depuis et vers la messagerie BlueMind (qui sont restreint aux flux Web Services et au flux de messagerie) et de garantir l'utilisation de règles de gestion homogènes quel que soit le point d'entrée d'une modification.

architecture v4

Paquets fournis avec BlueMind

Les paquets sont disponibles dans /var/spool/bluemind-pkgs/

Les commandes aptitude (Debian/Ubuntu) et yum (RedHat) permettent d'effectuer des recherches et lister les paquets disponibles et/ou installés.

Services utilisés par BlueMind

ServiceUtilisation

net.bluemind.eas.push

synchronisation des périphériques mobiles via le protocole Exchange Active Sync
net.bluemind.dav.server.davsynchronisation CardDav et CalDav des clients Apple
net.bluemind.milter.milterservice milter
net.bluemind.xmpp.server.launcher.tigasemessagerie instantanée
net.bluemind.core.launcher.coreservice principal
net.bluemind.node.server.nodelaunchercommunication entre les différentes serveurs dans le cas d'une installation multi-serveurs
net.bluemind.tika.server.tikadétection et extraction des métadonnées et textes de documents
net.bluemind.proxy.http.launcher.hpslauncherproxy d'authentification
exchange.httpcommunication avec MAPI
net.bluemind.webmodules.launcher.webLauncherproxy HTTP pour les webservices
net.bluemind.locator.appservice de localisation des différents serveurs dans le cas d'une installation multi-serveurs
org.elasticsearch.bootstrap.Elasticsearchservice d'indexation et de recherche
net.bluemind.ysnp.ysnpauthentification SMTP et IMAP
net.bluemind.lmtpservice local de transfert de courrier
postgresqlbase de données
postfix

serveur de messagerie

nginx

proxy HTTP + IMAP

php-fpm

interpréteur PHP pour les applications web (webmail)
cyrus (imapd et pop3d)service pour la synchronisation imap et pop de logiciels de messagerie tiers (lourds ou mobiles)

Données utilisées par BlueMind

Sauvegarde

  • /var/backups/bluemind

/etc

Les fichiers et répertoires situés dans /etc/ contiennent les configurations des composants utilisés par BlueMind :

Fichier/répertoireContenu

bm

bm.ini, les certificats et clés ssh de bm-node.

bm-node

rsync.excludes
bm-webmailconfiguration de php5-fpm pour BlueMind et nginx-webmail.conf
cyrus.confconfiguration de cyrus
imapd.confconfiguration de imap (généré par bm-core)
nginxconfiguration de nginx
php5configuration de php5
postfix

configuration de postfix, notamment les maps de transport

Il est possible d'ajouter des maps postfix supplémentaires mais il ne faut en aucun cas enlever ou modifier les maps déjà existantes et utilisées par BlueMind.

postgresqlconfiguration de postgresql

/usr/share

Les sous-répertoires situés dans /usr/share/ contiennent les modules et applications web. Les données présentes dans ces répertoires sont installées par les paquets BlueMind et ne doivent pas être modifiés

  • bm-conf/logs : configuration par défault des logs applicatif (log4)

/var/spool

Les sous-répertoires de /var/spool/ contiennent les données utilisées par BlueMind (exceptées celles contenues dans la base de données postgresql) :

RépertoireDonnéestype stockage

bm-docs

documents BlueMind (photos utilisateurs/resources)tous
bm-elasticsearchindex ElasticSearchblock device
bm-hsmmails archivéstous
bm-filehostingpièces jointes détachés des mailstous
cyrus/datamailstous
cyrus/metametadonnées des mailsblock device
postfix

files d'attentes postfix

tous
sievescript sievetous
bluemind-pkgsdonnées d'installation de BlueMind - utilisé à l'installation et tant qu'on n'a pas de souscriptiontous

/var/lib

Les données situées dans /var/lib/ ne doivent pas être modifiées manuellement :

RépertoireContenu

bm-ca

autorité de certification généré lors de l'installation
postgresqlbase de données postgresql
cyrusinformations administratives de Cyrus - liste des BAL, ACLs, quota, quota utilisé

Estimation de taille des dossiers

La taille usuelle de certains dossiers peut être estimée de la façon suivante :

DossierTaille estimée

/var/spool/bm-elasticsearch

~10% de /var/spool/cyrus/data + /var/spool/bm-hsm

La taille de la partition doit être d'AU MOINS 2 fois le volume de données contenu.

Idéalement, ce dossier sera déporté et séparé en 2 partitions dédiées, qui respecteront la même contrainte de taille :

  • /var/spool/bm-elasticsearch/data
  • /var/spool/bm-elasticsearch/repo
/var/spool/cyrus/meta~10% de /var/spool/cyrus/data + /var/spool/bm-hsm
/var/spool/sieve~1Mo/(utilisateurs+mailshare)
DossierType de montageTaille estimée

/var/lib/cyrus

block device~10Go
/var/lib/postgresqlblock device~20Go

Il s'agit là d'estimations, qui peuvent être amenées à varier suivant les installations et l'évolution de l'organisation, il est donc préférable d'utiliser des technologies permettant d'agrandir simplement les FS.

Logs

Les logs sont écrits dans des sous-répertoires du répertoire /var/log/ :

RépertoireContenu

bm

logs du core
bm-elasticsearchlogs elasticsearch
bm-hpslogs hps
bm-lmtpdlogs service LMTP
bm-locatorlogs locator
bm-mapilogs service mapi
bm-nodelogs du node
bm-tikalogs de Tika
bm-webserverlogs du webserver
bm-webmaillogs du webmail
bm-xmpplogs XMPP
bm-ysnplogs YNSP

Pour les autres composants qu'il est possible de superviser, les fichiers ou sous-répetoires suivants peuvent être utilisés :

Fichier/répertoireContenu
mail.errerreurs Postfix/Cyrus
mail.loglogs Postfix/Cyrus
nginx/logs NGinx
bm-php5-fpm/logs FPM (/var/log/bm-php-fpm/ sur RedHat)
postgresql/logs de PostgreSQL

Pour plus de détails, consultez la page dédiée Logs - Fichiers journaux

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

  • Aucune étiquette