xywuyiba6 发表于 2018-8-3 10:12:36

运维利器puppet:管理crond任务

  利用puppet管理cron任务计划:
#vim/etc/puppet/manifests/modules.ppImport "cron"                           #导入modules下的cron模块#mkdir -p /etc/puppet/modules/cron/manifests#mkdir -p /etc/puppet/manifests/nodes/#cd /etc/puppet/manifests/nodes && vim node_1_1 Node node.leju.com {                           #定义节点,包含哪些类Include generalInclude cron}#vim/etc/puppet/manifests/site.pp      #让服务能扫描到配置.Import "modules.pp"Import "nodes/*.pp"Import "base/*.pp"   #cd /etc/puppet/modules/cron/manifests/   # vim base.pp                     #定义基本配置       class cron::base {                package { "vixie-cron":                        name => $operatingsystem ? {                              ubuntu => "cron",                              redhat => "vixie-cron",                              centos => "vixie-cron",                              },                        ensure => present,                        }                service { "crond":                        name => $operatingsystem ? {                              ubuntu => "crond",                              redhat => "crond",                              centos => "crond",                              },                        ensure => running,                        enable => true,                        pattern => cron,                        require => Package["vixie-cron"],                        }}#Vim crontabs.pp                  #定义crontabs 包      class cron::crontabs {                package { "crontabs":                        name => $operatingsystem ? {                              ubuntu => "crontabs",                              centos => "crontabs",                              redhat => "crontabs",                        },                        ensure => present,                        }}#vim addcron.pp                     #定义任务计划   class cron::addcron {                cron { "ntpdate":                        command => "/usr/sbin/ntpdate ntp.sina.com.cn",                        user => root,                        hour => "*/1",                        minute => "1";                     "echo":                        command => "/bin/echo \"hello,sina.com\"",                        user => root,                #       hour => "*/2",                        minute => "1",                        month => "*/1",}}# vim init.pp#定义初始化文件   class cron {                case $operatingsystem {                        centos:{                              include cron::base                              include cron::crontabs                              include cron::addcron                              }                        redhat:{                              include cron::base                              include cron::crontabs                              include cron::addcron                              }                        ubuntu:{} }}服务端执行 puppetrun --host node.leju.com或在客户端执行 puppetd --test --debug#crontab -l   ###可以看到任务计划已经推送.# HEADER: This file was autogenerated at Tue Aug 30 16:28:28 -0400 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: echo1 * * */1 * /bin/echo "hello,sina.com"# Puppet Name: ntpdate1 */1 * * * /usr/sbin/ntpdate ntp.sina.com.cn
页: [1]
查看完整版本: 运维利器puppet:管理crond任务