我在配置Puppet 4 master以处理HTTP请求时遇到了一个问题,因此我可以使用CouchDB进行分类。以下是到目前为止我所做的步骤:
- 用
test
数据库创建新的CouchDB - 创建新文档
common
-
gem install hiera-http-1.0.0
- 将
http_backend.rb
文件放入/opt/puppetlabs/code/environments/production/mpdules/hiera_http
和/opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/hiera-http
当我运行gem list
时,我可以看到:
Hiera (3.2.0)
Hiera-http (1.0.0)
现在,当我尝试运行hiera common
或任何其他我得到错误:
'require' : cannot load such file -- lookup_http (LoadError)
我的hiera.yaml
看起来像:
:backends:
- http
当然,还有所有必需的设置(主机,端口…)
当我在代理上运行puppet agent -t
时,我得到
cannot load backend http: no such file to load -- hiera/backend/http_backend at site.pp
步骤3和步骤4:
-
gem install hiera-http-1.0.0
- 把
http_backend.rb file
放到/opt/puppetlabs/code/environments/production/mpdules/hiera_http
和/opt/puppetlabs/puppet/lib/ruby/gems/2.1.0/gems/hiera-http
需要替换为:
-
/opt/puppetlabs/puppet/bin/gem install hiera-http
这将确保为puppet使用的ruby自动正确安装和配置层级http层级后端gem。
如果你想为puppet使用系统ruby,让它识别从系统gem中安装的hierarchy -http,那么你需要在gem中安装puppet、factor和hiera,而不是你的OS包管理器。