私は Chef を初めて使用し、ドキュメントを読んだ後でも、いつ属性を使用し、いつデータバッグを使用するかを理解するのに苦労しています。
どのようなデータを属性として格納し、どのようなデータをデータ バッグに格納する必要がありますか?
ありがとう
私は Chef を初めて使用し、ドキュメントを読んだ後でも、いつ属性を使用し、いつデータバッグを使用するかを理解するのに苦労しています。
どのようなデータを属性として格納し、どのようなデータをデータ バッグに格納する必要がありますか?
ありがとう
まあ、それは依存します。データ バッグと属性はどちらもデータを保持しますが、それらの主な違いは、レシピの実行時に属性がノード プロパティとして公開されることですが、どのデータ バッグが使用されたかを明確に把握することはできません (実行リスト)。
私が個人的に属性に保存するものは次のとおりです。
そしてデータバッグで:
最後のポイントについて: 例は maven repositories リストです。リポジトリには名前、URL、ポリシーなどのプロパティがあります。どのリポジトリが構成されているかはノードにとって重要ではありません。重要なのは、maven がインストールされていることです。もう 1 つの例はユーザーです。使用可能なユーザー名のみが属性に含まれています。他のすべてのデータはデータバッグに入っていますが、公開される可能性があります - そこには秘密のデータはありません.
もちろん、これは簡単な答えがないものの 1 つです。私の経験則では、多くのものの 1 つであるものはすべてデータ バッグに属します。たとえば、fnichol のユーザー クックブックを使用してノード上に作成するユーザーとグループのリストがある場合、それはデータ バッグです。MySQL サーバーのパラメーターを微調整する場合は、属性です。