私は料理本これは簡単なApacheの設定で、私はapache2のクックブックを使用しています。スーパーマーケット。
AWS OpsWorks と Chef 11.10 を使用して、クックブックのレシピを実行しようとしています。
OpsWorks でレシピを実行しようとすると、次のエラーが発生します。
Missing Cookbooks:
------------------
Could not satisfy version constraints for: apache2
apache2
OpsWorks にはすでにバージョンのクックブックがあり、私のクックブックはスーパーマーケットから必要なバージョン1.0.0
に依存しているため、バージョンの不一致が発生しているのではないかと考えています。3.0.1
これまでのところ、OpsWorks に自動的に同梱されているクックブックを完全に上書きしようとしてもうまくいきませんでしたがapache2
、可能であればそれが理想的でしょう。
試すことができる何かについて、ご意見やアイデアはありますか?
答え1
OpsWorks でのレシピ名の競合は、かなりよく知られた問題です。
1 つのオプションは、コミュニティ クックブックをダウンロードし、apache-community などの名前に変更して、残りのレシピとバンドルすることです。
Python を OpsWorks にデプロイしようとしているようですので、代わりに OpsWorks 専用のクックブックを見つけることもできるかもしれません。例:opsworks の web-python リポジトリ
最後に、コミュニティ クックブックが実際にどれほど役立つかを検討する必要があるかもしれません。いくつかのオプションを設定する必要があるだけであれば、OpsWorks Apache クックブックを使用するか、設定を変更した独自のレシピを作成する方が簡単かもしれません。
答え2
今後の Chef 12 リリースでは、OpsWorks には 2 つの異なる Chef 実行が用意されます。1 つはコア/最小限の OpsWorks セットアップ用、もう 1 つはカスタム クックブック用です。2 番目の実行にはクックブックはなく、独自のものだけなので、名前の競合は発生しません。
cp参考: