2013/3/19 10:28
系统环境:
Centos6.2_x86_64
puppet-3.0.2
一、安装puppet-dashboard
yum install rubygem-rake ruby-mysql mysql-server puppet-dashboard
二、修改mysql配置
1. 修改单行最大容量
vim /etc/my.cnfmax_allowed_packet = 32M #[mysqld]内加入
2. 配置默认字符集为utf8
defalut-character-set = utf8 #[mysqld]和[client]内加入
3. 创建mysql数据库和用户
create database dashboard;grant all on dashboard.* to puppet@'localhost' identified by 'centos';flush privileges;
三、配置puppet-dashboard
1. 修改database.yml
vim /usr/share/puppet-dashboard/config/database.yml
production:database: dashboardusername: puppetpassword: centosencoding: utf8adapter: mysql
2. 导入表结构,依次执行如下命令
cd /usr/share/puppet-dashboardrake gems:refresh_specsrake RAILS_ENV=production db:migrate
3. 测试puppet-dashboard能否工作
/usr/share/puppet-dashboard/script/server -e production
4. 启动完成后访问http://ip:3000测试
四、配置puppet服务端和客户端
- 服务器端配置
vim /etc/puppet/puppet.conf #在[main]内添加
reports = http,storereporturl = http://IP:3000/reports/upload
修改完毕后重启puppetmaster服务 - 在客户端配置
vim /etc/puppet/puppet.conf #在[agent]内添加
report = true
修改完毕后重启puppet服务
五、dashboard相关命令
- 导入已有的报告
cd /usr/share/puppet-dashboardrake RAILS_ENV=production reports:import - 运行分析报告进程
env RAILS_ENV=production /usr/share/puppet-dashboard/script/delayed_job -p dashboard -n 4 -m start #-n 指定启动多少个进程,-m stop 停止分析进程,-m start 启动分析进程
后台运行dashboard
/usr/share/puppet-dashboard/script/server -e production -d
六、puppet-dashboard+apache配置
- 解决依赖关系
yum install httpd mod_passenger - 配置apache
vim /etc/httpd/conf.d/passenger.confLoadModule passenger_module modules/mod_passenger.so<IfModule mod_passenger.c>PassengerRoot /usr/share/rubygems/gems/passenger-3.0.17PassengerRuby /usr/bin/rubyPassengerHighPerformance onPassengerMaxPoolSize 12PassengerPoolIdleTime 1500PassengerStatThrottleRate 120RailsAutoDetect On</IfModule><VirtualHost *:8001>DocumentRoot "/usr/share/puppet-dashboard/public/"<Directory "/usr/share/puppet-dashboard/public/">Options NoneAllowOverride AuthConfigOrder allow,denyallow from all</Directory>ErrorLog /var/log/httpd/dashboard.error.logLogLevel warnCustomLog /var/log/httpd/dashboard.access.log combinedServerSignature On</VirtualHost>
七、整合puppetmaster到apache
- 解决依赖关系
yum install mod_ssl - 创建apache配置
cp /usr/share/puppet/ext/rack/files/apache2.conf /etc/httpd/conf.d/rack.confmkdir -p /etc/puppet/rack/publiccp /usr/share/puppet/ext/rack/files/config.ru /etc/puppet/rack/ - 修改apache配置
vim /etc/httpd/conf.d/rack.conf# you probably want to tune these settings #注释这些配置,因为已经在passenger.conf中定义#PassengerHighPerformance on#PassengerMaxPoolSize 12#PassengerPoolIdleTime 1500# PassengerMaxRequests 1000#PassengerStatThrottleRate 120#RackAutoDetect Off#RailsAutoDetect OffListen 8140<VirtualHost *:8140>SSLEngine onSSLProtocol -ALL +SSLv3 +TLSv1SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXPSSLCertificateFile /var/lib/puppet/ssl/certs/puppet.server.cihi.cn.pem #修改这里对应的路径SSLCertificateKeyFile /var/lib/puppet/ssl/private_keys/puppet.server.cihi.cn.pemSSLCertificateChainFile /var/lib/puppet/ssl/ca/ca_crt.pemSSLCACertificateFile /var/lib/puppet/ssl/ca/ca_crt.pemSSLCARevocationFile /var/lib/puppet/ssl/ca/ca_crl.pemSSLVerifyClient optionalSSLVerifyDepth 1. . . - 验证测试
八、puppet dashboard常用操作命令如下:
当puppet dashboard数据量过多的时候,需要优化数据库,可使用命令:
rake RAILS_ENV=production db:raw:optimize
清量dashborad一个月之前的数据。可以使用
rake RAILS_ENV=production reports:prune upto=1 unit=mon
备份puppet dashborad数据库,可以使用如下命令:
rake RAILS_ENV=production db:raw:dump
备份sql并输出到文件:
rake RAILS_ENV=production FILE=/my/backup/file.sql db:raw:dump
恢复puppet dashboard数据库,可以使用如下命令:
rake RAILS_ENV=production FILE=production.sql db:raw:restore
转载于:https://blog.51cto.com/yooke/1158831