2013-03-07 19 views
21

私はシェフを初めて迎えました。ドキュメントを読んだ後でも、属性の使用時期とデータバッグの使用時期を理解できていません。シェフの属性とデータバッグ

どのような種類のデータを属性として保存する必要がありますか。データバッグにはどのような種類のデータを保存する必要がありますか?

おかげ

答えて

24

まあ、それは依存しています。データバッグと属性の両方がデータを保持していますが、レシピ実行時に属性がノードプロパティとして公開されますが、どのデータバッグが使用されたかは明確にはわかりません(ただし、ランリスト)。私は個人的な属性に格納何

は、次のとおりです。

  • ソフトウェアバージョン
  • URLからダウンロードするためのポートを(作成した何か(ファイル、プログラム)がインストールされている

    • パス、サーバは、などに聞きます。)
    • ユーザ名

    とデータ袋に

    • 公開することができないすべてのもの - 暗号化されたデータの袋に(秘密鍵、パスワード)
    • あるユーザープロパティ(名前、シェル、パスワードハッシュ、公開鍵などをコメント)
    • いくつかの他の構成、よりオブジェクトに似ていますが、単純な文字列や数値データではなく、ノード自体にとって重要ではありません。

    最後の点について:例は、mavenリポジトリリストです。リポジトリには名前、URL、ポリシーなどのプロパティがあります。また、ノードにはどのリポジトリが設定されているかは重要ではありません。重要なのは、それがインストールされていることです。 もう1つの例はユーザーです。利用できるユーザー名のみが属性に含まれています。他のすべてのデータはデータバッグにありますが、公開することはできますが、秘密のデータはありません。

    +1

    +1非常にクリア、ありがとうございます。 – MiniQuark

    1

    もちろん、これは簡単な答えがないものの1つです。私の経験則は、多くのもののうちの1つがデータバッグに属していることです。たとえば、ノードに作成するユーザーとグループのリストがfnichol's users cookbookを使用している場合、それはデータバッグです。 MySQLサーバのパラメータを調整するために、それは属性です。

    関連する問題