puppet 安装mysql_puppet安装dashboard

该博客介绍了如何在Linux环境中配置Puppet Dashboard来管理和查看report信息,包括升级Ruby,安装mysql-devel和ruby-mysql,创建数据库,配置database.yml,使用rake任务创建数据库,启动Dashboard服务。同时,详细阐述了在Puppet Master和Agent端的配置,以实现报告功能,并通过Web界面展示报告。
摘要由CSDN通过智能技术生成

前言:为了在webGUI上面管理puppet,查看report信息,可以使用puppet项目组推出的dashboard面板。

配置前准备:

1 确认ruby版本:

#ruby -v

ruby 1.8.5 (2006-08-25) [x86_64-linux]

注:后面会安装rake,它会提示我们的ruby版本要>1.8.6(本文主要针对编译安装,对于yum安装直接yum

install rubygems即可)

yum install

rubygems(安转后发现是1.1,然后手动装了一个1.3.5,不过ruby的版本倒是自动更新了,ruby版本更新后,puppet是基于1.8.5安装的,客户端连不上了,把puppet重新装一遍)

我直接用yum安装的,安装后版本更新为1.8.6。

升级很复杂,这里我使用的办法是修改YUM,建立ruby.repo(优点是配置简单):

#cd/etc/yum.repos.d/

#vi ruby.repo,内容如下:

[ruby]

name=ruby

baseurl=http://repo.premiumhelp.eu/ruby/

gpgcheck=0

enabled=0# yum

–enablerepo=ruby upgrade

现在:

# ruby -v

ruby 1.8.6 (2010-02-05 patchlevel 399) [x86_64-linux]

gem install mysql

3 安装 mysql-devel和 ruby-mysql(ruby-masql也可以 使用gem install

mysql安装)

#yum install ruby-mysql mysql-devel mysql mysql-server

3 启动mysql:

#service mysqld start

#chkconfig mysqld on

4 安装GEM软件包安装器

#wget

http://production.cf.rubygems.org/rubygems/rubygems-1.3.5.tgz

注:1.3.5版本以上和centos5.5不兼容。

# tar zxvf rubygems-1.3.5.tgz

# cd rubygems-1.3.5

# ruby setup.rb

5 安装rake

我的不知为什么,gem

安装不行,手动下载了0.8.7安装上了#gem install rake

显示如下:

Successfully installed rake-0.8.7

1 gem installed

Installing ri documentation for rake-0.8.7…

Installing RDoc documentation for rake-0.8.7…

下载安装Dashboard:

#wget http://puppetlabs.com/downloads/dashboard/puppet-dashboard-1.0.4.tgz

#tar zxvf puppet-dashboard-1.0.4.tgz –C

/usr/local/puppet-dashboard

我最开始用1.2.6的版本,但是不好用,安装失败,换个低版本的1.0.4,安装成功给mysql创建一个mysql数据库,并且指定用户给puppet

创建一个软连接(根据个人配置):

#ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

#mysql

mysql>

create database dashboard default charset utf8;

Query OK, 1 row affected (0.00 sec)

mysql>

use

dashboard

Database changed

mysql>

grant all on dashboard.*

to dashboard@localhost

identified by 'dashboard'

;

Query OK, 0 rows affected (0.02 sec)

mysql>

flush privileges;

Query OK, 0 rows affected (0.00 sec)下面的重点:先进入面板的安装目录,在进行下面的操作:

#cd /usr/local/puppet-dashboard

给面板建立一个数据库的Yml文件,因为有默认的database.yml.example 复制一下。

# cp config/database.yml.example config/database.yml

修改database.yml,我们使用生产环境,所以在以下位置修改:

production:

database:

dashboard

username:

dashboard

password:

dashboard

encoding: utf8

adapter:

mysql使用rake任务创建刚从在config /

database.yml文件设置的数据库

# rake RAILS_ENV=production db:create

出现如下:

(in /usr/local/puppet-dashboard)

!!! The bundled mysql.rb driver has been removed from Rails 2.2.

Please install the mysql gem and try again: gem install

mysql.

rake aborted!

no such file to load –

mysql(没有安装mysql的问题,下面执行前确保先安装mysql-devel)

# gem install mysql

# rake RAILS_ENV=production db:migrate(为典型的生产环境配置)

Ok 可以启动了!

这个面板是自带web的,所以不需要apache支持(和apache结合看后来的文章)

# script/server -p 3100 -d (“-d”表示后台运行)

假设我们使用3100端口(默认3000)

Web报告功能:

1 首先在master端新增一个配置文件:

# vi /etc/puppet/manifests/site.pp

添加以下内容:

# Create

/tmp/testfile

class test_class {

file {

"/tmp/testfile":

name =>

"/tmp/testfile",

mode =>

666,

owner =>

root,

group =>

root;

}

}

# tell

puppet on which client to run the class

node 'client.dongwm.com'

{

include test_class

}

Server端配置:

注:yum安装puppet的版本号是0.25.X,编译安装的版本号是2.6.X,配置略有不同请注意

# puppetmasterd –configprint libdir

# vi /etc/puppet/puppet.conf

在【main】添加以下内容:

reports = http, store

启动puppetmaster

/etc/init.d/puppetmaster restart

client端配置:

# vi /etc/puppet/puppet.conf

在【agent】添加以下内容:

report = true

启动puppet:

/etc/init.d/puppet restart

在web面板里面添加我们配置的node

点击 左中的add class

添加test_class(上面的site.pp已定义)

a4c26d1e5885305701be709a3d33442f.png

点击创建!

点击左中的add group

添加root组:

a4c26d1e5885305701be709a3d33442f.png

点击创建

最后增加node,点开左中的add node

增加client.dongwm.com 这个node

a4c26d1e5885305701be709a3d33442f.png

找到puppetmaster的lib目录

#puppetmasterd –configprint libdir

/var/lib/puppet/lib

#mkdir –p /var/lib/puppet/lib/puppet/reports/

#cp ext/puppet/puppet_dashboard.rb

/var/lib/puppet/lib/puppet/reports/

#/var/lib/puppet/lib/puppet/reports/puppet_dashboard.rb

导入现有的报告

#rake RAILS_ENV=production reports:import

/var/lib/puppet/lib/puppet/reports/

以下是成功后的界面:

a4c26d1e5885305701be709a3d33442f.png

注:

如果出现错误:rake aborted!

No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb,

Rakefile.rb)

错误原因是没有进入工程目录(当前目录不是puppet-dashboard的目录),进去后就成功了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值