该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. Dagger2学习之由浅入深

    概述 Dagger2是一款使用在Java和Android上的静态的,运行时依赖注入框架.官方地址:http://google.github.io/dagger/ 记得当初刚学习Dagger2的时候看了 ...

  2. Python之路,Day4 - Python基础4 (new版)

    Python之路,Day4 - Python基础4 (new版)   本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 ...

  3. Retrofit2 简介 语法 案例

    简介 官网:http://square.github.io/retrofit/ GitHub:https://github.com/square/retrofit/ compile 'com.squa ...

  4. HDU5311

    题意:给一个指定的字符串a,要求分成三段,然后再给定另外一个字符串b,要求a中的三段能否在b中找到. 思路:枚举+模拟,首先枚举给定的字符串a,因为分成三段,所以一共有(1+9)*9/2种情况,对于分 ...

  5. 通同select便签实现简单的二级联动

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. c - 字符串的反转

    1,递归实现 // 递归实现字符串反转(可通过栈的调用来加深理解). char * reverse(char *c) { if(!c) return NULL; int len = strlen(c) ...

  7. ExtJs API 下载以及部署

    ExtJs API 下载方法 1.进入sencha官网:https://www.sencha.com/ 2.点击“Docs”进入文档帮助页面:http://docs.sencha.com/ 3.点击左 ...

  8. Android学习----发行版本

    Android 1.1(Bender“发条机器人”) Android 1.5( Cupcake“纸杯蛋糕”) Android 1.6(Donut 甜甜圈) Android 2.0(Éclair:闪电泡 ...

  9. sublime3 插件pylinter的安装

    1.首先sublime需要安装package control,之后安装pylinter插件,并进行简单的属性配置(网上教程很多,略) 2.之后是pylint_path的配置,我参照网上的配置失败,su ...

  10. phonegap学习入门

    phonegap 开发入门 PhoneGap官方网站上有详细的入门示例教程,这里,我针对使用PhoneGap进行Android移动应用的开发对其官网的Get Started进行一些介绍.补充. Ste ...