一.域名,IP规划 

域名:beyond.com

puppet master:puppet.sa.beyond.com 192.168.254.254

puppet client:  *.beyond.com  192.168.254.*

PS:涉及的域名都需要做DNS解析,或者绑定hosts

二.关闭防火墙、关闭selinux 略

三.软件包选择:

puppet.noarch 3.8.4-1.el6

puppet-server.noarch 3.8.4-1.el6

ruby.x86_64 1.8.7.374-4.el6_6

facter.x86_64 1:2.4.4-1.el6

四.安装pupetmaster:

1)puppet master 安装:

yum install puppet puppet-server facter ruby ruby-devel -y

2) puppet master 配置

3)启动puppet master,查看证书

/etc/init.d/puppetmaster start

五. 安装puppet agent

1) 安装:

yum install puppet facter

2)配置 puppet.conf

3)向puppetmster 发起认证

puppet agent -t

4)服务端颁发证书

puppet cert --list —all   查看客户端认证请求

颁发证书:

puppet cert --sign op.test.beyond.com

            再次查看认证: 

六:agent 和master的认证

Puppet注册方式基本上有三种:自动注册、手动注册和预签名注册

1.手动注册:

手动注册是由Agent端先发起证书申请请求,然后由Puppetserver端确认方可注册成功,这种注册方式安全系数中等,逐一注册( puppet cert --sign certnmame )在节点数量较大的情况下是比较麻烦的,效率也低,批量注册( puppet cert --sign --all )效率很高,一次性便可注册所有的Agent的请求,但是这种方式安全系数较低,因为错误的请求也会被注册上。

2.自动认证:

这种注册方式简单来讲是通过Puppetmaster端的ACL列表进行控制的,安全系统较低,也就是说符合预先定义的ACL列表中的所有节点请求不需要确认都会被自动注册上,也就是说你只需要知道ACL列表要求,其次能和PuppetMaster端通信便可轻易注册成功。当然,它的最大优点就是效率非常高

我的配置:

1) 清除之前认证的证书

puppet cert --clean op.test.beyond.com

2)删除agent端已经认证的证书

rm -rf /var/lib/puppet/ssl/*

3)编写master端ACL列表.autosign.conf

添加如下内容:

*.beyond.com

重启master进程

/etc/init.d/puppetmaster restart

4)agent重新申请证书,并查看

agent端:

master端:

3.预签名注册:

预签名注册是在agent端未提出申请的情况下,预先在puppetmaster端生成agent端的证书,然后复制到节点对应的目录下即可注册成功,这种方式安全系数最高,但是操作麻烦,需要提前预知所有节点服务器的certname名称,其次需要将生成的证书逐步copy到所有节点上去。

1)master端生成agent证书:

puppetca --generate agent1_cert.beyond.com

2)copy证书至agent

scp /var/lib/puppet/ssl/private_keys/agent1_cert.beyond.com.pem  agent1.beyond.com:/var/lib/puppet/ssl/priva  

agent1_cert.beyond.com.pem

  scp /var/lib/puppet/ssl/certs/ca.pem  agent1.beyond.com:/var/lib/puppet/ssl/certs

Puppet部署的更多相关文章

  1. Puppet部署:安装puppet server、client

    Puppet部署:安装puppet server.client   puppet与其他手工操作工具有一个最大的区别就是 puppet的配置具有稳定性,因此你可以多次执行puppet,一旦你更新了你的配 ...

  2. Puppet部署Nginx返代示例

    一.创建目录并编辑Nginx安装模块 mkdir -pv /etc/puppet/modules/nginx/{manifests,files,templates,spec,tests,lib} ]# ...

  3. puppet 部署 horizon server 所需的参数和部署逻辑

    所需要的参数:   $secret_key,   $bind_address = '127.0.0.1',   $cache_server_ip = '127.0.0.1',   $cache_ser ...

  4. OpenStack部署工具总结

    目前感觉比较简单直观的部署工具有RDO.devstack.Fuel等: 1. RDO https://openstack.redhat.com/Quickstart REDHAT出品,支持Redhat ...

  5. Advacned Puppet: Puppet Master性能调优

    本文是Advanced Puppet系列的第一篇:Puppet master性能调优,谈一谈如何优化和提高C/S架构下master端的性能. 故事情节往往惊人地类似:你是一名使用Puppet管理线上业 ...

  6. Openstack部署工具

    Openstack发展很猛,很多朋友都很认同,2013年,会很好的解决OpenStack部署的问题,让安装,配置变得更加简单易用. 很多公司都投入人力去做这个,新浪也计划做一个Openstack的is ...

  7. Juno Puppet Opertaors Meetup小结

    今年五月刚结束的Juno OpenStack Summit是半年一度的Openstack盛会,抛去那些迷花渐欲乱人眼的商业活动,我们来看一看本届summit puppet-openstack社区有哪些 ...

  8. 初学puppet

    初学puppet puppet是什么? puppet是一个开源的软件自动化配置和部署工具,很多大型IT公司均在使用puppet对集群中的软件进行管理和部署. Puppet简介 Puppet的目录是让管 ...

  9. 一个purge参数引发的惨案——从线上hbase数据被删事故说起

    在写这篇blog前,我的心情久久不能平静,虽然明白运维工作如履薄冰,但没有料到这么一个细小的疏漏会带来如此严重的灾难.这是一起其他公司误用puppet参数引发的事故,而且这个参数我也曾被“坑过”.   ...

随机推荐

  1. ProGuard代码混淆详细攻略

    转载请标明出处:http://blog.csdn.net/shensky711/article/details/52770993 本文出自: [HansChen的博客] ProGuard简介和工作流程 ...

  2. Linux Shell 基本语法

    一. Linux基本命令 1.1.  cp命令 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,功能十分强大. 语法: cp [选项] 源文件或目录 目标文件或目录 1.2. mv命令 用户可 ...

  3. 地形系统lod

    参考其他引擎,地形有近到远进行越来越深的lod,基本完成 下面是u3d的,觉得原理应该是一样的

  4. GetDlgItem的用法小结

    GetDlgItem用于获得指定控件ID的窗体指针,函数原型如下: HWND GetDlgItem( HWND hDlg, int nIDDlgItem ); CWnd* GetDlgItem(int ...

  5. MSM--Memcached_Session_Manager介绍及使用

    MSM--Memcached_Session_Manager介绍及使用 http://www.iteye.com/topic/1125301 我们都知道对于一些大型的web2.0的网站,在正式部署时一 ...

  6. vue-cli打包之后的项目在nginx的部署

    vue-cli执行 npm run build 进行打包,生成dist文件夹,把该文件夹下的文件直接复制到nginx服务器目录下,就可打开项目,但是只有首页是可以看到的,再刷新一下就404了,原因是v ...

  7. 在Lua中计算含中文的字符串的长度

    --[[ @desc: 计算字符串字符个数 author:{author} time:-- :: --@inputstr: 源字符串 return 字符个数 ]] function getString ...

  8. mysql备份小记

    常用备份工具是mysql自带的mysqldump,mysqldump -u root -p密码 dbname >d:\test.sql      ------------备份某个库mysqldu ...

  9. Ubuntu下安装配置redis

    安装redis apt-get install redis-server 查看是否启动 ps -aux|grep redis 客户端连接 注: 安装Redis服务器,会自动地一起安装Redis命令行客 ...

  10. Linux下的ssh远程访问

    准备工作:首先需要在windows系统中安装虚拟机,并在虚拟机中安装好linux操作系统,这里安装的是vmware player虚拟机和ubuntu版本的操作系统.关于该部分的安装在作者的其他经验中有 ...