该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. MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk

    redis 有如标题所示提示, 可从两方面查找原因: 一, 可以看一下,运行redis实例的用户, 是否对redis, 数据保存的目录有写权限(既然是排查错误,不防把redis所在目录权限最大化试一下 ...

  2. Android系统移植与驱动开发--第三章 Git使用入门及在学习中有感

    第三章 Git使用入门 使用Git的目的是减少各种版本的Linux的压缩大小,提供源代码在Linux上进行编译. 在这一个章节中,其实就是关键步骤的操作,虽然Git与我们学习的android没有很大的 ...

  3. 转载:C#实现接口回调

    通常情况下,我们创建一个对象,并马上直接去使用它的方法.然而,在有些情况下,希望能在某个场景出现后或条件满足时才调用此对象的方法.回调就可以解决这个“延迟调用对象方法”的问题.这个被调用方法的对象称为 ...

  4. Ci 简单分页,保证能实现

    某晚,自己写项目的时候去找资料,关于CI分页的, 发现百度出来的前几名的基本都是写的都是垃圾, 要么是实现不了,要么就是坑逼 所以我自己在这里写一个,不是很完美,只是说是简单的实现了原理 有了最基本的 ...

  5. css 圆角效果

    http://intacto10years.com/index_start.php<div style="width:800px; height:1300px;">&l ...

  6. datazen Active Directory AD 配置

    今天苦心经营的datazen 链接AD,文档已经无法吐槽了简单的几句话,根本不够用. 先说一下链接AD 的好处吧, 1 首先免去设置密码的麻烦,因为直接用AD账号的密码. 2 更安全,因为客户可不想自 ...

  7. 【转】 iOS使用AVFoundation实现二维码扫描

    原文:http://strivingboy.github.io/blog/2014/11/08/scan-qrcode/ 关于二维码扫描有不少优秀第三方库如: ZBar SDK 里面有详细的文档,相应 ...

  8. Bit Map解析

    1. Bit Map算法简介 来自于<编程珠玑>.所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素.由于采用了Bit为单位来存储数据,因此在存储空 ...

  9. 测试最新的log4cplus1.1.2版

    #include "stdafx.h" #include <sstream> class AB{ public:     void do_test()     {    ...

  10. 删除左右两边的空格trim

    js中却没有trim()/ltrim()和rtrim()内置方法,所以需要自己写 写成类的方法格式如下:(str.trim();) <script language="javascri ...