Puppet部署
一.域名,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/certsPuppet部署的更多相关文章
- Puppet部署:安装puppet server、client
Puppet部署:安装puppet server.client puppet与其他手工操作工具有一个最大的区别就是 puppet的配置具有稳定性,因此你可以多次执行puppet,一旦你更新了你的配 ...
- Puppet部署Nginx返代示例
一.创建目录并编辑Nginx安装模块 mkdir -pv /etc/puppet/modules/nginx/{manifests,files,templates,spec,tests,lib} ]# ...
- puppet 部署 horizon server 所需的参数和部署逻辑
所需要的参数: $secret_key, $bind_address = '127.0.0.1', $cache_server_ip = '127.0.0.1', $cache_ser ...
- OpenStack部署工具总结
目前感觉比较简单直观的部署工具有RDO.devstack.Fuel等: 1. RDO https://openstack.redhat.com/Quickstart REDHAT出品,支持Redhat ...
- Advacned Puppet: Puppet Master性能调优
本文是Advanced Puppet系列的第一篇:Puppet master性能调优,谈一谈如何优化和提高C/S架构下master端的性能. 故事情节往往惊人地类似:你是一名使用Puppet管理线上业 ...
- Openstack部署工具
Openstack发展很猛,很多朋友都很认同,2013年,会很好的解决OpenStack部署的问题,让安装,配置变得更加简单易用. 很多公司都投入人力去做这个,新浪也计划做一个Openstack的is ...
- Juno Puppet Opertaors Meetup小结
今年五月刚结束的Juno OpenStack Summit是半年一度的Openstack盛会,抛去那些迷花渐欲乱人眼的商业活动,我们来看一看本届summit puppet-openstack社区有哪些 ...
- 初学puppet
初学puppet puppet是什么? puppet是一个开源的软件自动化配置和部署工具,很多大型IT公司均在使用puppet对集群中的软件进行管理和部署. Puppet简介 Puppet的目录是让管 ...
- 一个purge参数引发的惨案——从线上hbase数据被删事故说起
在写这篇blog前,我的心情久久不能平静,虽然明白运维工作如履薄冰,但没有料到这么一个细小的疏漏会带来如此严重的灾难.这是一起其他公司误用puppet参数引发的事故,而且这个参数我也曾被“坑过”. ...
随机推荐
- 嵌入式开发之hisilicon---hi3536 处理器简介
(1)处理器概述 (2)处理器模块架构 --------------author:pkf -------------------time:7-19 -------------------------- ...
- 异常之交叉编译---arm-vfp-linux-gnu/bin/ld: cgic.o: Relocations in generic ELF (EM: 3)
/opt/arm-2009q1/bin/../lib/gcc/arm-none-linux-gnueabi/4.3.3/../../../../arm-none-linux-gnueabi/bin/l ...
- XAMPP permissions on Mac OS X
$ cd /Applications $ XAMPP/ 注意: 改变的是XAMPP目录,而不是htdocs ref: http://stackoverflow.com/questions/904697 ...
- u3d静态函数
using UnityEngine; using System.Collections; public class Manager : MonoBehaviour { private static M ...
- Unity3d 动态加载材质方法
Texture img = (Texture)Resources.Load("LedPicture"); GameObject.Find("Led").rend ...
- <转>Win8.1+CentOS7 双系统 U盘安装
0.准备工作 1.宏碁 Aspire 4752G 笔记本 2.Win8.1 企业版操作系统 3.8G 以上 U 盘 4.UltraISO(当然也可以选择其他的U盘制作工具,看个人喜好) 5.下载 Ce ...
- XCODE 添加不同IOS版本的模拟器
一.XCode->Preferences->Downloads, 可以下载模拟器.
- 软件设计模式之模板方法模式(JAVA)
什么是模板方法模式? 定义一个操作中算法的骨架,而将这些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤. 好抽象的概念啊,文绉绉的东西就是不讨人喜欢,下面我 ...
- Maven 那点事儿
http://my.oschina.net/huangyong/blog/194583?fromerr=Dmf7HPwX Java那点事儿 Maven Smart 目录[-] 0. 前言 1. 安装 ...
- Lua string库详解
1. string库中所有的字符索引从前往后是1,2,...;从后往前是-1,-2,...2. string库中所有的function都不会直接操作字符串,而是返回一个结果 string.byte(s ...