puppetmaster

简介:

小心    masteragent上保证系统时间的准确是非常重要的。SSL连接依赖主机上的正确时间。如果时间不正确,连接可能会失败,得到的错误信息是证书不被信任。你应该使用诸如NTP(网络时间协议)等服务来保证主机上的时间是准确的。



1、证书服务需要时间的一致,不然会出现错误!

 

 

 

 

建立文件/puppet/shij.sh 内容如下

#!/bin/bash

rdate -s rdate.darkorb.net

赋予rdate.sh可执行权限,并添加计划任务crontab –e

* * * * * /root/shij.sh

注意:当提示rdate命令不存在请按下面操作,运行yum install rdate

 

2、修改主机名

vi /etc/sysconfig/network

HOSTNAME=ptmaster.idccenter.net

 

修改/etc/sysconfig/network,在里面指定主机名称HOSTNAME=
然后执行命令
hostname 
主机名
这个时候可以注销一下系统,再重登录之后就行了

 

rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm    //扩展库,默认的库中没有puppetmaster

 

iptables -I INPUT 1 -p tcp -m state --state NEW --dport 8140 -j ACCEPT  //puppetmaster服务端口

 

iptables-save > /etc/sysconfig/iptables

 

 

yum install ruby ruby-libs ruby-shadow -y

 

yum install puppet puppet-server facter -y

 

 

在/etc/puppet/puppet.conf添加主机名和模块的路径

vi /etc/puppet/puppet.conf
[main]
 certname = ptmaster.idccenter.net

modulepath = /etc/puppet/modules/

 

 

 

 

vi /etc/puppet/fileserver.conf

[files]

path /vm/templates     //存放下发文件的路径

allow *             //设置可以访问的客户端的地址、域名、*

 

 

建立puppetmaster资源配置文件

vi /etc/puppet/manifests/site.pp

node default {

        include vps

        }

 

建立vps模块

mkdir -p /etc/puppet/modules/vps/{files,manifests,templates}

vi /etc/puppet/modules/vps/manifests/init.pp

class vps {

        include vps::centos

}

 

 

vi /etc/puppet/modules/vps/manifests/centos.pp

class vps::centos {

        File {

          owner => "root",

          group => "root",

          mode => 0644,

             }

        file { "/template/":

        source => "puppet://${fileserver}/files/",

        }

        file { "/template/centos5.5":

        source => "puppet://${fileserver}/files/centos5.5",

        }

        file { "/template/centos5.5/disk.img":

        source => "puppet://${fileverver}/files/centos5.5/disk.img",

        }

        file { "/template/centos5.5/os.img":

        source => "puppet://${fileverver}/files/centos5.5/os.img",

        }

}

 

 

客户端安装

1、证书服务需要时间的一致,不然会出现错误!

建立文件/puppet/shij.sh 内容如下

#!/bin/bash

rdate -s rdate.darkorb.net

赋予rdate.sh可执行权限,并添加计划任务crontab –e

* * * * * /root/shij.sh

注意:当提示rdate命令不存在请按下面操作,运行yum install rdate

 

2、修改主机名

vi /etc/sysconfig/network

HOSTNAME=node.idccenter.net

    3、在/etc/hosts添加服务器的解析
    101.226.179.232 ptmaster.idccenter.net ptmaster 

 

修改/etc/sysconfig/network,在里面指定主机名称HOSTNAME=
然后执行命令
hostname 
主机名
这个时候可以注销一下系统,再重登录之后就行了

 

rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm    //扩展库,默认的库中没有puppetmaster

 

 

yum install ruby ruby-libs ruby-shadow –y

yum install puppet facter -y

 

添加客户端连接的服务器地址和自动更新的资源的时间间隔

vi /etc/puppet/puppet.conf

[main]

server=ptmaster.idccenter.net   //默认puppet更新资源配置文件的时候会连接puppet别名的服务器 自动更新的时候需要制定服务器的域名。如果不想添加此行配置,那就需要在/etc/hosts里面添加一行别名配置,把服务器的域名别名到puppet的名字,因为客户端更新的时候默认是连接puppet的服务器,所以在hosts里面把服务器别名到puppet也是可以的。

 

 

 

 

 

 

 

[agent]

runinterval=3600  //时间单位是秒

 

ptmaster.idccenter.net服务器申请证书,以便以后的更新资源配置。

[root@node ~]# puppet agent --server=ptmaster.idccenter.net --no-daemonize --verbose

warning: peer certificate won't be verified in this SSL session

info: Caching certificate for ca

warning: peer certificate won't be verified in this SSL session

warning: peer certificate won't be verified in this SSL session

info: Creating a new SSL certificate request for node.idccenter.net

info:CertificateRequestfingerprint(md5): DD:1C:AD:56:01:73:77:83:F3:9E:EE:A0:61:C5:4A:37

warning: peer certificate won't be verified in this SSL session

warning: peer certificate won't be verified in this SSL session

warning: peer certificate won't be verified in this SSL session

warning: peer certificate won't be verified in this SSL session

info: Caching certificate for node.idccenter.net

notice: Starting Puppet client version 2.6.17

info: Caching certificate_revocation_list for ca

info: Caching catalog for node.idccenter.net

info: Applying configuration version '1352262069'

info: Creating state file /var/lib/puppet/state/state.yaml

notice: Finished catalog run in 0.02 seconds

 

 

在服务端查看申请证书的客户端并发送连接证书

[root@ptmaster templates]# puppet cert --list

  "node.idccenter.net" (DD:1C:AD:56:01:73:77:83:F3:9E:EE:A0:61:C5:4A:37)

[root@ptmaster templates]# puppet cert --sign node.idccenter.net

notice: Signed certificate request for node.idccenter.net

notice: Removing file Puppet::SSL::CertificateRequest node.idccenter.net at '/var/lib/puppet/ssl/ca/requests/node.idccenter.net.pem'

 

 

over




本文转自 freeterman 51CTO博客,原文链接:http://blog.51cto.com/myunix/1094771,如需转载请自行联系原作者

相关文章
|
SQL 消息中间件 分布式计算
Apache Doris 系列: 入门篇-数据导入及查询
Apache Doris 系列: 入门篇-数据导入及查询
1989 0
|
JSON Linux 网络安全
一文搞定:whois数据库查询域名信息(WHOIS)
一文搞定:whois数据库查询域名信息(WHOIS)
3906 0
一文搞定:whois数据库查询域名信息(WHOIS)
|
10月前
|
数据采集 人工智能 自然语言处理
FireCrawl:开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
FireCrawl 是一款开源的 AI 网络爬虫工具,专为处理动态网页内容、自动爬取网站及子页面而设计,支持多种数据提取和输出格式。
3785 71
FireCrawl:开源 AI 网络爬虫工具,自动爬取网站及子页面内容,预处理为结构化数据
|
7月前
|
存储 缓存 文件存储
uv安装python及其依赖的加速方法
国内在使用uv的时候,可能会涉及到装python的速度太慢的问题,为了解决这个问题,可以使用`UV_PYTHON_INSTALL_MIRROR`这个环境变量。除此以外,对于多人协作场景,`UV_CACHE_DIR`也是一个有用的环境变量。本文会介绍这两个变量。
5332 10
|
存储 关系型数据库 数据库
在 Postgres 中使用更改列类型
【8月更文挑战第11天】
687 0
在 Postgres 中使用更改列类型
|
Shell 分布式数据库 Hbase
如何使用 HBase Shell 进行数据的批量导入和导出?
如何使用 HBase Shell 进行数据的批量导入和导出?
886 5
|
Shell 开发工具 git
git学习三:git使用:删除仓库,删除仓库内文件
通过GitHub的设置页面删除仓库,以及如何使用Git命令行删除仓库中的文件或文件夹。
1104 1
git学习三:git使用:删除仓库,删除仓库内文件
|
Shell 分布式数据库 Hbase
使用 HBase Shell 进行数据的批量导入和导出
使用 HBase Shell 进行数据的批量导入和导出
1231 6
|
存储 SQL Java
技术心得:压缩包Zip格式详析(全网最详细)
技术心得:压缩包Zip格式详析(全网最详细)
1337 0
|
缓存 监控 安全
Spring AOP 详细深入讲解+代码示例
Spring AOP(Aspect-Oriented Programming)是Spring框架提供的一种面向切面编程的技术。它通过将横切关注点(例如日志记录、事务管理、安全性检查等)从主业务逻辑代码中分离出来,以模块化的方式实现对这些关注点的管理和重用。 在Spring AOP中,切面(Aspect)是一个模块化的关注点,它可以跨越多个对象,例如日志记录、事务管理等。切面通过定义切点(Pointcut)和增强(Advice)来介入目标对象的方法执行过程。 切点是一个表达式,用于匹配目标对象的一组方法,在这些方法执行时切面会被触发。增强则定义了切面在目标对象方法执行前、执行后或抛出异常时所
17167 4