开发者社区> 技术小胖子> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Puppet学习之cron任务的管理

简介:
+关注继续查看
  • Cron任务简介

计划任务是我们在日常服务器管理工作经中常要涉及的资源之一,那么如果我们有众多的服务器,如何来进行有效、快速的计划任务管理呢(添加、删除、调整计划任务等),作为一个好用的自动化运维工具,puppet能方便地实现对计划任务的有效的管理。

Puppet cron的任务就是用来安装和管理计划任务。每一个cron资源需要一个command属性和user属性以及至少一个周期属性(hour, minute, month, monthday, weekday)。计划任务的名字不是计划任务的一部分,它是puppet用来存储和检索该资源。假如你指定了一个除了名字其他的都和一个已经存在的计划任务相同,那么这两个计划任务被认为是等效的,并且新名字将会永久地与该计划任务相关联。一旦这种关联建立并写入磁盘之后,你就可以方便的进行计划任务的管理了。可以通过文件的方式来管理计划任务也可以通过计划任务格式来管理计划任务。

  • Puppet cron任务参数

  • command

计划任务执行的命令,最好指定命令的完整路径。

  1. 2.         ensure

定义资源是否存在,也有通过这个参数来删除指定的计划任务。可能的值为presentabsent

  1. 3.         environment

和这个计划任务有关的环境变量,比如设置PAHT, PATH=/bin:/usr/bin:/usr/sbin

  1. 4.         hour

指定计划任务X小时运行,如果指定话,值的范围必须设置在0-23之间。

  1. 5.         minute

指定计划任务在X分钟运行,如果指定话,值的范围必须设置在0-59之间。

  1. 6.         month

指定计划任务在一年中的X月运行,如果指定话,值的范围必须设置在1-12之间。

  1. 7.         monthday

指定计划任务在一个月的X天运行,如果指定话,值的范围必须设置在1-31之间。

  1. 8.         name

指定计划任务的名字,这个名字只是提供给任命做参考,并且

  1. 9.         target

计划任务的存放位置。

  1. 10.     user

指定执行计划任务中命令的用户。puppet不会去检查用户是否运行执行计划任务,但是这个用户必须允许执行计划任务。默认的用户为运行puppet的用户。

  1. 11.     weekday

指定计划任务在一周的X天运行。如果指定话,值的范围必须设置在0-7之间。注意0是表示星期天。

 

  • Puupet cron 任务实战

  • 通过cron格式来管理计划任务

  • 首先我们写一个最简单的假话任务来管理我们的服务器上的时间,代码如下:

cron { ntpdate:

        command => "/sbin/ntpdate asia.pool.ntp.org",

        user    => root,

        hour    => [3,9,14,19],

        minute  => 59

}

设置3,9,14,19小时59分的时候进行时间同步,agent从主上同步玩配置以后,会在agent的假话任务中添加如下的内容:

# Puppet Name: ntpdate

59 3,9,14,19 * * * /sbin/ntpdate asia.pool.ntp.org

  • 将上面的计划任务设置成每十分中运行一次,代码如下:

cron { ntpdate:

        command => "/sbin/ntpdate asia.pool.ntp.org",

        user    => root,

        minute  => '*/10'

}

agent生成的计划任务如下:*/10 * * * * /sbin/ntpdate asia.pool.ntp.org

  • 删除时间同步的计划任务,代码如下:

cron { ntpdate:

        command => "/sbin/ntpdate asia.pool.ntp.org",

        user    => root,

        minute  => '*/10',

        ensure  => "absent";

}




     本文转自yzy121403725 51CTO博客,原文链接:http://blog.51cto.com/lookingdream/1845573,如需转载请自行联系原作者




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PHP7 学习笔记(八)JetBrains PhpStorm 2017.1 x64 MySQL数据库管理工具的使用
填写基本信息  这时候我们可以看到已经连接成功的数据库了   打开一个表,我们可以很清楚的看到数据库表的数据   切换到DDL模式
1283 0
《Java和Android开发学习指南(第2版)》—— 2.9 注释
在整个代码中编写注释,充分地说明一个类提供了什么函数,一个方法做些什么,一个字段包含什么等,这是一种好的做法。在Java中,有两种类型的注释,它们都和C和C++中的注释有类似的语法。
1269 0
Cron运行原理
Cron运行原理.pdf 目录 目录 1 1. 前言 1 2. 示例 1 3. 工作过程 2 4. 一个诡异的问题 3 5.
1023 0
21114
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载