1

无法使用 redisio 说明书安装 redis。安装 sensu 服务器,sensu::redis 食谱正在尝试安装 redis 并失败并出现以下错误。这里有什么遗漏吗

Chef::Exceptions::ResourceNotFound
----------------------------------
Cannot find a resource matching service[redis6379] (did you define it first?)


Cookbook Trace:
---------------
  /var/chef/cache/cookbooks/redisio/recipes/enable.rb:25:in `block in from_file'
  /var/chef/cache/cookbooks/redisio/recipes/enable.rb:23:in `each'
  /var/chef/cache/cookbooks/redisio/recipes/enable.rb:23:in `from_file'
  /var/chef/cache/cookbooks/sensu/recipes/redis.rb:23:in `from_file'


Relevant File Content:
----------------------
/var/chef/cache/cookbooks/redisio/recipes/enable.rb:

 18:  # limitations under the License.
 19:  #
 20:
 21:  redis = node['redisio']
 22:
 23:  redis['servers'].each do |current_server|
 24:    server_name = current_server["name"] || current_server["port"]
 25>>   resource = resources("service[redis#{server_name}]")
 26:    resource.action Array(resource.action)
 27:    resource.action << :start
 28:    resource.action << :enable
 29:  end
 30:
4

1 回答 1

5

我遇到了同样的问题。我不确定这是否是相同的原因,但我只是分享我的解决方案并希望它会有所帮助。

我的问题是当我升级 redisio repo 但没有升级我的运行列表时,就我而言,redis.json

我的旧运行列表如下所示:

"recipe[redisio::install]",
"recipe[redisio::enable]",

我的新运行列表看起来像

"recipe[redisio]",
"recipe[redisio::enable]",

从错误来看,我们的问题似乎在 enable.rb 中。它似乎recipe[redisio]会为启用阶段正确设置缺少的资源。我希望只更改您的运行列表也会为您解决错误。

PS我还必须添加

"install_dir" : "/opt/redis/",

在我的跑步清单中。似乎下载和安装步骤将被空跳过install_dir

于 2014-10-06T18:50:06.950 回答