资源

资源的定义

一个帐号,一个文件,目录,软件包都可以称作是资源,每个资源的定义都具有标题,类型,以及一些列属性。

常见的资源有notify(调试与输出),file(配置文件),package(软件安装),service(服务管理),exec(执行命令),cron(定时脚本),user,group.

属性介绍:

Require:require引用的对象执行之后该资源才可被应用

Notify:当资源对象改变的时候,通知某个资源进行更新

定义一个用户的属性:

vim /etc/puppet/manifests/site.pp

解析:ensure:默认属性,创建用户用present,删除用户用absent.

Shell:登录时指定shell,shell是必须存在且可执行的

定义个一个用户的属性:

group { "mimi":
ensure=>present,
gid=>900,
allowupdate=>false, }

解析:allowupdate:默认为false,允许使用同一gid。

软件的安装:

自动安装部署vsftpd服务

注意:vsftpd.conf文件的默认权限是600.需要把权限改为644.让puppet有读的权限。require引用的对象执行之后该资源才可被应用

Notify:当资源对象改变的时候,通知某个资源进行更新。重新上传vsftpd的配置文件后重启服务

解析:如果要安装多个软件包,可以将软件包写成数组端的形式

文件管理i

向客户端创建文件:

向客户端创建目录:

让客户端拷贝自身文件

向客户端上传文件并修改权限:

服务管理:

定时脚本

假设每天早上6点执行输出update到/tmp/time1

Cron {
‘echo’:
Command=>”/bin/echo `uptime`>> /tmp/time”,
User=>root,
Hour=>6,
Minute=>0 }

每分钟执行1次

假设每两个小时执行一次

假设晚上11点到早上8点之间每两个小时执行一次,以及早上8点执行一次

执行命令:

加压文件至/tmp下,如果‘/tmp/myfile不存在,则执行exec命令,如果文件存在则不执行

解析:creates:指定命令生成的文件,文件加不存在时执行

Cwd:指定命令执行的当前目录

Path:执行命令的搜索路径,可以采用全路径分组,使用冒号 分割

当文件返回为0时exec资源才会被执行

解析:onlyif 参数中设置的命令返回0时才执行,即参数成功执行以后才执行

文件的挂载

vim /etc/puppet/manifests/site.pp
18 package {
19 "nfs-utils":
20 ensure => present
21 }
22 file {
23 "/public":
24 ensure => directory
25 }
26 mount {
27 "/public":
28 device => "172.25.7.250:/var/ftp/pub",
29 fstype => "nfs",
30 options => "defaults",
31 ensure => mounted
32 }

puppet之资源的更多相关文章

  1. 自动化运维工具之Puppet常用资源(一)

    前文我们聊到了puppet的架构,单机模型和master/agent模型的工作流程以及puppet的基础使用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14 ...

  2. 自动化运维工具之Puppet常用资源(二)

    前文我们了解了部分puppet的资源的使用,以及资源和资源的依赖关系的定义,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14071459.html:今天我们继 ...

  3. puppet(2)-资源介绍

    puppet- 资源介绍: 类型.属性与状态同实现方式分离.仅指定目标状态 type {'title': attribute => value, ... } 查看支持的资源类型: puppet ...

  4. Puppet file资源使用

    1.文件管理介绍:          可管理的项目: 支持文件和目录 设置文件及目录的所有者及权限 恢复文件(包括文件的内容.权限及所有者) 清理目录以及子目录 2. 可使用参数: ensure :指 ...

  5. (4)puppet常用的资源及其常用属性

    1.user资源就是用来管理目标服务器上的用户的,比如创建用户.修改用户.删除用户,user资源的常用属性如下 user{'test': ensure => present, uid => ...

  6. (3)puppet清单定义资源的语法

    1.先看两个例子: a.创建一个文件 file{"/tmp/12567.txt": content => aaaaababbau, ensure => present ...

  7. 第一篇puppet

    1,什么是puppet puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.puppe ...

  8. Puppet权威指南

    <Puppet权威指南>基本信息作者: 王冬生 丛书名: Linux/Unix技术丛书出版社:机械工业出版社ISBN:9787111485988上架时间:2014-12-25出版日期:20 ...

  9. puppet运维配置实列

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABQkAAAGBCAIAAABKMKAEAAAgAElEQVR4nOydeXwU9cH/t2o9WutR+7

随机推荐

  1. ftp反向代理配置

    说明:源ftp在内网,访问在另一个内网,要求用户对真实ftp地址透明,且免密访问. 1.将ftp配置为被动模式,指定被动访问端口映射出来. // vsftp配置被动模式,列出主要配置 connect_ ...

  2. du和df目录大小不一致

    最近遇到个问题 df查看基本没有空间了 但是查找大文件 也基本没有 ,原来是之前的大文件删除了 没有生效导致的 用如下命令,查找到相关进程ID 然后kill就行了 lsof | grep delete ...

  3. 如何将打印内容转换为bmp位图文件

    bmp是一种与硬件设备无关的图像文件格式,使用非常广.它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BblP文件所占用的空间很大.BMP文件的图像深度可选lbit.4bit.8 ...

  4. IDEA打开最近打开的项目以及关闭项目

    关闭的是当前项目

  5. influxDB使用小结

    在集群中安装influxdb influxdb提供了官方镜像,因此在集群中安装influxdb十分方便,只需要指定镜像名为influxdb即可自动下载运行,只需要配置环境变量就可以进行初始化设置 以下 ...

  6. 【工具】rinetd 使用教程(linux 下的端口转发工具 )

    日期:2019-07-30 20:00:36 更新: 作者:Bay0net 介绍:使用 rinetd 来转发某端口的流量. 0x01. 安装 官网 RINETD 安装方法很简单,一条语句就 OK 了. ...

  7. 使用boost库获取文件夹下所有文件名字

    最近整理项目发现一个曾经找了好久的有用的代码片段,就是获取文件夹下所有文件的名字,和当前文件的绝对路径. 记录一下. 使用的是boost库, #include <boost/filesystem ...

  8. Oracle 归档日志管理

    一.Oracle日志介绍 1.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和            redo log ...

  9. docker搭建环境的时候常用的命令有哪些

    1.docker搭建环境的时候常用的命令有哪些 docker如果要删除镜像,现在停止container docker ps 查询正在运行的镜像docker stop +containerid停止后再删 ...

  10. navicat连接 mysql报错1251解决方案

    转自:https://blog.csdn.net/XDMFC/article/details/80263215 好不容易安装好mysql,但又出现了mysql客户端版本太低的问题.根据参考的这篇博客, ...