您的位置:首页 > 运维架构

自动化运维工具Puppet在实际工作中的注意事项 推荐

2013-11-05 17:08 579 查看
自动化运维工具Puppet在实际工作中的注意事项

Puppet在不同平台上的安装方法不一样,个人不是特别推荐用源码的方式,推荐使用yum和apt-get,因为既然用到了puppet环境,说明应用场景的机器数量还是很多的,yum和apt-get更为方便。很多朋友比较关心puppet master和puppet agent端的版本不一致的问题,其实就一个规则就行:puppet master的版本号是必须高于puppet agent的,二者的版本不要相差太远,差太远了就容易连接不上。

Puppet对时间要求是非常严格的,这是因为证书申请是通过SSL连接,而SSL连接依赖主机上的正确时间,如果时间不正确,得到的错误信息而导致证书申请失败,所以我们在puppet client连接puppet
master时都应该通过ntpdate命令来自动对时,如果Xen虚拟机要加入puppet环境,建议也要修改sysctrl内核,然后再通过ntpdate命令来自动对时,详见:http://andrewyu.blog.51cto.com/1604432/1301516

定义(define)在puppet的官方文档里是没有这一说法的,我们可以理解为资源的组合容器,很多资料和文档将其翻译成函数,这里是错误的;puppet的函数是puppet master上运行的,并且也只能在puppet master上面运行,比如包含类和模块的include指令,我们将其称之为puppet的函数,函数和定义还是有区别的。

在模块中定义的类要跟模块同名的,比如nginx模块中定义的类起名也要为nginx,不然puppet客户端连接puppet服务器时会报报不到class的错误,模块可以由多个类来组成,我们可以使用::命名空间语法作为在模块中创建结构和组织的一种方法,比如nginx::install,nginx::config。

自动化运维工具puppet的工作流程、基础概念及入门学习资料见附件。

附件:http://down.51cto.com/data/2363718
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息