puppet運(yùn)維自動(dòng)化之schedule管理
【導(dǎo)讀】
在熟悉puppet過(guò)程中,我們可以了解到puppet管理各種資源,像常用的file,service,,user,group等,本次是sky是給大家講下puppet運(yùn)維自動(dòng)化之schedule管理,schedule英文單詞的意思是調(diào)度,計(jì)劃安排,sky想到這就想起crontab,在linux中大家都知道,crontab可以調(diào)度,進(jìn)行計(jì)劃安排,那schedule和cron有啥不同,為什么puppet管理中有schedule和cron資源呢?
【schedule 參數(shù)說(shuō)明】
schedule 調(diào)度puppet運(yùn)行時(shí)間。
參數(shù)說(shuō)明:
name 名稱:
period 時(shí)間安排,可以是按小時(shí),天,周,月。注意在設(shè)置了periodmatch的下,有效值可以為hourly, daily, weekly, monthly, never.
periodmatch 時(shí)間匹配,有效值為number, distance.
range 時(shí)間范圍
repeat 重復(fù)次數(shù),默認(rèn)為1,且必須為整數(shù).
puppet schedule 參數(shù)就這么多,比較簡(jiǎn)單,puppet shcedule參數(shù)就介紹完了,
接下來(lái)sky就寫了個(gè)簡(jiǎn)單代碼示例:
【schedule 代碼示例】
schedule { "test-by-sky": period => daily, range => [ "10:00-12:00"], repeat => 1, } exec { "/bin/echo test by sky hello everyone!": schedule => "test-by-sky", }
【schedule 總結(jié)】
使用puppet schedule可以安理安排puppet的運(yùn)行時(shí)間,在回到導(dǎo)讀的那些問(wèn)題上來(lái),看了上面的代碼,再想想,puppet管理cron資源之間有啥差異不?
看下puppet cron代碼示例:
cron { ntpdate: command => "/usr/sbin/ntpdate 192.168.0.1&&/sbin/clock -w", user => root, minute =>'*/5', require => Package["crontabs"]; }
我們從中可以看出些什么,schedule是個(gè)安排計(jì)劃,還得有具體的執(zhí)行人去執(zhí)行,而cron會(huì)生成crontab文件,由系統(tǒng)crontab運(yùn)行,cron主要是用來(lái)做系統(tǒng)相關(guān)操作上的調(diào)度,用得比較多,schedule也可以做到,當(dāng)然這兩個(gè)都可以安排計(jì)劃,具體是要用cron還是schedule仁者見仁,智者見智。