Optimisation du stockage du courrier dans Zimbra Collaboration Suite

Dans l'un de nos articles précédents, dédié à la planification de l'infrastructure lors de la mise en œuvre de Zimbra Collabortion Suite dans une entreprise, il a été dit que la principale limitation dans le fonctionnement de cette solution était la vitesse d'E/S des périphériques de disque dans les stockages de courrier. En effet, à l'heure où plusieurs centaines d'employés d'une entreprise accèdent simultanément au même stockage de courrier, la largeur du canal d'écriture et de lecture des informations sur les disques durs peut ne pas être suffisante pour le fonctionnement réactif du service. Et si pour les petites installations de Zimbra, cela ne pose pas de problème particulier, alors dans le cas des grandes entreprises et des fournisseurs SaaS, tout cela peut conduire à un courrier électronique qui ne répond pas et, par conséquent, à une diminution de l'efficacité des employés, ainsi qu'à une violation. des SLA. C'est pourquoi, lors de la conception et de l'exploitation d'installations Zimbra à grande échelle, une attention particulière doit être accordée à l'optimisation des performances des disques durs pour le stockage du courrier. Examinons deux cas et essayons de découvrir quelles méthodes d'optimisation de la charge sur le stockage disque peuvent être appliquées dans chacun d'eux.

Optimisation du stockage du courrier dans Zimbra Collaboration Suite

1. Optimisation lors de la conception d'une installation Zimbra à grande échelle

Pendant la phase de conception d'une installation Zimbra à charge élevée, l'administrateur devra choisir le système de stockage à utiliser. Afin de trancher ce problème, sachez que la charge principale sur les disques durs provient du SGBD MariaDB inclus dans Zimbra Collaboration Suite, du moteur de recherche Apache Lucene et du stockage blob. C'est pourquoi, pour faire fonctionner ces produits logiciels dans des conditions de charge élevée, il est nécessaire d'utiliser des équipements rapides et fiables.

Dans des conditions normales, Zimbra peut être installé aussi bien sur des disques durs RAID que sur des stockages connectés via le protocole NFS. Pour les très petites installations, vous pouvez installer Zimbra sur un disque SATA ordinaire. Cependant, dans le contexte de grandes installations, toutes ces technologies présentent divers inconvénients sous la forme d'une vitesse d'enregistrement réduite ou d'une faible fiabilité, ce qui n'est inacceptable ni pour les grandes entreprises ni, en particulier, pour les fournisseurs SaaS.

C'est pourquoi dans les infrastructures Zimbra à grande échelle, il est préférable d'utiliser un SAN. C'est cette technologie qui est actuellement capable de fournir le plus grand débit pour les périphériques de stockage et en même temps, grâce à la possibilité de connecter une grande quantité de cache, son utilisation ne présente pratiquement aucun risque significatif pour l'entreprise. C'est une bonne idée d'utiliser la NVRAM, qui est utilisée dans de nombreux SAN pour accélérer les choses lors des écritures. Mais il est préférable de désactiver la mise en cache des données enregistrées sur les disques eux-mêmes, car cela peut entraîner des dommages irréparables aux supports et une perte de données en cas de problèmes d'alimentation.

Quant au choix d'un système de fichiers, le meilleur choix serait d'utiliser le standard Linux Ext3/Ext4. La principale nuance associée au système de fichiers est qu'il doit être monté avec le paramètre -noatime. Cette option désactivera la fonction d'enregistrement de l'heure du dernier accès aux fichiers, ce qui signifie qu'elle réduira considérablement la charge de lecture et d'écriture. En général, lors de la création d'un système de fichiers ext3 ou ext4 pour Zimbra, vous devez utiliser les paramètres utilitaires suivants femme2fs:

-j — Pour créer un journal du système de fichiers. Créez le système de fichiers avec un journal ext3/ext4.
-L NOM - Créer un nom de volume à utiliser ensuite dans /etc/fstab
-O index_répertoire - Utiliser un arbre de recherche haché pour accélérer les recherches de fichiers dans les grands répertoires
-mois 2 — Pour réserver 2 % du volume dans les grands systèmes de fichiers pour le répertoire racine
-Taille J=400 — Pour créer un grand magazine
-b 4096 — Pour déterminer la taille du bloc en octets
-i 10240 - Pour le stockage des messages, ce paramètre doit correspondre à la taille moyenne des messages. Vous devez prêter une attention particulière à ce paramètre, car sa valeur ne peut pas être modifiée ultérieurement.

Il est également recommandé d'activer synchronisation d'annuaire pour le stockage blob, le stockage des métadonnées de recherche Lucene et le stockage de la file d'attente MTA. Cela devrait être fait car Zimbra utilise généralement l'utilitaire fsync pour garantir l’écriture d’un blob avec des données sur le disque. Cependant, lorsque la boutique de messagerie Zimbra ou le MTA crée de nouveaux fichiers lors de la livraison du message, il devient nécessaire d'écrire sur le disque les modifications qui se produisent dans les dossiers correspondants. C'est pourquoi, même si le fichier a déjà été écrit sur le disque en utilisant fsync, l'enregistrement de son ajout au répertoire peut ne pas avoir le temps d'être écrit sur le disque et, par conséquent, peut être perdu en raison d'une panne soudaine du serveur. Grâce à l'utilisation synchronisation d'annuaire ces problèmes peuvent être évités.

2. Optimisation avec l'infrastructure Zimbra en cours d'exécution

Il arrive souvent qu'après plusieurs années d'utilisation de Zimbra, le nombre de ses utilisateurs augmente considérablement et le service devienne de moins en moins réactif chaque jour. La sortie de cette situation est évidente : il suffit d'ajouter de nouveaux serveurs à l'infrastructure pour que le service fonctionne à nouveau aussi rapidement qu'avant. Pendant ce temps, il n'est pas toujours possible d'ajouter immédiatement de nouveaux serveurs à l'infrastructure afin d'augmenter ses performances. Les responsables informatiques doivent souvent passer beaucoup de temps à coordonner l'achat de nouveaux serveurs avec le service de comptabilité ou de sécurité ; en outre, ils sont souvent déçus par les fournisseurs qui peuvent livrer un nouveau serveur en retard ou même livrer un mauvais produit.

Bien entendu, il est préférable de construire votre infrastructure Zimbra avec une réserve afin d'avoir toujours une réserve pour son expansion et de ne dépendre de personne, cependant, si une erreur a déjà été commise, le responsable informatique ne peut qu'en atténuer les conséquences. autant que possible. Par exemple, un responsable informatique peut obtenir un léger gain de productivité en désactivant temporairement les services du système Linux qui accèdent régulièrement aux disques durs pendant le fonctionnement et peuvent donc avoir un impact négatif sur les performances de Zimbra. Ainsi, vous pouvez désactiver temporairement :

autofs, netfs - Services de découverte du système de fichiers à distance
tasses — Service d'impression
xinetd, vsftpd - Services *NIX intégrés dont vous n'aurez probablement pas besoin
portmap, rpcsvcgssd, rpcgssd, rpcidmapd — Services d'appel de procédure à distance, généralement utilisés conjointement avec les systèmes de fichiers réseau
pigeonnier, cyrus-imapd, sendmail, exim, postfix, ldap — Doublons des principaux utilitaires inclus dans Zimbra Collaboration Suite
emplacement/mise à jourb - Étant donné que Zimbra stocke chaque message dans un fichier séparé, l'exécution quotidienne du service updateb peut causer des problèmes, et il est donc possible de le faire manuellement pendant la moindre charge sur les serveurs.

L'économie de ressources système résultant de la désactivation de ces services ne sera pas très importante, mais même cela peut être très utile dans des conditions proches de la force majeure. Une fois le nouveau serveur ajouté à l'infrastructure Zimbra, il est recommandé de réactiver les services précédemment désactivés.

Vous pouvez également optimiser le fonctionnement de Zimbra en déplaçant le service Syslog vers un serveur distinct afin que pendant le fonctionnement, il ne charge pas les disques durs des stockages de messagerie. Presque tous les ordinateurs conviennent à ces fins, même un Raspberry Pi monocarte bon marché.

Source: habr.com

Ajouter un commentaire