See also :
My favorite part of administering Exchange Servers is the fact that i can do that with PowerShell and use scripts to automate reporting and deployment.
I have many scripts that i run in daily or weekly basis to collect information or to enforce some organization settings. So i usually have a dedicated Server acting as a script server. This has a lot of advantages, as some of my scripts consumes a lot of memory and maybe processing, and it is not recommended to run these scripts on live servers because doing that means that my scripts will compete on resources with the live roles installed on that live server.
I also administer Exchange from that Server because i do not like logging into live Exchange Server to administrative tasks.
Recommendation for the scripting server?
- Make it also a Recovery Server by installing on it a Mailbox Role that is not member of Any DAG and does not host any database. Read my previous blog post here. This server will be used for mailbox and database recovery operation.
- Make sure you install the PowerShell ISE feature from Add/Remove Features.
- HIGHLY RECOMMENDED : make sure you have PowerShell 3.0 at least on that machine. You can install PowerShell 3.0 by installing Windows Management Framework 3.0. The trick that if this scripting server hosts any Exchange role, then the only way to install PowerShell 3.0 is to have Exchange 2010 SP3 and above on that server. In my case, the scripting server has Exchange 2010 Mailbox Role acting as a recovery server also, and since i have Exchange SP3, I could install PowerShell 3.0. PowerShell 3.0 is a huge upgrade from PowerShell 2.0 and if you want to run complex scripts and troubleshoot them, then having PowerShell 3.0 is a must.
- Install any other frameworks that you may need to run your scripts like Quest PowerShell Extensions.