如何在puppet客户端中使用puppet模块?

时间:2015-05-20 06:13:56

标签: module puppet

我已经搜索了许多木偶模块问题并看到了答案,但它仍然没有解决我的问题。我是木偶的新手,并且已经安装了木偶大师和客户。我的/etc/puppet/manifests/site.pp包含

node 'dn1.test.com'{
        include custom_utils
}
node 'client.test.com'{
        include custom_utils
}
class custom_utils {
package { ["nmap","telnet","vim-enhanced","traceroute"]:
        ensure => latest,
        allow_virtual => false,
        }
}

当我跑

  

木偶代理-t

puppet客户端正常工作并安装所有软件包。

现在,当我尝试测试模块时,我无法做到。

安装模块后

  

puppet模块安装puppetlabs-mysql

我的木偶模块显示

    puppet module list
/etc/puppet/modules
├── nanliu-staging (v1.0.3)
├── puppetlabs-mysql (v3.3.0)
└── puppetlabs-stdlib (v4.6.0)
/usr/share/puppet/modules (no modules installed)

我按照以下网站的建议对上面的site.pp进行了更改

    node 'dn1.test.com'{
        include custom_utils
}

node 'client.test.com'{
        include custom_utils
        require puppetlabs-mysql
}
class custom_utils {
package { ["nmap","telnet","vim-enhanced","traceroute"]:
        ensure => latest,
        allow_virtual => false,
        }
}

但是当我运行木偶客户端时

  

木偶代理-t

我得到了

Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find class puppetlabs-mysql for client.test.com on node client.test.com
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run

我还需要做什么,你提供的任何想法都会非常有帮助。非常感谢你的帮助。

1 个答案:

答案 0 :(得分:2)

您是否阅读过如何使用puppet mysql模块的说明?

Puppet的行为符合预期。首先,您已正确安装puppet-mysql模块。 接下来使用它,不能只写:

require puppetlabs-mysql

根据您的需要,必须使用该模块定义的资源。 E.g

  

如果您希望使用默认选项安装服务器,则可以运行包含':: mysql :: server'。

     

服务器的所有交互都是通过mysql :: server完成的。要安装客户端,请使用mysql :: client。要安装绑定,请使用mysql :: bindings。