Frédéric Laubel's Blog

Exchange Server Tips & Tricks

Archive for the ‘Exploitation’ Category

Client Access Array et Active Directory

Posted by Frédéric Laubel sur novembre 30, 2010


Par défaut, avant la création du CAS Array dans un site Active Directory, les bases Exchange 2010 sont associées avec le FQDN du premier serveur CAS installé. Il est fortement recommandé de modifier ce paramétrage en créant un CAS Array y compris lorsqu’il existe un seul serveur CAS -ce qui est le cas dans l’exemple ci-dessous.

Vérification de l’attribut RpcClientAccessServers sur l’ensemble des bases Exchange :

Nous voyons que l’attribut RpcClientAccessServer est renseigné avec le FQDN du serveur EX01 qui est le premier rôle CAS installé sur le site.

Dans les propriétés Active Directory des bases Exchange, l’attribut LegacyExchangeDN est lui aussi fixé au FQDN du serveur CAS :

Le conteneur Active Directory pour le CAS Array est vide :

Maintenant observons les changements dans l’Active Directory lors de la création du CAS Array que j’appelle ‘outlook’ et dans lequel le serveur EX01 est le seul membre :

NB: Quand des bases existent avant la création du CAS Array ne pas oublier de forcer l’application du paramétrage sur ces bases avec Set-ClientAccessArray.

Tout d’abord, le conteneur Active Directory du CAS Array contient désormais la configuration du CAS Array ‘outlook’ :

La valeur networkAddress est renseigné avec le FQDN indiqué lors de la création du CAS Array. C’est cette valeur qui est appliquée aux nouvelles bases Exchange dans l’attribut RpcClientAccessServer

Enfin l’attribut LegacyExchangeDN des bases Exchange est maintenant renseigné avec le nom du CAS Array et non plus le nom FQDN du serveur CAS !

Ce dernier point est très important, puisque c’est cette valeur qui est récupérée par Outlook pour déterminer son point de connexion.

Ne pas oublier de créer l’enregistrement DNS pour le CAS Array de manière qu’Outlook puisse résoudre son nom. Voir la trace DNS lors du lancement d’Outlook :

Pour avoir de la haute disponibilité, vous devez faire pointer cette IP vers un HLB ou vers le NLB Windows.

Maintenant la création du CAS Array n’a plus de secret pour vous 😉

Posted in Exchange 2010, Exploitation | 3 Comments »

Exchange 2010 SP1 : Erreur Get-LogonUser

Posted by Frédéric Laubel sur novembre 25, 2010


Après le passage du SP1 vous pouvez obtenir l’erreur suivante lors du lancement de la console Exchange :

The following error occured when retrieving user information for ‘Domain\administrator’
The operation could not be performed because object ‘s-1-x-xx-xxxxxxxxxxxx-xxxxxxxxxxxx’ couldnt be found on xxx.domain.com. It was running command Get-LogonUser.

Ce message apparait si le système d’exploitation sur lequel est installé Exchange 2010 SP1 est issu d’un clone (genre Ghost, copie ou template de VM…) qui n’a pas été préparé avec SYSPREP, ou qui n’a pas été correctement préparé avec SYSPREP. Dans ce cas il y a un conflit de SID qui provoque ce message.

La seule solution pour éviter ce problème est d’utiliser SYSPREP en prenant soin de choisir l’option GENERALIZE.

Sur Windows Server 2008 R2, SYSPREP se trouve dans C:\windows\system32\sysprep :

Lancer l’utilitaire avec les options OOBE et Generalize :

Vous pouvez ensuite joindre la machine dans le domaine et installer Exchange 2010 SP1.

Rappels et conseils :

  • SYSPREP doit être utilisé avant l’installation d’Exchange, quand la machine n’est pas encore dans le domaine
  • Vous devez utiliser l’option GENERALIZE
  • Vous ne pouvez pas utiliser l’utilitaire NewSID – de Sysinternals/Microsoft – sur Windows 2008 R2
  • Vous ne DEVEZ PAS utiliser l’utilitaire NewSID sur les autres version de Windows !
  • Vous devez utiliser SYSPREP à chaque fois qu’un changement de SID est nécessaire
  • Vous ne DEVEZ pas utiliser SYSPREP une fois Exchange installé


Posted in Exploitation, Rollups et Bugs | 3 Comments »

BlackBerry et Exchange 2010

Posted by Frédéric Laubel sur août 9, 2010


Avec la sortie de BES 5.0 SP2, il m’est apparu utile de faire un point sur la co-existence entre BES et Exchange 2010.

Tout d’abord faisons un rappel sur les pré-requis :

  • La version minimale requise de BES est la v5.0 Service Pack 1 avec la Maintenance Release 1
  • La version minimale d’Exchange 2010 est Exchange 2010 RTM avec le Rollup 1

RIM à sortie en juillet une mise à jour importante, à savoir le Service Pack 2 pour BES 5.0 (BES 5.0.2). BES 5.0 SP2 deviens la version conseillée pour Exchange 2010 RTM.

Quelques remarques sur BES 5.0 SP2 :

  • Le support d’Exchange 2010 SP1 est en cours de validation – logique car il est encore en Bêta –
  • Le support d’Exchange 2007 SP3 est en cours de validation – ce qui est plus problématique –

Vous pouvez consulter la matrice de compatibilité complète sur le site de RIM.

On pourrait en rester là…or il semble que ce SP2 apporte aussi une baisse des IOPS coté serveurs Exchange 2010 et Exchange 2007 ! Ces apports ont fait l’objet d’une présentation lors de la conférence WES 2010, dont je vous communique ici les principales slides :

Vous remarquerez que selon RIM un client BlackBerry consomme autant qu’un client Outlook…ce serait une excellente nouvelle. Reste à savoir si la référence est un client Outlook MAPI ou un client Outlook Anywhere !! 😉

A suivre.

Posted in Architecture, Exchange 2010, Exploitation | Commentaires fermés sur BlackBerry et Exchange 2010

Comparaison ActiveSync – clients et serveurs –

Posted by Frédéric Laubel sur juillet 28, 2010



Il n’est pas forcément évident d’avoir une vision claire de l’offre ActiveSync, que ce soit coté serveur – avec Exchange 2003/2007/2007SP1/2010 /2010SP1- ou que ce soit coté client, avec les différents smart phones du marché .

Grâce au Technet Wiki Exchange et à Wikipedia il est maintenant possible d’avoir une vue consolidée des différents implémentation !

  • Tableau comparatif orienté client :

  • Comparaison coté serveur, y compris avec Exchange 2010 SP1 :

http://social.technet.microsoft.com/wiki/contents/articles/exchange-activesync-overview.aspx

Posted in Architecture, Exchange 2010, Exploitation | Commentaires fermés sur Comparaison ActiveSync – clients et serveurs –

Office 2010 : RTM en avril et disponible en mai

Posted by Frédéric Laubel sur mars 7, 2010


Notez cette date dans votre agenda : Office 2010 – donc Outlook 2010 – sera disponible le 12 mai.

Encore un peu de patience pour bénéficier des avantages d’Exchange 2010 + Outlook 2010 :

  • Mailtips
  • Archivage
  • Import/Export
  • etc…

Posted in Architecture, Exchange 2010, Exploitation | Commentaires fermés sur Office 2010 : RTM en avril et disponible en mai

Microsoft Exchange Server Profile Analyzer

Posted by Frédéric Laubel sur mars 6, 2010


Microsoft vient de sortir la version 8.03.0056 de l’outil Exchange Server Profile Analyzer (EPA).

EPA permet de collecter des informations statistiques sur l’utilisation de la messagerie par vos utilisateurs : emails envoyés et reçus, tailles des pièces jointes, etc…

EPA est disponible en version 64 bits ou en version 32 bits.

Sur l’utilisation en détails de cet outil je vous invite à consulter l’article suivant : http://www.msexchange.org/tutorials/Microsoft-Exchange-Server-Profile-Analyzer-EPA-Tool.html

Posted in Architecture, Exchange 2010, Exploitation | 1 Comment »

Exchange 2007 sur Windows Server 2008 R2 : c’est pour bientôt ! :)

Posted by Frédéric Laubel sur novembre 5, 2009


L’équipe Exchange vient d’annoncer qu’il va être très bientôt possible d’installer Exchange 2007 sur Windows Server 2008  R2 !

En effet jusqu’à présent la seule version d’Exchange qui peut s’installer sur Windows Server 2008 R2 est Exchange 2010. Vivement la sortie du patch !

J’en connais un qui va devoir modifier sa matrice de compatibilité 😉

Update du 02/12/09 : C’est officiel le support de Exchange 2007 sur un OS Windows 2008 R2 sera apporté avec Exchange 2007 SP3 (prévu mi 2010)

Posted in Architecture, Exploitation | 5 Comments »

Exchange 2007 Service Pack 2: Mise à jour (très) importante

Posted by Frédéric Laubel sur août 26, 2009


Exchange 2007 SP2 est disponible !

Ce Service Pack 2 est une mise à jour majeur. En effet non seulement le SP2 contient l’ensemble des correctifs (Rollup) sortis depuis Exchange 2007 SP1, mais il apporte aussi des nouveautés, citons entre autres :

  • Coexistence avec Exchange 2010

Le Service Pack 2 pour Exchange 2007 est indispensable pour pouvoir migrer les boites aux lettres d’un serveur Exchange 2007 vers Exchange 2010 .

  • Sauvegarde avec Windows Server Backup 2008

Un ajout réclamé depuis longtemps, il est enfn possible de sauvegarder Exchange 2007 avec la logiciel de backup intégré dans Windows 2008. Il existe cependant quelques limitations.

  • Intégration dans la console Exchange d’une interface de gestion du niveau de logging

Exchange 2007 SP2 intègre l’équivalent l’outil Diagnostic Logging Tool directement dans la console, à l’image de Exchange 2010.

  • Améliorations de l’audit

Il est possible d’auditer très finement les modifications apportées à l’environnement de messagerie, voir l’excellent White Paper à ce sujet.

Cependant :

  • Exchange 2007 SP2 modifie la schéma Active Directory, donc prenez les précautions d’usage avant de l’installer !
  • Exchange 2007 SP2 nécessite Windows Installer 4.5, donc prévoir son installation et un reboot avant l’installation du SP2. Bonne nouvelle Windows Server 2008 SP2 contient déjà Windows Installer 4.5.
  • Exchange 2007 SP2 n’apporte pas le support de Windows Server 2008 R2. Le seul Exchange supporté sur Windows Server 2008 R2 est Exchange 2010.
  • Lisez le fichier Release Note avant de l’installer.

Posted in Exploitation, Rollups et Bugs | Commentaires fermés sur Exchange 2007 Service Pack 2: Mise à jour (très) importante

Exchange 2007 : Ajout et analyse de compteurs de performance (perfmon + pal)

Posted by Frédéric Laubel sur juin 18, 2009


Lors de l’installation d’Exchange 2007 celui-ci rajoute des compteurs dans l’outil de collecte de performance Windows (perfmon.msc).

Ces compteurs sont utiles pour superviser des rôles ou des points précis sur Exchange, notamment la réplication CCR ou SCR (Voir l’article Technet sur l’utilisation de perfmon pour superviser Exchange).

Cependant pour faire du troubleshooting poussé ces compteurs ne sont pas suffisant. Heureusement il est possible d’alimenter perfmon avec de nouveaux compteurs spécifiques à Exchange 2007 via des fichiers .xml.

Ces fichiers .xml sont spécifiques à chaque rôles Exchange 2007 :

Prenons l’exemple d’un serveur mailbox sur lequel je souhaite diagnostiquer un problème de lenteur.

Important : Cette procédure n’est valable que pour une configuration sur Windows 2008 en anglais. (Pour une version française sur W2K8 il est nécessaire d’utiliser un outil supplémentaire, et pour Windows 2003 il faut utiliser d’autres fichiers sources. Ça marche bien dans les deux cas mais les procédures sont sensiblement différentes.)

Premier temps : mise en place des compteurs  avec les fichiers .xml

Tout d’abord je récupère le fichier .xml spécifique à mon serveur, ici il s’agit du rôle mailbox donc du fichier Exchange_2007_Perfwiz-MBX.xml.

Dans Server Manager je me positionne sur Reliability and Performance / Data Collector Sets / User Defined / et je crée une nouvelle collecte :

Perfmon (1)

Je donne un nom à ma collecte et je choisi la création depuis un modèle :

Perfmon (2)

Je sélectionne depuis « Browse » le fichier Exchange_2007_Perfwiz-MBX.xml

Perfmon (3)

Sélection du répertoire cible :

Perfmon (4)

Je termine en décidant de ne pas démarrer la collecte immédiatement.

Perfmon (5)

En retournant sur perfmon, la collecte personnalisée apparait bien.

En allant dans les propriétés de la collecte, je peux voir l’ensemble des compteurs de performance inclus dans la collecte. Personnellement je préfère changer le format du fichier en .CSV (en effet j’ai constaté un bug avec le format .BLG en cas d’analyse avec PAL)

perfmon-configCSV

Évidemment libre à vous de supprimer ou ajouter des compteurs ou de conserver le format .BLG.

La collecte peut démarrer.

Perfmon (6)

La collecte est bien en statut Running.

Perfmon (7)

Laissez tourner la collecte le temps qui vous semble pertinent en fonction de vos problèmes, généralement une journée.

Une fois la collecte terminée il est le temps de passer à l’analyse du fichier.

Deuxième temps : l’analyse avec PAL

Le programme PAL, pour Performance Analysis of Logs,  est un outil graphique gratuit dédié à l’analyse des logs de performances, que ce soit pour Exchange, mais aussi SQL, Active Directory,IIS, etc…Il est développé par des gens de Microsoft (surtout par Mike Lagase).

Le gros intérêt de PAL est sa capacité à analyser les données brutes des compteurs de performance (depuis un fichier .csv ou .blg), pour les comparer aux best practices Microsoft et en faire ressortir les dérives éventuelles (avec des codes couleurs, vert, jaune ou rouge). Bref PAL est votre meilleur ami dès qu’il s’agit de troubleshooter des problèmes de performances en environnement Microsoft…

Première étape il s’agit de récupérer la dernière version de PAL et de l’installer. Aucunes difficultés particulières sur ce point, évidement PAL doit s’installer sur une station de travail et non pas directement sur le serveur à analyser.

Une fois la collecte terminée j’importe le fichier dans PAL (onglet Counter Log).

La seule subtilité de l’outil consiste à ne pas oublier de spécifier dans l’onglet Threshold File le type d’analyse. Ici je précise que le fichier provient d’un serveur Exchange 2007 ayant uniquement le rôle Mailbox :

pal

Ensuite j’exécute l’analyse, attention ça peut prendre pas mal de temps en fonction de la durée de la collecte !

Le résultat est un rapport au format HTML (plusieurs centaines de pages !) me permettant de voir tout de suite les points posant problème en rouge.

Contenu du sommaire :

  • Tool Parameters
  • Chronological Order
    • Alerts by Chronological Order
  • Processor
    • Processor Utilization Analysis (Alerts: 0)
    • Processor Queue Length (Alerts: 0)
    • Excessive Processor Use by Processes (Alerts: 0)
  • Network
    • Network Utilization Analysis (Alerts: 0)
    • Network Output Queue Length Analysis (Alerts: 0)
    • Network Interface Packets Outbound Errors (Alerts: 0)
  • Disk
    • Logical Disk Read Latency Analysis (Alerts: 0)
    • Logical Disk Write Latency Analysis (Alerts: 0)
    • Process IO Data Operations/sec (Alerts: 0)
    • Process IO Other Operations/sec (Alerts: 0)
    • LogicalDisk Disk Transfers/sec (Alerts: 0)
  • Memory
    • Free System Page Table Entries (Alerts: 0)
    • Pool Non Paged Bytes (Alerts: 0)
    • Pool Paged Bytes (Alerts: 0)
    • Available Memory (Alerts: 9)
    • Memory Pages/sec (Alerts: 0)
    • Memory Leak Detection (Alerts: 0)
    • Handle Leak Detection (Alerts: 30)
    • High Virtual Memory Usage (Alerts: 0)
    • Process Working Set (Stats only)
    • Memory System Cache Resident Bytes (Alerts: 0)
    • Memory Pages Input/sec (Alerts: 0)
    • Memory Page Reads/sec (Alerts: 0)
    • Memory Cache Bytes (Stats only)
    • Memory Pages Output/sec (Stats only)
    • Memory Transition Pages RePurposed/sec (Alerts: 0)
  • Paging File
    • Paging File % Usage (Alerts: 0)
  • .NET Related
    • Memory Leak Detection in .NET (Alerts: 10)
    • .NET CLR Memory % Time in GC (Alerts: 0)
  • MSExchange ADAccess Domain Controllers
    • MSExchange ADAccess Domain Controllers LDAP Search Time (Alerts: 0)
    • MSExchange ADAccess Domain Controllers LDAP Read Time (Stats only)
    • MSExchange ADAccess Domain Controllers LDAP Searches timed out per minute (Alerts: 0)
    • MSExchange ADAccess Domain Controllers LDAP Search calls/Sec (Stats only)
  • MSExchange ADAccess Caches
    • MSExchange ADAccess Caches LDAP Searches/Sec (Stats only)
  • MSExchangeIS Client
    • MSExchangeIS Client RPC Operations/sec (Stats only)
    • MSExchangeIS Client RPC Average Latency (Alerts: 0)
    • MSExchangeIS Client JET Log Records/sec (Stats only)
  • MSExchangeIS Mailbox
    • MSExchangeIS Mailbox Slow FindRow Rate (Alerts: 0)
    • MSExchangeIS Mailbox Messages Delivered/sec (Stats only)
    • MSExchangeIS Mailbox Messages Queued For Submission (Alerts: 0)
    • MSExchangeIS Mailbox Messages Sent/sec (Stats only)
    • MSExchangeIS Mailbox Messages Submitted/sec (Stats only)
    • MSExchangeIS Mailbox Categorization Count (Stats only)
    • MSExchangeIS Mailbox Search Task Rate (Alerts: 0)
  • MSExchangeIS
    • MSExchangeIS RPC Averaged Latency (Alerts: 0)
    • MSExchangeIS RPC Operations/sec (Stats only)
    • MSExchangeIS RPC Requests (Alerts: 0)
    • MSExchangeIS Virus Scan Queue Length (Stats only)
    • MSExchangeIS Virus Scan Files Scanned/sec (Stats only)
    • MSExchangeIS Virus Scan Messages Processed/sec (Stats only)
    • MSExchangeIS VM Largest Block Size (Stats only)
    • MSExchangeIS VM Total Free Blocks (Stats only)
    • MSExchangeIS VM Total Large Free Block Bytes (Stats only)
    • MSExchangeIS RPC Num. of Slow Packets (Alerts: 0)
    • MSExchangeIS RPC Client Backoff/sec (Stats only)
    • MSExchangeIS Client: RPCs Failed: Server Too Busy / sec (Stats only)
    • MSExchangeIS Slow QP Threads (Alerts: 0)
    • MSExchangeIS Slow Search Threads (Alerts: 0)
  • MSExchange Store Interface
    • MSExchange Store Interface RPC Latency average (msec) (Stats only)
    • MSExchange Store Interface RPC Requests outstanding (Stats only)
    • MSExchange Store Interface RPC Requests failed (%) (Stats only)
    • MSExchange Store Interface RPC Requests sent/sec (Stats only)
    • MSExchange Store Interface RPC Slow requests (%) (Stats only)
    • MSExchange Store Interface ROP Requests outstanding (Stats only)
  • MSExchangeMailSubmission
    • MSExchangeMailSubmission Hub Servers In Retry (Stats only)
    • MSExchangeMailSubmission Successful Submissions Per Second (Stats only)
    • MSExchangeMailSubmission Failed Submissions Per Second (Stats only)
  • Process
    • Process % Processor Time (Stats only)
  • MSExchange Database
    • MSExchange Database Database Page Fault Stalls/sec (Alerts: 0)
    • MSExchange Database Log Record Stalls/sec (Alerts: 0)
    • MSExchange Database Version buckets allocated (Alerts: 0)
    • MSExchange Database Log Threads Waiting (Alerts: 0)
  • MSExchange Search Indices
    • MSExchange Search Indices Throttling Delay Value (Stats only)
  • MSExchange Assistants
    • MSExchange Assistants Events Polled/sec (Stats only)
    • MSExchange Assistants Events in queue (Stats only)
    • MSExchange Assistants Average Event Processing Time In seconds (Stats only)
  • MSExchange Resource Booking
    • MSExchange Resource Booking Average Resource Booking Processing Time (Stats only)
    • MSExchange Resource Booking Requests Failed (Alerts: 0)
  • MSExchange Replication
    • MSExchange Replication CopyQueueLength (Stats only)
    • MSExchange Replication ReplayQueueLength (Stats only)
  • Disclaimer

Extrait :

Extrait-PAL-5

ExtraitPAL-2

Extrait-PAL-3

Extrait-PAL-4

Avouez que c’est quand même beaucoup plus rapide, pratique, pertinent, sérieux et sexy qu’une analyse à la mano !!!

Et coup de chapeau à Mike Lagase et John Rodriguez (Monsieur Performance sur Exchange)…

Posted in Exploitation | 9 Comments »

Un script pour connaitre la version exacte des serveurs Exchange (Build, Rollup)

Posted by Frédéric Laubel sur juin 1, 2009


Comme je l’ai déjà indiqué à l’occasion du Rollup6  (voir dans la catégorie Rollup et Bugs) pour connaitre précisément la version d’un serveur Exchange 2007 il est nécessaire d’aller voir dans le registre. En effet les outils intégrés dans Exchange (get-ExchangeServer | fl ) ne permet pas de récupérer la version du Rollup !

Pour éviter ce travail, Jeff Guillet, MVP Exchange, à eu la bonne idée d’automatiser ça grâce à un ch’tit script 🙂

Illustration sur ma maquette :
ConnaitrelaversionRollup

Le script est disponible ici.

Posted in Exploitation, Rollups et Bugs, Scripts | Commentaires fermés sur Un script pour connaitre la version exacte des serveurs Exchange (Build, Rollup)