Ich habe ein Puppet-Modul installiert, das heißt ntp
.
Einen Knoten definiere ich durch
node testip { include myconfig::ntpp }
und in /etc/puppet/modules/myconfig/manifests/init.pp
habe ich
class myconfig::ntpp {
include common
class {'ntp':
server_list => $common::data::ntpServerList
}
}
Das funktioniert perfekt.
Aber wenn ich ersetze myconfig::ntpp
durch myconfig::ntp
bekomme ich
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Duplicate declaration: Class[Myconfig::Ntp] is already declared; cannot redeclare on node testip
Frage
Ist es möglich, dass mein Knoten so aussieht?:
node testip { include myconfig::ntp }
Antwort1
Dies ist ein Designproblem in Puppet, das sich darauf bezieht, wie Puppet versucht, die Klassennamen aufzulösen. Siehedieses Ticket für weitere Informationenoderdieser Link zu Namespaces.
Und Sie sollten versuchen, auf Ihre Top-Level-Module zuzugreifen NTP
mit
class { "::ntp":
server_list => ...
}