hyzqb 发表于 2018-8-3 06:40:52

puppet 安装详解

  一 puppet 简介
  puppet 是用ruby 开发的,开源的集中配置管理工具。puppet 是一个C/S结构。能够帮助系统管理员对系统,进行软件包升级,管理配置文件,系统服务,cron 任务,以及对系统中用户管理等等。puppet 是个典型的星型架构,clients 默认情况下是每30分钟请求一次server端,确认是否有新的变更操作指令。在配置puppet 环境的时候,需要使用dns 如果没有dns 的可以修改hosts 文件,确保puppetmaster和puppetclient 都能够正确解析对方。
  puppet 工作流程如下:
  1 客户端puppetd 调用facter,facter 探测出主机的一些变量,如主机名称,内存大小,ip地址等。puppetd 把这些信息通过ssl连接发送到服务器端
  2 服务器端的puppetmaster 检测客户端的主机名,然后找到manifest里面对应的node配置,并对该部分内容进行解析,facter送过来的信息可以作为变量处理,node牵涉到的代码才解析,其他没有牵涉的代码不解析。解析分为几个阶段,语法检查,如果语法错误就报错。如果语法没有错误,就继续解析,解析的结果生成一个中间的“伪代码“,然后把伪代码发送给客户端;
  3 客户端接收到伪代码,并执行,客户端吧执行结果发送给服务器端;
  4 服务器端包客户端的执行结果写入日志
  二 所需软件,
  ruby-2.0.0-p195.tar.gz
  facter-1.6.18.tar.gz
  puppet-3.2.1.tar.gz
  三 配置安装
  1 首先删除系统自带的ruby 因为我的OS Version 为RHEL5.0,为在后面安装foreman 或者puppet-dashboard,故这里升级了ruby
  #yum removeruby-*
  #tar xf ruby-2.0.0-p195.tar.gz
  #cdruby-2.0.0-p195
  #./configure –prefix=/usr/local/ruby && make && makeinstall
  2 安装facter
  # tar xffacter-1.6.18.tar.gz
  #cd facter-1.6.18
  #/usr/local/ruby/bin/rubyinstall.rb
  3 安装puppet
  #tar xf puppet-3.2.1.tar.gz
  #cd puppet-3.2.1
  #/usr/local/ruby/bin/ruby install.rb
  4 配置puppet
  #cd ext/redhat
  #cp puppet.conf fileserver.conf/etc/puppet/
  #cp logrotate /etc/logrotate.d/puppetmaster
  #cp server.init /etc/init.d/puppetmaster
  #chmod 700 /etc/init.d/puppetmaster
  #cp server.sysconf ig /etc/sysconfig/puppetmaster
  #useradd puppet
  #cp ../../conf/{auth.conf,tagmail.conf} /etc/puppet/
  5 创建命令连接
  #ln -sf /usr/local/ruby/bin/{bundle,erb,extlookup2hiera,facter,gem,irb,puppet,rake,rdoc,ri,ruby,testrb}/usr/bin
  6 puppet 配置文件详解
  #cd /etc/puppet
  #ls
  auth.conf
  files
  fileserver.conf   #puppet文件服务器配置文件
  manifests#puppet主文件所在目录
  modules   #puppet 的模块所在文件
  namespaceauth.conf
  puppet.conf#puppet 的主配置文件
  注:参考 http://dongxicheng.org/category/cluster-managemant/
页: [1]
查看完整版本: puppet 安装详解