Puppet的简要安装

一、Puppet简介
    Puppet基于ruby语言开发的自动化系统配置工具,可以C/S模式或独立运行,支持对所有UNIX及类UNIX系统的配置管理,最新版本也开始支持对Windows操作系统有限的一些管理。Puppet适用于服务器管的整个过程 ,比如初始安装、配置更新以及系统下线
    Puppet 是一个客户端/服务器(C/S)架构的配置管理工具,在中央服务器上安装 puppet-server 服务器(puppet master),在需要被管理的目标服务器上安装 puppet 客户端软件(puppet client)。当客户端连接上服务器后,定义在服务器上的配置文件会被编译,然后在客户端上运行。客户端每隔半小时主动会和服务器通信一次,确认配置信息的更新情况,如果有新的配置信息(或者配置有变化),配置文件将会被重新编译并分发到客户端执行。当然,也可以在服务器上主动触发更新指令来强制各客户端进行配置更新。

二、Puppet的安装
    Puppet的安装方式支持源码安装、yum安装以及ruby的gem安装。官网推荐使用yum来安装puppet,方面以后的升级、管理、维护。Centos可以采用yum来安装,但是Centos的默认源中没有puppet包,因此需要先安装epel包。
Epel是企业版Linux附加软件包(Extra Packages for Enterprise Linux)的缩写,是一个由特别兴趣小组创建、维护并管理的,针对红帽企业版Linux(RHEL)及其衍生发行版(比如CentOS、Scientific Linux)的一个高质量附加软件包项目。
    使用EPEL源(http://fedoraproject.org/wiki/EPEL/zh-cn)或者PuppetLabs源(http://yum.puppetlabs.com/)直接安装。注意选择自己系统版本的Yum源。
    
    Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora、RedHat、SUSE及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并进行安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地多次下载和安装。

安装环境:

uname -a
Linux master.puppet.com 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

1、Master的安装
        (1)、修改hosts(Puppet 要求所有机器有完整的域名(FQDN),如果没有 DNS 服务器提供域名的话,可以在两台机器上设置主机名
        (注意要先设置主机名再安装 Puppet,因为安装 Puppet 时会把主机名写入证书,客户端和服务端通信需要这个证书):)

vim /etc/hosts
192.168.0.110    master.puppet.com master
192.168.0.111    client.puppet.com client

(2)安装ntp,保持时间同步

#yum install ntp -y
#ntpdate asia.pool.ntp.org
#service ntpd start

(3)安装ruby

#yum install -y ruby ruby-libs ruby-shadow

(4)安装puppet(3种方法)
            1.由于Puppet不在CentOS的基本源中,需要加入PuppetLabs提供的官方源,然后直接安装就可以了
#wget http://yum.puppetlabs.com/el/6/products/x86_64/puppetlabs-release-6-11.noarch.rpm
#yum install puppetlabs-release-6-11.noarch.rpm
#yum update
#yum install -y puppet-server    //install会自动安装puppet所依赖的包,包括facter
            
            2.根据操作系统版本配置Yum源,当前系统为Centos6x64,因此选择puppetlabs-release-6-11.noarch.rpm软件包。配置方法如下

#rpm -Uvh http://yum.puppetlabs.com/el/6Server/products/x86_64/puppetlabs-release-6-11.noarch.rpm
#yum clean all 
#yum install puppet-server    //install会自动安装puppet所依赖的包(包括facter)

3.直接升级Yum源

#rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
#yum install puppet-server
#puppet --version     //检查版本
#facter --version

第一次启动建议采用puppet master --verbose --no-daemonize方式启动,有助于测试和调试错误,如果采用后面这种方式,你可以看到启动的整个过程,启动过程会做一些初始化的工作,为master创建本地证书认证中心,证书和key。并打开socket等待client的连接。你可以在/etc/puppet/ssl目录看到相关的文件和目录

#puppet master --verbose --no-daemonize    //第一次测试启动puppetmaster服务
#server puppetmaster start    //启动服务

2、Client的安装
        (1)、修改hosts(Puppet 要求所有机器有完整的域名(FQDN),如果没有 DNS 服务器提供域名的话,可以在两台机器上设置主机名
        (注意要先设置主机名再安装 Puppet,因为安装 Puppet 时会把主机名写入证书,客户端和服务端通信需要这个证书):)

vim /etc/hosts
192.168.0.110    master.puppet.com master
192.168.0.111    client.puppet.com client

(2)安装ntp,保持时间同步

#yum install ntp -y
#ntpdate asia.pool.ntp.org
#service ntpd start

(3)安装ruby

#yum install -y ruby ruby-libs ruby-shadow
#ruby --version

(4)安装puppet(3种方法)
            1.由于Puppet不在CentOS的基本源中,需要加入PuppetLabs提供的官方源,然后直接安装就可以了

#wget http://yum.puppetlabs.com/el/6/products/x86_64/puppetlabs-release-6-11.noarch.rpm 
#yum install puppetlabs-release-6-11.noarch.rpm 
#yum update
#yum install -y puppet facter

2.根据操作系统版本配置Yum源,当前系统为Centos6x64,因此选择puppetlabs-release-6-11.noarch.rpm软件包。配置方法如下

#rpm -Uvh http://yum.puppetlabs.com/el/6Server/products/x86_64/puppetlabs-release-6-11.noarch.rpm
#yum clean all 
#yum install puppet facter

3.直接升级Yum源

#rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
#yum install puppet facter
#puppet --version     //检查版本
#facter --version
#server puppet start    //启动服务

三、puppet的简单配置
        (1)Client配置:
            在 /etc/puppet/puppet.conf 的 [agent] 下面添加如下配置

server = master.puppet.com    //master服务的地址
runinterval = 3600            //每隔多久的时间进行自动更新,时间单位是秒(s)
listen = true                //客户端作为一个服务进行监听,允许其它的及其触发puppet运行,允许远程触发puppet的节点配置

(2)Client生成证书:
            Puppet 客户端使用 HTTPS 和服务端(master)通信,为了和服务器端通信必须有合法的 SSL 认证,第一次运行 puppet 客户端的时候会生成一个 SSL 证书并指定发给 Puppet 服务端。

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

(3)Master签字:
            Puppet 服务端接受到客户端的证书后必须签字(sign)才能允许客户端接入,签字完后在服务端用“puppet cert list --all”查看会发现master.puppet.com前面多了一个 + ,这就表示“加入”成功,双方就可以正常通信了。

#puppet cert list --all
"client.puppet.com" (SHA256) 27:D6:B6:2A:A7:F7:97:D7:1A:CD:C2:C5:33:6F:40:80:54:44:7D:F0:BA:08:07:A6:BA:C3:14:12:3C:3D:8B:1A
+ "master.puppet.com" (SHA256) 46:0B:A6:93:8B:ED:0C:47:97:E8:A4:1C:9C:10:76:C8:91:3E:0F:A9:0A:F6:4C:24:00:9E:BD:4C:D7:22:1F:78 (alt names: "DNS:master.puppet.com", "DNS:puppet", "DNS:puppet.puppet.com")
时间: 2024-10-06 23:42:06

Puppet的简要安装的相关文章

Puppet学习--基础安装和配置

0. 安装环境 客户端IP puppet_client.example.net(192.168.1.10) 服务端IP puppet_server.example.net(192.168.1.11) OS版本 CentOS release 6.6 x86_64 puppet版本 3.7.5 1.预安装配置 需要在服务端和客户端进行一些必要的预安装配置,因此本节下面的命令需要在客户端和服务端均要执行. (1) yum install ruby #安装ruby (2) 修改/etc/hosts,写入

puppet 源码安装

puppet 源码安装 作者: admin 分类: 自动化管理 发布时间: 2013-04-23 10:25 ? 1932次浏览 6 暂无评论 puppet最新源码详细安装: 在网上找了很多相关puppet的,有很多用yum安装,安装虽然成功了.但是有客户端相关过来请求,还是会有问题.最佳的还是源码安装. 一.下载地址: puppet下载地址: http://downloads.puppetlabs.com/puppet/puppet-2.7.13.tar.gz facter下载地址: http

puppet部署二         安装puppet

源码安装puppet puppet服务端与客户端的源码安装使用的是同一个软件包,安装步骤一样,只是在配置文件方面有细微的差别. 在下载puppet源码之前,我们还要在master端和agent端创建puppet运行时使用的用户puppet.master端如果不创建的话,master在启动时,会报如下错误: 创建puppet用户,如下: useradd -M -s /sbin/nologin puppet cat /etc/passwd |grep puppet 注意:puppet服务端是以pup

Puppet部署:安装puppet server、client

Puppet部署:安装puppet server.client puppet与其他手工操作工具有一个最大的区别就是 puppet的配置具有稳定性,因此你可以多次执行puppet,一旦你更新了你的配置文件,puppet就会根据配置文件来更改你的机器配置,通常每30分钟检查一次. AD:2014WOT全球软件技术峰会北京站 课程视频发布 puppet与其他手工操作工具有一个最大的区别就是 puppet的配置具有稳定性,因此你可以多次执行puppet, 一旦你更新了你的配置文件,puppet就会根据配

Nginx简要安装配置说明

Nginx简要安装配置说明  一. Nginx简介   Nginx是一款高性能的HTTP和反向代理服务器软件,可以运行在UNIX.GNU/Linux.BSD.Mac OS X. Solaris 以及 Microsoft Windows等操作系统中.其优点是占用系统资源少,支持大并发连接(官方声称最大支持5万并发连接响应而只占2.5M内存):因其部署简单,配置灵活.高效.稳定的特点已被广泛应用于各大型网站架构中. 二.安装   1).安装所需环境  gcc-c++ .openssl-devel .

通过puppet批量自动安装软件

通过puppet安装软件.以shotgun_desktop为例: # install shotgun_desktop package { 'shotgun_desktop': } -> file { 'remove shotgun desktop libQt':     path   => "/opt/Shotgun/Qt/lib",     ensure => absent,     force  => true, } file { '/usr/lib64/l

puppet源码安装部署

一.安装环境 系统环境 CentOS release 6.8 (Final) 2.6.32-642.1.1.el6.x86_64 编译环境 gcc version 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) 二.源码编译Puppet 步骤1 Ruby的安装 wget https://codeload.github.com/ruby/ruby/zip/ruby_1_8_7 unzip ruby-ruby_1_8_7.zip cd ruby-ruby_1_8_7

Puppet介绍 原理 安装

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

puppet之dashboard安装及优化

puppet的dashboard可以比较直观的看到puppet运行详细状态.也是puppet中比较重要的一块,那么我们开始安装和优化它! pptserver_wangsu_bj_192.168.3.68.centos.yypuppet.com [/etc/puppet/multi-environment] 2015-04-17 15:59:07 [email protected]/0 #  yum install  ruby-mysql mysql-server puppet-dashboard