溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

WSFC 群集編排任務計劃

發(fā)布時間:2020-06-30 06:33:33 來源:網(wǎng)絡 閱讀:18578 作者:老收藏家 欄目:建站服務器

任務計劃是操作系統(tǒng)中重要的組件,通過任務計劃,電腦可以自動幫助我們在某條件下觸發(fā)某操作,以完成任務


對應到現(xiàn)實生活類似于現(xiàn)在的智能電飯鍋,你每天早上需要吃早餐,但是又不想做,就用智能電飯鍋做了個定時操作,每天早上七點,用小火幫我煮好粥,到點起來吃就可以了,操作系統(tǒng)中的任務計劃也是相通的概念,意義在于通過電腦自動幫助我們完成任務,不用每次親力親為


任務計劃通常被用于操作系統(tǒng)或后端的應用程序,例如定期執(zhí)行審核收集腳本,定期生成硬件報告,定期處理應用程序緩存,等等


高級電腦用戶可以用任務計劃,自動幫助我們執(zhí)行某事,例如你知道今天下午三點要做某事,但是你三點有事不在,就可以做個任務計劃,到時間電腦自動幫你完成

企業(yè)IT管理員可以用任務計劃,幫助我們來完成自動化的服務器收集監(jiān)視,或需要重復性執(zhí)行的操作

應用開發(fā)人員可以用任務計劃,定期自動執(zhí)行應用程序所需配置,例如定期啟動某個exe,定期處理某個緩存


當我們提任務計劃,通常我們是指計劃某事,然后做某事,而不僅僅是計劃,因此電腦中的任務計劃與日歷提醒有所區(qū)別,所謂的提醒軟件只是提醒你去做某事,但不會幫你去做


任務計劃在Windows Server 上面和Windows Client 上面都有,最早老王記得Server 2000上面就曾看到過,那時它叫做任務計劃,一直到2003,2003任務計劃和2000時代并不太大差別,當創(chuàng)建任務計劃時會跑一個向導,可以指定任務要執(zhí)行的程序,運行任務的周期,每天,每周,每月,一次性,計算機啟動時,登錄時,執(zhí)行任務密碼,創(chuàng)建完成后任務計劃可以在控制面板-任務計劃文件夾下看到


到了Sever 2008和vista時代,任務計劃得到了增強,改名為任務計劃程序,移至管理工具中,里面將任務計劃更明確的劃分為 觸發(fā)器 - 操作 - 條件 三個層級,滿足什么觸發(fā)前提下觸發(fā)任務計劃,觸發(fā)之后要執(zhí)行什么操作,執(zhí)行操作之前有哪些條件需要滿足,例如可以設定只在操作系統(tǒng)空閑時間執(zhí)行等等,對于界面上面顯示也更加友好,支持顯示任務歷史執(zhí)行記錄,支持導出任務,導入任務


在那個時代不像現(xiàn)在,那時微軟還沒有powershell3.0,DSC,SCO這些強大的自動化工具,那時微軟自身并沒有太多自動化工具,因此,如果管理員需要執(zhí)行一些自動化管理操作,通常會選擇ps1+任務計劃,VBS+任務計劃,BAT+任務計劃,寫好一個腳本,然后配合任務計劃,定期執(zhí)行


到了Powershell 3.0,Windows Server 2012,任務計劃程序得到了更進一步的增強,支持直接通過Powershell去管理創(chuàng)建任務計劃,更加的靈活方便


示例:


注冊任務計劃操作,已注冊的Job不會因為Powershell的控制臺關閉而消失

Register-ScheduledJob -Name querydriver -ScriptBlock  {driverquery }


創(chuàng)建任務計劃操作變量

$job=Get-ScheduledJob -Name querydriver


創(chuàng)建任務計劃觸發(fā)器

下午七點半執(zhí)行,每隔五天執(zhí)行一次

$jobtrigger=New-JobTrigger -Daily -At "19:30 PM" -DaysInterval 5


為任務計劃操作分配觸發(fā)器

$job=Get-ScheduledJob -Name querydriver | Add-JobTrigger -Trigger $jobtrigger


Powershell創(chuàng)建的任務計劃將在后臺異步執(zhí)行,同樣也是底層調用了任務計劃,只不過通過powershell包上一層,管理起來更加靈活,創(chuàng)建完成的任務計劃可以在任務管理程序 taskschd.msc 里面看到,Powershell 創(chuàng)建的任務計劃位于Windows - Powershell - ScheduledJobs文件夾

WSFC 群集編排任務計劃


查看任務計劃

Get-ScheduledJob -Name querydriver


刪除任務計劃

Get-ScheduledJob -Name querydriver  | Unregister-ScheduledJob


禁用任務計劃

Get-ScheduledJob -Name querydriver | Disable-scheduledjob


以上為大家簡單講了下任務計劃來龍去脈,以及最新2012開始對于Powershell管理的支持,下面我們切入主題,群集編排任務計劃


也是在2012動態(tài)數(shù)據(jù)中心時代新增進來的功能,雖然我們有了通過powershell管理任務計劃的功能,但是這只能在單臺機器執(zhí)行,如果是一個大規(guī)模群集的話,需要將任務計劃復制到其它節(jié)點才可以,如果節(jié)點過多也過于麻煩,通過群集編排任務計劃,提供了三種在群集內編排任務計劃的方法


任何節(jié)點:將任務計劃注冊到群集中,執(zhí)行程序放在群集共享磁盤,當?shù)竭_觸發(fā)條件時會在任意1個節(jié)點上執(zhí)行任務計劃,適用于對于群集審核日志,報告收集,應用程序預熱等需求,我不需要在每個節(jié)點上面執(zhí)行,只要有一個節(jié)點執(zhí)行了就好,如果上次執(zhí)行的節(jié)點宕機,下次會挑選其它的正常節(jié)點執(zhí)行。


資源特定:將任務計劃注冊到群集中,執(zhí)行程序放在群集共享磁盤,當?shù)竭_觸發(fā)條件時,自動針對于群集的指定資源執(zhí)行,該類型任務計劃與群集資源綁定,資源遷移到那個節(jié)點,任務計劃就在那個節(jié)點執(zhí)行,如果資源被刪除,則任務也被刪除,適用于針對群集磁盤執(zhí)行碎片整理操作,默認情況下對于CSV,永遠不會執(zhí)行磁盤整理操作,如果您在CSV上面存放了大量動態(tài)VHDX,建議您創(chuàng)建一個此類型的編排任務,定期自動執(zhí)行磁盤整理,將幫助CSV提升性能。


群集范圍:將任務計劃注冊到群集中,執(zhí)行程序放在群集共享磁盤,當?shù)竭_觸發(fā)條件時,任務計劃程序將在所有有效的群集節(jié)點上執(zhí)行,例如如果您希望在登錄到任何節(jié)點時要打開一個或一組工具,則可以將這種任務添加為群集范圍任務


群集編排任務從2012開始引入至今,目前還是只能通過powershell方式管理,所有群集編排任務的管理命令如下


Get-ClusteredScheduledTask        查詢集群任務

Register-ClusteredScheduledTask 注冊集群任務

Set-ClusteredScheduledTask         更新已經(jīng)注冊的集群任務

Unregister-ClusteredScheduledTask 取消注冊群集任務


本例老王以創(chuàng)建一個資源特定類型的群集編排任務計劃為例


1.創(chuàng)建編排操作

$action = New-ScheduledTaskAction - Execute C\ClusterStorage\Volume2\1.bat


內容如下,老王實作了CSV的碎片整理,由于屬于群集磁盤,因此對于CSV執(zhí)行磁盤整理命令前需置為重定向模式,整理結束后再行恢復

WSFC 群集編排任務計劃


2.創(chuàng)建編排觸發(fā)器,每周周五晚上十一點執(zhí)行

$trigger = New-ScheduledTaskTrigger -Weekly -DaysOfWeek Friday -At "23:00"


3.將編排操作,編排觸發(fā)器注冊至群集編排任務

Register-ClusteredScheduledTask –Cluster hvclus –TaskName csvdefrag –TaskType ResourceSpecific –Resource "群集磁盤3"–Action $action –Trigger $trigger


TaskType其他類型參數(shù):AnyNode  ,ClusterWide,注冊后不可變更編排任務類型

WSFC 群集編排任務計劃


經(jīng)過群集編排注冊的任務計劃會顯示在任務計劃程序-Windows -Failover Clustering文件夾中,此文件夾在未創(chuàng)建群集編排任務計劃前處于隱藏狀態(tài),創(chuàng)建編排任務后顯示,雖然UI界面也可以創(chuàng)建任務,但是UI界面創(chuàng)建的任務計劃無群集編排效果,僅用作單機,當節(jié)點被群集逐出后,所有該文件夾的任務都將被刪除


WSFC 群集編排任務計劃

創(chuàng)建完成群集編排任務后,可以看到,資源特定類型的編排任務僅在資源所有者節(jié)點為準備就緒狀態(tài),其它節(jié)點上也會顯示群集編排任務,但為禁用狀態(tài)

WSFC 群集編排任務計劃


移動資源至12HV02后,群集編排任務計劃在12HV01上面禁用,12HV02上面就緒


WSFC 群集編排任務計劃


WSFC 群集編排任務計劃


任意節(jié)點類型編排任務,將隨機在一個節(jié)點上面就緒,如果該節(jié)點宕機,則尋找其它正常節(jié)點就緒

群集范圍類型編排任務,將在所有節(jié)點上面就緒,達到觸發(fā)器條件時,所有節(jié)點一起執(zhí)行,如果節(jié)點從群集被逐出,則編排任務將自動刪除


老王這里把群集編排任務計劃的操作程序放在群集共享磁盤中,是處于高可用考慮,您也可以嘗試把操作程序放在所有節(jié)點本地磁盤相同位置


查詢群集內所有編排任務計劃

Get-ClusteredScheduledTask –Cluster hvclus


查詢群集內特定資源類型編排任務計劃

Get-ClusteredScheduledTask –Cluster hvclus –TaskType ResourceSpecific


查詢群集內特定名稱的編排任務計劃

Get-ClusteredScheduledTask –Cluster hvclus –TaskName csvdefrag


更新群集編排任務計劃


變更觸發(fā)器條件

$trigger = New-ScheduledTaskTrigger -At 22:00  -Daily

更新編排任務計劃

Set-ClusteredScheduledTask –Cluster hvclus–TaskName csvdefrag -Trigger $trigger


查詢編排任務計劃觸發(fā)器條件

(Get-ClusteredScheduledTask -TaskName csvdefrag).TaskDefinition.Triggers


取消注冊群集編排任務計劃,取消后任務將從各節(jié)點刪除

Unregister-ClusteredScheduledTask -Cluster hvclus -TaskName csvdefrag






向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI