0

基本上我想使用 puppet 执行以下操作:

1.sudo yum install nodejs npm --enablerepo=epel
setup nodejs evironment(latest stable version) on puppet agent
2.sudo yum install git-(install git)
3.git clone git@gitlab.ishwarya.net:hello-world/nodejs-helloworld.git -(git clone the application repo)
4.Run the application
npm install
npm start
npm test

我是木偶配置管理工具的新手。到目前为止,我已经完成了 puppet master -agent 设置。

sudo yum install puppet-server on puppet master node
sudo yum install puppet on agent node

并且能够在我的代理上成功安装 apache。

我在 RHEL 上使用 puppet 版本 3.8.7。作为第一步,我需要在 puppet 代理上安装 nodejs 来运行我的应用程序。

安装了 puppetlabs-nodejs 模块

puppet module install puppetlabs-nodejs

主节点上的 /etc/puppet/manifests/site.pp 包含以下代码:

class { '::nodejs':
  nodejs_dev_package_ensure => 'present',
  npm_package_ensure        => 'present',
  repo_class                => '::epel',
}

当我在代理上运行以下命令时,出现此错误:

puppet agent -t 

代码失败并出现以下错误

 Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Puppet::Parser::AST::Resource failed with error ArgumentError: 
Invalid resource type gpg_key at /etc/puppet/modules/nodejs/manifests/repo/nodesource/yum.pp:58 on node ip-**********
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
4

2 回答 2

2

您应该安装 puppetlabs-nodejs 模块或自己编写。无论哪种方式,您都应该有一个 nodejs 模块,该模块在 init.pp 文件中定义了 nodejs 类。

include 'nodejs'确保在清单中调用类似的东西

于 2016-08-24T14:51:41.660 回答
0

安装以下模块解决了错误并安装了nodejs

puppet module install treydock-gpg_key

puppet module install stahnma-epel
于 2016-08-24T19:35:26.933 回答