无觅相关文章插件

转载本博客文章请注明,转载自:小明明's à domicile ()
本文地址: http://www.dongwm.com/archives/puppet%e9%85%8d%e7%bd%ae%e6%96%87%e4%bb%b6%e7%bb%93%e6%9e%84%e6%a0%91%e5%8f%82%e8%80%83/

我想大多数人开始学习puppet都会对它的结构化有些迷惑,本文仅供初学puppet,以及希望对puppet更好结构化管理的同学们。很少见的一种思路:

 

我的整体思路是:

1  所有的配置文件最后都要被主site.pp引用。

主线是:1 class目录下的类.pp=>服务的主配置文件init.pp=>引用模块的mudule.pp

2  node文件夹下服务器分组node节点.pp(例如C.pp)=>node文件夹下site.pp

3  主配置site.pp把1的mudule.pp  和2的node文件夹下site.pp 去“ import”。

2  但是site.pp,不是唯一的,我们可以建无数的site.pp,需要在/etc/puppet/manifests目录下

3   维护方法:

1  增加服务为模块,在/etc/puppet/module目录下新建文件夹。

2  只需要维护此模块下的class下的文件,配置文件全部引用变量,在对应的node里面“ include”类,并且申明变量值。

其中重要文件配置(我这里主要是ice的升级和回滚):

vi manifests/node/site.pp :

import “java.pp”
import “c.pp”

vi modules/revfsserver/manifests/init.pp :

import “class/*.pp”

vi manifests/node/c.pp

node ‘client.dongwm.com’ {
$group=”dongwm”
$owner=”dongwm”
$tar=”X.tar.gz”
$homedir=”/opt/newfs/bin”
$tardir=”/opt/src”
$path=”/usr/bin:/usr/sbin:/bin”
include ice::base
include ice::update
include ice::rollback

}

vi manifests/site.pp

import “node/site.pp”

import “node/module.pp “

vi manifests/module.pp

import “ice”