puppet自动化管理工具学习笔记之文件:
在写文件类之前,先要确定文件系统是否创建好,如果没有,则需要配置文件系统。
编辑puppet/fileserver.conf。在这里以下为例:
vi puppet/fileserver.conf
[base] path /etc/puppet/modules/base/files allow *
然后再在base/manifests里新建pp文件
1.单个文件范例:
vi sysctl.pp
class base::sysctl { file { "/etc/sysctl.conf":
##需要更改的目的文件 mode => 644
owner => root, group => root, source => "puppet://$server/base/sysctl.conf",
##文件的源地址 notify => Exec["sysctl"],##执行完上面的命令之后执行下面exec命令 } file { "/etc/security/limits.conf": mode => 644, owner => root, group => root, source => "puppet://$server/base/limits.conf", } exec { "sysctl": path => "'/root" , command => "/sbin/sysctl -p", logoutput => true , refreshonly => true, } }
2.文件夹范例:
vi nrpe.pp
class base::nrpe { file { "/etc/nrpe": ensure => directory,###说明是文件夹 owner => "root", group => "root", source => "puppet://$puppetserver/base/nrpe",##源地址路径 recurse => true, } }
备注:需要在init.pp及nodes.pp里增加相应的操作。以让客户端访问。
vi init.pp
import "sysctl.pp"
import "nrpe.pp"
vi nodes.pp
include "class base::sysctl"
include "class base::nrpe"