yum puppet 并整合控制台
上篇说了下在ubuntu12.04上安装puppet,安装的版本为puppet2.7.11版本,今天尝试了下在CentOS6.4系统上安装puppet 3.1.1版本,本文参考chenshake的文章
http://www.cactifans.org/linux/994.html 【原文链接,尊重别人的劳动成功】
|
1 2 3 4 |
OS:centso 6.4 X64 Puppet 3.1.1 Puppet master: master.canghai.com Puppet clients:node1-5.canghai.com |
Puppet 要求所有机器有完整的域名(FQDN),如果没有 DNS 服务器提供域名的话,可以在两台机器上设置主机名(注意要先设置主机名再安装 Puppet,因为安装 Puppet 时会把主机名写入证书,客户端和服务端通信需要这个证书),因为我配置了DNS,所以就不用改hosts了,如果没有就需要改hosts文件指定。
1.关闭selinux,iptables,并设置ntp
采用CentOS-6.4-x86_64-minimal.iso最小化安装,因此先要安装ntp、wget等常用工具
安装ntp wget
|
1 |
yum install wget ntp -y |
关闭selinux
|
1 2 |
sed -i '/SELINUX/ s/enforcing/disabled/g' /etc/selinux/config setenforce |
停止iptables
|
1 2 3 4 |
chkconfig chkconfig /etc/init.d/ip6tables stop /etc/init.d/iptables stop |
设置ntp
|
1 2 3 |
ntpdate chkconfig service |
2.安装puppet服务
puppet不在CentOS的基本源中,需要加入
PuppetLabs 提供的官方源:
|
1 2 3 |
wget rpm -ivh yum update |
在 master上安装和启用 puppet 服务:
|
1 2 3 |
yum install puppet-server chkconfig service |
在clients上安装puppet客户端
|
1 2 3 |
yum install puppet chkconfig service |
3.配置puppet
对于puppet 客户端,修改/etc/puppet/puppet.conf,指定master服务器
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
vi /etc/puppet/puppet.conf [main] # The # The logdir = # Where # The rundir = # Where SSL # The ssldir = [agent] # The file # # the # option. # The default classfile = # Where # extension # The localconfig server = |
并重启puppet服务
|
1 |
service |
4.Client申请证书
服务端自动签发证书设置
设置master自动签发所有的证书,我们只需要在/etc/puppet
目录下创建 autosign.conf 文件。(不需要修改 /etc/puppet/puppet.conf文件,因为我默认的autosign.conf 文件的位置没有修改)
|
1 2 3 4 |
cat > /etc/puppet/autosign.conf <<EOF *.canghai.com EOF service |
这样就会对所有来自canghai.com的机器的请求,都自动签名。
client需要向服务器端发出请求, 让服务器对客户端进行管理.
这其实是一个证书签发的过程. 第一次运行 puppet 客户端的时候会生成一个 SSL 证书并指定发给 Puppet 服务端, 服务器端如果同意管理客户端,就会对这个证书进行签发,可以用这个命令来签发证书,由于我们已经在客户端设置了server地址,因此不需要跟服务端地址
|
1 |
puppet |
为了详细了解注册的过程和日后排错,可以增加参数,因为配置文件里
–no-daemonize 前台输出日志
–verbose 输入更加详细的日志
–debug 更加详细的日志,排错的时候使用
–test 表示测试,就带一个–test参数就可以
|
1 |
puppet |
就可以申请证书了,由于我配置的自动签发证书,所以直接就签发了,在服务端执行
|
1 2 3 4 5 6 7 |
puppet cert + + + + + + |
就可以看到所有客户端已经都已签发证书,前面带”+”号的就是签发成功的,撸过没有签名的,可以用
|
1 |
puppet cert |
进行签发证书,签发后在master,执行
|
1 |
puppet cert |
即可看到证书已经签发
5.在服务端安装puppet的dashboard
安装mysql
|
1 |
yum install -y mysql mysql-devel mysql-server |
优化mysql设置
编辑 /etc/my.cnf, 在[mysqld]字段,增加最后一行
|
1 2 3 4 5 6 7 8 9 10 11 |
cat /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links=0 max_allowed_packet [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid |
启动服务
|
1 2 |
/etc/init.d/mysqld start chkconfig |
设置mysql密码,我这里使用是密码是123456
|
1 |
mysqladmin |
创建一个dashboard数据库
|
1 2 3 4 5 6 |
mysql CREATE CREATE USER GRANT ALL FLUSH EOF |
Passenger+Apache+Dashboard
这是让Apache支持ruby,由于Passenger不在centos官方源里,因此要添加epel的源
|
1 2 3 |
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -ivh yum install mod_passenger puppet-dashboard |
配置Dashboard
|
1 2 3 4 5 6 7 |
vi /usr/share/puppet-dashboard/config/database.yml production: database: username: password: encoding: adapter: |
修改时区
|
1 2 3 4 |
vi /usr/share/puppet-dashboard/config/environment.rb #config.time_zone config.time_zone |
初始化数据库
|
1 2 |
cd /usr/share/puppet-dashboard/ rake |
配置Apache
我们需要整合Passenger和apache
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
cat > /etc/httpd/conf.d/passenger.conf << LoadModule PassengerRoot PassengerRuby PassengerHighPerformance PassengerMaxPoolSize PassengerPoolIdleTime PassengerStatThrottleRate RailsAutoDetect ServerName DocumentRoot <Directory Options AllowOverride Order allow from ErrorLog LogLevel CustomLog /var/log/httpd/master.canghai.com_access.log ServerSignature EOF |
启动服务
|
1 2 |
/etc/init.d/httpd start chkconfig |
配置puppet
让Dashboard使用Reports,现在默认agent是已经启用Report的功能,所以你就不需要设置agent,你只需要设置Server端就可以
|
1 2 3 4 |
vi /etc/puppet/puppet.conf [master] reports = reporturl = |
重启puppetmaster 服务
|
1 |
/etc/init.d/puppetmaster restart |
这时候就可以直接用 http://ip 访问puppet Dashboard
导入报告
|
1 2 |
cd /usr/share/puppet-dashboard rake RAILS_ENV=production |
这时候你访问Dashboard,可以看到导入的任务.
4. 执行导入的reports
|
1 2 |
cd /usr/share/puppet-dashboard rake |
yum puppet 并整合控制台的更多相关文章
- yum puppet dashboard
该Dashboard是一种运行在Rails上的Ruby应用程序,它还不是可以添加到系统版本中的程序包,但是我们可以从Puppet Labs以RPM或者DEB包的形式获得该软件.我们也可以选择从资源进行 ...
- yum puppet
config.gem: Unpacked gem factory_girl-1.3.3 in vendor/gems has no specification file. Run 'rake gems ...
- babun安装,整合到cmder
babun Babun的特性: 预装了Cygwin以及许多的插件 默认的命令行安装工具,没有管理员权限要求. 预装了 pact工具,一个高级的包管理器,类似 apt-get或yum xTerm-256 ...
- 企业级自动化运维工具---puppet详解
本文收录在Linux运维企业架构实战系列 1.认识puppet 1.1 引入 puppet是什么,咱们先不用专业的名词解释它,咱们先描述一些工作场景,看明白这些工作场景,自然会知道puppet是什么. ...
- 项目10.2-企业级自动化运维工具---puppet详解
1.认识puppet 1.1 引入 puppet是什么,咱们先不用专业的名词解释它,咱们先描述一些工作场景,看明白这些工作场景,自然会知道puppet是什么. (1)场景一: 管理员想要在100台服务 ...
- 1、puppet基础
Puppet:IT基础设施自动化管理工具 参考文章: https://yq.aliyun.com/articles/120228 http://www.51niux.com/?id=105 http: ...
- 自动化运维工具之Puppet基础入门
一.简介 puppet是什么?它能做什么? puppet是一个IT基础设施自动化运维工具,它能够帮助系统管理员管理基础设施的整个生命周期:比如,安装服务,提供配置文件,启动服务等等一系列操作:基于pu ...
- 在 CentOS 7 上安装和配置 Puppet
1 准备 2台 centos7 (master/server:192.168.1.103 agent/client:192.168.1.106) 分别添加puppet自定义仓库 https://yum ...
- win7和u盘redhat7.1双系统安装总结
最近win7系统越用越卡,又没钱买mac只能想办法装以下linux系统,听说redhat服务器用的比较多,就想尝试一下装一个redhat.当然,和所有人一样,搜索了很多资料.我选择装双系统,因为要抛弃 ...
随机推荐
- 网站开发常用jQuery插件总结(12)固定元素插件scrolltofixed
这个插件在前段时间用过一次,当时是改一个网站.要求顶部的菜单栏随着滚动条的滚动而固定.也大体写了一下,不过在文章中也只是提了一下,文章地址:jQuery插件固定元素位置. 在这篇文章中,再进行总结一下 ...
- Jquery EasyUI中treegrid的中右键菜单和一般按钮同时绑定事件时的怪异事件
做个项目使用jquery easyui来做前端,也许是对此不是很熟悉,总是发现一些不可理解的事件. 主要源代码如下: <script type="text/javascript&qu ...
- PHP 读json文件并转php配置文件
<?php$c = file_get_contents('./cities_v2.json');$s = "<?php return " . var_export(js ...
- xml技术基础
HTML语言缺点 : 1.标签规定好,用户不能自定义 2.标签显示样式和数据绑定在一起,数据不可复用 3.html标签没有任何含义 XML语言(Extensible Markup ...
- windows下Apache配置SSL安全连接
什么是SSL? SSL(Secure Socket Layer): 是为Http传输提供安全的协议,通过证书认证来确保客户端和网站服务器之间的数据是安全.Open SSL下载地址:http://www ...
- html5写的一个时钟
看到的一个html5写的时钟 <!doctype> <html> <head> <script> window.onload=function(){ v ...
- 网站seo优化--jsoup 批量分析相关网站 标签,描述,关键词.
网站seo优化--jsoup 批量分析相关网站 标签,描述,关键词. 因为自己写了一个磁力搜索网站Btgoogle,准备进行优化一下,需要分析其他的网站的优化情况. Java的Jsoup类库和PHP的 ...
- C语言-03流程控制
1.选择结构 char c = '+'; ; ; // 如果要在case后面定义新的变量,必须用大括号{}包住 注意变量的作用域的紊乱 if语句不加括号时,也要注意此问题 switch (c) { c ...
- C语言学习总结(二) 运算流程
第三章.基本运算 (运算符.算数运算符.关系运算符.逻辑运算符.三目运算符.ASXLL码) 一.什么是运算符? 概念:是编译程序执行特定的算术或逻辑操作的符号: 分类:算术运算符. 关系运算符.逻辑运 ...
- 安卓手机无法连接VPN的解决办法
这篇不能算是技术博客吧,但是在网上很难找到解决方案,至少我找了好久也没弄好.. 三种方案,因机而异,我就长话短说了: 一. "/system/xbin" 和 "/syst ...