Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: Published by Scroll Versions from space DA and version BM-4.0
Sv translation
languagefr

Architecture des services

Volet
borderWidth3

Sur cette page :

Sommaire
maxLevel2

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.

Diagramme Gliffy
size850
namearchitecture 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

Avertissement

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
Remarque

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

Sv translation
languageen

Service architecture

Volet

On this page:

Sommaire
maxLevel2

Related:
Les ports
Applications et Composants


  • BM-Core is BlueMind's core component. It serves a a single management center for data and business rules. It is the only component that accesses the database.
  • All functionalities are exposed as Web Services and can therefore be driven by other applications.

  • All components, whether internal or external, use Web Services. This is useful for limiting incoming and outgoing BlueMind Mail flows (which are restricted to Web Services flows and mail flows) and ensuring the use of consistent management rules whatever the point of entry of a modification.

Diagramme Gliffy
size850
namearchitecture v4

Packages supplied with BlueMind

Packages are available in /var/spool/bluemind-pkgs/

Aptitude (Debian/Ubuntu) and yum (RedHat) shell commands are used to search and list available and/or installed packages.

Services used by BlueMind

ServiceUse

net.bluemind.eas.push

syncing of mobile devices through the Exchange Active Sync protocol
net.bluemind.dav.server.davCardDav and CalDav syncing of Apple clients
net.bluemind.milter.miltermilter service 
net.bluemind.xmpp.server.launcher.tigaseinstant messaging
net.bluemind.core.launcher.coremain service
net.bluemind.node.server.nodelaunchercommunication between different servers in multi-server installations 
net.bluemind.tika.server.tikadetection and extraction of metadata and texts from documents
net.bluemind.proxy.http.launcher.hpslauncherauthentication proxy 
exchange.httpcommunication with MAPI
net.bluemind.webmodules.launcher.webLauncherHTTP proxy for webservices
net.bluemind.locator.applocation service for different servers in multi-server installations
org.elasticsearch.bootstrap.Elasticsearchindexing and search service 
net.bluemind.ysnp.ysnpSMTP and IMAP authentication
net.bluemind.lmtplocal mail transfer service 
postgresqldatabase
postfix

mail server

nginx

HTTP + IMAP server

php-fpm

PHP interpreter for web applications (webmail)
cyrus (imapd and pop3d)imap and pop syncing service for third-party mail software (thick or mobile clients)

Data used by BlueMind

Backup 

  • /var/backups/bluemind

/etc

The files and directories found in /etc/contain the configuration of the components BlueMind uses.

File/directoryContents

bm

bm.ini, bm-node certificates and ssh keys

bm-node

rsync.excludes
bm-webmailphp5-fpm configuration for BlueMind and nginx-webmail.conf
cyrus.confCyrus configuration
imapd.confimap configuration (generated by bm-core)
nginxnginx configuration
php5php5 configuration
postfix

postfix configuration, including transport maps

Avertissement

You can add extra postfix maps but under no circumstances should you remove or edit existing maps used by BlueMind.

postgresqlpostgresql configuration

/usr/share

Subfolders located in /usr/share/ contain web modules and applications. The data in these directories is installed by the BlueMind packages and must not be edited.

  • bm-conf/logs: applicative logs default configuration (log4)

/var/spool

/var/spool/ sub-directories contain the data used by BlueMind (excluding the data contained in the postgresql database).

DirectoryDataStorage Type

bm-docs

BlueMind documents (user/resource photos)all
bm-elasticsearchElasticSearch indexblock device
bm-hsmarchived emails all
bm-filehostinglinked email attachmentsall
cyrus/dataemailsall
cyrus/metaemail metadatablock device
postfix

postfix queues

all
sievescript sieveall
bluemind-pkgsBlueMind installation data - used during installation and as long as you don't have a subscriptionall

/var/lib

The data found in /var/lib/must not be edited manually.

DirectoryContents

bm-ca

certification authority generated during installation
postgresqlpostgresql database
cyrusCyrus administrative information - list of BAL, ACLs, quota, quota used

Estimating folder sizes

The usual size of some folders can be estimated:

FolderEstimated Size

/var/spool/bm-elasticsearch

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

The size of the partition must be AT LEAST twice the volume of the data it contains.

Ideally, this folder should be deported and split into 2 dedicated partitions, which must meet the same size constraints:

  • /var/spool/bm-elasticsearch/data
  • /var/spool/bm-elasticsearch/repo
/var/spool/cyrus/meta~10% /var/spool/cyrus/data + /var/spool/bm-hsm
/var/spool/sieve~1Mb/(users+mailshare)
FolderMount TypeEstimated Size

/var/lib/cyrus

block device~10Gb
/var/lib/postgresqlblock device~20Gb
Remarque

These are mere estimates, which may vary depending on your install and your organization's evolution. We therefore recommend that you use technologies that enable you to increase the size of your file system easily.

Logs

Logs are written into subdirectories of the /var/log/ directory:

DirectoryContent

bm

core logs 
bm-elasticsearchelasticsearch logs
bm-hpshps logs
bm-lmtpdLMTP service logs
bm-locatorlocator logs
bm-mapi

mapi service logs

bm-nodenode logs
bm-tikaTika logs
bm-webserverwebserver logs
bm-webmailwebmail logs
bm-xmppXMPP logs
bm-ysnpYNSP logs

For other components you may want to monitor, the following folders or sub-directories can be used:

Folder/directoryContents
mail.errPostfix/Cyrus errors
mail.logPostfix/Cyrus logs
nginx/NGinx logs
bm-php5-fpm/FPM logs (/var/log/bm-php-fpm/ on RedHat)
postgresql/PostgreSQL logs

For more information, please see Logs - Fichiers journaux

Sv translation
languagede

Dienstarchitektur

Volet
borderWidth3

Auf dieser Seite:

Sommaire
maxLevel2

Verwandt:
Les ports
Applications et Composants

  • BM-Core ist die Kernkomponente von BlueMind. Es handelt sich um die zentrale Verwaltungsstelle für Daten und Geschäftsregeln. Als einzige Komponente greift sie auf die Datenbank zu.

  • Alle Funktionen sind in eb Services exponiert und können daher von anderen Anwendungen gesteuert werden.

  • Alle Komponenten, ob intern oder extern, nutzen die Webdienste. Dies hat den Vorteil, dass die Ströme zu und von der BlueMind Mailbox (die auf Webdienste und Malbox-Ströme beschränkt sind) eingeschränkt werden und die Verwendung homogener Verwaltungsregeln unabhängig vom Eintrittspunkt einer Änderung sichergestellt wird.

Diagramme Gliffy
size850
namearchitecture v4

Mit BlueMind gelieferte Pakete

Die Pakete sind in /var/spool/bluemind-pkgs/verfügbar

Die Befehle aptitude(Debian/Ubuntu) und yum(RedHat) werden verwendet, um verfügbare und/oder installierte Pakete zu suchen und aufzulisten.

Von BlueMind verwendete Dienste

DienstVerwendung

net.bluemind.eas.push

Synchronisation von mobilen Geräten über das Exchange Active Sync-Protokoll
net.bluemind.dav.server.davcardDav- und CalDav-Synchronisation von Apple-Clients
net.bluemind.milter.milterMilter Dienst
net.bluemind.xmpp.server.launcher.tigaseInstant Messaging
net.bluemind.core.launcher.coreHauptdienst
net.bluemind.node.server.nodelauncherKommunikation zwischen den verschiedenen Servern bei einer Multi-Server-Installation
net.bluemind.tika.server.tikaErkennung und Extraktion von Metadaten und Dokumententexten
net.bluemind.proxy.http.launcher.hpslauncherAuthentifizierungs-Proxy
exchange.httpKommunikation mit MAPI
net.bluemind.webmodules.launcher.webLauncherHTTP-Proxy für Webdienste
net.bluemind.locator.appDienst zum Auffinden verschiedener Server bei einer Multi-Server-Installation
org.elasticsearch.bootstrap.ElasticsearchIndex- und Suchdienst
net.bluemind.ysnp.ysnpSMTP- und IMAP-Authentifizierung
net.bluemind.lmtplokaler Mailweiterleitungsdienst
postgresqlDatenbank
postfix

Mailbox-Server

nginx

HTTP-Proxy + IMAP

php-fpm

PHP-Interpreter für Webanwendungen (Webmailer)
cyrus (imapd und pop3d)Dienst für die imap- und pop-Synchronisation der Mailbox-Software anderer Hersteller (heavy oder mobil)

Von BlueMind verwendete Daten

Sicherung

  • /var/backups/bluemind

/etc

Die in /etc/ befindlichen Dateien und Verzeichnisse enthalten die Konfigurationen der von BlueMind verwendeten Komponenten:

Datei/VerzeichnisInhalt

bm

bm.ini, die Zertifikate und ssh-Schlüssel von bm-node.

bm-node

rsync.excludes
bm-webmailKonfiguration von php5-fpm für BlueMind und nginx-webmail.conf
cyrus.confCyrus-Konfiguration
imapd.confIMAP-Konfiguration (generiert von bm-core)
nginxnginx-Konfiguration
php5php5-Konfiguration
postfix

Postfix-Konfiguration, einschließlich Transport-Maps

Avertissement

Zusätzliche Postfix-Karten können hinzugefügt werden, aber unter keinen Umständen dürfen bestehende, von BlueMind verwendete Karten entfernt oder verändert werden.

postgresqlpostgresql-Konfiguration

/usr/share

Unterverzeichnisse, die sich in /usr/share/ befinden, enthalten die Module und Webanwendungen. Die Daten in diesen Verzeichnissen werden von den BlueMind-Paketen installiert und dürfen nicht verändert werden

  • bm-conf/logs: Standardkonfiguration der Anwendungsprotokolle (log4)

/var/spool

Die Unterverzeichnisse von /var/spool/ enthalten die von BlueMind verwendeten Daten (mit Ausnahme der in der postgresql-Datenbank enthaltenen Daten):

VerzeichnisDatenSpeichertyp

bm-docs

BlueMind-Dokumente (Anwender-/Ressourcenfotos)alle
bm-elasticsearchElasticSearch-IndexBlock Device
bm-hsmarchivierte E-Mailsalle
bm-filehostingAbgetrennte E-Mail-Anlagenalle
cyrus/datenE-Mailsalle
cyrus/metaE-Mail-MetadatenBlock Device
postfix

Postfix-Warteschlangen

alle
sieveSieve-Skriptalle
bluemind-pkgsInstallationsdaten von BlueMind - werden bei der Installation und solange Sie kein Abonnement haben, verwendetalle

/var/lib

Die Daten in /var/lib/ sollten nicht manuell geändert werden:

VerzeichnisInhalt

bm-ca

bei der Installation erzeugte Zertifizierungsstelle
postgresqlpostgresql-Datenbank
cyrusadministrative Informationen von Cyrus - Liste der BALs, ACLs, Quoten, verwendete Kontingente

Schätzung der Dateigröße

Die Größe bestimmter Dateien kann wie folgt geschätzt werden:

DateiGeschätzte Größe

/var/spool/bm-elasticsearch

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

Die Größe der Partition muss MINDESTENS das 2-fache des enthaltenen Datenvolumens betragen.

Im Idealfall wird dieser Ordner ausgelagert und in 2 getrennte Partitionen aufgeteilt, die die gleiche Größenbeschränkung einhalten:

  • /var/spool/bm-elasticsearch/data
  • /var/spool/bm-elasticsearch/repo
/var/spool/cyrus/meta~10% von /var/spool/cyrus/data + /var/spool/bm-hsm
/var/spool/sieve~1MB/(Benutzer+E-Mail-Freigabe)
DateiMontageartGeschätzte Größe

/var/lib/cyrus

Block Device~10GB
/var/lib/postgresqlBlock Device~20GB
Remarque

Hierbei handelt es sich um Schätzungen, die je nach Einrichtung und Entwicklung der Organisation variieren können. Daher ist es vorzuziehen, Technologien zu verwenden, die eine einfache Erweiterung der FS ermöglichen.

Protokolle

Die Protokolle werden in die Unterverzeichnisse des Verzeichnisses /var/log/ geschrieben:

VerzeichnisInhalt

bm

Core Protokolle
bm-elasticsearchElasticsearch-Protokolle
bm-hpsHPS-Protokolle
bm-lmtpdLMTP-Dienst-Protokolle
bm-locatorLocator-Protokolle
bm-mapiMAPI-Dienstprotokolle
bm-nodeKnoten-Protokolle
bm-tikaTika-Protokolle
bm-webserverWebserver-Protokolle
bm-webmailWebmailer-Protokolle
bm-xmppXMPP-Protokolle
bm-ysnpYNSP-Protokolle

Für sonstige Komponenten, deren Überwachung möglich ist, können die folgenden Dateien oder Unterverzeichnisse verwendet werden:

Datei/VerzeichnisInhalt
mail.errPostfix/Cyrus-Fehler
mail.logPostfix/Cyrus-Protokolle
nginxNGinx-Protokolle
bm-php5-fpm/FPM-Protokolle (/var/log/bm-php-fpm/ auf RedHat)
postgresql/PostgreSQL-Protokolle

Weitere Details finden Sie auf der entsprechenden Seite Logs - Fichiers journaux

Speichern

Speichern

Speichern

Speichern

Speichern

Speichern

Speichern

Speichern