I am surprised a lot of people do no know these guides exist
If you want to know how to configure your Active Directory environment and other Microsoft products , look at these first
Some of it is a bit out of date:
For Exchange 2013 – If you want to know how to size your exchange environment, use this
The readme for it is worth reading.
One bit that is missing , is the ratio of exchange core to GC cores needed solely to service exchange. It is 1 GC core to 8 Exch cores. So if you’re exchange environment needs 25 exchange cores, you need to dedicate 3 and a bit, say 4 GC cores to exchange, on top of whatever the AD Planning Guide says.
In my case we have 4 quad cores DCs in the AD site and to ensure exchange does not impact on my PDCe (AD1), which is also my primary DNS server, we have configured exchange to exclude AD1 and use as many as it can find in the site.
I simple powershell command does this.
set-exchangeserver -identity exchange.domain.com -StaticExcludedDomainControllers ad1.domain.com