设为首页 收藏本站
查看: 1231|回复: 0

[经验分享] puppet文件管理

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-4-14 11:01:49 | 显示全部楼层 |阅读模式
一、直接sit.pp管理
vim /etc/puppet/mainfests/site.pp
file {'/home/testfile.txt':
    ensure => file,
    owner  => 'root',
    group  => 'root',
    mode   => 644,
    content => 'This is the puppet testfile.',
}
变量形式管理
$contents = 'This isthe test Puppet manifest.
Sample contents
Test contents
'

file {'/home/testfile.txt':
    ensure => file,
    owner  => 'root',
    group  => 'root',
    mode   => 644,
    content => "$contents",
}
二、模板文件管理
修改文件管理配置文件
vim /etc/puppet/fileserver.conf
添加
[files]
       path  /etc/puppet/files  #定义模板文件路劲
       allow   *             #定义权限
编辑主机配置文件
vim /etc/puppet/mainfests/site.pp
file{ '/home/testfile2.txt':
    ensure => file,
    owner => 'root',
    group => 'root',
    mode  => 644,
    source => 'puppet://server.puppet.com/files/test.txt',
}
创建模板文件
mkdir -p /etc/puppet/files
echo "this is puppet test file "> /etc/puppet/files/test.txt

三、软连接管理
创建连接
vim /etc/puppet/mainfests/site.pp
file { '/home/testfile.link':
ensure => link,
target  =>'/home/testfile.txt',
}
删除连接
vim /etc/puppet/mainfests/site.pp
file {'/home/testfie.link': ensure => absent }
四、目录管理
修改文件管理配置文件
添加
[dirs]
       path  /etc/puppet/dirs  #定义模板文件路劲
       allow   *             #定义权限
编辑主机配置文件
vim /etc/puppet/mainfests/site.pp
file{ '/home/testdir':
    ensure => file,
    owner => 'root',
    group => 'root',
    mode  => 755,
    source => 'puppet://server.puppet.com/dirs/testdir',
}
这里我在testdir中创建了一个文件,但是没有被推送
五、参数详解
1.   backup参数

指定在文件内容替换之前进行备份操作,可以备份在本地,也可以集中备份。集中远程备份的话可以使用filebucket(我们在后面的实战部分会进行详细介绍),这个备份的时候如果备份在本地可以指定备份的文件名。

2.   content参数

指定文件的内容(字符串),这个参数和source、target参数冲突。

3.   ensure参数

这个参数指定是否创建、删除文件或者目录,有present、absent、file、directory等值。其中present会检查文件是否存在,不存在就会创建一个空文件。absent会删除文件或者目录,如果是目录需要指定recurse参数指定是否允许递归。如果指定的是其他的参数,则会创建连接文件,为了方便管理,建议在创建的时候使用ensure=> link,并通过target参数指定文件。注意不能在windows系统上链接文件,

4.   force参数

该参数强制执行文件操作,进行如下操作的时候必须指定force参数

  purge 子目录

  用文件或者链接文件替换目录

  使用ensure =>absent参数删除目录

5.   group参数

指定文件或者目录的属组,可以是组名或者组id,如果是windows的话属组和属主不能相同。

6.   ignore参数

这个参数指定在递归期间对符合指定的模式的文件操作将被忽略。

7.   links参数

这个参数指定处理文件期间如何处理链接文件,可以设置follow和manage。在拷贝文件的时候,follow将会拷贝目标文件代替链接文件,manage将只会拷贝链接文件,ignore将会跳过。

8.   mode参数

这个参数用来指定文件或者目录的权限,puppet使用传统的unix权限方案,如果系统采用的权限方案不同的,puppet为这些系统将权限翻译成等价的权限,比如windows。这些权限可以是数字(r=4,w=2,x=1)也可以是字符(rwxst)。

9.   owner参数

指定文件的属主,可以是用户名或是用户id,如果是windows的话属组和属主不能相同。

10.  path参数

指定文件管理的路径。Windows路径也使用/而不是\。

11.  purge参数

这个参数会删除在master上不存在的文件,这个参数只有在管理目录的时候指定了recurse => true参数的时候才有意义。

12.  recurse参数

这个参数指定是否进行递归调用以及递归调用的深度,选项如下

  inf,true ---在远程和本地都进行递归调用

  remote ---只在远程进行递归调用

  false ---不进行递归调用

  [0-9]+ ---和true参数一样,但是限制递归调用目录的深度

13.  source参数

该参数指定将会被拷贝到指定位置的资源文件,值可以是指定远程文件的URIS或者本地的完整路径。可以指定多个sorce,这个参数和content、target冲突。

14.  target参数

这个参数指定创建链接文件的目标文件或者目录。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-203876-1-1.html 上篇帖子: puppet证书管理 下篇帖子: puppet软件包管理 文件管理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表