0

シェフを使用してグラファイトをインストールしようとしています。私はシェフが初めてで、作業についてほとんど考えていません。シェフのバージョン(10.24.4)を使用しています。クライアント側にグラファイトをインストールしようとすると、次のエラーが発生します。

================================================================================
Error executing action `touch` on resource 'file[/var/lib/mysql/mysql.sock]'
================================================================================

Errno::ENXIO
------------
No such device or address - /var/lib/mysql/mysql.sock

Resource Declaration:
---------------------
# In /var/chef/cache/cookbooks/graphite-mysql/recipes/default.rb

 37:     file mysqld_file do
 38:         action :touch
 39:    retries 4
 40:    retry_delay 100
 41:         owner mysqld_user
 42:         group "root" 
 43:         mode "0774" 
 44:     end
 45: end

Compiled Resource:
------------------
# Declared in /var/chef/cache/cookbooks/graphite-mysql/recipes/default.rb:37:in `block in from_file'

file("/var/lib/mysql/mysql.sock") do
  provider Chef::Provider::File
  action [:touch]
  retries 0
  retry_delay 100
  path "/var/lib/mysql/mysql.sock"
  backup 5
  cookbook_name "graphite-mysql"
  recipe_name "default"
  owner "root"
  group "root"
  mode "0774"
end

[2013-05-31T13:41:52-05:00] ERROR: Running exception handlers
[2013-05-31T13:41:52-05:00] FATAL: Saving node information to /var/chef/cache/failed-run-data.json
[2013-05-31T13:41:52-05:00] ERROR: Exception handlers complete
[2013-05-31T13:41:52-05:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2013-05-31T13:41:52-05:00] FATAL: Errno::ENXIO: file[/var/lib/mysql/mysql.sock] (graphite-mysql::default line 37) had an error: Errno::ENXIO: No such device or address - /var/lib/mysql/mysql.sock

クライアント側で明示的に mysql.sock ファイルに触れてみましたが、正常に動作します。この問題の実際の原因を理解できません。どんな助けでも心から感謝します。

前もって感謝します!

4

1 に答える 1

0

シェフ11ではなくシェフ10を使用しているため、シェフソロはmetadata.rbで指定された依存関係を取得していません。シェフ 11 の大きな改善点の 1 つは、まさにそれができることです。

基本的に、このクックブックは、mysql クックブックが実行される前に実行されるか、これが発生する前に何らかの方法で mysql が設定されていることを想定しています。

于 2013-06-13T09:18:13.447 に答える