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
相關文章
相關標籤/搜索