puppet管理cron(定時同步時間伺服器案例)

2021-09-21 12:07:16 字數 2398 閱讀 1229

用puppet管理cron,可以為n臺伺服器批量新增cron作業。如定時同步時間伺服器的指令碼。

1、架構

192.168.0.200(redhat) 主機名master.gangpao.com

192.168.0.201(redhat) 主機名agent01.gangpao.com

2、目錄結構

/etc/puppet

|                 

|-->manifests                 

|   |-->modules.pp                 

|   |-->nodes.pp                 

|   |-->site.pp                  

|-->modules                          

|-->cron                                  

|-->manifests

|-->addcron.pp

|-->base.pp

|-->crontabs.pp

|-->init.pp                    

3、編寫指令碼

建創目錄結構

#mkdir -p /etc/puppet/manifests

#mkdir -p /etc/puppet/modules/cron/manifests

#cd /etc/puppet/modules/cron/manifests

(1)、編寫base.pp

功能說明:安裝cron包並啟動服務

#vim

class cron::base ,

ensure => present,

}service ,

ensure => running,

enable => true,

pattern => cron,

require => package["cron"], #依賴關係

}}

(2)、編寫crontabs.pp

功能說明:安裝crontabs包

#vim crontabs.pp

class cron::crontabs ,

ensure => present,}}

(3)、編寫addcron.pp

功能說明:新增crontab定時任務(定時同步時間伺服器每4個小時同步的第1分鐘同步)

#vim addcron.pp

class cron::addcron

}(4)、編寫init.pp

功能說明:初始化檔案

#vim init.php

class cron

redhat:

debian:

ubuntu:

freebsd: }}

(5)、編寫主manifests檔案實現讓客戶端安裝cron和新增一條crontab作業。

#cd /etc/puppet/manifests

#vim modules.pp   #載入cron模組

import "cron" 

#vim nodes.pp     #客戶端節點管理檔案

node 'agent01.gangpao.com'

#vim site.pp      #載入modules.pp 和nodes.pp

import "modules.pp"

import "nodes.pp"

4、執行指令碼

服務端#puppetmasterd -d --no-daemonize -v --trace 

客戶端 檢視

[root@agent01 puppet]# crontab -l

# header: this file was autogenerated at mon jul 11 00:10:19 +0800 2011 by puppet.

# header: while it can still be managed manually, it is definitely not recommended.

# header: note particularly that the comments starting with 'puppet name' should

# header: not be deleted, as doing so could cause duplicate cron jobs.

# puppet name: ntpdate

1 */4 * * * /usr/sbin/ntpdate time-b.timefreq.bldrdoc.gov

可以看到客戶端的crontab改變了。

愛慕爾**歡迎您的光臨!

穿衣打扮

城市物語

puppet高階指南 cron資源詳解

cron資源 cron資源主要用來管理作業系統的定時任務 即crontab 1 cron資源常用屬性 cron 資源標題 command ensure environment hour minute mouth monthday weekday name provider user command ...

puppet高階指南 cron資源詳解

cron資源 cron資源主要用來管理作業系統的定時任務 即crontab 1 cron資源常用屬性 cron 資源標題 command ensure environment hour minute mouth monthday weekday name provider user command ...

puppet高階指南 cron資源詳解

cron資源 cron資源主要用來管理作業系統的定時任務 即crontab 1 cron資源常用屬性 cron command crontab要執行的命令,由於環境變數的問題,建議呼叫命令時使用絕對路徑,或指定cron資源的environment屬性。ensure 指定資源是否啟用,可設定prese...