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 一大堆。 html

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

2、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 
3、安装:
       yum install puppet-server foreman foreman-installer  foreman-proxy  ruby-mysql
4、配置:
        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 会自动配置)。 mysql

chown puppet.puppet /var/lib/puppet -R
5、安装 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、44三、8140 ,foreman-proxy端口是8443
6、配置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

7、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 

8、错误处理:

一、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

二、Not authorized to call find on /file_metadata

vi fileserver.conf

[plugins]
 
  allow *.com

9、访问:
   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 配置是否正确

      
参考网址: sql

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

   http://itnihao.blog.51cto.com/1741976/1143208
相关文章
相关标签/搜索