作为企业的Exchange服务器管理员,必须时刻关注Exchange 服务器的运行状态,在小的企业,如果只有一两台服务器,可以手动进到每一台服务器,检查每项服务及功能的运行情况!如果你管理的服务器越来越多,而且也没有专门的管理系统时,就需要借助一些小的工具来帮忙你实现,并定时回报了!
针对这个需求,我之前也发过一些简单的只针对服务器信息收集的PS小工具,有兴趣的可以参考:
用 PowerShell收集服务器日检报告,并发邮件给管理员
收集服务器硬盘空间,并用邮件通知管理员
收集网络状态(Ping),并用邮件通知管理员
但针对Exchange服务器,以上信息并不够!
最近在TechNet上,看到一个专门针对Exchange服务器健康状态检查的PS小工具,试用效果不错,现在分享给大家,并将其中的使用方式进行简单转译!
原文地址:Generate Health Report for an Exchange Server 2016/2013/2010 Environment 使用方法:
下载附件PS脚本文件,依需求修改以下定制
1、 修改PowerShell执行策略,用Get-ExecutionPolicy查询系统默认执行策略,如果为Restricted,
请修改为RemoteSigned:Set-ExecutionPolicy RemoteSigned,
或是Unrestricted :Set-ExecutionPolicy Unrestricted
2、将脚本下载后,存于某台有安装Exchange管理工具的电脑或服务器中(因为需要调用Exchange PowerShell),如:D:\Script
3、 脚本默认不带任何参数执行时,会自动收集你所在域中的所有Exchange服务器,并只会将结果显示 在执行窗口中
4、如果需要跳过某些不需要检查的服务器,如已经停用,或是刚安装的测试服务器,可以在所在目录创建一个ignorelist.txt的文件,然后列出你不需要检查的服务器名,如:
5、如果需要使用邮件通知功能,请修改第170-175行内容:
收件人、发件人、SMTP服务器地!
如果需要发给多个人,建议收件人改为邮件组的地址,如:IT@domainname.com,当然,你也可以手动输入多个人的邮件地址,如:
To = "administrator@yourdomain.com",“Johnson@yourdomain.com”
6、 可以根据你的需要,增加不同的参数选项达到不同目的,分别如下: -Server:检查指定的某一台服务器,如:
Test-ExchangeServerHealth.ps1 -Server mail