人形から始めて、この世界で本当に新しい。
私が持っています
マスターには1つのモジュールがあります:
puppet module list
/etc/puppet/modules
âââ mstanislav-yum (v1.0.0)
だから私は自分のパペットクライアントに同じモジュールを適用したいのですが、なぜか分かりません
root@puppetclient: puppet agent --test
Info: Retrieving plugin
Info: Caching catalog for puppetclient
Info: Applying configuration version '1355737643'
Finished catalog run in 0.10 seconds
しかし、クライアントに変更はありません:-/
何か案が?
まだモジュールを宣言していません(ノードに割り当てています)...
これをsite.ppに追加します。
node 'fqdn of client' {
include yum
}
次に、puppet agent -t
をご覧ください。
次のコマンドを使用して、詳細出力を表示できます
人形エージェント--test --trace
Hieraファイルとyamlファイルを使用してみてください。これは、はるかに柔軟で整理されていると思います。
Site.ppファイルを編集します。
node "default" {
hiera_include('classes')
}
その後、特定のすべてのnode.yamlファイルのクラスをシンプルで呼び出すことができます。
classes:
-class1
-class2
私はUbuntuで使用していますが、問題なく動作します。
--noopモード(ドライランモード)を試すことができます。
puppet agent --server=YOUR_PUPPET_SERVER_NAME --onetime --no-daemonize --verbose --noop
これにより、本来行われるはずの変更が表示されますが、実際には何も変更されません。 --noopを削除すると、これらのすべての変更が行われます。
上記のコマンドの他のオプションの説明については、ドキュメントを確認してください。 http://docs.puppetlabs.com/man/agent.html
Site.ppではない別の場所にノード宣言を追加した場合(推奨される方法)、ノードマニフェストを参照する「インポート」構成をsite.ppに追加することを忘れないでください。
これは私の設定がどのように見えるかです。ノードDIRとsite.ppファイルを含むメインマニフェストDIR:
drwxr-xr-x. 3 root root 4096 May 19 07:23 nodes
-rw-r--r--. 1 root root 62 Jun 4 16:31 site.pp
これは私のノードDIRのノード宣言です。
node 'fqdn of client' {
include yum
}
最後に、メインマニフェストDIRのsite.ppは、次のようにノードをインポートします。
import 'nodes/*.pp'
node default { }
モジュールをノードに適用する2つの主な方法は、次のいずれかをsite.pp
に追加することです。
node 'node <certname> (normally the fqdn)' {
require <module name>
}
または
node 'node's <certname>' {
include <module name>
}
次に、ノードpuppet agent --test
で実行します
require
はincludeに似ていますが、依存関係を作成し、同じクラスを複数回宣言できるようにします。これは、重複するロールクラスが必要な場合に適しています。
node default { # include module_name include Apache }
次に、パペットエージェントで次のコマンドを実行します。
須藤人形エージェント--test
適用するクラスの 'include'を含むノード定義を作成する必要があります。
走る
puppet apply -e "include mstanislav-yum"
モジュールを単独で実行する場合は、site.ppマニフェストにノード定義を含めるのが一般的です。
私の制作の実例:
node 'client.io' {
class { '::selinux':
mode => 'disabled',
type => 'targeted',
}
class { 'zabbix::agent':
server => '192.168.245.11',
serveractive => '192.168.245.11',
}
include firewall
include mysql::server
}