首页 > 代码库 > Puppet---一个简单的上手例子

Puppet---一个简单的上手例子

puppet作为自动化运维当中的重要工具,其可以进行批量服务器或者指定服务器软件版本更新、配置更新等等。


闲话少说,直接进主题。


软件版本:

OS :

cat /etc/issue 

CentOS release 5.8 (Final)    ####  i386

Kernel \r on an \m


puppet --version

3.7.1


  1. 在puppet服务端和客户端分别安装puppet-server和puppet

  2. 由于puppet是基于ruby开发的,请在1之前,先确认系统是否有ruby,没有请自行安装。



以下是安装步骤,在服务端和客户端,分别

  1.  yum install ruby  ruby-libs  ruby-shadow

  2. 在服务端和客户端,首先下载puppet的repository所学的rpm,这会自动给系统添加puppet的yum源

    rpm -Uvh  http://yum.puppetlabs.com/puppetlabs-release-el-5.noarch.rpm

    #具体版本需要根据操作系统选择

  3. 然后,在服务端,执行

    yum  install puppet-server

  4. 在客户端,执行

    yum  install  puppet

  5. 至此,安装结束,下面是简单配置,并测试是否可以通过Puppet来推送一个文件。


6. 在服务端,编辑

vi /etc/puppet/manifests/site.pp

node default

{

    file

        {

            "/tmp/puppet-test1.txt":content  =>  "This is a  puppet test!\n";

        }

}


7.在客户端

  puppet agent  --server cahoa.linux.net  --test --verbose --debug --no-daemonize

  #向服务端申请认证,并获取文件,开启了详细信息模式(verbose),调试模式(debug),输出信息重   #定向到控制台模式(no-daemonize)


8.可以看到,上述命令运行,最后输出是:

Exiting; no certificate found and waitforcert is disabled

这是agent向master发出证书验证请求,等待master签名返回证书。


9.在服务端,验证客户端

puppet cert --list

  "cahou.linux.net" (SHA256) 22:17:7D:3D:0B:02:**********************************************************(*号部分为省略内容)


服务端签署验证客户端,

puppet cert sign cahou.linux.net  --verbose  --debug  --no-daemonize


10.在客户端,再次运行配置,请求服务端资源


puppet agent  --server cahoa.linux.net  --test --verbose --debug --no-daemonize


11.在客户端查看,可以看到,已经在指定位置创建了指定内容的文件。


cat   /tmp/puppet-test1.txt 

This is a  puppet test!











本文出自 “linux与网络那些事” 博客,请务必保留此出处http://khaozi.blog.51cto.com/952782/1564980

Puppet---一个简单的上手例子