Puppet擴充(一):縱向擴充Apache+Passenger

來源:互聯網
上載者:User

標籤:puppet   縱向擴充   apache+passenger   passenger   puppet+passenger   



1、功能說明

  puppet預設使用基於Ruby的WEBRickHTTP來處理HTTPS請求,

  單個伺服器使用Apache+Passenger替換掉WEBRickHTTP,

  Passenger是用於將Ruby程式進行嵌入執行的Apache模組,

  在安裝前,首先至少要執行一次service puppetmaster start,產生本地認證

  官方配置指南:https://docs.puppetlabs.com/guides/passenger.html

2、安裝apache

[[email protected] ~]# yum install -y httpd httpd-devel openssl mod_ssl ruby-devel libcurl-devel rubygems gcc

    前面已安裝了apache,這裡主要安裝mod_ssl ruby-devel libcurl-devel三個。

3、安裝passenger

[[email protected] ~]# gem install rack passenger[[email protected] ~]# passenger-install-apache2-module

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/53/41/wKiom1RlnCyTos7eAAE6NKo5ZUM598.jpg" style="float:none;" title="映像 (1).png" alt="wKiom1RlnCyTos7eAAE6NKo5ZUM598.jpg" />

    直接斷行符號

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/53/41/wKiom1RlnC2xwyjjAABaPfWHCQ8592.jpg" title="映像.png" style="float:none;" alt="wKiom1RlnC2xwyjjAABaPfWHCQ8592.jpg" />

    預設選擇了Ruby,直接斷行符號

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/53/3F/wKioL1RlnJvzjxpjAAD15DmsjkY804.jpg" style="float:none;" title="映像 (2).png" alt="wKioL1RlnJvzjxpjAAD15DmsjkY804.jpg" />

    檢查需要安裝的包,根據提示安裝需要的軟體包,再重新執行

[[email protected] ~]# yum install libcurl-devel

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/53/41/wKiom1RlnCzQMC2UAADpdNlslNE630.jpg" style="float:none;" title="映像 (3).png" alt="wKiom1RlnCzQMC2UAADpdNlslNE630.jpg" />

    需要將此段寫入passenger.conf中:

[[email protected] ~]# vi /etc/httpd/conf.d/passenger.conf    LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-4.0.53/buildout/apache2/mod_passenger.so        <IfModule mod_passenger.c>            PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-4.0.53            PassengerDefaultRuby /usr/bin/ruby        </IfModule>

    繼續斷行符號完成,可以看到一個虛擬機器主機的配置範例。

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/53/3F/wKioL1RlnJyS8mFvAAEbBaA53Ng198.jpg" style="float:none;" title="映像 (4).png" alt="wKioL1RlnJyS8mFvAAEbBaA53Ng198.jpg" />

4、配置rack

  config.ru檔案會告訴Rack如何產生puppet master進程

[[email protected] ~]# cd /usr/share/puppet[[email protected] puppet]# mkdir -p rack/puppetmasterd/{public,tmp}[[email protected] puppet]# cp ext/rack/config.ru rack/puppetmasterd/[[email protected] puppet]# chown puppet:puppet rack/puppetmasterd/config.ru

5、配置passenger和vhost

[[email protected] puppet]# cp ext/rack/example-passenger-vhost.conf  /etc/httpd/conf.d/puppetmaster.conf[[email protected] puppet]# vi /etc/httpd/conf.d/puppetmaster.conf# This Apache 2 virtual host config shows how to use Puppet as a Rack# application via Passenger. See# http://docs.puppetlabs.com/guides/passenger.html for more information.# You can also use the included config.ru file to run Puppet with other Rack# servers instead of Passenger.# you probably want to tune these settingsPassengerHighPerformance onPassengerMaxPoolSize 12PassengerPoolIdleTime 1500# PassengerMaxRequests 1000PassengerStatThrottleRate 120#RackAutoDetect Off             #注釋掉這行#RailsAutoDetect Off            #注釋掉這行Listen 8140<VirtualHost *:8140>        SSLEngine on        SSLProtocol             ALL -SSLv2 -SSLv3        SSLCipherSuite          EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!IDEA:!ECDSA:kEDH:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA        SSLHonorCipherOrder     on        SSLCertificateFile      /var/lib/puppet/ssl/certs/puppet.ewin.com.pem   #修改路徑和認證名稱        SSLCertificateKeyFile   /var/lib/puppet/ssl/private_keys/puppet.ewin.com.pem  #修改路徑和認證名稱        SSLCertificateChainFile /var/lib/puppet/ssl/ca/ca_crt.pem  #修改路徑        SSLCACertificateFile    /var/lib/puppet/ssl/ca/ca_crt.pem  #修改路徑        # If Apache complains about invalid signatures on the CRL, you can try disabling        # CRL checking by commenting the next line, but this is not recommended.        SSLCARevocationFile     /var/lib/puppet/ssl/ca/ca_crl.pem  #修改路徑        # Apache 2.4 introduces the SSLCARevocationCheck directive and sets it to none        # which effectively disables CRL checking; if you are using Apache 2.4+ you must        # specify ‘SSLCARevocationCheck chain‘ to actually use the CRL.        # SSLCARevocationCheck chain        SSLVerifyClient optional        SSLVerifyDepth  1        # The `ExportCertData` option is needed for agent certificate expiration warnings        SSLOptions +StdEnvVars +ExportCertData        # This header needs to be set if using a loadbalancer or proxy        RequestHeader unset X-Forwarded-For        RequestHeader set X-SSL-Subject %{SSL_CLIENT_S_DN}e        RequestHeader set X-Client-DN %{SSL_CLIENT_S_DN}e        RequestHeader set X-Client-Verify %{SSL_CLIENT_VERIFY}e        DocumentRoot /usr/share/puppet/rack/puppetmasterd/public    #修改路徑        RackBaseURI /        <Directory /usr/share/puppet/rack/puppetmasterd/>           #修改路徑                Options None                AllowOverride None                Order allow,deny                allow from all        </Directory></VirtualHost>

6、服務

[[email protected] ~]# service puppetmaster stop[[email protected] ~]# service httpd restart[[email protected] ~]# chkconfig httpd on[[email protected] ~]# netstat -nlp | grep 8140

7、測試

(1)WEB網頁訪問測試

    用戶端修改IE設定,去掉標黃的勾:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/53/43/wKioL1Rlp6KADqhEAAGbhgVzqAE050.jpg" title="映像 (5).png" alt="wKioL1Rlp6KADqhEAAGbhgVzqAE050.jpg" />

    使用IE瀏覽https://10.188.1.73:8140/

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/53/43/wKioL1Rlp7CRkRgKAACfg2OqUUs349.jpg" title="映像 (6).png" alt="wKioL1Rlp7CRkRgKAACfg2OqUUs349.jpg" />

    出現這一行表示配置成功,下一節配置Dashboard後就有內容了。

(2)linux用戶端測試

[[email protected] ~]# puppet agent --server puppet.ewin.com --test

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/53/46/wKiom1Rlp1WShm4OAABxLysRRbQ141.jpg" title="映像 (7).png" alt="wKiom1Rlp1WShm4OAABxLysRRbQ141.jpg" />

    沒有報錯,顯示配置版本號碼及完成時間表示成功。

(3)puppet服務端測試

[[email protected] ~]# tailf /var/log/httpd/access_log

    10.188.1.172是windows客戶機ywzhou-pc:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/53/46/wKiom1Rlp3LCo2R7AAHUjIYNg50263.jpg" style="float:none;" title="映像 (8).png" alt="wKiom1Rlp3LCo2R7AAHUjIYNg50263.jpg" />

    10.188.1.103是linux客戶機zabbix:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/53/44/wKioL1Rlp-GjQKFWAADOVhr1E5Y245.jpg" style="float:none;" title="映像 (9).png" alt="wKioL1Rlp-GjQKFWAADOVhr1E5Y245.jpg" />

    客戶機發出HTTP GET請求,狀態代碼200表示請求成功,再使用PUT請求提交了一個報告


本文出自 “月晴星飛” 部落格,請務必保留此出處http://ywzhou.blog.51cto.com/2785388/1576529

Puppet擴充(一):縱向擴充Apache+Passenger

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.