puppet-dashboard 安装(草稿)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

接着上面的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,如需转载请自行联系原作者

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
235
分享
相关文章
puppet连载14:安装puppetdb
yum install puppetdb puppetdb-terminus -y service puppetdb start vi /etc/puppet/puppet.
1094 0
puppet连载12:linux安装nginx、openresty
服务端在/puppet/soft 里建nginx1102setup.sh,内容: !/bin/bash yum -y install wget libtool expat-devel gcc gcc-c++ glibc automake autocon...
964 0
puppet连载九:linux安装jdk、tomcat模块
安装jdk1.8.0_91和tomcat8.0.36 mkdir -p /etc/puppet/modules/linuxjdktomcat/{manifests,templates,files} vi /etc/puppet/modules/linuxjdktomcat/manifests/init.
1098 0
puppet连载10:linux安装percona57/56/55、sysbench、tpcc模块
在服务端/puppet/soft下建my.cnf,内容为https://www.jianshu.com/p/c63fc6c71279 在服务端/puppet/soft下建changemysql57pass.
1092 0
puppet连载四:服务端安装dashboard
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import - curl -L get.rvm.io | bash -s stable source /etc/profile.
1288 0
puppet连载七:linux基础组件安装模块
linux基础组件安装模块linuxbaseinstall 更换源,安装gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf git mkdir -p /etc/puppet...
1099 0
puppet连载三:服务端安装http、passenger
服务端安装插件: yum install -y ruby-devel ruby-libs rubygems libcurl-devel httpd httpd-devel apr-util-devel apr-devel mod_ssl gcc-c++...
1084 0
puppet 连载二:服务端和客户端安装(ActiveMQ、MCollective)
-------------------------------------服务端----------------------------------- 1、jdk安装 vi /etc/profile export JAVA_HOME=/usr/loca...
1191 0
puppet 连载一:服务端和客户端安装(puppet、svn)
1、mkdir /puppet mkdir /puppet/soft 2、服务端安装dnsmasq:yum install -y dnsmasq cp /etc/dnsmasq.
1438 0
puppet 服务端 客户端安装
转载:http://blog.51cto.com/ywzhou/1576141一、安装说明 官方安装向导https://docs.puppetlabs.com/guides/install_puppet/install_el.
1084 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等