Greg Taylor - EXCHANGE / The_Exchange_Team / Steve_Pogue
Exchange Team / Greg Taylor:
Steve Pogue brings up a very valid question that I've also struggled with. I've come to terms with management server running, but I find that disk usage, ram and cpu usage is pretty unreasonable given that all I'm using the server for is ECP.
I have a list of things I've done to slim down my management server and I'll post them below for the community, but the reason I'm highlighting the Exchange team in my post is because I would love for them to take a look at what I've done and vet whether it's safe and sane to do it. Just because it seems to work for me and hasn't introduced any unintended side effects YET doesn't mean it's the correct approach. So if anyone is going to give this a try, please note that until the exchange team chimes in, you're doing this at your own risk.
Some notes:
There's a number of pages within ECP that don't work correctly now that I've done this, but none of them pertain to user management, hybrid management or server management, so I can't say I'm overly concerned about it.
I have not done any inbound/outbound migrations with this configuration and I'm not sure if they'd still work. I tried to avoid stopping services that seemed like they'd play a part in a migration, but I haven't tested it. My use case is solely for scenarios where I need AD Sync and where I already have 100% of my users mailboxes in Exchange Online.
Lastly, this was all done on an Exchange 2016 server.
With that in mind, here's what I did:
1) Disable indexing, dismount all databases if you have any (we did, as we turned our old on-prem 2016 server into our management server) and set all databases to not mount at startup.
2) Stop unused IIS application pools:
MSExchangeAutodiscoverAppPool, MSExchangeMapiAddressBookAppPool, MsExchangeMapiFrontEndAppPool, MSExchangeOABAppPool, MSExchangeOWACalendarAppPool, MSExchangePushNotificationsAppPool
3) Stop and Disable the following services:
"Microsoft Exchange Anti-spam Update", "Microsoft Exchange EdgeSync", "Microsoft Exchange IMAP4", "Microsoft Exchange IMAP4 Backend", "Microsoft Exchange POP3", "Microsoft Exchange POP3 Backend", "Microsoft Exchange Transport Log Search", "Microsoft Exchange Unified Messaging", "Microsoft Exchange Unified Messaging Call Router", "Microsoft Exchange Search Host Controller", "Microsoft Exchange Compliance Audit", "Microsoft Exchange Compliance Service", "Microsoft Exchange DAG Management", "Microsoft Exchange Diagnostics", "Microsoft Exchange Search", "Microsoft Exchange Health Manager", "Microsoft Exchange Health Manager Recovery", "Microsoft Exchange Notifications Broker"
4) Every night, a scheduled task purges any files in C:\Program Files\Microsoft\Exchange Server\V15\Logging\ that are more than 2 days old.
5) I also purge everything in c:\inetpub\logs that is older than 2 days old.
With these tweaks, I've got the server down to almost ~50GB on C:, 0% CPU usage and about 4.8GB of Memory usage.