基本上我想用木偶做以下事情:
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配置管理工具的新手。到目前为止,我已经完成了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
答案 0 :(得分:2)
您应该安装puppetlabs-nodejs模块或自己编写。无论哪种方式,你都应该有一个nodejs模块,它在其init.pp文件中定义了nodejs类。
确保使用您的清单调用include 'nodejs'
之类的内容
答案 1 :(得分:0)
安装以下模块解决了错误并安装了nodejs
puppet module install treydock-gpg_key
puppet module install stahnma-epel