puppet的rpm包安装及配置

  • puppet简介
    puppet是一个开源数据中心配置管理框架,易安装易配置,是一个强大而又简单的入门资源配置管理软件。(需要puppet的rpm安装包的可以联系我)

  • 实验环境
    rhel 6.5
    server:172.25.254.38 server4.example.com
    agent : 172.25.254.39 server5.example.com

  • 安装
    顺带说一下我安装时候遇到的情况

    server和agent都需要安装以下的rpm包

    下载puppet的rpm包然后进行安装
    puppet的rpm包安装及配置
    然后报给我这些东西,告诉我们缺少了这些依赖的包。(需要ruby的支持)
    puppet的rpm包安装及配置
    需要什么我们装它就可以了
    puppet的rpm包安装及配置
    好了这里我们就把他的依赖装完了,(还为我们装了别的依赖)
    puppet的rpm包安装及配置
    最后把puppet装上去
    puppet的rpm包安装及配置

    在server端安装 puppet-server
    puppet的rpm包安装及配置

  • 配置与使用
    server端开启服务 /etc/init.d/puppetmaster start
    agent端开启服务 /etc/init.d/puppet start

    agent 请求测试
    puppet的rpm包安装及配置
    server端查看有哪些agent在请求连接命令
    puppet的rpm包安装及配置
    server端允许连接命令
    puppet的rpm包安装及配置
    agent端进行连接
    puppet的rpm包安装及配置
    server端查看已经有哪些agent已经连接
    puppet的rpm包安装及配置

    讲完了如何连接,我们来看一下server和agent下的文件
    server /etc/puppet 文件下有这些文件
    puppet的rpm包安装及配置
    agent /etc/puppet 文件下有这些文件
    puppet的rpm包安装及配置
    agent 的ssl文件夹下的这些文件是在和server连接时产生的认证等文件
    puppet的rpm包安装及配置

  • puppet实现价值的地方

    1)puppet请求连接好麻烦,需要这么多命令?
    答:在puppet的server端上是提供给我们自动连接的,当满足条件的agent请求server的时候,自动连接;puppet的自动连接有很多种,这里我只讲一种。
    在/etc/puppet文件夹下我们 mkdir autosign.conf 这一个配置文件,文件夹下面我 echo *.example.com。即以”.example.com”结尾的解析都可以自动连接我们的server
    puppet的rpm包安装及配置

    2)单单能连接有什么用我想看真正的作用!
    答:统一配置agent,前面我们有看到manifestes这个文件夹,他是puppet的脚本主目录(cd进去什么都没有),这时我们要自己创建一个site.pp文件(入口模块文件)。puppet可以控制很多种资源类型,下面我简单的介绍几种,(注意格式“:”“,”)
    file:输送文件到达指定的地方(如果地址不存在则会建立一个新的路径);source 你的母本文件的位置;mode 给予文件的权限是多少(下面注意的小的问题);notify 触发,当这个服务(vsftpd)不存在的时候,install这个服务。
    service:服务,ensure 后面可以接running开启,stopped关闭。
    package:软件包,安装软件或者卸载软件。

    我这实验的是让vsftpd服务安装到agent上,并发送给他我们编写好统一的vsftpd.conf文件,并开启服务。
    puppet的rpm包安装及配置
    我发现我的文件传不过去,报错是权限不够。我想了想,哪里需要权限了,不是之前都能传输别的文件吗?最后,我看了一下传输出现error的文件权限,(我的天!在实验的时候在server上安装了vsftpd拿了他的文件权限是 600,puppet用户在传输的时候other的权限不够),改为644就可以传输了。
    puppet的rpm包安装及配置

    还有puppet的好多东西还没整理还没写(2017.09.18)