2012-12-17 100 views
11

剛從Puppet開始,對這個世界來說真的很新鮮。Puppet - 如何將模塊應用到puppet客戶端節點?

  • CentOS 6的傀儡師
  • CentOS 6的木偶客戶

在主有一個模塊:

puppet module list 
/etc/puppet/modules 
âââ mstanislav-yum (v1.0.0) 

所以我想申請同一模塊我的傀儡客戶,但我不能或我不知道爲什麼

[email protected]: puppet agent --test 
Info: Retrieving plugin 
Info: Caching catalog for puppetclient 
Info: Applying configuration version '1355737643' 
Finished catalog run in 0.10 seconds 

,但沒有任何更改客戶端: -/

任何想法?

回答

7

您還沒有宣佈該模塊(它分配給您的節點),但...

一下添加到site.pp:

node 'fqdn of client' { 
    include yum 
} 

然後,您可以運行puppet agent -t看它在行動中。

3

您可以使用下面的命令來查看詳細信息輸出

木偶代理--test --trace

1

你可以嘗試--noop模式(試運行模式)。

puppet agent --server=YOUR_PUPPET_SERVER_NAME --onetime --no-daemonize --verbose --noop 

這會顯示它應該做的改變,但是物理上不會改變任何東西。刪除--noop將執行所有這些更改。

查看文檔以獲取上述命令中其他選項的解釋。 http://docs.puppetlabs.com/man/agent.html

1

到模塊應用到節點的兩種主要方式是添加以下之一site.pp

node 'node <certname> (normally the fqdn)' { 
    require <module name> 
} 

node 'node's <certname>' { 
    include <module name> 
} 

在節點然後運行puppet agent --test

require就像包含但它創建依賴關係,並允許相同的類聲明不止一次,這是很好,如果你wa nt重疊的角色類。

1
  1. 首先安裝從木偶模塊銳意
  2. 打開網站。PP並添加以下行
node default { 
     # include module_name 
     include apache 
} 

然後運行你的傀儡代理以下。

須藤木偶代理--test

2

嘗試使用Hiera和YAML文件,我認爲這是更加靈活和更有組織。

編輯site.pp文件:

node "default" { 
    hiera_include('classes') 
} 

之後,你可以用簡單的調用的類在每一個具體的node.yaml文件:

classes: 
    -class1 
    -class2 

我使用它在Ubuntu , 工作正常。

1

如果您在另一個不是site.pp的位置添加了節點聲明(這是推薦的方法),那麼請記得將「import」配置添加到site.pp中,該配置會引用節點清單。

這是我的配置看起來像。主要表現DIR與節點DIR和site.pp文件:

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 
} 

最後,site.pp主清單DIR將導入節點如下:

import 'nodes/*.pp' 

node default { } 
相關問題