Exchange your Mind

"La connaissance ne vaut que si elle est partagée" / "An effective Knowledge is a shared one"

Archives de la catégorie ‘Exchange Server 2010’

Exchange et le Stockage – Partie 14

Publié par Anthony Costeseque le mars 25, 2013


Bonjour à tous,

Update 09/04/2013 : pour répondre à certaines remarques que j’ai pu recevoir :)

1 – Les calculs ne sont pas présents pour la partie JBOD RAID-Less : je vous renvoie à la partie 3 (calcul DB+Logs avec la feuille Excel MBX Exchange)

    2 – Les types de disques détail :

  • Enterprise (ENT)
    • Interface dual port SAS
    • 10K, 15K tours par minutes (TPM)
    • 146, 300, 400, 450, 600GB +
    • Large Form Factor (LFF) & Small Form Factor (SFF)
  • Midline (MDL)
    • SAS – dual port
    • SATA – single port
    • 7200 TPM + LFF & SFF
    • 500GB, 750GB, 1TB, 2TB +
  • Entry (ETY) – Ne convient pas pour ExchangeEntry (ETY) – Ne convient pas pour Exchange

La référence dans la plus part des déploiements est MDL SAS 7200 tr/min, on trouve toujours du DAS pensé pour le JBOD RAID-Less chez HP avec du SATA mais c’est de plus en plus rare (la différence de prix entre le SAS et le SATA est très faible)

    3 – La prise en compte des produits tiers qui ajoute de la charge : BES, etc … -> En effet il faudra adapter en fonction de la charge que vous ajouterai sur vos serveur Mailbox

    4 – Ces calculs théoriques sont à adapter en fonction de ce que vous constaterez pendant les premiers mois de pleine production, important dans le cas du JBOD RAID-Less la charge assumée pour 1 disques 540/550 utilisateurs n’est jamais de 100% (les chances que les 550 utilisateurs sollicitent simultanément leur boite mail est à peu près comme de gagner au loto (oui je sais ça arrive ! mais ça ne m’est encore jamais arrivé :/)

    5- Pour finir ce ne sont pas des règles mais des constats que j’ai pu faire pendant ces années ou j’ai déployé de l’Exchange 2010, beaucoup de composant dans l’infrastructure peuvent influencer le rendu final !

    6 – Ne jamais oublier de valider votre infrastructure avec JetStress cela permet déjà de faire ressortir les grosses anomalies qu’il pourrait y avoir dans le design coté stockage

Je vais reprendre cette série de billets sur le stockage dans Exchange 2010, et je vous propose aujourd’hui les scenarios classiques de dimensionnement que je rencontre le plus souvent.

Direct attachement interne

(DAS)

Storage Area Network

(SAN)

Direct attachement externe

(DAS)

SANS HA

AVEC HA / RAID

AVEC HA / RAID

AVEC HA / JBOD Raid-Less

50 – 100 utilisateurs

100 – 500 utilisateurs

> 500 utilisateurs

> 3000 utilisateurs

1 Copie

2 Copies

2 Copies

>= 3 Copies

Voici le résumé.

Maintenant comment le lire :

Mon expérience dans le design d’infrastructure Exchange (2010) m’a montré que dans la plupart des cas c’est le nombre d’utilisateurs (3eme ligne) qui conditionne le reste de la solution.

Même si ce n’est pas toujours le cas pour une installation inférieur à 100 Utilisateurs le HA ne sera pas pris en charge pas Exchange mais souvent par une autre solution (souvent basé sur la technologie de virtualisation qui la soutient).

Ce tableau montre aussi que pour aller vers du DAS JBOD RAID-Less il faut un nombre d’utilisateurs important pour rentabiliser le fait de devoir avoir au moins 3 Copies pour une base.

Donc ce tableau ce lit à partir du nombre de d’utilisateurs que devra supporter votre solution de messagerie pour ensuite vous montrer le scenario le plus rependu et le plus optimal en terme de cout/fonctionnalité.

Maintenant passons au détail de chaque solution :

 
 

50 – 100 utilisateurs / SANS HA – 1 Copie

Profile I/O : 0,12 IOPS

  • 100 messages (80/20)
  • 100Ko la taille moyenne d’un mail
  • 14 jours de SIR

Bonnes pratiques : Taille de 200Go maximum

Disques de 2To 7200 tr/min

RAID Obligatoire

RAID 1 (1+1)

RAID 5 (2+1)

Building block

En partant du stockage je peux soutenir au maximum 65 IOPS sur un disque de 2To SATA 7200 tr/min mais il ne faut pas oublier la pénalité en écriture.

Maximum IOPS database
65 / (0,6+(2×0,4)) = 46,43 disons 46 IOPS pour du RAID 1

(65×2) / (0,6+(4×0,4)) = 59,09 disons 59 IOPS pour du RAID 5

Nombre maximum d’utilisateurs

(65 / (0,6+(2×0,4))) / (0,12x(1+20%)) = 322,42 disons 322 utilisateurs en RAID 1

((65×2) / (0,6+(4×0,4))) / (0,12x(1+20%)) = 410,35 disons 410 utilisateurs en RAID 5

Bilan (SANS HA)

Type de disque

Niveau de RAID

Pénalité

Nombre d’IOPS supporté

Nombre d’utilisateurs

Quota

Nombre d’utilisateurs par base de 200Go

Nombre de bases nécessaire

Licence Exchange nécessaire

2To
7200 trm

RAID 1 (1+1)

2

46

322

1Go

120

3

standard

2To
7200 trm

RAID 1 (1+1)

2

46

322

2Go

68

5

standard

2To
7200 trm

RAID 5 (2+1)

4

59

410

1Go

120

4

standard

2To
7200 trm

RAID 5 (2+1)

4

59

410

2Go

68

7

enterprise

 
 

100 – 500 utilisateurs / AVEC HA – 2 Copies

Serveurs MBX : 2 minimums

Licences Windows Entreprise (pour supporter le cluster MSCS utilisé par le DAG)

Bonnes pratiques : Taille de 200Go à 2To pour une base de données

profile I/O qui passe de 0,12 à 0,1

Nombre maximum d’utilisateurs

(65 / (0,6+(2×0,4))) / (0,1x(1+20%)) = 386,90 disons 386 utilisateurs en RAID 1

    (contre 322 SANS HA)

((65×2) / (0,6+(4×0,4))) / (0,1x(1+20%)) = 492,42 disons 492 utilisateurs en RAID 5

    (contre 410 SANS HA)

Bilan (Avec HA) (Sur chaque serveur)

Type de disque

Niveau de RAID

Pénalité

Nombre d’IOPS supporté

Nombre d’utilisateurs

Quota maximum

Nombre de bases nécessaire

Licence Exchange nécessaire

2To
7200 trm

RAID 1 (1+1)

2

46

386

2,5Go

1

standard

2To
7200 trm

RAID 5 (2+1)

4

59

492

3Go

2

standard

 
 

> 500 utilisateurs / AVEC HA – 2 Copies / Version SAN


Cache intelligent

Introduction d’une gestion du cache intelligente permettant de minimiser au maximum la pénalité RAID


Base de référence pour vos réflexions :

Exchange 2010 Solution Reviewed Program (ESRP) – Storage v3.0

http://technet.microsoft.com/en-us/exchange/ff182054.aspx

 
 

> 3000 utilisateurs / avec HA – 3 Copies / Version JBOD RAID-Less

Introduction du JBOD RAID-Less (DAS)

Minimum 3 copies (1 active + 2 passives)

Model : 1 LUN pour la base de données et ses logs = 1 disque


Recommandation

Une large variété de type de stockages sont supportés pour Exchange 2010. Toutefois, le mode RAID-less 3 copies ou plus est la recommandation des équipes produits et du consulting Microsoft, donc validé par le support Microsoft dans les revues de supportabilité.

Concernant le taux de panne des disques SATA/SAS 7200tr/min et donc un éventuel cout d’exploitation caché, les équipes produits Exchange ont mené des tests particulièrement avancés avec les principaux constructeurs (HP, Dell, IBM, etc…)

En mode JBOD RAID-Less le « Annual Disk Failure Rate » (AFR) n’excède pas 5%.

Les constructeurs annoncent des résultats identiques et basent leurs prévisions d’intervention et remplacement de disques sur ces métriques.

Pour rappel, la maintenance des disques couvre le remplacement en 4 heures en 24X7.

3 Copies ou 4 ?

La réponse simple est 4, tout simplement car si vous avez 4 serveurs MBX reparties entre 2 salles et que la salle ou vous avez 2 copies crash complètement, vous avez une copie survivante active sur la salle 2.

Maintenant la salle revient et les synchro des copies commencent, si la salle 2 crash pendant la copie il ne reste plus rien de consistant il faut donc repartir du dernier backup !

2 copies sur chaque salle (4 au total) permettent de s’affranchir de ce scenario.

Building block

En partant du stockage je peux soutenir au maximum 65 IOPS sur un disque de 2To SATA 7200 tr/min ici aucune pénalité.

Maximum IOPS database
65 / (0,6+(1×0,4)) = 65 IOPS

Nombre maximum d’utilisateurs

(65 / (0,6+(1×0,4))) / (0,1x(1+20%)) = 540 utilisateurs

Quotas

Je suis clairement limité par les IOPS donc il ne reste plus qu’à maximiser l’espace disponible.

Je peux donc proposer comme quotas :

1,7Go maximum

Avantages/Inconvénients

SAN / RAID

  •     Compliqué à implémenter
  •     Prévoir des disques de Hot Spare (1 / 30 disques)
  •     Besoin de connaissances pour le maintien et l’administration
  •     Couteux (infrastructure Fibre Chanel)

DAS / JBOD RAID-Less

  •     Simple d’implémentation
  •     Pas de besoins de connaissances en SAN
  •     Pas de notion de Hot Spare
  •     Moins couteux (infrastructure SAS/SATA)

 
 

Bonne lecture à tous,

Pour toutes questions n’hésitez pas.

Anthony COSTESEQUE

Publié dans Exchange Server 2010, Installation-2010, Performance-2010, Stockage-2010 | 1 Comment »

Groupes de distribution dynamiques et Modération

Publié par David PEKMEZ le juillet 20, 2012


Bonjour,

Un élément intéressant rencontré il y a peu chez un client,

Les groupes de distribution dynamiques n’ont pas d’option de configuration de modération en mode graphique,


En effet elles sont disponibles mais en powershell uniquement 

Set-DynamicDistributionGroup -Identity "Groupededistribution" -ModerationEnabled $true -ModeratedBy "dpekmez"

Bonne journée,

David Pekmez

Publié dans Exchange Server 2010 | Leave a Comment »

MVP Exchange Server 2012 !

Publié par David PEKMEZ le juillet 3, 2012


Un petit post pour vous annoncer mon renouvellement en tant qu’MVP Exchange Server pour la quatrième année consécutive !


L’occasion de vous remercier pour votre lecture régulière de notre site,

Le partage de nos connaissances sur les technos Microsoft nous anime depuis des années maintenant, et nous sommes heureux de voir la belle réussite de notre site, qui est reconnu par Microsoft comme un des leader en France par la nomination de :

  • Laurent TERUIN sur la technologie Lync Server
  • Anthony COSTESEQUE sur la technologie Exchange Server
  • Et moi-même David PEKMEZ sur la technologie Exchange Server

J’en profite aussi pour saluer un nouveau venu en tant qu’auteur David ANDRE, qui post déjà régulièrement avec nous.

Bravo à toute l’équipe pour cette belle réalisation !

David PEKMEZ

Publié dans Exchange Server 2010 | 6 Comments »

Redirection IIS par Script de la racine vers le Vdir « OWA »

Publié par David PEKMEZ le décembre 21, 2011


Bonjour,

J’avais déjà fait un article à ce sujet il y a un an déjà ! http://unifiedit.wordpress.com/2010/12/04/iis-redirection-vers-owa-exchange-server-2010-2/

Le but est de rediriger les requêtes de la racine du Serveur IIS

Et voici le script Powershell qui va vous aider à configurer correctement vos serveurs Exchange

Le principe est très simple, vous avez deux paramètres à renseigner :

  • Le premier est l’URL de redirection que vous désirez utiliser exemple : https://unifiedit.wordpress.com/owa
  • Le second paramètre est l’utilisation ou non du SSL pour l’accès au téléchargement de l’OAB dans votre infrastructure, ici vous pouvez utiliser au choix :
    • http
    • https

Pour de plus amples informations sur l’utilisation du script vous pouvez utiliser le paramètre - ?

Exemple d’utilisation du script :


.\IISRedirect.ps1 -URLRedirect "https://exchsp2DCFR.intra.net/owa" -OAB HTTP

Code source

#=================================================================================
#	IISRedirect.ps1
#
#	THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
#	KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
#	IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
#	PARTICULAR PURPOSE.
#	
#	Description:  Redirect IIS to a Vdir Directory
#
#	# Script Written By: David Pekmez ( http://unifiedit.wordpress.com )
#
#	Version: 1
#	Last Updated: 08/12/2011
#
#=================================================================================


#=================================================================================
# Parameter definition
#=================================================================================

Param(
	[Parameter(Mandatory=$true, Position=0, HelpMessage="Please Enter the redirection URL",ValueFromPipeline=$true)][string] $URLRedirect,
	[Parameter(Mandatory=$true, Position=1, HelpMessage="Please Enter HTTP or HTTPS for OAB Access",ValueFromPipeline=$true)][string] $OAB
)

#=================================================================================
# OAB Access HTTP or HTTPS
#=================================================================================

if ($OAB -eq "HTTP")    {
    [string]$OABConf = ""
}    else    {
    [string]$OABConf = "Ssl"
}

#=================================================================================
# Add Exchange 2010 Powershell Snapin
#=================================================================================

if ( (Get-PSSnapin -Name Microsoft.Exchange.Management.PowerShell.E2010 -ErrorAction SilentlyContinue) -eq $null )
{
    Add-PsSnapin Microsoft.Exchange.Management.PowerShell.E2010
}

#==========================================================================
# Function that returns true if the incoming argument is a help request
#==========================================================================

function IsHelpRequest
{
param($argument)
return ($argument -eq "-?");
}

#==========================================================================
# Function Debug
#==========================================================================
function Debug([string]$data)
{
$var = $null
$var = get-variable($data) -ea SilentlyContinue

	if ($var)
	{
	write-host "DEBUG: " -foregroundcolor cyan -nonewline
	write-host $var.name "  " -nonewline
	write-host "[$var.value]"
	}
	else
	{
	write-host "DEBUG: " -foregroundcolor cyan -nonewline
	write-host "[$data]"
	}
	
}


#=======================================
# Reset IIS on the server
#=======================================
function ResetIIS
{

Write-Host "Restarting IIS Services..." -foregroundcolor Green

IISRESET

Write-Host ""
Write-Host "Redirection set to $URLRedirect and $OAB for OAB Access" -foregroundcolor green
Write-Host ""
}

#===================================================================
# Function that displays the help related to this script following
# the same format provided by get-help or <cmdletcall> -?
#===================================================================
function Usage
{

@"
NAME: IISRedirect.ps1

SYNOPSIS:
Add a redirection on IIS default web site to another Virtual directory 
Made for Exchange Server to redirect to OWA directory

SYNTAX:
IISRedirect.ps1

`t[-URLRedirect <Redirection URL>]
`t[-OAB <HTTP or HTTPS>]
`t[-?]

PARAMETERS:
-URLRedirect (Requiered)
Enter the IIS redirection URL to use

-OAB (Requiered)
Set OAB access to HTTP Or HTTPS

-?
Help on usage

-------------------------- EXAMPLE --------------------------

.\IISRedirect.ps1 -URLRedirect "https://unifiedit.intra.net/owa" -OAB HTTP

"@
}	

#=============================================================================================
# Redirection
# More information http://www.iis.net/ConfigReference/system.webServer/httpRedirect
# Note: You must be sure to set the commit parameter to apphost when you use AppCmd.exe 
# to configure these settings. This commits the configuration settings to the appropriate 
# location section in the ApplicationHost.config file
#=============================================================================================

Write-host ""
Write-host "IIS Config is starting ... " -foregroundcolor Green
Write-host ""

Set-Location "$env:windir\System32\inetsrv"

.\appcmd.exe set config "Default Web Site" -section:system.webServer/httpRedirect /exactDestination:"False" /childonly:true /enabled:"True" /destination:$URLRedirect

.\appcmd.exe set config "Default Web Site/Aspnet_Client" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/Autodiscover" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/EWS" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/ECP" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/OWA" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/PowerShell" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/OAB" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/Rpc" -section:system.webServer/httpRedirect /enabled:false /commit:apphost
.\appcmd.exe set config "Default Web Site/RpcWithCert" -section:system.webServer/httpRedirect /enabled:false /commit:apphost

Write-host ""
Write-host "Redirection HTTP Done .. " -foregroundcolor Green
Write-host ""

#====================================================================================
# Suppress SSL on "Default Web Site"
# More information http://www.iis.net/ConfigReference/system.webServer/security/access
# Note: You must be sure to set the commit parameter to apphost when you use AppCmd.exe 
# to configure these settings. This commits the configuration settings to the appropriate 
# location section in the ApplicationHost.config file
#====================================================================================

Set-Location "$env:windir\System32\inetsrv"

# Unlock IIS Config
.\appcmd.exe unlock config -section:system.webServer/security/access

Write-Host ""
Write-Host "IIS Unlock Security Access Done ...." -foregroundcolor green
Write-Host "Setting SSLFlags now ..." -foregroundcolor green
Write-Host ""


.\appcmd.exe set config "Default Web Site" -section:system.webServer/security/access /sslFlags:""
.\appcmd.exe set config "Default Web Site/Aspnet_Client" -section:system.webServer/security/access /sslFlags:"Ssl,Ssl128"
.\appcmd.exe set config "Default Web Site/Autodiscover" -section:system.webServer/security/access  /sslFlags:"Ssl,Ssl128"
.\appcmd.exe set config "Default Web Site/EWS" -section:system.webServer/security/access /sslFlags:"Ssl,Ssl128"
.\appcmd.exe set config "Default Web Site/ECP" -section:system.webServer/security/access /sslFlags:"Ssl,Ssl128"
.\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync" -section:system.webServer/security/access /sslFlags:"Ssl,Ssl128"
.\appcmd.exe set config "Default Web Site/OWA" -section:system.webServer/security/access /sslFlags:"Ssl,Ssl128"
.\appcmd.exe set config "Default Web Site/PowerShell" -section:system.webServer/security/access /sslFlags:""
# OAB conf is set to HTTP or HTTPS
.\appcmd.exe set config "Default Web Site/OAB" -section:system.webServer/security/access /sslFlags:$OABConf
.\appcmd.exe set config "Default Web Site/Rpc" -section:system.webServer/security/access /sslFlags:"Ssl"
.\appcmd.exe set config "Default Web Site/RpcWithCert" -section:system.webServer/security/access /sslFlags:"Ssl,Ssl128"

If ($OAB -eq "HTTP")
{
Write-Host ""
Write-Host "OAB Vdir is set to HTTP so all the infrastructure must be set to HTTP for OAB access" -foregroundcolor yellow
Write-Host ""
}
Else
{
Write-Host ""
Write-Host "OAB Vdir is set to HTTPS so all the infrastructure must be set to HTTPS for OAB access" -foregroundcolor yellow
Write-Host ""
}

#==================================================================================================
# Change security settings on the web.config file that lost the Authenticated User permissions
# The Web.config file will be created during the IIS Redirection setup
#==================================================================================================


# get file web.config path and set the right permissions if exists

$setupRegistryPath = Get-ItemProperty -path 'HKLM:SOFTWARE\Microsoft\ExchangeServer\v14\Setup' 
$exchangeInstallPath = $setupRegistryPath.MsiInstallPath 
$WebConfigFile = ($exchangeInstallPath)+"ClientAccess\OAB\web.config"
$FileExists = Test-Path $WebConfigFile
$ErrorActionPreference = "Stop"

# Authenticated Users Group SID = S-1-5-11
# a "*" is added before the SID because icacls needs it when using SIDs

$Group = "*S-1-5-11"
$GrantPerm = icacls $WebConfigFile /grant:R $Group':R'

# Set Permissions on Web.Config file giving Read Access to Anthenticated Users Group

If ($FileExists -eq $True)
{
$GrantPerm
Write-Host ""
Write-Host "Security Settings on Web.Config file Done " -foregroundcolor green
Write-Host ""
}
	
Else {Write-Host "The Web.config File is not present in Directory: $exchangeInstallPath" -foregroundcolor red}

#==================================================================================================
# IISReset
#==================================================================================================

ResetIIS  

Ce script est en téléchargement via le lien : IISRedirect.zip

Hope this Help !

David Pekmez

Publié dans Exchange Server 2010, Outils-2010, script | Leave a Comment »

Exchange 2010 SP2 – GAL Segmentation (ABP) – Implementation

Publié par Anthony Costeseque le décembre 7, 2011


Suite au billet de David voyons comment mettre tout cela en place !

La première étape va consister à diviser votre organisation (virtuelle)

Pour cela vous avez un certain nombre d’options à votre disposition, qui consiste à :

  1. Créer des OU dans votre AD pour séparer les utilisateurs


Ici sous utilisateurs j’ai créé des OU par société

  1. Personnaliser les attributs LDAP d’un objet « mail enabled »

En règle générale nous utiliserons les attributs de l’onglet organisation d’un objet mail enabled : Société, Département ou encore Region.


Ou encore les attributs personnalisés (vous en avez 15 pour faire ce que vous voulez !)


(Onglet General > Attributs personnalisés)

Maintenant comment mettre cela en place rapidement ?

2 méthodes :

Si vous avez une faible population de personnes vous pouvez mettre à jours les attributs à la main.

Si vous avez un nombre d’utilisateurs important, ou que vous aimez gagner du temps ! PowerShell est là :) il faudra sélectionner les bon utilisateurs (grâce aux OU) puis mettre à jour les attributs

Get-Mailbox -OrganizationalUnit ‘NomDeLOU’ | Set-User -Company ‘CeQueVousVoulez’

Get-Mailbox -OrganizationalUnit ‘NomDeLOU’ | Set-User -Department ‘CeQueVousVoulez’

Simple non ? :) Ici nous avons pris tous les objets mail enabled de l’OU NomDeLOU et nous avons changé l’attribut Société (company) ou encore le Service (department) avec le nom de la société que vous voulez

Petite différence pour les attributs personnalisés nous utiliserons Set-Mailbox (avec CustomAttributeX ou X est compris entre 1 et 15)

Get-Mailbox -OrganizationalUnit ‘NomDeLOU’ | Set-Mailbox -CustomAttribute1 ‘CeQueVousVoulez’

Il vous reste à répéter le process pour toutes les sociétés que vous voulez mettre en place.

Maintenant nous avons un attribut ou des attributs nous permettant de filtrer nos utilisateurs.

La deuxième étape va consister à créer les AL (Address List), les GAL (Global Address List) et les OAB (Offline Address Book)

Ici il est recommandé d’utiliser des vrai filtres LDAP donc PowerShell uniquement pas de EMC (la console) possible :p (l’exemple est sur une installation française, il faudra adapter « -Container » en fonction de votre langue d’installation)

On commence par les AL Classique, nous allons créer :

1 AL pour tous les Utilisateurs et les Listes de distribution

New-AddressList -Name "AL_Societe1_Users_DGs" -RecipientFilter {(((RecipientType -eq ‘UserMailbox’) -or (((RecipientType -eq ‘MailUniversalDistributionGroup’) -or (RecipientType -eq ‘MailUniversalSecurityGroup’) -or (RecipientType -eq ‘MailNonUniversalGroup’) -or (RecipientType -eq ‘DynamicDistributionGroup’))))) -and (Company -eq ‘Societe1′)} -Container ‘\Tous les utilisateurs’ -DisplayName ‘Tous les utilisateus Societe1′

Update-AddressList ‘AL_Societe1_Users_DGs’

1 AL pour les contacts

New-AddressList -Name "AL_Societe1_Contacts" -RecipientFilter {((RecipientType -eq ‘MailContact’) -and (Company -eq ‘Societe1′))} -Container ‘\Tous les contacts’ -DisplayName ‘Tous les contacts Societe1′

Update-AddressList ‘AL_Societe1_Contacts’

1 AL pour les salles (mailbox de type ressource) obligatoire si vous n’en avez pas il faudra en créer une blank !

Pour la version vide

New-AddressList -Name AL_BlankRoom -RecipientFilter {((Alias -ne $null) -and ((RecipientDisplayType -eq ‘ConferenceRoomMailbox’) -or (RecipientDisplayType -eq ‘SyncedConferenceRoomMailbox’)))} -Container ‘\Toutes les salles’ -DisplayName ‘Toutes les salles Societe1′

Update-AddressList ‘AL_BlankRoom’

Pour la version non vide

New-AddressList -Name "AL_Societe1_Rooms" -RecipientFilter {(Alias -ne $null) -and (Company -eq ‘Societe1′) -and (RecipientDisplayType -eq ‘ConferenceRoomMailbox’) -or (RecipientDisplayType -eq ‘SyncedConferenceRoomMailbox’)} -Container ‘\Toutes les salles’ -DisplayName ‘Toutes les salles Societe1′

Update-AddressList ‘AL_Societe1_Rooms’

1 GAL

New-GlobalAddressList -Name "Global Address List Societe1" -RecipientFilter {(Company -eq ‘Societe1′)}     

1 OAB

New-OfflineAddressBook -Name "OAB_Societe1" -AddressLists "Global Address List Societe1"

Il vous reste à répéter le process pour toutes les sociétés que vous voulez mettre en place.

La troisième étape va consister à créer les ABP (Address Book Policies)

Pour la version sans room

New-AddressBookPolicy -Name "ABP_Societe1" -AddressLists "AL_Societe1_Users_DGs","AL_Societe1_Contacts" -OfflineAddressBook "\OAB_Societe1" -GlobalAddressList "\Global Address List Societe1" -RoomList "\Toutes les salles\AL_BlankRoom"

Pour la version avec room

New-AddressBookPolicy -Name "ABP_Societe1" -AddressLists "AL_Societe1_Users_DGs","AL_Societe1_Contacts" -OfflineAddressBook "\OAB_Societe1" -GlobalAddressList "\Global Address List Societe1" -RoomList "\Toutes les salles\AL_Societe1_Rooms"

Il vous reste à répéter le process pour toutes les sociétés que vous voulez mettre en place.

Et la quatrième et dernière étape va consister a appliquer la policy aux utilisateurs

Get-Mailbox -OrganizationalUnit ‘NomDeLOU’ | Set-Mailbox -AddressBookPolicy "ABP_Societe1"

Il vous reste à répéter le process pour toutes les sociétés que vous voulez mettre en place.

Pour verifier :

Get-Mailbox -OrganizationalUnit ‘NomDeLOU’ | fl Name,AddressBookPolicy

Il faudra ensuite fermer le client de l’utilisateur s’il est en train d’utiliser Outlook !

TRES IMPORTANT : Cela ne fonctionne pas si votre serveur exchange fait aussi DC et sur tout Global Catalogue car à ce moment-là c’est Name Service Provider Interface (NSPI) et non Microsoft Exchange Address Book service qui est utilisé pour les recherches ! (NSPI passe au-dessus des ABP)

EDIT (09/12/11) : suite au message de Julien Ohayon qui m’a remonté un problème de typo due à la réinterprétation du code par WordPress du code PowerShell je vous joint une capture d’écran et un fichier txt avec les commandes.



Le fichier texte

https://skydrive.live.com/redir.aspx?cid=2baad2dff0402075&resid=2BAAD2DFF0402075!1024&parid=2BAAD2DFF0402075!114

Pour toutes questions n’hésitez pas.

Anthony COSTESEQUE

Publié dans 1-EXCHANGE 2010, Exchange 2010 SP2, Exchange Server 2010 | 13 Comments »

Exchange Server 2010 SP2 : la Segmentation est de retour !

Publié par David PEKMEZ le décembre 7, 2011


Bonjour,

Avec l’arrivée du service pack 2 d’Exchange Server 2010, revient le principe de segmentation des listes d’adresses, mais par la grande porte ;)

Le nouveau principe mis en place par les équipes produit est d’une simplicité et d’une efficacité redoutable !

En effet cette segmentation repose sur deux principes :

  • La création de listes d’adresses, Global Address list, OAB filtrés pour ne contenir que les utilisateurs désirés)
  • L’application d’une stratégie aux utilisateurs, permettant de se voir affecter les objets contenus dans la stratégie.

Le schéma ci-dessous représente un des scénarios cibles possible à savoir deux sociétés hébergées sur la même infrastructure mais totalement hermétiques l’une de l’autre, en termes de partage de données (Listes d’adresses etc …)

Ce besoin peut être appliqué à d’autres scénarios tel que :

  • Au sein de la même société filtrer qui voit telle ou telle liste d’adresses, segmenter pour des raisons pratiques, légales, ou de sécurité
  • Bien entendu cette nouvelle fonctionnalité répond parfaitement aux besoins des hébergeurs, pouvant ainsi très simplement proposer un environnement Exchange hermétique et pourtant mutualisé


Les règles d’application reposent sur une stratégie, contenant les objets devant être vus de l’utilisateur, appliquée à tel ou tel utilisateur


L’opération de mise en place va donc consister en :

  • La création des objets Exchange GAL, Address lists, OAB …)
  • La création des Address Book Policy
  • L’application de la stratégie aux utilisateurs

Création des Objets Exchange

Exemple de création ci-dessous des objets Exchange (GAL, Address lists, OAB …)


Création des stratégies

Exemple de création de la stratégie contenant les objets de la société « Contoso »

  • Renseignement des éléments
    • Global Address list
    • Offline Address Book
    • Room list
    • Address lists


Exemple de création de la stratégie contenant les objets de la société « Fabrikam »

  • Renseignement des éléments
    • Global Address list
    • Offline Address Book
    • Room list
    • Address lists


Puis application des paramètres à un
/ des
utilisateur(s) à l’aide du paramètre « Address Book Policy » disponible en mode graphique ou par cmdlet Powershell


En commande powershell, filtrage sur la paramètre AddressBookPolicy.


Un nouvel onglet dans la console Exchange nous présente ces stratégies, au niveau Organisation, dans l’onglet « Address Book Policies »


Dans Active Directory ce nouveau conteneur se trouve juste en dessous de l’organisation Exchange, ici « INTRA »


Résultat dans OWA de la segmentation pour le plaisir J et vue des bonnes listes d’adresses, ici pour la société « Contoso »

Conclusion

Nul doute que cette nouvelle fonctionnalité va faire fureur chez les clients, peu importe le but (hosting, legal, autres besoins de segmentation), il y a des chances que cela réponde parfaitement à toutes les solutions de déploiement d’Exchange. Belle avançée et depuis le nombre de version ou cette fonctionnalité apparaissait puis disparaissait et dans tous les cas était assez complexe à mettre en place, voici une implémentation simple et bien pensée de l’équipe produit ! ABP Rocks J

PS : petit bémol mais qui ne pouvait pas être contourné, les clients LDAP ne se verront affectés par ces stratégies.. les clients Entourage par exemple

Bons déploiements !

David Pekmez

Publié dans Exchange 2010 SP2, Exchange Server 2010 | 2 Comments »

Exchange Server 2010 SP2 : Mise à jour du script d’installation des prés requis

Publié par David PEKMEZ le décembre 5, 2011


Bonjour !

Suite à l’annonce de la mise à disposition du Service Pack 2 d’Exchange Server 2010

J’ai mis à jour le script d’installation des prés requis

Concernant l’installation :

  • Soit vous ne disposez pas d’Exchange Server et vous installer les prés requis avec les options de rôles de serveur de 1 à 7
  • Soit vous avez un serveur Exchange 2010 et vous n’avez qu’à mettre à jour les fonctionnalités Windows en sélectionnant l’option 11



Vous trouverez le script en téléchargement via le lien : https://skydrive.live.com/redir.aspx?cid=deb7bf8a12d36694&resid=DEB7BF8A12D36694!413&parid=DEB7BF8A12D36694!252

Rien de plus simple !

Bonnes installations

David Pekmez

Publié dans Exchange Server 2010, Powershell-2010, script | 2 Comments »

Exchange et le Stockage – Partie 11

Publié par Anthony Costeseque le décembre 4, 2011


Bonjour,

Dans la prochaine série de billet sur le stockage dans Exchange, nous verrons les bonnes pratiques chez chaque constructeur de stockage « intelligent ».

Et nous allons commencer aujourd’hui avec EMC².

Chacun d’entre vous pourra trouver les repères dont il a besoin en fonction du constructeur avec qui il travaillera :)

Par conséquent nous n’expliquerons pas ce qui se passe derrière chaque concept (nom technique) des technologies propres à chaque constructeur.

Pour toute questions ou point qui ne vous ne semblerez pas clair n’hésitez pas à laisser des commentaires.

  1. Commençons par le commencement le type de la baie !

Il est évident que le model sera conditionné par la taille de votre future infrastructure : Le nombre d’utilisateurs et la taille des boîtes aux lettres étant les principaux facteurs.

Chez EMC² nous parlerons maintenant de VNX (nouvelle baie unifiées (Block & File)).

Le standard sera une VNX5300 et pour les déploiements plus importants on passera sur un VNX5500 (le plus important étant le nombre maximum de disque supporté)

VNX5300 : 125 disks

VNX5500 : 250 disks

VNX5700 : 500 disks

En règle générale sur un déploiement d’au moins 10000 utilisateurs on a souvent 2 salles (voir 2 sites) pour la Haute Disponibilité et donc 2 VNX5300 font parfaitement l’affaire.

  1. Ensuite vient le type de disque

Les VNX supportent FC/SAS/NL-SAS/SATA/Flash(SSD)

Nous l’avons vu dans les précédents billets, Exchange est optimisé du côté des IO permettant l’utilisation de disque 7200tr/m donc la règle est la suivante :

Faible IOs requis et large capacité de boîtes aux lettres (2Go) -> On utilisera du NL-SAS (ou encore du SATA) 7200 tr/m

Important IOs requis et faible capacité de boites aux lettres (<1Go) -> On utilisera du FC ou du SAS 10000 tr/m voir 15000 tr/m (si besoin)

Jusqu’à maintenant j’ai toujours vu du NL-SAS 7200 tr/m de 2To pour les déploiements que j’ai fait.

Je ne parle pas ici de Flash(SSD) nous en parlerons plus tard :)

  1. Puis le type de RAID

Attention cette étape est très importante.

Sur les VNX nous pouvons choisir entre RAID 1/0 (striping + mirroring), RAID 5 (striping + parity), and RAID 6 (striping + double parity), une fois de plus dans les précédents billets nous en avons déjà parlé (performance/pénalité RAID/Ratio Data utile/Data parité/etc)

Nous choisirons dans 95% des cas du RAID 10 pour éviter une pénalité RAID forte en écriture et fournir les IOs nécessaires pour soutenir les bases de données ainsi que les logs !

  1. Le type de connexion

Stockage « intelligent » donc pas de DAS que du SAN en FC ou iSCSI.

Je vous recommande du FC pour les 8Gb/s de bande passante (2 ports FC de 4Gb/s en roud robin)
ainsi que la faible latence !

L’iSCSI est bien aussi mais demande tout de même des switch dédiés pour le trafic stockage (optimisés iSCSI si possible) mais le problème vient surtout de la bande passante disponible ! De façon classique nous avons 2Gb/s (2 ports Ethernet de 1Gb/s en roud robin) qui peuvent vite représenter un goulot d’étranglement sur des infrastructures importantes ! (rappelez-vous le background database maintenance (BDM) et son besoin en bande passante !). Les ports iSCSI 10Gb/s existent pour les VNX et peuvent représenter une alternative intéressante mais vos switch Ethernet devront les supporter !

Si vous pensez mettre en place une infrastructure FCoE (10Gb) alors pas de problèmes du moment que toute la chaine est prévue pour ! (switch Nexus etc).

  1. Enfin les recommandations générales

Si votre baie est multi usage (pas uniquement Exchange) :

  • Taille des pages du cache 8KB
  • Utiliser un set de disques uniquement pour exchange (pas de mix avec des luns pour d’autres applications)
  • Commencer par vérifier les IOs nécessaires avant la capacité nécessaire
  • Si vous n’utilisez pas de système de réplication, ne placer pas une database et ses logs sur le même set de disques !
    • Le but ici sera de placer des databases avec les logs d’autre databases (de façon croisée)
  • Si vous utiliser un DAG ou autre système de réplication (non recommandé) vous pouvez mettre database et ses logs sur le même set de disques
  • Attention rappel ! sans DAG vous ne pouvez pas utiliser de bases > à 200Go
  • Les copies des databases dans le DAG ne doivent pas être sur le même set de disques (pour une même base)
  • Bien repartir la charge sur les Storage Processor des baies
  • Windows NTFS file système formaté en taille d’unité d’allocation de 64KB
  • Si RAID 5 est utilisé, ne pas utiliser de metaLUNs sur plusieurs RAID Group !!

Si votre baie est à usage unique pour Exchange :

  • Taille des pages du cache 16KB
  • Le reste pareil
  1. Un exemple de découpage


10000 utilisateurs à 1,5Go de boîte aux lettres (principe de séparation des bases de données et des logs)

  1. Considérations particulière VNX

Parlons un peu du Flash (SSD), EMC² utilise le Flash avec 2 concepts : FAST Cache & FAST VP

Est-ce que FAST Cache améliore les performances pour Exchange 2010 ?

Et bien non ! FAST Cache n’a pas d’impacts sur Exchange (ni bonne ni mauvaise)

Si vous voulez tout de même l’utiliser, activer le uniquement sur les LUNs des bases de données (pas sur les logs).

De plus ça n’aidera pas sur le passage des tests Jetstress ! :p

Et maintenant est ce que FAST VP a un intérêt pour Exchange ?

Et bien non aussi ! Et même qu’ici il a un mauvais effet sur la technologie ! tout cela à cause de background database maintenance (BDM) (encore lui ;) ) qui fausse les statiques pour le déplacement des chunk de 1Go dans le pool.

Donc à éviter !!

Est-ce que les Thin LUNs peuvent être utilisées ?

Ce n’est pas recommandé pour le moment (les thin LUN ne sont pas recommandés lorsque l’on recherche des performances !)

Si vous voulez des informations sur le design dans des baies VMAX ou encore VPLEX, envoyez moi un mail.

Documents de références disponibles sur PowerLink :

h8127-deployment-exchange-unified-wp.pdf

h8888-Exchange2010-EMC-storage-best-practices-wp.pdf

h8849-VNX5300-20Kusers-Exchange2010.pdf

Bonne lecture

Anthony COSTESEQUE

Publié dans Exchange 2010 Service Pack 1, Exchange Server 2010, Performance-2010, Stockage-2010 | 1 Comment »

Erreur lors de l’installation d’Exchange 2010

Publié par David PEKMEZ le décembre 1, 2011


Bonjour,

Lors de l’installation d’Exchange Server 2010 chez un client, nous avons rencontré la problématique suivante :

Message d’erreur lors de l’installation d’Exchange Server 2010

" The Exchange organization name is invalid. Message: ‘{335A1087-5131-4D45BE-3C6C7F76F5EC} is not a valid value for Organization Name. The value must not contain any of ‘~’, ‘`’, ‘!’, ‘@’, ‘#’, ‘$’, ‘%’, ‘^’, ‘&’, ‘*’, ‘(‘, ‘)’, ‘_’, ‘+’, ‘{‘, ‘}’, ‘[', ']‘, ‘|’, ‘\’, ‘:’, ‘;’, ‘"‘, "’, ‘<’, ‘>’, ‘,’, ‘.’, ‘?’, ‘/’ "

Suite à nos recherches, ceci est dû au fait que l’Organisation Exchange ne portait pas de nom correct (voir ci-dessous)


Explication :

Le schéma a été mis à jour pour Exchange Server 2003 il y a quelques temps mais aucun serveur n’a été installé dans cette forêt

 

Solutions :

  • Le plus simple et le plus « propre » : Installer un serveur Exchange 2003 qui vous demandera le nom de l’Organisation Exchange Server 2003 durant le setup

Voir les étapes d’installation :

Publié dans Exchange Server 2010 | Leave a Comment »

Un patch pour les DAG

Publié par Anthony Costeseque le novembre 22, 2011


Bonjour,

Voici un patch qu’il est fortement recommandé d’installer sur vos serveurs MBX en cluster (DAG).

Sur tout destiné aux configurations multisites, il ne fera cependant pas de mal à toutes les configurations (DAG).

Le patch est à télécharger ici : KB2550886 – A transient communication failure causes a Windows Server 2008 R2 failover cluster to stop working

Plus de détails ici : http://blogs.technet.com/b/exchange/archive/2011/11/20/recommended-windows-hotfix-for-database-availability-groups-running-windows-server-2008-r2.aspx

Cordialement,

Anthony COSTESEQUE

Publié dans Cluster-2010, Exchange 2010 Service Pack 1, Exchange Server 2010 | Leave a Comment »

 
Suivre

Recevez les nouvelles publications par mail.

Joignez-vous à 223 followers