Puppet and openldap 整合
Puppet and openldap integration# cat /etc/openldap/schema/puppet.schema
attributetype ( 1.3.6.1.4.1.34380.1.1.3.10 NAME 'puppetClass'
DESC 'Puppet Node> EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
attributetype ( 1.3.6.1.4.1.34380.1.1.3.9 NAME 'parentNode'
DESC 'Puppet Parent Node'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
SINGLE-VALUE )
attributetype ( 1.3.6.1.4.1.34380.1.1.3.11 NAME 'environment'
DESC 'Puppet Node Environment'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
attributetype ( 1.3.6.1.4.1.34380.1.1.3.12 NAME 'puppetVar'
DESC 'A variable setting for puppet'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
objectclass ( 1.3.6.1.4.1.34380.1.1.1.2 NAME 'puppetClient' SUP top AUXILIARY
DESC 'Puppet Client objectclass'
MAY ( puppetclass $ parentnode $ environment $ puppetvar ))
puppet.ldif file
cat puppet.ldif
dn: ou=Hosts,dc=csdn,dc=net
objectClass: organizationalUnit
objectClass: top
ou: Hosts
dn: cn=default,ou=Hosts,dc=csdn,dc=net
cn: default
description: Default
objectClass: device
objectClass: top
objectClass: puppetClient
puppetClass: base
dn: cn=basenode,ou=Hosts,dc=csdn,dc=net
cn: basenode
description: Basenode
objectClass: device
objectClass: top
objectClass: puppetClient
puppetClass: base
dn: cn=web, ou=Hosts,dc=csdn,dc=net
cn: web
description: webServer
objectClass: device
objectClass: top
objectClass: puppetClient
parentNode: basenode
puppetClass: services
dn: cn=puppet-client1.csdn.net, ou=Hosts,dc=csdn,dc=net
cn: puppet-client1.csdn.net
description: web host
objectClass: device
objectClass: top
objectClass: puppetClient
objectClass: ipHost
parentNode: base
ipHostNumber: 192.168.7.181
dn: cn=puppet-client2.csdn.net, ou=Hosts,dc=csdn,dc=net
cn: puppet-client1.csdn.net
description: web2 host
objectclass: device
objectclass: top
objectclass: puppetClient
objectclass: ipHost
parentnode: base
ipHostNumber: 192.168.7.182
# cat/etc/puppet/puppet.conf
node_terminus = ldap
ldapserver = 192.168.7.179
ldapbase = ou=Hosts,dc=csdn,dc=net
# cat /etc/puppet/manifests/site.pp
import 'node.pp'
$puppetmaster='puppet-master.csdn.net'
# cat /etc/puppet/manifests/node.pp
class base{
include postfix,mysql,ssh,ntp
}
class services{
include base
}
页:
[1]