在puppet agent上应用manifest时出错

时间:2018-01-06 03:57:56

标签: puppet devops

我使用此命令在puppet master上安装了docker模块:

puppet module install garethr-docker --version 5.3.0

之后我将它包含在site.pp文件中:

node 'test02.edureka.com'
{
 include 'docker'
 docker::image 
  { 
  'ubuntu':
  image_tag => 'precise'
  }
}

但是当我在代理机器中应用它时,我收到错误:

enter image description here

enter image description here

我的Puppet版本是3.8.7。

1 个答案:

答案 0 :(得分:2)

您的错误消息将问题归因于文件/etc/modules/puppet/apt/manifests/init.pp,该文件属于' apt'模块,大概是&pupartlabs-apt'问题的本质围绕模块的DSL代码中单词Variant的出现。这是与Puppet 4中引入的数据类型系统相关联的关键字,但在Puppet 3.x中,它是一个没有特殊意义的普通标识符。这往往表明问题在于您在服务器上运行Puppet 3.x(此时最新版本为5.3.3),并且您安装的puppetlabs-apt版本(v3.0.0)是不兼容。

确实,the docs for puppetlabs-apt v3.0.0表明它至少需要4.7.0版本的Puppet。版本2.4.0是声称与Puppet 3兼容的最后一个版本,所以你应该尝试降级到它。

我不确定为什么模块工具为你选择v3.0.0的puppetlabs-apt,尽管它不兼容。您可以考虑将此作为对抗Puppet的问题,但由于Puppet 3不再积极开发,它可能不值得努力。实际上,问题可能已经在更新的版本中得到修复。