Puppet and openldap 整合

Puppet and openldap integration


[root@ldap ~]# cat /etc/openldap/schema/puppet.schema

attributetype ( 1.3.6.1.4.1.34380.1.1.3.10 NAME 'puppetClass'

DESC 'Puppet Node Class'

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



[root@puppet-master ~]# cat/etc/puppet/puppet.conf

[master]

node_terminus = ldap

ldapserver = 192.168.7.179

ldapbase = ou=Hosts,dc=csdn,dc=net


[root@puppet-master ~]# cat /etc/puppet/manifests/site.pp

import 'node.pp'

$puppetmaster='puppet-master.csdn.net'


[root@puppet-master ~]# cat /etc/puppet/manifests/node.pp

class base{

include postfix,mysql,ssh,ntp

}

class services{

include base

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章