puppet搭建

一:介绍

puppet用于集中管理多台服务器的file、package、server、cron、user、group、exec(执行shell命令)、yumrepo等常用资源的C/S结构软件

二:puppet工作流程

  1. puppet客户端通过facter收集客户端信息(主机名、内存、IP地址、系统信息……)并发送给服务端
  2. 服务器端检测到客户端的主机名,然后到manifest里面解析对应的node配置(语法检测、生成伪代码、发送伪代码给客户端),只解析改节点的配置
  3. 客户端接收到代码后执行,然后客户端把执行结果传递给服务器端
  4. 服务器再把客户端的执行结果写入日志

三:安装配置

puppet server:192.168.1.10    master.puppet.com

puppet agent:192.168.1.11    agent.puppet.com

主机名和IP必须解析,可以手动修改hosts文件或使用DNS解析

  1. 配置epel源:

    rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm

  2. puppet server上操作:

    yum install puppet-server -y

    生成配置文件:

    puppet master --genconfig > /etc/puppet/puppet.conf

    touch /etc/puppet/manifests/site.pp

    该文件相当于一个索引文件,记录载入agent配置,也可定义全局变量

    例:

    cat /etc/puppet/manifests/site.pp

    import ‘nodes.pp‘

    import ‘nodes/*.pp‘

    $puppetserver=‘master.puppet.com‘

  3. puppet agent上操作:

    yum install puppet -y

    vim /etc/puppet/puppet.conf

    在main中添加

    server = master.puppet.com(master主机名,必须可以ping通,绑hosts或dns解析)

    在agent中添加

    runinterval = 10(向master查询间隔时间,单位秒)

四:测试

puppet server第一次启动:

puppet master --verbose --no-daemonize

puppet agent第一次启动:

puppet agent --server=master.puppet.com --no-daemonize --verbose --noop --onetime

会报错没有认证,在CA服务器上运行(这里CA和puppet server在一台上):

puppet cert --list 显示没有授权的客户端

puppet cert --sign agent.puppet.com

再次运行启动命令正常,则分别开启服务

/etc/init.d/puppetmaster start

chkconfig puppetmaster on

/etc/init.d/puppet start

chkconfig puppet on

时间: 2024-09-30 21:09:35

puppet搭建的相关文章

linux下用puppet搭建lamp和lnmp

puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.puppet把这些系统实体称之为资源,puppet的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系. puppet采用C/S星状的结构,所有的客户端和一个或几个服务器交互.每个客户端周期的(默认半个小时)向服务器发送请求,获得其最新的配置信息,保证和该配置信息同步.每个puppet客户端每半小时(可以设置)连接一次服务器

用 Puppet 搭建易管理的服务器基础架构(1)

我通过伯乐在线翻译了一个Puppet简明教程,一共分为四部分,这是第一部分. 原文地址:http://blog.jobbole.com/87679/ 本文由 伯乐在线 - Wing 翻译,黄利民 校稿.未经许可,禁止转载!英文出处:Manue Kiessling.欢迎加入翻译组. 关于 Puppet Puppet 是一种 Linux.Unix.Windows 平台的集中配置管理系统,使用自有的 Puppet 描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.Puppet把这些系统

[翻译]用 Puppet 搭建易管理的服务器基础架构(3)

我通过伯乐在线翻译了一个Puppet简明教程,一共分为四部分,这是第三部分. 本文由 伯乐在线 - Wing 翻译,黄利民 校稿.未经许可,禁止转载!英文出处:Manuel Kiessling.欢迎加入翻译组. <用 Puppet 搭建易管理的服务器基础架构(1)> <用 Puppet 搭建易管理的服务器基础架构(2)> 关于 在<用 Puppet 搭建易管理的服务器基础架构(2)>中,我们在 Puppet master上编写了第一个非常简单的清单,来对puppetcl

puppet 搭建lnmp架构

pupppet 搭建lnmp架构: [[email protected] puppet]# tree modules/ modules/ |-- httpd |   |-- files |   |   `-- httpd.conf |   `-- manifests |       |-- config.pp |       |-- init.pp |       |-- install.pp |       `-- service.pp |-- mysqld |   |-- files |  

用 Puppet 搭建易管理的服务器基础架构(2)

我通过伯乐在线翻译了一个Puppet简明教程,一共分为四部分,这是第二部分. 原文地址:http://blog.jobbole.com/87680/ 本文由 伯乐在线 - Wing 翻译,黄利民 校稿.未经许可,禁止转载!英文出处:Manue Kiessling.欢迎加入翻译组. 关于 在第一部分中,我们已经建立了两个Linux系统虚拟机:puppetserver 和 puppetclient.我们已经实现了一个重要的里程碑:在虚拟机上分别安装了Puppet服务器和Puppet客户端软件,并且在

puppet补充--搭建lnmp &#160; 以及dashboard,passenger

puppet搭建lnmp server4 #cd /etc/puppet/modules #cp -r httpd nginx #cd files #rm -fr httpd.conf #rm -fr * ../templates 编写puppet执行脚本 nginx-install.sh #touch nginx-install.sh #chmod +x nginx-install.sh 脚本内容如下 #!/bin/bash yum install -y openssl-devel pcre-

我关注的一周技术动态2015.08.17

服务化和资源管理技术 1. Kubernetes技术分析之存储 http://dockone.io/article/556 要点: 众所周知,使用Docker的时候,容器中的数据是临时,即当容器销毁时,其中的数据时丢失.如果需要持久化数据,需要使用Docker Volume挂载宿主机上的文件目录到容器中.本文介绍了 kubernetes 支持的几种存储系统. 2. Docker 1.8:可信镜像.Toolbox.Registry 以及编排工具大更新 http://dockone.io/artic

搭建puppet dashboard及遇到的问题

其实网上这样的文章已经很多了,这里随便摘出两篇,以供参考 1.Puppet Dashboard的安装与配置 2.Puppet学习笔记(CentOS6.3+Puppet3.01) 发这篇文章主要说下自己部署过程中踩过的坑: 1.在手动导入报告文件到mysql的时候报 undefined method `source_index' for Gem:Module 错误 原因是自己yum安装的rubygem版本是2.0以上,而2.0以后取消了source_index这个方法,这个puppet dashb

puppet自动化搭建

一:基础讲解 Ntp,DNS需要 源码先安装ruby,facter,puppet Cd puppet-XXX Ruby install.rb 二:环境搭建 1.服务端master A.yum配置 环境自带源 rpm -ivh https://yum.puppetlabs.com/el/7/products/x86_64/puppetlabs-release-7-10.noarch.rpm yum install puppet-server -y B. hosts配置 vi /etc/hosts