マスターから1つのファイルをコピーしてエージェントにインストールするモジュールを作成し、以下のコードで正常に動作します。別のディレクトリにある別のファイルを開き、それぞれを別のノードセットにインストールします。 (Aシステムと呼ばれるipsまたはdnsの名前のようなものです...) たとえば、AシステムノードのすべてのエージェントにファイルAをインストールする必要があります。 BシステムノードのすべてのエージェントにファイルBをインストールする必要があります CシステムノードのすべてのエージェントにファイルCをインストールする必要があります3つの異なるエージェントの場所に3つの異なるファイルをコピーしてインストールする方法
[または、ファイルシステムはすべてのシルバーシステムにインストールする必要があります。]というように、FILE2とFILE3
class profile::ma {
file { '/tmp/filename.sh':
ensure => 'present',
replace => 'no',
source => 'puppet:///module/files/filename.sh',
mode => '0755',
notify => Exec['install'],
}
exec { 'install':
command => '/tmp/filename.sh -i',
onlyif => '/usr/bin/test ! -e /etc/filetocheck',
}
}
感謝if statementはINGのあなたは返信のために - しかし、私は環境ではないと言わざるを得ない、それはノードのセットです...私はfile1がすべてのシルバーシステム/ノードにインストールされる必要があります。 DNSでルックアップを使用することはできますが、正しいコードに苦しんでいる可能性があります – Moez
「シルバーシステム」とは何ですか?ノードをどのように分類しているかについての詳細な情報がなければ、役に立つ答えは得られません。 –
どのような場合でも、あなたのシステムを分類しても、この答えは適用可能です。 '$ environment'変数名を使用するものに変更してください。 '$ colour'です。 –