puppet报告系统dashboard以及puppet+nginx

Puppet Dashboard是由支持Puppet开发的公司Puppetlabs创建的,是Ruby on Rails程序。可以作为一个ENC(外部节点分类器)以及一个报告工具,并且正在逐渐成为一个包含许多Puppet新功能的集成界面,例如审计和资源管理功能。 Puppet Dashboard是一个Ruby on Rails程序,用于显示Puppet master和agent的相关信息。它允许你查看从一个或多个Puppet master汇总的图形和报告数据。它同时从一个或者多个Puppet master上收集来自于Puppet agent的资产数据(主机的Fact和其他信息)。最后,它能作为一个ENC来配置Puppet节点,并指定这些节点上的类和参数。

puppet dashboard的配置:

在master端

安装所需的软件包

yum install puppet-dashboard-1.2.23-1.el6.noarch.rpm mysql-server rubygem-rake-0.8.7-2.1.el6.noarch.rpm ruby-mysql-2.8.2-1.el6.x86_64.rpm -y

配置mysql数据库:

/etc/init.d/mysqld start
mysql> CREATE DATABASE dashboard_production CHARACTER SET utf8;
mysql> CREATE USER ‘dashboard‘@‘localhost‘ IDENTIFIED BY ‘westos‘;
mysql> GRANT ALL PRIVILEGES ON dashboard_production.* TO ‘dashboard‘@‘localhost‘;
vim /usr/share/puppet-dashboard/config/database.yml #这里只使用了生产环境配置
    production:
      database: dashboard_production
      username: dashboard
      password: westos
      encoding: utf8
      adapter: mysql
cd /usr/share/puppet-dashboard/config
rake RAILS_ENV=production db:migrate  #建立 dashboard 所需的数据库和表

修改puppet-dashboard的时区

vim /usr/share/puppet-dashboard/config/settings.yml
    time_zone: ‘Beijing‘

使用下面这个指令可以查看可用的时区

rake time:zones:local

/etc/init.d/puppet-dashboard start

chmod 666 /usr/share/puppet-dashboard/log/production.log
/etc/init.d/puppet-dashboard-workers start

设置报告汇总

vim /etc/puppet/puppet.conf
    [main]
       reports = http
       reporturl=http://172.25.254.1:3000/reports
/etc/puppetmaster reload

登录http://172.25.9.1:3000进入到检测页面

此时还没有报告生成我们需要在client端打开报告同步以此数据就可以看到信息了

vim /etc/puppet/puppet.conf
    [agent]
        report =true
puppet agent --server=server1.example.com --no-daemonize -vt   #进行手动同步puppet未在后台运行的情况下

之后再次刷新网站就能看到报告了

点击节点就能看到具体的日志信息了

client端自动同步的情况下要在client端进行以下操作:

vim /etc/sysconfig/puppet
PUPPET_SERVER=puppet.example.com #puppet master 的地址
PUPPET_PORT=8140         #puppet 监听端口
PUPPET_LOG=/var/log/puppet/puppet.log #puppet 本地日志#PUPPET_EXTRA_OPTS=--waitforcert=500 #默认同步的时间这里没有打开而是在下面的文件配置的

修改默认同步的时间

vim /etc/puppet/puppet.conf
    [agent]
        runinterval =300 #单位为秒
/etc/init.d/puppet start

nginx+passenger:

puppet 默认使用基于 Ruby 的 WEBRickHTTP 来处理 HTTPS 请求,但是这些语言的内置webserver目的仅是为了方便调试代码,本身的性能十分的差,而使用常见的Web Server软件就可以显著的提高单台的puppetmaster的性能。这里就是使用的是Nginx去提高puppetmaster的性能

安装所需的依赖性:

yum install -y gcc gcc-c++ curl-devel zlib-devel openssl-devel ruby-devel pcre-devel
gem install passenger-5.0.15.gem rack-1.6.4.gem #没有联网的情况下需要gem包,联网的情况下直接 gem install rack passenger

passenger-install-nginx-module #脚本会自动安装 nginx 支持,按提示操作

安装好后更改nginx的配置

vim /opt/nginx/conf/nginx.conf
    server {
    listen 8140;
    server_name server1.example.com;
    root /etc/puppet/rack/public;
    passenger_enabled on;

    passenger_set_header X_CLIENT_DN $ssl_client_s_dn;
    passenger_set_header X_CLIENT_VERIFY $ssl_client_verify;

    ssl  on;
    ssl_session_timeout 5m;
    ssl_certificate /var/lib/puppet/ssl/certs/server1.example.com.pem;
    ssl_certificate_key /var/lib/puppet/ssl/private_keys/server1.example.com.pem;
    ssl_client_certificate /var/lib/puppet/ssl/ca/ca_crt.pem;
    ssl_crl  /var/lib/puppet/ssl/ca/ca_crl.pem;
    ssl_verify_client optional;
    ssl_ciphers  SSLv2:-LOW:-EXPORT:RC4+RSA;
    ssl_prefer_server_ciphers on;
    ssl_verify_depth 1;
    ssl_session_cache  shared:SSL:128m;
    }
mkdir /etc/puppet/rack/{public,tmp} -p
cp /usr/share/puppet/ext/rack/config.ru /etc/puppet/rack/
chown puppet.puppet -R /etc/puppet/rack/
/etc/init.d/puppetmaster stop #puppetmaster不需要再启动了,nginx启动后会自动调用puppetmaster
/opt/nginx/sbin/nginx -t #检测 nginx
/opt/nginx/sbin/nginx

监测:在client端可以进行同步就证明成功了。

时间: 2024-10-19 04:58:43

puppet报告系统dashboard以及puppet+nginx的相关文章

实战Puppet 集中配置管理系统(3)——Puppet dashboard与nginx+passenger安装配置

     本次实验内容紧接前两次实验,第一节内容主要介绍PUPPET的安装认证与资源定义,第二节主要写apache与nginx模块的应用,本次介绍Puppet dashboard与nginx+passenger 的安装,Puppet dashboard 是用以 web 方式管理 puppet.puppet 默认使用基于 Ruby 的WEBRickHTTP 来处理 HTTPS 请求,单个服务器使用Apache/Nginx+Passenger 替换掉 WEBRickHTTP,Passenger 是用

puppet入门与掌握之puppet工作原理(原理篇)

对于puppet的的掌握,理解puppet的工作原理是一个必要的的阶段,只有在了解了puppet的工作原理后才能更好应用puppet,下面让我们一起了解学习puppet的工作原理: 说到puppet的工作原理,不得不从以下四个方面来说到,如下所示: (1)定义:使用Puppet特定的语言定义基础配置信息.通常我们把这些信息写在Modules中. (2)模板:在配置执行之前检测代码,但并不真正执行. (3)执行:定义的配置自动部署.检测并记录下所发生变化的部分. (4)报告:将期待的变化.实际发生

puppet入门与掌握之puppet介绍(介绍篇)

Puppet是开源的基于Ruby的系统配置管理工具,依赖于C/S的部署架构.主要开发者是Luke Kanies,遵循GPLv2版权协议.从1997年开始Kanies参与UNIX的系统管理工作,Puppet的开发源于这些经验.因为对已有的配置工具不甚满意,从2001年到2005年间,Kanies开始在Reductive实验室从事工具的开发.很快,Reductive实验室发布了他们的旗舰产品--Puppet.它使用简单且功能强大,正得到了越来越多地关注,现在很多大型IT公司均在使用puppet对集群

Puppet整合SVN(三):Puppet整合SVN

1.检查 [[email protected] ~]# ll /etc/puppet/ 总用量 32 -rw-r--r--  1 root root 4178 11月  5 16:10 auth.conf -rw-r--r--  1 root root   11 11月  5 16:10 autosign.conf drwxr-xr-x  5 root root 4096 11月  5 16:10 environments -rw-r--r--  1 root root 1561 11月  5 

利用系统函数模拟实现nginx 系统脚本启动的特殊颜色专业效果

利用系统函数模拟实现nginx 系统脚本启动的特殊颜色专业效果/etc/init.d/nginxd {start/stop/restart/reload}利用if语句实现: =========================================================== 实现特殊颜色实现效果: vim start_nginx.sh [root@lamp01 scripts]# cat bqh_nginx_startup.sh #!/bin/sh . /etc/init.d/

Puppet自编模块(一):nginx

说明:前面已经有六编文章分别介绍了几个模块以及一些资源的应用,"Puppet自编模块"系列是进阶实战编,有不明之处或好的优化建议或有错误的地方欢迎回复. 一.模块说明     Nginx反向代理服务.缓存服务.负载均衡服务. 二.目录结构 三.代码展示 1.files目录 conf.d    #其下存放nginx的配置文件,根据环境不同使用不同代码,也可以使用puppet的environments技术,本人暂未研究. DeployPub     #生产环境的配置文件 DeployTes

Puppet单台架构扩展(nginx/apache + passenger)

系统环境:rhel6.5,puppet 3.7.4 Master server1.example.com(192.168.88.128) Agent server2.example.com(192.168.88.129) 原理:使用apache或nginx代替puppet原生态的Webrick以提升master的吞吐量,在master上启webserver以负责监听8140端口并处理客户端的请求.file文件以及验证的客户端请求,将编译部分代理转发到后端的master.极大扩展master能够管

elk系统搭建并收集nginx日志-主要步骤

一)简介 elk系统是一套目前较为流行的日志收集分析系统,主要由elasticserch,logstash,kibana三部分组成,其中elasticsearch负责数据的存储,logstash负责日志的收集过滤,kibana负责日志的可视化部分.整个工作流程为logstash收集日志,过滤后输出并保存到elasticsearch中,最后用户通过kibana从elasticsearch中读取数据并处理.本文中日志收集引入filebeat收集日志,logstash监听在5000端口并接受fileb

centos6.7系统源码安装Nginx+PHP+MYSQL

环境:CentOS release 6.7 (Final)    安装软件:nginx+mysql+php 安装工具:yum 1.安装Nginx,由于默认的yum 基础源没有nginx,所以这边要添加nginx官方源到本地 1)地址:http://nginx.org/en/linux_packages.html下载系统对应的yum,如下图 2.)配置yum源,如图 a.vim /etc/yum.repos.d/nginx.repo并添加以下内容 [nginx]          name=ngi