centos 6.4 (redhat 6.4 x86_64 )puppet 3.x + for...

官方说foreman 1.1 不兼容 puppet 3.0.x 版本,只支持 3.1 以上的版本,所以安装了puppet 3.0.x 版本的童鞋 要是安装 foreman 1.1 或者是 puppet 3.1 的版本安装foreman 1.0.x 的版本基本没戏,bug 一大堆。

centos 6.4 (redhat 6.4 x86_64 )puppet 3.x + for..._第1张图片

配置过程 
一,操作系统环境 
        redhat 6.4 或者是 centos 6.4 (我在6.3的环境中没有安装成功,报错很多,后来操作系统升级到6.4后一次就安装成功了)

二、yum源的安装
       rpm -ivh http://yum.puppetlabs.com/el/6/products/x86_64/puppetlabs-release-6-6.noarch.rpm
       rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm 
       rpm -ivh http://yum.theforeman.org/releases/1.1/el6/x86_64/foreman-release-1.1stable-3.el6.noarch.rpm 
三、安装:
       yum install puppet-server foreman foreman-installer  foreman-proxy  ruby-mysql
四、配置:
        ruby /usr/share/foreman-installer/generate_answers.rb 
       一路输入y 即可,详细 
       http://theforeman.org/manuals/1.1/quickstart_guide.html#QuickstartGuide 有解释
     
    chown foreman.foreman -R /usr/share/foreman 
       su - foreman -s /bin/bash -c /usr/share/foreman/extras/dbmigrate 
      修改foreman db 配置文件,使用mysql db  
     vi /usr/share/foreman/config/database.yml
     production: 
            adapter: mysql 
            database: puppet 
            username: puppet 
            password: puppet 
            host: localhost 
            socket: "/var/lib/mysql/mysql.sock" 
mysql> create database puppet CHARACTER SET utf8; 
mysql> grant all privileges on puppet.* to puppet@'localhost' identified by 'puppet'; 
mysql>  flush privileges;
cd /usr/share/foreman/ 
生成表结构:
RAILS_ENV=production rake db:migrate 
rake puppet:migrate:populate_hosts RAILS_ENV=production
修改  foreman-proxy 配置文件:
vi /etc/foreman-proxy/settings.yml
:trusted_hosts:  #去掉前面的#号
 - puppet-192-88-53-104.test.com ##加入 puppet master 机器的hostname ,否则无法在foreman 界面当中添加  foreman-proxy 主机。
 其他基本不用动,默认即可(foreman-installer 会自动配置)。

chown puppet.puppet /var/lib/puppet -R
五、安装 passenger 
       gem llist |grep "passenger" 如果有就不用安装了。
       gem install passenger
       vi /etc/httpd/conf/httpd.conf  
            LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.19/ext/apache2/mod_passenger.so
            PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.19
            PassengerRuby /usr/bin/ruby
        其他的配置文件在/etc/httpd/conf.d 中。
         运行 ruby /usr/share/foreman-installer/generate_answers.rb  会自动生成puppet.conf 和foreman.conf 默认即可。       
 重新启动foreman-proxy ,httpd 服务
 service httpd restart
 service foreman-proxy restart
httpd 服务代理了foreman puppet 两个服务,端口分别是80、443、8140 ,foreman-proxy端口是8443
六、配置foreman report功能:
cp /usr/share/foreman-installer/foreman/templates/foreman-report.rb.erb /usr/lib/ruby/site_ruby/1.8/puppet/reports/foreman.rb
vi /usr/lib/ruby/site_ruby/1.8/puppet/reports/foreman.rb
注释掉原来的$foreman_url,添加下面行:
$foreman_url="https://" + `hostname`.strip

重启httpd server

七、client agent 配置:

[agent]
    puppetdlog = $logdir/puppet.log
    httplog = $logdir/http.log
    runinterval = 600
    localconfig = $vardir/localconfig
    classfile = $vardir/classes.txt
    localconfig = $vardir/localconfig
    report      = true
    pluginsync  = true
    masterport  = 8140
    autoflush = true
    environment = production
    server      = puppet-192-88-53-104.test.com
    listen      = true

测试:
    puppet agent -t 

八、错误处理:

1、puppet client could not request certificate: Error 500 on SERVER

解决方案:
chown puppet.puppet /var/lib/puppet -R
chown puppet.puppet /usr/share/puppet -R
chown puppet.puppet /etc/puppet -R
chown foreman-proxy.puppet /etc/puppet/foreman-proxy.conf

2、Not authorized to call find on /file_metadata

vi fileserver.conf

[plugins]
 
  allow *.com

九、访问:
   https://192.88.53.104
   admin/changmem
   
   点击菜单:more-configureation-smart proxies
       name:puppet-192-88-53-104.test.com
       proxy的地址 https://puppet-192-88-53-104.test.com:8443 

       如果提示 foreman-proxy 服务没启动,或者是端口没打开,请检查防火墙是否关闭。hostname -f  是否跟机器名一样
       vi /etc/hosts
        192.88.53.104 puppet-192-88-53-104.test.com 
       如果foreman report 不出数据,请检查client 是否提交数据,或者是 /usr/lib/ruby/site_ruby/1.8/puppet/reports/foreman.rb 的url 配置是否正确

      
参考网址:

   http://theforeman.org/manuals/1.1/index.html#3.InstallingForeman
   http://theforeman.org/manuals/1.1/quickstart_guide.html#QuickstartGuide

   http://itnihao.blog.51cto.com/1741976/1143208

你可能感兴趣的:(centos6,redhat6,foreman1.1.x,puppet3.1.x)