该Dashboard是一种运行在Rails上的Ruby应用程序,它还不是可以添加到系统版本中的程序包,但是我们可以从Puppet Labs以RPM或者DEB包的形式获得该软件。我们也可以选择从资源进行安装。

   作为前提条件,Dashboard需要Puppet已经安装,并且使用存储的配置运行。Dashboard可以在最近出现的大多数Puppet版本上工 作,0.24.8版及更高版本都可以。它还需要Ruby、Rake工具以及一个MySQL数据库(以后的版本会支持更多的数据库)。

添加Yum或者Apt仓库

  首先,我们需要添加Puppet Labs Yum,或者添加Apt仓库。对于Yum来说,我们需要为Puppet Labs创建一个Yum报告条目:

$ vi /etc/yum.repos.d/puppetlabs.repo

  为该条目添加以下内容:

[puppetlabs]
name=Puppet Labs Packages
baseurl=http://yum.puppetlabs.com/base/
enabled=1
gpgcheck=1
gpgkey=http://yum.puppetlabs.com/RPM-GPG-KEY-puppetlabs

  然后通过Yum安装。

$ sudo yum install puppet-dashboard

  安装过程会提示你安装Puppet Labs释放键(release key),这是安装过程的一部分。

  对于Apt,我们需要给/etc/apt/sources.list文件添加条目:

deb http://apt.puppetlabs.com/ubuntulucid main
deb-src http://apt.puppetlabs.com/ubuntulucid main

  然后再给Apt添加Puppet Labs GPG键。

$ gpg --recv-key 4BD6EC30
$ gpg -a --export 4BD6EC30 | sudo apt-key add -

  接下来,我们运行更新:

$ sudo apt-get update

  然后安装软件包:

$ sudo apt-get install puppet-dashboard

  在装有红帽和Ubuntu系统的主机上,Puppet Dashboard的安装目录为/usr/share/puppet-dashboard。

配置Rails应用程序

  下一步,我们需要配置Rails应用程序,首先从数据库开始。目前Dashboard只支持MySQL数据库,那么我们就创建一个:

$ mysql --u root p
mysql> CREATE DATABASE dashboard CHARACTER SET utf8;
mysql> CREATE USER 'dashboard'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON dashboard.* TO 'dashboard'@'localhost';

  在此我们已经创建了一个名为dashboard的数据库,添加了一名叫做dashboard的用户,并让该用户对这个数据库拥有某些特权。你应该用适当的密码代替代码中的“密码”字符。

  接下来,我们需要告诉Dashboard有关数据库的信息。为了做到这一点,我们需要对/usr/share/puppet-dashboard/config目录下的database.yml文件进行配置。

  该软件包含有一个示例文件,名字为database.yml.example,我们可以对它进行复制和编辑:

$ cp database.yml.example database.yml
$ vi database.yml

  在该文件中更新生产节(用你自己的密码代替password字符),代码如下:

production:
adapter: mysql
database: dashboard
username: dashboard
password: password
encoding: utf8

  这个节需要YAML格式验证,所以请确保你保留了现有的缩进。

  最后,我们需要用表格和基础数据来填充我们的新数据库。我们用Rake任务来完成这个工作。在/usr/share/puppet-dashboard目录下,运行以下命令:

$ rake RAILS_ENV=production db:migrate

  现在Dashboard全部配置完成,我们可以运行该Rails应用程序了。运行Rails应用程序有很多方法。一种方法是使用内部Webrick服务器(这对于生产不是很好,因为它并不能很好的扩展)。

  在/usr/share/puppet-dashboard目录下,运行:

$ sudo ./script/server -e production

  这个命令会在端口3000上运行Dashboard,你可以通过一个网页浏览器进行访问:

http://your.host.name:3000

  你还可以配置带有Passenger的Apache或者Nginx来运行Dashboard,这种做法是一种更稳定、扩展性更好的生产选择。在这里你可以找到一个Apache Passenger配置文件示例。

  下篇文章中,我们将介绍如何把Puppet报告导入Puppet Dashboard

yum puppet dashboard的更多相关文章

  1. yum puppet 并整合控制台

    上篇说了下在ubuntu12.04上安装puppet,安装的版本为puppet2.7.11版本,今天尝试了下在CentOS6.4系统上安装puppet 3.1.1版本,本文参考chenshake的文章 ...

  2. yum puppet

    config.gem: Unpacked gem factory_girl-1.3.3 in vendor/gems has no specification file. Run 'rake gems ...

  3. puppet报告系统Dashboard部署及配置详解

    Puppet Dasshboard是由支持Puppet开发的公司Puppetlabs创建的,是Ruby on Rails程序.可以作为一个ENC(外部节点分类器)以及一个报告工具,并且正在逐渐成为一个 ...

  4. puppet常用调试命令

    yum快速部署puppet测试环境(C/S端) rpm -ivh  http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm yum r ...

  5. 自动化运维工具 ~puppet~

    一.模板的应用 到目前为止,资源申报.定义类.声明类等所有功能都只能一个manifest文件中实现,但这却非有效的基于puppet管理IT资源架构的方式.实践 中,一般需要把manifest文件分解成 ...

  6. puppet批量管理500多台服务器

    前言 puppet使用了有一段时间了,之前写的手顺书一直未发布到blog上来,今天正好有空,写下一点笔记.公司在用的服务器有500多台,基本都为CentOS,版本有5和6两种,管理起来很不方便,尤其是 ...

  7. puppet自动化安装服务

    puppet自动化部署 主机环境: server(master)端:172.25.7.1(server1.example.com) client(agent)端:172.25.7.2 172.25.7 ...

  8. 在CentOS 6.4上安装Puppet配置管理工具

    在CentOS 6.4上安装Puppet配置管理工具 linux, puppetAdd comments 五052013 上篇说了下在ubuntu12.04上安装puppet,安装的版本为puppet ...

  9. Puppet学习笔记(CentOS6.3+Puppet3.01)

    Puppet学习笔记(CentOS6.3+Puppet3.01)  技术 Add comments Oct262012 下了决心,好好学习puppet,周末专门去参加一个puppet的培训,难得朋友那 ...

随机推荐

  1. Android(java)学习笔记231:服务(service)之混合方式开启服务

    1. 前面我们已经讲过可以使用两种方式开启服务 startService----stopService:        oncreate() ---> onstartCommand() ---& ...

  2. 如何学习H264协议

    如何学习h.264协议 首先,我假定你已经具有如下基础: 1 了解基本的视频知识,知道什么是YCbCr/YUV: 2 知道基本的视频压缩原理: 如果这两条还不具备,那么,停一下,补一下课.这方面的相关 ...

  3. 在imge控件中直接显示图片(图片是byte[]格式)

    在工作过程中遇到了这个问题,在网上查了一些资料,结合自己的解决方法及解决过程总结了下,方面以后查阅.如果能帮到同样遇到这个问题的你,将非常高兴哦~_~ 由于asp.net中的Image控件是在Syst ...

  4. 转:Android中的Selector的用法

    http://blog.csdn.net/shakespeare001/article/details/7788400

  5. js 终止页面加载

    var xmlhttp = new XMLHttpRequest(); xmlhttp.abort(); window.stop();

  6. 鼠标滑动判断与y轴的距离

     $(window).scroll(function(){                        var y = window.scrollY;//754到达                  ...

  7. .NET读取Excel

    1.代码 string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Path + ";Ext ...

  8. c#将Excel数据导入到数据库的实现代码(OleDb)

    sing System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web ...

  9. Linux基本权限

    首先需要我们了解的是,权限(rwx)对于文件和目录的作用是不一样的 . 权限对文件的作用 r : 读取文件内容(cat , more , head , tail) w: 编辑.新增.修改文件内容(vi ...

  10. 你好,C++(38)从问题描述中发现对象的属性和行为 6.4 工资程序成长记:类与对象(上)

    6.4  工资程序成长记:类与对象 “夜半三更哟,盼天明:寒冬腊月哟,盼春风.若要盼得哟,涨工资,岭上……”自从上次老板许诺给小陈涨工资以后,一转眼又过去几个月了,可是涨工资的事一点动静都没有.小陈只 ...