0

シェフを使用してs3fsをマウントしようとしています。マウント リソースを s3fs で機能させることができず、s3fs のベンダー クックブックでは、マウントに私たちが付けたい名前とは異なる名前を付けようとしています (私たちの s3 バケットの名前には「.」が含まれています)。

そのため、fstab レコードを手動で作成し、「mount」コマンドを実行してマウントしました。ただし、マウントは実行されていません。エラーはなく、chef のログ ファイルには、ブロックを実行したことが示されています。

bash 'mount_s3fs' do
  code <<-EOF 
  mount -a
  EOF
  user 'root'
  not_if "df -kh | grep s3fs -q"
end

ログファイルに出力される内容は次のとおりです

[2016-12-29T21:29:02+00:00] INFO: Processing bash[mount_s3fs] action run (cookbook::recipe line 66)
[2016-12-29T21:29:03+00:00] INFO: bash[mount_s3fs] ran successfully

レシピをもう一度実行すると、問題なくマウントされます。ブートストラップの後にレシピを追加すると、正常に動作します。私は信じられないほど困惑しています。この動作はブートストラップでのみ見られるためです。

AWS の Debian Jessie 8.4 でシェフ 12.12.15 を実行しています。

4

2 に答える 2

1

これは Chef とは関係がないようですが、mount代わりにリソースを使用するようにレシピ コードを修正する必要があります。

于 2016-12-30T06:11:38.460 に答える
0

何時間にもわたるトラブルシューティングの後、問題は Debian 自体にあると思います。この同じスクリプトを Debian 8.0 AMI で実行すると正常に動作しますが、8.4 以降のイメージに移行すると動作しません。8.1、8.2、または 8.3 ではテストしませんでした。これは、この問題にうんざりしているためです。

于 2017-01-03T04:59:25.710 に答える