一、资源
f i l e {
" / etc /passwd" : #title
name => " / etc / passd " ,
owner => root ,
group => root ,
mode => 644;
}
一般情况下title和name是一样的
f i l e {
" sshdconfig " :
name => $operatingsystem ? {
s o l a r i s => " / usr / l o c a l / etc / ssh / sshd_config " ,
default => " / etc / ssh / sshd_config " ,
} ,
owner => root ,
group => root ,
mode => 644 ,
}
设置变量以后,变量会自己去寻找适合的操作系统的参数文件位置
s e r v i c e { " sshd " :
subscribe => F i l e [ sshdconfig ] ,
}
这个服务资源如果发现sshdconfig有变动的话,就会自动reload配置文件
定义资源关系的时候,就是File的时候要注意大写。
在puppet中的代码可能会有很多相同的资源,可以用[]将所有资源的title写在一起
f i l e {
[ " / etc /passwd" , " / etc / hosts " ] :
owner => root ,
group => root ,
mode => 644;
}
如果每次都输入owner,group,mode很麻烦,可以在site.pp的开头定义资源的默认值。
定义资源的时候要把资源的第一个字母大写,让所有的file资源的owner为root,mode为644
File | owner => root , mode => 644 ;
默认值可以被后面的值覆盖掉
如果A资源依赖B,B资源不存在的话,那么A就不会执行,定义资源依赖属性的关键字是requre
f i l e {
" / etc / apache2 / port . conf " :
content => "80" ,
require => Package [ "apache2" ] ;
}
package {
"apache2" :
ensure => i n s t a l l e d ;
}
在写配置文件之前,先要将apache安装,才可以将80端口写进配置文件
阅读(1242) | 评论(0) | 转发(0) |