整套系列博文包含了四部分,坦白的说并不是很全面,很多不常用的技术并没有包含,更多从实用、快速部署的角度去编写,特别适合零基础或者需要快速部署上线的朋友学习和参考,对于有一定基础的朋友可直接从第二部分开始学习,而对于Puppet经验丰富的大神们,还恳请多指导指导。另外,如果你是想要系统学习Puppet的知识,比如代码编写规范、所有参数含义等,可参考以上提到的书籍或者参考puppet官网等。
岳雷的微软网络课堂王乾De技术Blog白璐宋杨王春海的博客IT-Standardizationfenghao.cn's Softzone!我的soft空间雪源梅香sery下里巴人的家李晨光曲宝全的Linux世界抚琴煮酒睥睨天下燕洋天老男孩的linux博客峰云,就她了。技术成就梦想CrazyLinux工作室吟—技术交流上帝,咱们不见不散!烟雨楼台Coffee_蓝山itnihao的运维技术博客
RubyMine是一个为Ruby 和Rails开发者准备的 IDE,其带有所有开发者必须的功能,并将之紧密集成于便捷的开发环境中,号称最智能的Ruby和Rails的IDE,能够大大增加Ruby和Rails开发者的开发效率。RubyMine从7.0版本开始支持puppet的语法,非常给力,当然功能也是非常强大,在你考虑大面积开发puppet模块的情况下,RubyMine7.*是个不错的IDE选择。以
零基础学习Puppet自动化配置管理系列文档在Foreman上可以根据业务逻辑设置多个主机组(Host Groups),并且可以将不同的节点加入到不同的主机组,这样在每次操作“puppet run”的时候,只需要在搜索按钮里搜索对应的主机组即可找到里面包含的所有节点,如下图所示Foreman安装但是,foreman目前在puppet run上对mcollective的集成度很低,基本就是只能运行一
零基础学习Puppet自动化配置管理系列文档注:以下内容是在foreman1.6.3+puppet2.6.2环境下进行操作。更多配置请参考官网http://theforeman.org/manuals/1.6/index.html在foreman-proxy的1.6.3版本,至少提供了以下五种触发puppet agent命令的工具,默认使用的是puppetrun,不过已经过时,这里介绍如何使用mc
零基础学习Puppet自动化配置管理系列文档注:以下内容是在foreman1.6.3+puppet2.6.2环境下进行操作。更多配置请参考官网http://theforeman.org/manuals/1.6/index.html安装好foreman和puppetmaster之后,接下来做的事情就是做整合,目前foreman可以管理puppet的环境、类、类里的变量、报告、facter等信息。接下
零基础学习Puppet自动化配置管理系列文档存在这样一种场景,当你的puppet基于mcollective环境搭建完成之后,需要考虑MQ的高可用,否则,MQ挂掉之后就不能用mco命令进行推送了哦。 如何做MQ的高可用呢,其实有两种方法: 方法一:两台MQ做集群,通过复制队列信息进行同步,节点访问可通过浮动IP进行。 方法二:两台MQ独立,在MC Server端做failover,通过rabbtim
零基础学习Puppet自动化配置管理系列文档注意:本实验是在离线情况下安装的,所以需要在本地创建自己的yum仓库,创建方法可参考《如何根据版本制作属于自己的puppet yum源》,如何你实在是比较懒或者搞不定rpm包之间的依赖关系,那就去我的github上下载吧:https://github.com/kisspuppet/foreman-repo更多安装细节请参考官网:http://thefor
零基础学习Puppet自动化配置管理系列文档MCollective只是一个框架,如果需要在上面发挥各种作用,那就需要各种插件的支持。官方提供了很多这方面的插件,除此之外,还有第三方的插件,比如shell插件等,下面会介绍各种插件的安装,以及插件之间如何组合进行使用。1、在mcollective client端和server端安装各种官网plugins首先去官网下载各个插件 http://yum.p
零基础学习Puppet自动化配置管理系列文档1 puppet插件的安装及测试MCollective可以使用多种方式进行扩展。最普遍的一种扩展MCollective的方式就是重用已经写好的agent插件。这些小的Ruby库可以让MCollective在整个集群中执行自定义的命令。一个agent插件通常包含一个Ruby库,它必须被分发到所有运行MCollective agent的节点上。另外,一个数
零基础学习Puppet自动化配置管理系列文档1 Mcollective介绍MCollective 是一个构建服务器编排(Server Orchestration)和并行工作执行系统的框架。 首先,MCollective 是一种针对服务器集群进行可编程控制的系统管理解决方案。在这一点上,它的功能类似:Func,Fabric 和 Capistrano。其次,MCollective 的设计打破基于中
零基础学习Puppet自动化配置管理系列文档Marionette Collective(MCollective)是一个与Puppet关系密切的服务运行框架。Puppet擅长管理系统的状态,但agent默认的30 分钟间隔的运行方式使它不合适作为实时管理控制工具使用,而MCollective的功能定位正式面向大规模主机群的实时任务并行处理。它离线消息中间件 技术实现检点间的信息传递,大量主机可以基
零基础学习Puppet自动化配置管理系列文档PuppetMaster默认签发时间是5年,也就意味着5年后所有证书都会过期,过期意味着不可用,想想看成千上万台服务器都经过了CA的签发,到时候重新签是多么可怕的一件事情啊。那么有什么版本能将证书的过期时间延长呢?查看证书目前有效期[root@kspupt-ca1 ~]# openssl x509 -text&nb
一、介绍通过安装部署Puppet C/S模型,实现Puppet Server端管理所有被控制机的整个生命周期:从初始化到软件升级、从配置文件创建到测试部署、从系统维护到服务器迁移等。Puppet能够持续化的与 被控制机进行交互,从而实现配置文件的及时检测更新。结合SVN版本控制系统,puppet可在更新之前将当前正在运行的环境以版本的方式保存到SVN版 本控制系统中,方便以后通过puppet更新
零基础学习Puppet自动化配置管理系列文档Puppet Dasshboard是由支持Puppet开发的公司Puppetlabs创建的,是Ruby on Rails程序。可以作为一个ENC(外部节点分类器)以及一个报告工具,并且正在逐渐成为一个包含许多Puppet新功能的集成界面,例如审计和资源管 理功能。 Puppet Dashboard是一个Ruby on Rails程序,用于显示Puppe
零基础学习Puppet自动化配置管理系列文档puppetmaster横向扩展将采用以下架构进行部署,也可以参考《puppet实战》第246页的内容。puppet集群扩展架构图主机IP地址信息机用途表puppet集群扩展架构图 工作原理:客户端通过配置ca_server指定CA服务器,以达到独立CA服务器的目的。CA服务器可以部署在多个机房。Ma
零基础学习Puppet自动化配置管理系列文档描述:puppet使用SSL(https)协议来进行通讯,默认情况下,puppet server端使用基于Ruby的WEBRick HTTP服务器。由于WEBRick HTTP服务器在处理agent端的性能方面并不是很强劲,因此需要扩展puppet,搭建nginx或者其他强劲的web服务器来处理客户的https请求。需要解决的问题:扩展传输方式:提高性能
零基础学习Puppet自动化配置管理系列文档描述:puppet使用SSL(https)协议来进行通讯,默认情况下,puppet server端使用基于Ruby的WEBRick HTTP服务器。由于WEBRick HTTP服务器在处理agent端的性能方面并不是很强劲,因此需要扩展puppet,搭建Apache或者其他强劲的web服务器来处理客户的https请求。需要解决的问题:扩展传输方式:提高性
零基础学习Puppet自动化配置管理系列文档虚拟资源是一种用来管理多种配置共同依赖同一资源的方法。如果多个类依赖同一个资源时则可避免写多个资源,也可以解决资源重定义的错误。 虚拟资源经常用于用户管理中,虚拟资源只会被声明一次,但可以运用一次或多次。要使用虚拟资源是需要在资源声明开头加上字符“@”来使资源虚拟化。然后再使用下面两种方法之一来实例化虚拟资源:"飞船"语法<||>realiz
零基础学习Puppet自动化配置管理系列文档当puppetmaster管理的主机越来越多时,puppetmaster本身性能会存在性能瓶颈问题,除了增加服务器扩充puppetmaster的数量增加puppetmaster整体性能外,也可以通过单台扩充puppetmaster的进程数来增加puppetmaster的性能。以下是通过nginx+mongrel负载均衡puppetmaster的进程,由n
零基础学习Puppet自动化配置管理系列文档Foreman官网提供了每个版本非常完善的安装步骤,无论是源码安装还是rpm包安装都变得非常方便。而且Foreman通过puppet模块对安装步骤进行了封装并提供了大量的安装参数可以传输,相当的方便。不过由于其体系过大,代理很多软件,安装的软件包超多,安装过程也并非那么简单。以下是需要考虑的问题及解决方法特别说明:接下来的所有的推荐说明、操作和测试都是基
在引入foreman之前,笔者曾经大幅度测试过puppet的另外一个生态圈前端软件,那就是KermIT(kermit.fr需要墙)。说实话基于KermIT这套架构还是相当不错的,尤其是在于mcollective的各种插件结合上做的很完美,可惜社区太不活跃,软件版本更新超慢,坑超多,最终还是放弃了。不过,他的架构还是值得借鉴的,对于那些想自己在puppet前端做UI的朋友可以多参考参考。
零基础学习Puppet自动化配置管理系列文档在大量节点加入Puppet之后,你至少会面临两个比较大的问题:1、由于节点数的增多,site.pp文件必然会编写更多的节点条目,以及节点包含的类。假设你用Puppet管理500个节点,存在三种情况:1、所有节点有共同的类,也可以理解为模块;2、所有节点分成了50组,每组节点有不同的应用,每组应用编写一个模块;3、每个节点也应该有一个自己的模块,在这种环境
零基础学习Puppet自动化配置管理系列文档自定义fact可以让节点增加更多的标签在使用puppet作为配置管理工具的同时,facter是一个非常有用的系统盘点工具,这个工具可以通过一些预先设定好变量定位一台主机,比如可以通过变量lsbdistrelease便可以知道当前系统的版本号,通过osfamily便可以知道系统是RedHat还是SLES,还是其它等等。但是这些预先设定好的变量毕竟有限,在整
众所周知,Pro puppet第一版已经被翻译成了中文叫《puppet配置管理工具》,是以2.7为蓝本,介绍的还是相当不错的,现作者已经推出了第二版,以3.0为蓝本编写而成,不过只有英文的,亚马逊上有卖的,400多大洋,鉴于俺们都是穷人,所以,我从淘宝购买了高清PDF版,特提供给大家下载学习。第二版中更多介绍的是方法,我只看了其中一部分,尤其是多Hiera介绍的相当不错哦..pro puppet
Puppet基础篇9-Puppetmaster多环境配置零基础学习Puppet自动化配置管理系列文档扩充现有架构环境是对一个企业成长的见证将基础环境模块部署到puppetmaster端之后就可以初始化所有节点了,接下来就是部署应用代码了。众所周知,一个企业中应用代码的编写并不是运维一个人完成的,而且代码的上线也不是一次性完成的。标准的架构应该由开发、测试、生产三个组成,对应到puppetmaste
Puppet基础篇8-编写第二个完整测试模块yum零基础学习Puppet自动化配置管理系列文档工欲善其事必先利其器上一节讲解了puppet基础环境模块puppet,除此之外影响puppet基础环境的还有一个模块叫yum源,当然这个是相对于RedHat系统而言的,如果是SLES系统,就要配置zypper源了,其它Linux系统也是如此。那么配置yum源需要用到哪些资源呢?之前写puppet模块的时候
Puppet基础篇7-编写第一个完整测试模块puppet零基础学习Puppet自动化配置管理系列文档将Puppet部署到生产中第一个要编写的模块就是puppet本身,虽然puppet可以运行其它所有模块完成各自的部署,但是puppet一旦出问题,那么一切都会停止工作。当然除了puppet自身模块外,还需要保证网络的通畅以及其它你附加的环境等等。之前编写过简单的motd模块,大致了解了一些模块的结构
Puppet基础篇6-Puppet更新方式的选型零基础学习Puppet自动化配置管理系列文档基于C/S架构的Puppet更新方式一般有两种,一种是Agent端设置同步时间主动去PuppetMaster端拉取配置,另一种是通过PuppetMaster端使用puppet kick命令或者借助mcollctive触发更新配置,两种方式适应不同的生产环境,各具特色。一、主动更新主动更新就是节点运行的pup
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号