Notes2: Installing Exchange Server 2010
Notes2: Installing Exchange Server 2010
March-26-12 4:39 PM
Prepare the Active Directory Schema Setup /PrepareSchema Prepare Active Directory Setup /PrepareAD /OrganizationName:adatumorg Prepare domains that will host Exchange Server 2010 Setup /PrepareAllDomains
Note: It is not necessary to run this command in the domain where you ran the Setup /PrepareAD command, as running Setup /PrepareAD also prepares the local domain. You must execute this command from a user account that is a member of both the Schema Admins group and the Enterprise Admins group. You can also determine which computer holds the Schema Master role by running the command dsquery server hasfsmo schema from an elevated command prompt. If your organizations domain controllers are running the Windows Server 2003 operating system, you can track replication acr oss the domain using the Active Directory Replication Monitor tool (replmon .exe), which is part of the Windows Server 2003 Support Tools. If your organizations domain controllers are running the Windows Server 2008 operating system or later, you can use the repa dmin.exe tool to monitor, diagnose, and troubleshoot replication issues.
Preparing for Coexistence and Migration In-place Install of an Exchange 2003 or Exchange 2007 Server to Exchange 2010 server is not possible. There should be a planning phase to plan migration to Exchange 2010.
There will be a period of coexistence where both Exchange 2003 or 2007 will co -exist together for a period of time. This means you need new hardware for Exchange 2010 servers.
Note for Exchange 2000: They cannot upgrade directly to Exchange 2010. To migrate to Exchange 2010, Exchange 2000 must be migrated first to Exchange 2003 to Exchange 2007 and later to Windows 2010.
If an organization has Exchange 2003 deployed, for coexistence and upgrade, following command must be run prior to running Se tup /PrepareSchema
Setup /PrepareLegacyExchangePermissions
Running this command ensures that the Exchange 2003 Recipient Update Service (a.k.a RUS) will function correctly after the Setup /PrepareSchema command.
An Exchange organization must be configured as Native not Mixed for co -existing Exchange 2003 with Exchange 2010. For coexistence between Exchange 2007 and Exchange 2010, it is not necessary to run Setup/PrepareLegacyExchangePermissions
Exchange 2007 must be SP2 or above before introducing Exchange 2010 The first Exchange 2010 role to be deployed in a coexistence environment must be CAS (Client Access Server).
Order of Deployment for Exchange 2010 1. Client Access Server 2. Hub Transport Server 3. Mailbox
4. Unified Messaging
Firewall configration 25 Hub Transport, Edge Transport server SMTP traffic 135 Mailbox server MAPI access 80 Client Access server Autodiscover, availability, Outlook Web App, Outlook Anywhere, Exchange ActiveSync
80 Client Access server Autodiscover, availability, Outlook Web App, Outlook Anywhere, Exchange ActiveSync 443 Client Access server secure (SSL) Autodiscover, availability, Outlook Web App, Outlook Anywhere, Exchange ActiveSync
Configuring Server Roles and Features for Exchange Order of Deployment for Exchange 2010 1. Client Access Server 2. Hub Transport Server
3. Mailbox 4. Unified Messaging To configure a server to host a typical Exchange installation that includes the Client Access, Hub Transport, and Mailbox server roles, issue the command
Add-WindowsFeature NET-Framework,RSAT-ADDS,Web-Server,Web-Basic-Auth,Web-Windows- Auth,Web-Metabase,Web-Net-Ext,Web-LgcyMgmt-Console,WAS-Process-Model,RSAT-Web- Server,Web-ISAPI-Ext,Web-Digest-Auth,Web-Dyn-Compression,NET-HTTP-Activation,RPC-OverHTTP-Proxy To configure a host to support the Client Access server role, issue the PowerShell 2.0 command:
Add-WindowsFeature NET-Framework,RSAT-ADDS,Web-Server,Web-Basic-Auth,Web-WindowsAuth,Web-Metabase,Web-Net-Ext,Web-Lgcy-Mgmt-Console,WAS-Process-Model,RSAT-WebServer,Web-ISAPI-Ext,Web-Digest-Auth,Web-Dyn-Compression,NET-HTTP-Activation,RPC-OverHTTP-Proxy
To configure a host to support the Hub Transport server role, issue the PowerShell 2.0 command: Add-WindowsFeature NET-Framework,RSAT-ADDS,Web-Server,Web-Basic-Auth,Web-WindowsAuth,Web-Metabase,Web-Net-Ext,Web-Lgcy-Mgmt-Console,WAS-Process-Model,RSAT-Web-Server
To configure a host to support the Edge Transport server role, issue the PowerShell 2.0 command: Add-WindowsFeature NET-Framework,RSAT-ADDS,ADLDS To configure a host to support the Mailbox server role, issue the PowerShell 2.0 command:
MS-Exchan Server Page 2
To configure a host to support the Mailbox server role, issue the PowerShell 2.0 command: Add-WindowsFeature NET-Framework,RSAT-ADDS,Web-Server,Web-Basic-Auth,Web-Windows- Auth,Web-Metabase,Web-Net-Ext,Web-LgcyMgmt-Console,WAS-Process-Model,RSAT-Web-Server
Note: Hub Transport role requires the same roles, role services, and features as the Mailbox server role. If the server you are configuring is going to host the Client Access server role, it is also necessary to configure the Net.T CP Port Sharing Service so that it starts automatically sc config NetTcpPortSharing start=auto
Verifying Setup View Setup Log from the completion page of the setup wizard. This file can also be opened directly using Notepad.exe and is s tored at C: \ExchangeSetupLogs\ExchangeSetup.log. This log is available whether the setup fails or succeeds. You can use the following command to view information about Exchange Server VAN -EX1: Get-ExchangeServer -Identity VAN-EX1 | Format-List You can use the Get-ExchangeServer cmdlet to verify the configuration of an Exchange server after deployment.
ESE Extensible Storage Engine The underlying technology used in Exchange Server is the Extensible Storage Engine, or ESE. ESE is a low -level database technology, sometimes referred to as JET database. ESE has been used for Exchange since the first version of Exchange, version 4.0 in 199 7. But Active Directory, WINS, and DHCP also use a form of ESE.
The ESE database follows the ACID principle. ACID stands for:
Atomic - A transaction is all or nothing, there is no unknown state for a transaction; Consistent the transaction preserves the consistency of the data being processed; Isolated a transaction is the only transaction on this data, even when multiple transaction occur at the same time; Durable the committed transactions are preserved in the database.
Configuring Exchange Databases Users assigned the View Only Organization Management role can view database properties but cannot modify any of those propert ies. An Exchange database system consists of following component
MS-Exchan Server Page 3
Stores content for mailbox and public folder database. The size limitis 64 Terabyte (TB). This is a random file in nature. Each database is stored in a single Extensible Storage Engine database (.edb) file.
Current Transaction Log file (Exx.log)
The file where new transactions are written. Limit is 1 MB. After 1MB size limit, file will be closed, rename and new transac tion file will be created. Closed Transaction Log file (.log)
While the extension same as .log, file name will be different such as E000000000001.log. Max size is 1 MB.
The transaction log file for the temporary workspace (for example E00tmp.log) The size of this file cannot exceed 1 MB.
Checkpoint file (.chk) Determines which transactions in the current transaction log need to be committed to the database. Note :- A single folder by default holds both the database and its transaction logs. You should, however, consider storing transactio n logs in separate folders and on a different hard disk from the databases because Transaction logs can be used in disaster recover y scenarios if high-availability features are not implemented.
Mounting/Un-mounting Database States of Database Managing Mailbox Databases How to create and remove a mailbox database. Require the Organization Management, Server Management, or Storage Management role. Create a mailbox database in the EMC: click Mailbox under Organization Configuration----> New Mailbox Database-----> specify a name for the new mailbox database----------> Click Browse and select the server to create the database server ----> OK -------> click Next-------> to change the location of the Database File Path, click Browse on the Set Paths page-----------> To change the location of the log folder path, click Browse under Log Folder path------->Select the Mount This Database check box if you want to mount the database. Mounting puts the database online so that its contents are available to users-------> Click Next------> On the New Mailbox Database page, click New. This creates the mailbox database A status of Completed indicates successful completion. If the task fails, review the summary and click Back to make any requi red configuration changes. create a mailbox database in EMS using the New-MailboxDatabase cmdlet New-MailboxDatabase -Name "MyMailboxDatabase" Server VAN-EX1 EdbFilePath C:\MyDatabaseFiles\MyMailboxDatabase.edb LogFolderPath D:\MyDatabaseFiles\LogFolder
How to mount and dismount and remove The Microsoft Exchange Information Store (MSExchangeIS) service needs to be running before you can mount or dismount a database. The following command mounts the mailbox database MyMailboxDatabase. If you use the New-MailboxDatabase cmdlet in the EMS to create a mailbox database, you need to mount it after it is created. Mount-Database Identity MyMailboxDatabase. Dismount-Database Identity MyMailboxDatabase Remove-MailboxDatabase Identity MyMailboxDatabase How to modify its size limit, and how to change the database path. The default database size limit for Exchange 2010 Standard Edition is 50 GB. There is no default database size limit for Exchange 2010 Enterprise Edition. Exchange store periodically checks database size limits and dismounts a database if its size limit is reached. You can modify the database size limit by adding or changing a value in the registry on the server that hosts the database To specify the size limit for a mailbox database, you first need to know the global unique identifier (GUID) of the database. You can
MS-Exchan Server Page 4
To specify the size limit for a mailbox database, you first need to know the global unique identifier (GUID) of the database. You can obtain this by entering a command with the following syntax in EMS:
Get-MailboxDatabase -Identity "<server name>\<database name>" | Format-Table Name,GUID You then use the Registry Editor (regedit.exe) to locate the following registry subkey: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\<server name> \Private-<database GUID>
How to configure database properties and how to set the maintenance schedule. Use the EMC is as follows Click Mailbox under Organization Configuration. On the Database Management tab in the Result pane, click the database you want to configure. In the Work pane, click Move Database Path. Use the EMS to move the mailbox database path Move-DatabasePath -Identity MyMailboxDatabase -EdbFilePath C:\DifferentFolder\MyMailboxDatabase Managing Public Folder Databases Creating a Public Folder Database You need to configure public folders if your clients are using Microsoft Outlook 2003 or earlier Outlook 2007 and Outlook 2010 do not require public folders to implement When you install the first Exchange Server 2010 server in an Active Directory Domain Service (AD DS) forest, you can specify whether your Exchange organization supports Outlook 2003 or Microsoft Entourage. If you say yes, Exchange Server 2010 creates a publi c folder database. If you say no, you can create a public folder database later on using the New-PublicFolderDatabase cmdlet. The following command creates a public folder database named My Public Folder database with a file path C:\Program Files\Microsoft\Exchange Server\Mailbox\PublicDatabase.edb and a log file path D:\ExchangeDatabases\Public\Logs\ PublicDatabase: New-PublicFolderDatabase -Name "My Public Folder Database" -EdbFilePath "C:\ProgramFiles\Microsoft\Exchange Server \Mailbox PublicDatabase.edb" -LogFolderPath "D:\ExchangeDatabases\Public\Logs\PublicDatabase" NOTE:You cannot create a public folder database on a server on which one already exists because a Mailbox server can host a maximu m of one public folder database. Removing Public Folders from a Database In the EMS removing user or system public folders from a public folder database is a two -stage procedure. first need to identify the public folder using the Get-PublicFolder cmdlet and pipe the result into the Remove-PublicFolder cmdlet The following command removes all user public folders from the public folder database on the Mailbox server VAN -EX1: Get-PublicFolder -Server VAN-EX1 "\" -Recurse -ResultSize:Unlimited | Remove-PublicFolder -Server VAN-EX1 -Recurse ErrorAction:SilentlyContinue
The following command removes all system public folders from the public folder database on the Mailbox server VAN -EX1:
Get-PublicFolder -Server VAN-EX1 "\Non_Ipm_Subtree" -Recurse -ResultSize:Unlimited |Remove-PublicFolder -Server VAN-EX1 Recurse -ErrorAction:SilentlyContinue
NOTE:Note that because there can be only one public folder database on a server, you identify the server rather than the database.
Removing a Public Folder Database To remove the public folder database MyPublicFolderDatabase on the server VAN -EX1, you would use the following command:
Remove-PublicFolderDatabase Identity "VAN-EX1\MyPublicFolderDatabase" Configuring Public Folder Database Properties
You can also use the EMS to obtain and modify public folder database settings The following command lists the settings for all public folder databases in an Exchange organization: Get-PublicFolderDatabase | fl The following command lists the properties of the public folder database MyPublicFolderDatabase on the server ServerA: Get-PublicFolderDatabase -Identity "ServerA\MyPublicFolderDatabase" The following command sets the deleted items retention period to 14 days and the event history retention period to 28 days, n ever removes undeleted items, and retains deleted items until the next backup on the public folder database MyPublicFolderDatabase on the Mailbox server MyMailboxServer: Set-PublicFolderDatabase -Identity "MyMailboxServer\MyPublicFolderDatabase" -DeletedItemRetention 14.00:00:00 RetainDeletedItemsUntilBackup $true-EventHistoryRetentionPeriod 14.00:00:00 -ItemRetentionPeriod unlimited The following command sets the issue warning quota to 2,000 MB and configures the quota notification schedule for all public folders in the public folder database named MyPublicFolderDatabase: Set-PublicFolderDatabase -Identity MyPublicFolderDatabase -IssueWarningQuota 2000MB-QuotaNotificationSchedule "Mon.3:00 AMMon.3:20 AM,Wed.3:00 AM-Wed.3:20 AM,Fri.3:00 AM-Fri.3:20 AM"
The following command removes an address list named Marketing Department that does not contain child address lists: Remove-AddressList -Identity "Marketing Department"
The following command removes an address list named Sales Department and all of the child address lists it contains : Remove-AddressList -Identity "Sales Department" -Recursive
Configuring Address List Properties You can use the Set-AddressList cmdlet in the EMS to configure an address list. Commands that use this cmdlet can have a lengthy syntax, principally because of the multiple custom attributes you can define. The syntax is as follows:
Set-AddressList -Identity <AddressListIdParameter> [-ConditionalCompany <MultiValuedProperty>] [-onditionalCustomAttribute1 <MultiValuedProperty>] [-ConditionalCustomAttribute10 <MultiValuedProperty>] [-ConditionalCustomAttribute11 <MultiValuedProperty>] [-ConditionalCustomAttribute12 <MultiValuedProperty>] [-ConditionalCustomAttribute13 <MultiValuedProperty>] [-ConditionalCustomAttribute14 <MultiValuedProperty>] [-ConditionalCustomAttribute15 <MultiValuedProperty>] [-ConditionalCustomAttribute2 <MultiValuedProperty>] [-ConditionalCustomAttribute3 <MultiValuedProperty>] [-ConditionalCustomAttribute4 <MultiValuedProperty>][-ConditionalCustomAttribute5 <MultiValuedProperty>] [-ConditionalCustomAttribute6 <MultiValuedProperty>] [-ConditionalCustomAttribute7 <MultiValuedProperty>] [-ConditionalCustomAttribute8 <MultiValuedProperty>] [-ConditionalCustomAttribute9 <MultiValuedProperty>] [-ConditionalDepartment <MultiValuedProperty>] [-ConditionalStateOrProvince <MultiValuedProperty>] [-Confirm [<SwitchParameter>]][-DisplayName <String>] [-DomainController <Fqdn>] [-ForceUpgrade <SwitchParameter>] [-IncludedRecipients <Nullable>] [-Name <String>] [-RecipientContainer <OrganizationalUnitIdParameter>] [-RecipientFilter <String>] [-WhatIf [<SwitchParameter>]]
The following command configures the address list Adatum Miami Branch to include recipients that work in Adatums Miami office: Set-AddressList -Identity "Adatum Miami Branch" -ConditionalCompany Adatum -ConditionalStateorProvince Miami
The following command moves the address list with GUID c3ffed6e-028a-22b6-88a4-8c21697bb8ad to a new location under the parent address list \All Users\Sales\: Move-AddressList -Identity c3ffed6e-028a-22b6-88a4-8c21697bb8ad -Target "\All Users\Sales\ Creating and Configuring Global Address Lists A global address list (GAL) is a directory that contains entries for every group, user,and contact within an organizations i mplementation of Microsoft Exchange. You cannot use the EMC to create or configure a GAL but must instead use EMS cmdlets. The following command creates a GAL named Adatum Global for recipients who are mailbox users and have their company listed as Adatum: New-GlobalAddressList -Name "Adatum Global" -IncludedRecipients MailboxUsers -ConditionalCompany Adatum
The following command assigns the name Contoso to the GAL that has the GUID 98d0c625-eba8-6203-be4f-687a1ee4ad7b: (modify GAL properties) Set-GlobalAddressList -Identity 98d0c625-eba8-6203-be4f-687a1ee4ad7b -Name Contoso The following command changes the recipients who will be included in the Contoso GAL to mailbox users whose company is set to Contoso: Set-GlobalAddressList -Identity Contoso -RecipientFilter {Company -eq "Contoso"}
you can start the update process by using the Update-GlobalAddressList cmdlet, for example: Update-GlobalAddressList -Identity "Contoso" You remove a GAL by using the Remove-GlobalAddressList cmdlet, for example: Remove-GlobalAddressList Identity MyGAL
Working with Offline Address Books (OAB) An offline address book (OAB) is a copy of a collection of address lists generated on an Exchange server and then downloaded to a client computer so that a Microsoft Outlook user can access the information it contains while disconnected from the Exchange organiz ation Exchange Server 2010 generates OAB files, compresses the files, and then places them on a local share. You can choose which a ddress lists are available to offline users, and you can configure the distribution method. An OAB can be distributed to client computers using two methods: Web-based distribution When Exchange Server 2010 is installed, a new virtual directory named OAB is by default created in the default internal web site in Internet Information Services (IIS). If you have client-side users that connect to Outlook from outside your organizations firewall, you can add an external web site. You can also use the New-OABVirtualDirectory cmdlet in the EMS to create a new virtual directory named OAB in the default IIS web site on the local Exchange Server 2010 Client Access server. The Autodiscover service in Outlook 2007, Outlook 2010, and some mobile devices automatically configures clients for Exchange access. This service runs on a Client Access server and returns the correct OAB URL for a specific client connection. Outlook 2007 and Outlook 2010 clients can access the OAB using this distribution method. Web-based distribution does not require public folders. When the OAB is generated, the Client Access server replicates the files. Web-based distribution uses HTTPS and the Background Intelligent Transfer Service (BITS). Web-based distribution supports more concurrent client computers and uses less bandwidth than public folder distribution
MS-Exchan Server Page 7
Web-based distribution supports more concurrent client computers and uses less bandwidth than public folder distribution Public folder distribution Outlook 2003 Service Pack 1 or earlier clients that are working offline or through a dial-up connection access the OAB through public folder distribution. Using this method, every request for a full OAB download is served immediately. This can lead to a large volume of traffic that could potentially overload the network for an extended period. To prevent this overload, you can set a bandwidth threshold to limit the network bandwidth that results from OAB downloads. This process is called throttling. By default, throttling is disabled. You can activate throttling by editing the following registry key on all public folder servers that host OAB system folders: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeIS\ParametersSystem Hiding a Recipient from an Address List
Creating an OAB Open the EMC and click Mailbox under Organization Configuration and Click New Offline Address Book You use the New-OfflineAddressBook cmdlet in the EMS to create an OAB. For example, the following command creates the OAB WBD OAB on VAN-EX1 that uses the web-based distribution method and uses the default virtual directory: New-OfflineAddressBook -Name "WBD-OAB" -AddressLists "\My Address List" -Server VAN-EX1-VirtualDirectories "VAN-EX1\OAB (Default Web Site)" The following command creates an OAB named PFD -OAB on VAN-EX1 that uses the public folder distribution method and uses the public folder database MyPublicDatabase: New-OfflineAddressBook -Name "PFD-OAB" -AddressLists "My Address List" -Server VANEX1 -PublicFolderDatabase "MyPublicDatabase" -PublicFolderDistributionEnabled $true -Versions Version3,Version4
The following command creates an OAB virtual directory on a Client Access server named DEN -CAS1 that has SSL enabled and has an external web site configured: New-OABVirtualDirectory Server DEN-CAS1 -RequireSSL $true -ExternalURL https://www.adatum.com/OAB Adding or Removing an Address List to or from an OAB To add or remove an address list from an OAB using the EMC, click Mailbox under Organization Configuration in the Console tree, click the Offline Address Book tab in the Result pane, click the OAB that you want to edit, and then click Properties in the Action pane. You can use the Set-OfflineAddressBook cmdlet in the EMS Set-OfflineAddressBook -Identity "MyOAB" -AddressLists MyAddressList01,MyAddressList02,MyAddressList03 To remove MyAddressList01 from the OAB, you would enter the following command: Set-OfflineAddressBook -Identity "MyOAB" -AddressLists MyAddressList02,MyAddressList03
Moving an OAB Generation Server Click Mailbox under Organization Configuration -----> Click the Offline Address Book tab in the result pane and select the OAB for which you want to move the generation server------->Click Move in the Action pane. If you choose to use the EMS to carry out this task, you should be aware that the location of the generation server is not considered to be an OAB property, and you cannot use the EMS Set-OfflineAddressBook cmdlet to specify a different server. Instead, you use the Move- OfflineAddressBook cmdlet. For example, the following command moves the generation task for a custom OAB named MarketingOAB to the server VAN-EX2: Move-OfflineAddressBook -Identity "MarketingOAB" -Server VAN-EX2
Removing an OAB click Mailbox under Organization Configuration in the Console tree, click the Offline Address Book tab in the Result pane, click the OAB that you want to remove, and then click Remove in the Action pane. You can use the Remove-OfflineAddressBook cmdlet in the EMS to remove an OAB. For example, Remove-OfflineAddressBook -Identity "MyOAB"
Exchange Mailboxes
Lesson 1: Mailbox Configuration
Creating Mailboxes Exchange Management Console (EMC) Navigate to the Mailbox node under the Recipients node.
MS-Exchan Server Page 8
Navigate to the Mailbox node under the Recipients node. 2. In the Actions pane, click on the New Mailbox item. This will bring up the first page of the New Mailbox Wizard. Choose th e New Mailbox.
Exchange Management Shell (EMS). To create a new user account and mailbox for a user named Erik Andersen, issue the following command: New-Mailbox Name 'Erik Andersen' Alias 'Erik_Andersen' UserPrincipalName '[email protected]' SamAccountName 'Erik_Andersen' FirstName 'Erik' LastName 'Andersen' When you run this command, you will be prompted to enter a password for the user account. To add a new Exchange mailbox to a user named Toni Poe whose existing user account resides in the Users container of the adatum.com domain, issue the following command: Enable-Mailbox 'Adatum.com/Users/Toni Poe'
Linked Mailboxes A linked mailbox is one that is associated with an external account, such as one located in a different Active Directory fore st from the one in which you deployed Exchange. when you create a linked mailbox, Exchange creates a disabled user account in the local forest that is used as a stand-in for the foreign account. Exchange Management Console (EMC) 1 Navigate to the Mailbox node under the Recipients node. 2. In the Actions pane, click on the New Mailbox item. This will bring up the first page of the New Mailbox Wizard. Choose th e Linked Mailbox. Exchange Management Shell (EMS). You could use the following command to create a linked mailbox on database MBX -DB-1 for Josh Pollock in the adatum.com domain when his actual account resides in the trusted Fabrikam forest:New-Mailbox Database "MBX-DB-1" Name "Josh Pollock" LinkedDomain Controller "DC01fabrikam.fabrikam.com" LinkedMasterAccount Fabrikam\josh_pollock OrganizationalUnit Users UserPrincipalName [email protected]
Configuring Mailbox Properties Moving Mailboxes Disabling, Removing, and Reconnecting Mailboxes Import and Export Mailboxes Archive Mailboxes