PowerShell is hands down one of the most important skills than an Exchange administrator can learn. You can do a lot in Exchange Server 2010 using the GUI administration tools, but eventually you’re going to have to drop into the shell to do some deeper administration or simply to save time on bulk admin.
My first contact with PowerShell was when Exchange Server 2007 was released. I dipped into the shell only when absolutely necessary, preferring to stay in the GUI whenever possible. As time went on I found myself using the shell more and more, and developing a few scripts in my tool kit for some of the repetitive tasks that came with working primarily on Exchange deployments and migrations.
Today I’m working on a team that manages an Exchange Server environment of over 80,000 mailboxes, so using PowerShell on a regular basis is pretty much mandatory. Because of this I’ve been on the lookout for a good book that deals specifically with PowerShell for Exchange Server 2010.
Well it looks like that book has finally arrived in Microsoft Exchange 2010 PowerShell Cookbook by Mike Pfeiffer.
Mike is an Exchange MVP, a Microsoft Certified Master on Exchange 2010, and someone whose blog I’ve followed for quite a while now. When my copy of his book arrived I decided to have a quick look at it just before I went to bed. Over an hour later I was still reading, it is just that good!
PowerShell Key Concepts
The first chapter of the book dives into the fundamentals of PowerShell and how they apply to Exchange Server 2010. Back when I first started learning PowerShell I started with a book that was about the topic in general, rather than being specifically written about Exchange. I think that is one of the reasons I was not immediately enthusiastic about learning PowerShell, because I wasn’t learning skills that I could use immediately.
Mike has done well to introduce PowerShell for the reader in an interesting way and kept it on topic for Exchange through the entire first chapter. I really like the way it delivers value straight away with this approach.
Routine Exchange Server Administration
The next few chapters of Microsoft Exchange 2010 PowerShell Cookbook go through the use of PowerShell to perform the sorts of tasks an Exchange Server administrator would encounter on a daily basis – mailboxes, distribution groups, public folders and so on.
Next Mike dives into each of the Exchange 2010 server roles. Every section of these chapters delivers a useful command or sample script, such as creating an ActiveSync device report, performing message tracking log searches on multiple Transport servers at once, or reporting on average mailbox sizes.
The style of delivery is perfect for these chapters, following a simple but effective “What we want to do”, “How to do it”, and “How it works” pattern.
Advanced Exchange Server Administration
The last few chapters of Microsoft Exchange 2010 PowerShell Cookbook get into more advanced territory. Mike has written some in-depth advice on topics such as:
- Scripting the deployment of Exchange Server 2010 high availability
- Compliance and auditing
- Monitoring and troubleshooting
There is also a closing chapter on scripting with the Exchange Web Services API, so that guys like me can throw away our dusty old VBS scripts for sending emails and use PowerShell with EWS instead, and create scripts for deeper reporting on mailbox content.
Like I said earlier I’ve been looking for the perfect book for using PowerShell with Exchange Server 2010, and this book has finally filled that need. If you’re an Exchange Server administrator looking to be more efficient, or you want to learn the skills to win you a job in bigger Exchange Server environments, then I definitely recommend you pick up a copy of Microsoft Exchange 2010 PowerShell Cookbook.