收集2012集羣共享卷空間使用狀況,並用郵件通知管理員

從Windows2012開始,ClusterStorageVolume再也不是直接以盤符的方式出現了,在個人電腦中,沒法直接看到,而是顯示在C:\ClusterStorage\下面html

clip_p_w_picpath001

 

若是要查看大小、使用狀態,須要進到Failover Cluster Managert管理界面,進到存儲設備、磁盤、而後選某一個卷,才能夠查大小、空間使用狀況等;shell

clip_p_w_picpath002

 

或是進到磁盤管理界面的選中磁盤、右鍵、屬性查看服務器

clip_p_w_picpath003

 

以前我有發一個收集服務器硬盤空間的工具,http://hubuxcg.blog.51cto.com/2559426/1310783,可是沒法針對2012的Cluster共享卷!dom

最近恰好有個需求,用戶要求以收集服務器硬盤空間的方式,來收集Cluster共享捲上的空間使用狀況,針對上次的腳本作出修改,完成了專門針對2012的Cluster共享卷的PS腳本工具,分享給你們:ide


使用方法:工具

下載附件PS腳本文件,依需求修改如下定製post


1)腳本設定的空間底於30%×××顯示警告,空間底於10%紅色顯示警告,若是要修改,請將如下值修改成你想要的(7-8行):測試

$percentWarning=30;htm

$percentCritcal=10;blog

 

2)修改收件人郵箱,即那我的或是那些人要收到通知郵件(12或13行):

$users=「Email.address@Yourdomain.com「

若是須要給多個郵件人,請修改成(14行):

$users=「Email.address1@Yourdomain.com 「,」Email.address2@Yourdomain.com

 

3)修改報告生成目錄(18行)

$reportPath="D:\script\";

 

4)修改SMTP服務器及發件人郵件地址(206-215行):

$smtpServer = "Server.yourdomain.com"

$smtp = New-Object Net.Mail.SmtpClient($smtpServer)

$msg = New-Object Net.Mail.MailMessage

$msg.To.Add($user)

$msg.From = "Email.address@yourdomain.com "

$msg.Subject = "ClusterStorageSpace Report for $titledate"

$msg.IsBodyHTML = $true

$msg.Body = get-content $diskReport

$smtp.Send($msg)

$body = ""

 

5)在PowerShell中測試若是腳本不能執行,請修改腳本執行策略

clip_p_w_picpath005

可參考文章:http://hubuxcg.blog.51cto.com/2559426/1309431#590523中第二步。

 

6)建立計劃任務,讓腳本自動在指定時間運行!

Powershell –file」D:\Script\CheckDiskSpace_Cluster_post_51cto.ps1」

可參考文章:http://hubuxcg.blog.51cto.com/2559426/1309431#590523中第4-9步

執行後生成的html文件效果以下:

clip_p_w_picpath006

 

7)收到的郵件效果以下:

clip_p_w_picpath007

 

說明:此腳本須要PowerShell集羣管理功能:Import-Module FailoverClusters,並要以管理員身份執行。

相關文章
相關標籤/搜索