为什么我的命名空间和类名冲突?

我有一个名为ntp的puppet模块。

我要定义一个节点

 node testip { include myconfig::ntpp } 

并在/etc/puppet/modules/myconfig/manifests/init.pp有我

 class myconfig::ntpp { include common class {'ntp': server_list => $common::data::ntpServerList } } 

这完美的作品。

但是,如果我用myconfig::ntp取代myconfig::ntp

 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 

是否有可能让我的节点看起来像?

 node testip { include myconfig::ntp } 

这是傀儡玩偶如何解决类名的devise问题。 请参阅此票以了解更多信息或关于命名空间的此链接 。

而且你应该尝试访问你的顶级NTP模块

 class { "::ntp": server_list => ... }