> Tech > Trois principes fondamentaux pour les performances d’Exchange Server

Trois principes fondamentaux pour les performances d’Exchange Server

Tech - Par iTPro.fr - Publié le 24 juin 2010
email

Les éléments fondamentaux : le matériel, la conception et le fonctionnement.Le travail d'un administrateur Microsoft Exchange Server consiste essentiellement à  faire passer les messages, à  maintenir le système en état de fonctionner et à  donner aux utilisateurs l'impression qu'Exchange Server est fiable à  100 pour cent. Pour atteindre ces objectifs, il faut se concentrer sur plusieurs éléments fondamentaux pour les performances : le matériel, la conception et le fonctionnement, et ce, pour toutes les organisations Exchange Server, qu'il s'agisse d'Exchange Server 2000 ou d'Exchange Server 5.5. Un matériel fiable et adéquat est essentiel pour les performances d'Exchange Server, mais la conception dans laquelle il se place et la manière dont on l'utilise, sont tout aussi importantes pour atteindre durablement des performances maximales.

Une configuration matérielle adéquate et équilibrée constitue la plate-forme nécessaire pour de bonnes performances d’Exchange Server. Pour cela les serveurs doivent trouver l’équilibre entre trois composants essentiels : la CPU, la mémoire et le disque.

La configuration des serveurs se ramène essentiellement au nombre de CPU possédées et à  la vitesse à  laquelle elles tournent, à  la quantité de mémoire et au type de sous-système disque. Etant donné la vitesse actuelle des CPU et le coût relativement bas de la mémoire et des disques, un serveur est difficilement sous-configuré. Même le plus petit serveur du commerce, avec, par exemple, une CPU à  700 MHz, 256 Mo de RAM, et trois disques de 18 Go et un contrôleur RAID 5, peut supporter plusieurs centaines de boîtes à  lettres Exchange Server. (Pour une explication des tests d’évaluation utilisés par les constructeurs dans les guides de dimensionnement des serveurs, voir l’encadré « Interpréter les tests d’évaluation »). Les serveurs haut-de-gamme (ceux qui supportent plus de 1 000 boîtes à  lettres ou qui sont conçus pour la haute disponibilité) relèvent plusieurs défis, surtout grâce aux différentes possibilités de combinaisons de matériels pour obtenir le niveau de performances désiré.

Les statistiques des CPU. La plupart des machines Exchange Server sont équipées d’une seule CPU, mais les tests des constructeurs démontrent une évolutivité satisfaisante d’Exchange Server grâce au SMP. Dans les tests Compaq, le passage de deux à  quatre processeurs a augmenté de 50 pour cent la capacité, et le passage de quatre à  huit processeurs a conduit à  la même augmentation. Etant donné le temps-système consommé par le SMP, ces performances sont excellentes et attestent des capacités de multiprocessing du code Exchange Server. (Selon Microsoft, le Service Pack 1 (SP1) d’Exchange Server 2000 supportera plus de huit processeurs, mais d’autres facteurs que la CPU limiteront probablement la plupart des configurations. De plus, les machines à  huit voies peuvent répondre actuellement aux besoins d’une organisation Exchange 2000 même très étendue.

Les CPU sont de plus en plus rapides. (Intel a récemment annoncé la sortie d’un processeur Pentium IV à  1,5 GHz). Un cache de niveau 2 est particulièrement important pour de bonnes performances Exchange Server, il s’agit donc d’utiliser des systèmes ayant le plus possible de caches de niveau 2. Cette zone spéciale du processeur met en antémémoire des instructions et sa taille dépend du modèle de processeur. La taille habituelle du cache de Niveau 2 des processeurs Pentium III d’Intel est de 256 Ko, alors que les processeurs Xeon du constructeur peuvent avoir des caches de Niveau 2 allant jusqu’à  2 Mo. Ces derniers constituent actuellement la meilleure plate-forme pour Exchange Server en raison de la taille de leur cache et de la nature de leur jeu de puces, optimisé par Intel pour les applications serveur.

Il ne faut pas oublier que l’objectif devrait être de saturer la capacité de traitement de la machine et qu’il faut, pour cela, supprimer tous les goulets d’étranglement. Il faudrait normalement commencer par traiter toute déficience de la mémoire, puis ajouter de la capacité au sous-système de stockage, et augmenter la vitesse du réseau (100 Mbps devraient suffire pour les plus gros systèmes Exchange Server). S’il est toujours nécessaire d’augmenter la saturation de la CPU après avoir optimisé ces composants, il faut alors ajouter d’autres processeurs ou augmenter la fréquence du processeur.

Mémoire et antémémoire. Pour optimiser la mémoire exigée par Exchange Server du système d’exploitation, Exchange 2000 et Exchange Server 5.5 font tous deux appel à  un mécanisme baptisé DBA (Dynamic Buffer Allocation). DBA surveille le niveau d’activité d’un serveur et règle la quantité de mémoire virtuelle utilisée par le moteur de base de données ESE (Extensible Storage Engine). Exchange Server met en oeuvre DBA comme élément de banque d’informations, et on observe parfois un accroissement ou une contraction considérables du processus de la Banque sur un serveur sujet à  des périodes intermittentes de lourds besoins. On assiste parfois à  des fluctuations de la Banque sur des systèmes Exchange Server exécutant d’autres applications, par exemple Microsoft SQL Server, lorsque plusieurs applications ont besoin de ressources de mémoire.

Sur les serveurs exécutant seulement Exchange Server et par conséquent soumis à  des besoins réguliers, le processus de la Banque tend à  atteindre un certain niveau, puis à  rester constant. (Les machines Exchange 2000 ne font pas partie de ce groupe, parce que tous les serveurs Exchange 2000 exécutent aussi Microsoft IIS pour supporter l’accès aux protocoles Internet). Il ne faut pas s’inquiéter en présence d’un grand processus de Banque : cela signifie simplement que DBA a observé qu’aucune autre application active n’utilise la mémoire et a donc demandé de la mémoire supplémentaire pour mettre en antémémoire des pages de bases de données. Il s’ensuit une réduction de la quantité d’échange du système; qui aide aux performances.

Pour connaître la quantité de mémoire utilisée par l’ESE, vous pouvez utiliser le compteur Taille du cache de base de données de la Banque d’informations dans l’objet Base de données de l’Analyseur de performances. La Figure 1 montre une valeur typique pour un petit serveur Exchange 2000 sous charge modérée. Ce serveur a une RAM de 256 Mo, mais a alloué environ 114 Mo de mémoire virtuelle à  l’ESE. Il faut savoir que la quantité de mémoire virtuelle utilisée par l’ESE augmente au fur et à  mesure du chargement des groupes de stockage (SG) et des bases de données : c’est l’une des raisons pour lesquelles les administrateurs systèmes expérimentés prennent le temps de réfléchir avant de partitionner la Banque.

L’ESE utilise de la RAM pour mettre en antémémoire des pages de bases de données de la mémoire. Lorsqu’un serveur n’a pas suffisamment de mémoire physique, l’ESE met en antémémoire moins de pages et augmente l’accès au disque pour extraire des informations de la base de données. Il en résulte une contrainte supplémentaire pour le sous-système des E/S, amené à  traiter plus d’opérations que d’habitude. Faut-il alors mettre à  niveau le sous-système des E/S, en installant des disques supplémentaires et en distribuant les E/S ? Ce serait là  une conclusion hâtive, car il est habituellement plus rentable d’augmenter la quantité de RAM disponible sur le serveur. Il vaut donc mieux toujours envisager cette étape avant toute autre action.

Des performances de disques maximales. Exchange Server est essentiellement une application de base de données et comme toutes les applications de ce type, génère une charge d’E/S considérable à  la fois sur les composants du disque et du contrôleur. Tout exercice de gestion des performances doit par conséquent se composer de trois étapes : distribuer correctement la source des E/S (c’est-à -dire les fichiers impliqués dans l’activité de messagerie) entre les disques, garantir le niveau de protection adéquat pour les fichiers essentiels, et installer le matériel le plus approprié pour traiter l’activité des disques.

La première étape consiste à  séparer les jeux de journaux de transactions et les fichiers de bases de données, même sur le plus petit système. Cette procédure garantit une chance maximale de conserver des informations après un plantage de disque. Si les journaux se trouvent sur une pile et la base de données sur une autre, la perte de l’un n’affectera pas l’autre et la base de données pourra être récupérée dans un état connu au moyen de sauvegardes. En revanche si les journaux de transactions et la base de données se trouvent sur la même pile, la défaillance d’un disque entraînera inévitablement une perte de données.

La seconde étape consiste à  protéger correctement les jeux de journaux de transactions. Les données des journaux de transactions représentent des changements d’informations entre l’état en cours de la base de données (c’est-à -dire les pages se trouvant dans la RAM) et son état lors de la dernière sauvegarde (c’est-à -dire les pages se trouvant sur le disque). Ne placez jamais les journaux de transactions sur un disque non protégé; utilisez des volumes RAID 1 avec une antémémoire de réécriture basée sur contrôleur, qui assure une protection adéquate sans réduire les performances. Séparez les jeux de journaux de transactions sur des serveurs exécutant Exchange 2000 Enterprise Server avec plusieurs SG. L’idéal est d’affecter un volume séparé à  chaque jeu de journaux.

La troisième étape consiste à  protéger le plus possible les bases de données de la Banque d’informations. Utilisez le RAID 5 ou le RAID 0+1 pour protéger les disques contenant les banques de boîtes aux lettres et de dossiers publics. L’approche du RAID 5 est la plus répandue (Microsoft recommande une approche RAID 5 depuis le lancement d’Exchange Server 4.0), mais le RAID 0+1 se répand de plus en plus, parce qu’il donne de meilleures performances d’E/S et évite l’obligation d’avoir une antémémoire de réécriture. Des tests effectués par Compaq ont démontré qu’une pile se trouvant dans un jeu RAID 0+1 peut supporter les E/S générées par 250 utilisateurs Exchange Server actifs. Ainsi, pour un grand serveur supportant 2 500 utilisateurs actifs il faudrait un RAID 0+1 de 10 disques. Pour des performances maximales, il vaut mieux se concentrer sur la capacité d’E/S de chaque disque plutôt que sur le nombre de gigaoctets pouvant être stockés.

Une fois le serveur équipé d’un stockage suffisant, il faut surveiller la situation pour être certain qu’il assure les performances désirées. Pour avoir un tableau complet, surveillez chaque périphérique hébergeant un fichier prioritaire potentiel (c’est-à -dire un fichier générant la plupart du trafic d’E/S). Pour les machines Exchange Server 5.5, ces périphériques sont ceux qui contiennent la Banque, le MTA (Message Transfer Agent) et les dossiers de travail IMS (Internet Mail Service). Pour Exchange 2000, adoptez la même approche, mais surveillez aussi le périphérique hébergeant le répertoire du courrier SMTP et considérez que la Banque pourrait être partitionnée en plusieurs bases de données, qui doivent toutes être surveillées.

Pour évaluer rapidement les performances de stockage d’une machine Exchange Server, il est possible d’utiliser plusieurs compteurs de l’Analyseur de performances qui examinent les temps de réponse et les longueurs des files d’attente des disques. (Pour en savoir plus sur l’Analyseur de performances et autres outils similaires, voir l’article de Cris Banson « NT Performance Tuning », page 40, ou celui de Curt Aubley « Windows 2000 Performance Tools » à  http://www.win2000mag.com, InstantDoc ID 8198). Pour surveiller le temps de réponse, on peut utiliser un des compteurs suivants de l’objet Disque Physique :

– Avg. disk sec/Read

– Avg. disk sec/Write

– Avg. disk sec/Transfer

Pour des performances acceptables, chaque périphérique devrait effectuer les opérations d’E/S aléatoires en 20 millisecondes (ms) maximum. Les opérations séquentielles devraient se dérouler en moins de 10 ms. Lorsque les périphériques dépassent ces seuils, il faut prendre des mesures. Le plus facile est de déplacer les fichiers de façon à  ce que des périphériques moins utilisés prennent plus de charge. Il existe d’autres options plus drastiques : déplacer des boîtes à  lettres, des dossiers publics ou des connecteurs sur un autre serveur, ou installer des disques supplémentaires et séparer les fichiers prioritaires.

Il faut aussi surveiller les compteurs de performances Pages Read et Pages Writes de l’objet Mémoire, car ils indiquent les erreurs de page aboutissant à  un accès disque. La somme de ces deux valeurs ne devrait pas excéder 80 ms (c’est-à -dire environ la limite d’E/S pour une unité de disque). Au-delà  de ce seuil, il faut ajouter de la mémoire physique au serveur et placer si possible le fichier d’échange sur une unité rapide (bien que cette dernière solution soit moins efficace que d’ajouter de la mémoire).

Le compteur Longueur de la file d’attente du disque courant, de l’objet Disque physique, indique le nombre d’opérations restant à  effectuer sur un volume particulier. Bien que Windows 2000 indique des longueurs de files d’attente séparées pour les opérations de lecture et d’écriture, ce qui compte c’est la valeur globale en cours. L’expérience a prouvé que la longueur de la file d’attente devrait toujours être inférieure à  la moitié du nombre de disques d’un volume. Par exemple, pour un volume RAID de 10 disques, la longueur de la file d’attente devrait être inférieure à  5. L’objectif est de veiller à  ce que les volumes aient suffisamment d’espace en tête pour traiter la demande de pointe. Des valeurs de longueur de file d’attente extrêmement élevées indiquent que le volume ne peut pas assumer le taux des demandes d’E/S d’une application et qu’il faut prendre des mesures.

La Figure 2 montre la surveillance des résultats du disque F (sur lequel réside les bases de données de la Banque) et du disque L (sur lequel résident les fichiers de consignation) d’un serveur Exchange 2000. Le compteur Longueur de la file d’attente du disque actuel, de l’objet Disque physique, montre que le disque de la Banque est sous une contrainte considérable : une longueur de file d’attente moyenne de 23,59 opérations d’E/S et une pointe de 73 opérations d’E/S. Cette charge résulte de la création, par un utilisateur, de duplications de gros dossiers publics (un dossier contenait par exemple 32 000 éléments) dans une banque publique. Exchange Server a généré 230 fichiers journaux – 1,3 Go de données – pendant le processus de duplication. Une charge de cet ordre sera remarquée par les utilisateurs, parce qu’Exchange Server mettra en file d’attente toute requête qu’ils adresseront à  la Banque et ne leur donnera pas une réponse aussi rapide que d’habitude.

Téléchargez gratuitement cette ressource

Cloud hybride : 4 Stratégies de réussite

Cloud hybride : 4 Stratégies de réussite

Que vous souhaitiez développer ou renforcer votre approche du Cloud hybride, évaluer les meilleures options ou encore enrichir votre processus de prise de décision, découvrez dans ce Guide, 4 stratégies de Cloud hybride alignées avec vos objectifs business & technologiques.

Tech - Par iTPro.fr - Publié le 24 juin 2010