puppet-dashboard 安装(草稿)

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

接着上面的puppet安装一文,虽然puppet会很努力的工作,但还有个问题,我们想了解puppet节点的运行情况,也就是回馈,因为编写puppet语法规则难免出错。但是report目录下的yaml 文件又不具有可读性,客户端很多则邮件又会被淹没,于是这就有了dashboard。

dashboard 跟cacti 有点类似,都使用mysql作为后端数据库。
沿袭前面文章的环境
centos 6
服务端 puppet .test.org
客户端 apache01.test.org
已经配置好了http + passenger


安装dashboard

1
2
yum  install  puppetlabs-release
yum  install  puppet-dashboard mysql-server ruby-mysql
配置mysql数据库
 
 
1
2
3
4
5
6
# service mysqld start
# mysql -u root -p
mysql> CREATE DATABASE dashboard_production CHARACTER SET utf8;
>CREATE USER  'dashboard' @ 'localhost'  IDENTIFIED BY  'dashboard' ;
>GRANT ALL PRIVILEGES ON dashboard_production.* TO  'dashboard' @ 'localhost' ;
> flush privileges;


编辑/usr/share/puppet-dashboard/config/database.yml,修改如下

1
2
3
4
5
6
production:
   database: dashboard_production
   username: dashboard
   password: dashboard
   encoding: utf8
   adapter: mysql
导入数据
 
 
1
2
3
4
# cd /usr/share/puppet-dashboard/
# rake gems:refresh_specs
# rake RAILS_ENV=production db:create
# rake RAILS_ENV=production db:migrate


启动puppet-dashboard

1
2
chmod  666  /usr/share/puppet-dashboard/log/production .log
service  puppet-dashboard start


这样,puppet-dashboard 就会监听在本地3000端口,使用的是ruby自带的http服务器webrick,可以通过web浏览了。

apache作为前端

配置httpd虚拟主机

1
cp  /usr/share/puppet-dashboard/ext/passenger/dashboard-vhost .conf  /etc/httpd/conf .d /dashboard .conf

配置文件同样是给debian/ubuntu 用的,需要做一些修改


1、将日志选项路径 /var/log/apache2 改为/var/log/httpd
2、取个puppet主机的子域名 dashboard.puppet.test.org
3、模块路径由
 
 
  1. /var/lib/gems/1.8/gems/passenger-2.2.11/ext/apache2/mod_passenger.so  

修改为
 
 
  1. /usr/lib64/httpd/modules/mod_passenger.so

4、passenger路径替换,将
 
 
  1. /var/lib/gems/1.8/gems/passenger-2.2.11

修改为
 
 
  1. /usr/lib/ruby/gems/1.8/gems/passenger-3.0.12

(版本号可能有差异,请事先查看是否存在类似的目录)
(其实之前已经配置了passenger,所以这行导入模块可以注释掉)
修改后大概就是这个样子(前3行可以注释掉)
 
 
  1. # LoadModule passenger_module /usr/lib64/httpd/modules/mod_passenger.so

  2. # PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.12

  3. # PassengerRuby /usr/bin/ruby

  4. # you may want to tune these settings

  5. PassengerHighPerformance on

  6. PassengerMaxPoolSize 12

  7. PassengerPoolIdleTime 1500

  8. # PassengerMaxRequests 1000

  9. PassengerStatThrottleRate 120

  10. RailsAutoDetect On

  11. <VirtualHost *:80>

  12.        ServerName dashboard.puppet.test.org

  13.        DocumentRoot /usr/share/puppet-dashboard/public/

  14. <Directory /usr/share/puppet-dashboard/public/>

  15.                Options None

  16.                Order allow,deny

  17.                allow from all

  18. </Directory>

  19.  ErrorLog /var/log/httpd/dashboard.puppet.test.org_error.log

  20.  LogLevel warn

  21.  CustomLog /var/log/httpd/dashboard.puppet.test.org_access.log combined

  22.  ServerSignature On

重启httpd
 
 
  1. service httpd restart

实时报告
设置puppet客户端每次执行完任务后立即报告给dashboard
在apache01.test.org上设置puppet客户端
 
 
  1. [agent]

  2. report = true

在puppet.test.org 上设置puppet服务端
 
 
  1. [master]

  2. reports = store,http

  3. reporturl = http://dashboard.puppet.test.org:80/reports

导入现有yml文件报告
 
 
  1. #rake RAILS_ENV=production reports:import REPORT_DIR=/var/lib/puppet/

最后一步
 
 
  1. cp /usr/share/puppet-dashboard/ext/puppet/puppet_dashboard.rb /var/lib/puppet/reports/

启动服务
 
 
  1. # /etc/init.d/puppet-dashboard start

  2. # /etc/init.d/puppet-dashboard-workers start










本文转自 紫色葡萄 51CTO博客,原文链接:http://blog.51cto.com/purplegrape/949457,如需转载请自行联系原作者

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
5月前
|
Kubernetes 数据可视化 容器
k8s安装Dashboard
k8s安装Dashboard
123 0
puppet连载13:puppet文档功能
puppet生成html文档: puppet doc --all --outputdir /tmp/rdoc --mode rdoc --manifestdir /etc/puppet/manifests image.
739 0
|
Shell Perl
puppet连载16:搭建facter插件
mkdir -p /etc/puppet/modules/public/{manifests,templates,files} vi /puppet/soft/backup_date.
928 0
|
关系型数据库 MySQL Linux
puppet连载四:服务端安装dashboard
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import - curl -L get.rvm.io | bash -s stable source /etc/profile.
1178 0
|
关系型数据库 MySQL Linux
puppet 整合dashboard
转载:http://blog.51cto.com/ywzhou/1576583一、安装配置Dshboard 1、功能说明 Puppet Dasshboard是由支持Puppet开发的公司Puppetlabs创建的,是Ruby on Rails程序; 可...
1359 0
|
JSON 开发工具 数据格式
puppet 自定义facter
自定义fact可以让节点增加更多的标签 在使用puppet作为配置管理工具的同时,facter是一个非常有用的系统盘点工具,这个工具可以通过一些预先设定好变量定位一台主机,比如可以通过变量lsbdistrelease便可以知道当前系统的版本号,通过osfamily便可以知道系统是RedHat还是SLES,还是其它等等。
1373 0
|
关系型数据库 数据库 数据安全/隐私保护