puppet 運維自動化之schedule管理
puppet 運維自動化之schedule管理
【導讀】
在熟悉puppet過程中,我們可以了解到puppet管理各種資源,像常用的file,service,,user,group等,
本次是sky是給大家講下puppet運維自動化之schedule管理,schedule英文單詞的意思是調度,計劃
安排,sky想到這就想起crontab,在linux中大家都知道,crontab可以調度,進行計劃安排,那schedule
和cron有啥不同,為什麼puppet管理中有schedule和cron資源呢?
【schedule 參數說明】
schedule 調度puppet運行時間。
參數說明:
name 名稱:
period 時間安排,可以是按小時,天,周,月。注意在設置了periodmatch的下,有效值可以為
hourly, daily, weekly, monthly, never.
periodmatch 時間匹配,有效值為number, distance.
range 時間範圍
repeat 重複次數,默認為1,且必須為整數.
puppet schedule 參數就這麼多,比較簡單,puppet shcedule參數就介紹完了,
接下來sky就寫了個簡單代碼示例:
【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 總結 】
使用puppet schedule 可以安理安排puppet的運行時間,在回到導讀的那些問題
上來,看了上面的代碼,再想想,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是個安排計劃,還得有具體的執行人去執行,而cron會生成crontab
文件,由系統crontab運行,cron主要是用來做系統相關操作上的調度,用得比較多,schedule也可以做到,
當然這兩個都可以安排計劃,具體是要用cron還是schedule仁者見仁,智者見智,推薦閱讀
puppet 管理cron
puppet 管理exec
更多puppet中文資料,請留意網站更新!
原文地址:http://www.mysqlops.com/2011/11/30/puppet-schedule.html
《解決方案》
謝謝分享