Chinaunix首页 | 论坛 | 博客
  • 博客访问: 29335071
  • 博文数量: 2065
  • 博客积分: 10377
  • 博客等级: 上将
  • 技术积分: 21525
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 17:50
文章分类

全部博文(2065)

文章存档

2012年(2)

2011年(19)

2010年(1160)

2009年(969)

2008年(153)

分类: LINUX

2010-10-19 21:34:15

puppet安装与布置

整理:2010-10-19

centos的官方软件库里面不包含puppet,但是在epel项目里面有包含puppet. epel 是一个对rhel软件仓库的扩展,把一些有用的,但是rhel库没包含的软件收集在一起做成的一个软件仓库.
因此首先在centos上面安装epel, 32位的centos5 举例,其他版本以此类推

操作步聚:

1.                         rpm -Uvh

2.                         yum install puppet

说明:注意当前OS的版本。下载的URL是有变化的!

安装第一步:修改主机名然后再去安装puppet软件的!

 

目前架构

客户端的主机 localhost.localdomain

主控端的主机 server.puppet.com   

 

安装整理

1.      将服务器装先安装好

先修改主机名

#echo ‘192.168.0.108           server.puppet.com’ >>/etc/hosts

#hostname –F /etc/hostname

先把计算机名称定义出来

 

开始通过yum的方式安装

#rpm -Uvh

#yum install -y puppet-server 安装服务端

#service puppetmaster start               将服务启动

#chkconfig --level 2345 puppetmaster on   将其添加进启动服务

 

编写一个配置文件

[root@server ~]# vi /etc/puppet/manifests/site.pp

node default {

        file {

                "/tmp/temp1.txt":    #注意千万不要写错了!

                content=>"hello,first puppet manifest";

        }

}

 因为puppet的第一个执行的代码就是这个文件了。所以必须要存在的!

这个配置文件的作用其实就是让默认连入进来的puppet客户端执行一个操作就是在/tmp目录下面生成一个temp1.txt内容为hello,first puppet manifest

2.      客户端配置

#192.168.0.103           client.puppet.com  修改其hostname

#hostname –F  /etc/hostname  让修改立即生效.这个时候需要退出系统然后再登录

安装客户端

#rpm -Uvh

#yum install -y puppet  客户端

 

先测试一下不连接服务器试下

编写一个配置文件

[root@client ~]# more /tmp/1.pp

file {

        "/tmp/test":

        content=>"hello\n",

        mode=>0644;

}

然后去执行一下:

[root@client puppet]# puppet /tmp/1.pp     #把配置文件带上就行了

 

开始检查与服务器连接的情况

[root@client puppet]# echo "192.168.0.108    server.puppet.com" >> /etc/hosts 将服务器的对应关系写入到hosts里面去

[root@client puppet]# puppetd --server server.puppet.com –test  #表示从服务器端下载配置命令再执行

info: Caching catalog for client.puppet.com

info: Applying configuration version '1287471376'

notice: //Node[default]/File[/tmp/temp1.txt]/content: defined content as 'unknow

n checksum'

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

notice: Finished catalog run in 0.03 seconds

再打开此目录看看:

[root@client puppet]# more /tmp/temp1.txt

hello,first puppet manifest   确实第一次连接的时候把东西写进来了的!

 

 

客户端和服务端都是通过SSL链接的。(将来我们的socket也最好是写成SSL的封装吧),在服务器有一个自签名的根证书,在服务器有一个自签名的根证书,在安装软件的时候自动生成。

注意:要在安装软件以前先设置好主机名,因为生成证书的时候要把主机名写入证书,如果证书生成好了再改主机名就会连接不上。

注意:每个客户端的证书要经过根证书签名才能与服务器连接。所以首先要在客户端执行下面的命令来请求服务器签名证书。

阅读(1236) | 评论(0) | 转发(0) |
0

上一篇:linux中KS详解

下一篇:Puppet语法

给主人留下些什么吧!~~