2014-10-07 272 views
2

想象一下,您有3臺機器--1個廚師 - 工作站,廚師 - 服務器和1個配置的客戶端。廚師 - 客戶端IP地址

所以,我需要一個廚師服務器或反之亦然提取configfiles /流程/等客戶端的IP地址:廚師客戶機(節點)上 提取服務器的IP地址。 (也就是說,我不能使用工作站來提取IP地址)。

回答

2

在廚師工作站,獲得節點Ip地址刀:

knife search node '*' -a ipaddress

並通過解決與DNS主機名,從knife.rb文件中獲取廚師服務器主機名獲得廚師服務器的ip最終...

我沒有得到與紅寶石標記你的問題的點,如果你不想使用它...

+0

這有效。非常感謝! – Jade 2014-10-08 15:06:22

0

從客戶端的模板代碼中,您可以使用<%= node['ipaddress'] %>來獲取默認接口的IP地址。不確定你的意思是「在廚師服務器上」。

+0

我寫一個支持產品的廚師。我需要從某處提取服務器(或客戶端)的IP地址。我不能使用任何ruby編碼。只有configfiles或其他UNIX實用程序(如top) – Jade 2014-10-07 17:24:15

+0

從客戶端計算機,可以通過運行ohai ipaddress直接使用ohai。如果你想查詢服務器,你可以使用許多客戶端庫中的任何一個,比如[chef-api](https://github.com/sethvargo/chef-api)或[PyChef](https:// github)。 COM/coderanger/pychef /)。可以[使用cURL查詢Chef服務器](https://docs.getchef.com/auth.html#curl),但我真的不推薦它。 – coderanger 2014-10-07 18:26:18