Hardware Sizing
The data provided here is for information purposes only. Usage may vary for a same number of users, depending on hardware structure and use habits. Le nombre de mails, leur taille, le nombre de destinataires dans les mails, le nombre de rdv, de planification... this all is very different from one installation to another.
The vCPU and/or RAM resources indicated below are understood to be dedicated to virtual machines. In other words, these resources must be excluded from any sharing with other virtual machines.
In fact, particular care must be taken not to place BlueMind instances in a context where the hypervisor(s) is (are) in overcommit status.
About units
A BlueMind system is made up of multiple components that use up resources.
Le calcul basique “par utilisateur” n’est pas valide car un utilisateur qui n’utilise que la partie messagerie ne sollicitera pas le système de la même façon qu’un utilisateur utilisant le mail et les outils collaboratifs (agenda, …), ni qu'un utilisateur utilisant mapi.
Le calcul du dimensionnement s’effectue donc par unité sachant que :
| User profile | Cost per Unit |
|---|---|
| Mail only | 1 |
| Mail + intensive collaboration | 2 |
| Mail + collaborative + mapi | 5 |
Similarly, for the same number of units, a mail-only application will not consume the same amount of resources as a mail + collaborative application (for half the number of users). Mail, for example, is more IO-dependent than CPU-dependent, which is generally the opposite of the case for collaborative tools.
CPU
CPU is stated in number of cores. La référence est un CPU serveur récent, de type Xeon.
BlueMind includes many services, so we recommend 2 cores minimum.
Note that allocating too many CPUs can lead to other problems on virtualized environments.
| Units | Number of cores |
|---|---|
| 1-200 | 2 |
| 200-1,000 | 4 |
| 1,000-2,000 | 6 |
| 2,000-3,000 | 8 |
| 3,000-6,000 | 12 |
| 6,000+ | 2 / 1,000 units |
RAM
We recommend 24 GB RAM minimum.
| Units | Ram |
|---|---|
| 1-1000 | 24 GB |
| 1,000-2,500 | 32 GB |
| 2,500-5,000 | 48 GB |
| 5,000-10,000 | 64 GB* |
| 10,000+ | 96 GB* |
* with relocation of the bm-elasticsearch service to a dedicated server
Storage / IO Performance
Disc type
Une messagerie sollicite beaucoup les disques, pour la lecture et l'écriture de petits fichiers, mais aussi pour tous les traitements sur les messages (indexation, état de lecture, …). The quality and speed of disks is a key factor in high-performance mail.
L'utilisation de disques SSD/nvme est obligatoire pour une nouvelle installation et fortement recommandé dans le cadre d'une mise à jour depuis une version 4, à moins que le matériel en place ne donne pleinement satisfaction. Les disques mécaniques / rotationnels présentent des latences élevées incompatibles avec le logiciel. Ces derniers peuvent éventuellement être utilisés pour les sauvegardes ou dans le stockage hiérarchique, derrière des SSD/nvme performants.
Minimum disk performance
Le stockage est dimensionné en IOPS1, un service de messagerie étant un gros consommateur d’IO. L’espace de stockage est lui directement dépendant de la demande du client (quotas, …)
Depending on the end use, not all disks need to have the same level of performance, nor the same volume.
The minimum volumes given below are estimates and may vary according to the installation and the evolution of the organization. It is therefore preferable to use technologies that allow simple expansion of FS (LVM, etc.).
Point de montage | Description | Type NFS | Type Object Storage S3/Scality Ring | Volumétrie minimale |
|---|---|---|---|---|
/var/spool/cyrus/data | Espace de stockage des emails | ❌ | ✅ | Espace le plus volumineux, à déterminer en fonction de la volumétrie mail attendue. |
/var/spool/bm-hsm | Espace optionnel de stockage secondaire des emails | ⚠️ | ❌ | |
/var/lib/postgresql | Base de données PostgreSQL | ❌ | ❌ | 5% of the volume of |
/var/spool/bm-elasticsearch | Données des index ElasticSearch | ❌ | ❌ | 10% of the volume of |
/var/spool/bm-mail | Envoi des emails via EAS/mapi | ❌ | ❌ | 2 GB |
/var/backups/bluemind | Sauvegardes DataProtect | ✅ | ❌ | Sum of: |
/var/spool/bm-mapi | Temporary folders for the bm-mapi service | ❌ | ❌ | 2 GB |
/var/spool/bm-hollowed | Cache interne | ❌ | ❌ | 1 Go |
/var/spool/bm-docs | Stockage des vignettes utilisateurs, ressources... | ❌ | ❌ | 1 Mo par entité avec vignette |
/var/spool/postfix | File d'attente des mails | ❌ | ❌ | 2 GB |
/var/log | Journaux systèmes et applicatifs | ❌ | ❌ | 50 GB |
/tmp | Fichiers temporaires | ❌ | ❌ | 1.2Go de volumétrie est nécessaire à l'installation de BlueMind. This is related to decompressing the installer |
/usr | ❌ | ❌ | 8Go sont nécessaires pour contienir les modules et applications web. |
Privilégier le stockage objet pour avoir de meilleurs résultats que les montages NFS, particulièrement si les stockages blocks utilisés s'appuient sur du réseau (par exemple Ceph, SAN iSCSI).
L'usage de baie de stockage rapide de type "full flash" est une bonne chose. Il faudra néanmoins porter une attention particulière à conserver des latences faibles entre l'instance BlueMind et l'infrastructure de stockage. BlueMind recommande de ne pas dépasser 10ms sur les IOPS.
Bandwidth
La bande passante nécessaire n’est pas prévisible car elle dépend en très grande partie du trafic mail.
À titre d’informations ci-dessous les informations sur la consommation bande passante de l’agenda BlueMind et des smartphones, qui montre bien la prédominance du trafic mail.
Bandwidth Agenda BlueMind
Pour un utilisateur avec l'application d'agenda ouverte dans son navigateur, en http et en octets (mesuré sur le réseau avec wireshark) :
- toutes les 30 sec: un "doSync" 1067 / 293 (envoie des modifs locales et récupération des changements)
- toutes les 5 sec: un "ping": 898 / 233, soit 5388 / 1398 en 30 s(un "keep alive")
Soit :
- Client vers serveur : 215 octets/sec (1067+5388)/30
- Serveur vers client : 56 octets/sec (293+1398)/30
| Utilisateurs actifs | Client vers serveur | Serveur vers client |
|---|---|---|
| 1 | 215 octets/s | 56 octets/s |
| 100 | 21 ko/s | 6 ko/s |
| 1,000 | 210 ko/s | 60 ko/s |
| 10,000 | 2,1 Mo/s | 600 ko/s |
Avec de la marge, pour 1000 agendas ouverts dans les navigateurs :
- Client vers serveur: 500 ko/sec.
- Serveur vers client: 150 ko/sec.
Bandwidth de la gestion des contacts
Pour un utilisateur avec l'application de gestion des contacts ouverte dans son navigateur, en http et en octets :
144 octets / seconde
Avec en particulier :
- toutes les 5 secondes un "ping"
- toutes les 30 secondes un "bmc"
En prenant une marge de sécurité en doublant la valeur mesurée, nous obtenons une bande passant de 288 octets par seconde pour un utilisateur ayant lancé l'application de gestion de contacts.
Bandwidth smartphones
Les ratios ActiveSync sont fournis par Microsoft : 1.04kb /sec/utilisateur.
Donc pour 100 smartphones 104 Ko, soit 13 Ko/sec.
En prenant une marge raisonnable de x2, on comptera alors :
- 100 smartphones == 26 Ko/sec
- 1,000 smartphones == 260 Ko/sec