2012-01-18 7 views
6

यह एक बहुत ही बुनियादी कार्य है, लेकिन मुझे इस पर दस्तावेज़ नहीं मिल रहा है। मैं एक शेफ-सर्वर और शेफ का उपयोग कर ईसी 2 मशीनों को बूट कर रहा हूं। अगर यह विफल रहता है तो मैं व्यंजनों को ठीक करना चाहता हूं और उसके बाद नोड को बाहर निकालने और इसे फिर से बनाने के बिना उस मशीन पर भूमिका और व्यंजनों को पुनर्स्थापित करना चाहता हूं। मुझे वह आदेश नहीं मिल रहा है जो ऐसा करता है।इंस्टॉल विफल होने पर अपडेट शेफ व्यंजनों को पुनः लोड करें या अपडेट उपलब्ध हैं

अगर मैं मशीन पर महाराज ग्राहक चलाने मैं:

chef-client 
[Wed, 18 Jan 2012 11:23:58 +0000] INFO: *** Chef 0.10.0 *** 
[Wed, 18 Jan 2012 11:23:59 +0000] INFO: Run List is [] 
[Wed, 18 Jan 2012 11:23:59 +0000] INFO: Run List expands to [] 
[Wed, 18 Jan 2012 11:23:59 +0000] INFO: Starting Chef Run for gidsy-staging-web 
[Wed, 18 Jan 2012 11:23:59 +0000] INFO: Loading cookbooks [] 
[Wed, 18 Jan 2012 11:23:59 +0000] WARN: Node gidsy-staging-web has an empty run list. 
[Wed, 18 Jan 2012 11:23:59 +0000] INFO: Chef Run complete in 0.508629 seconds 
[Wed, 18 Jan 2012 11:23:59 +0000] INFO: Running report handlers 
[Wed, 18 Jan 2012 11:23:59 +0000] INFO: Report handlers complete 

धन्यवाद

+0

आपकी समस्या का वर्णन बहुत स्पष्ट नहीं है, ईसी 2 और शेफ के बीच कुछ शब्दावली ओवरलैप है। यह स्पष्ट नहीं है कि "नोड बाहर निकालने और इसे फिर से बनाने के बिना" क्या मतलब है (शेफ नोड या ईसी 2 नोड?) आपके असफल रन का आउटपुट क्या है? आपकी रन सूची खाली क्यों है? मैंने ऐसा अवसर नहीं देखा है जहां एक असफल शेफ रन नोड की रन सूची खाली कर देगा। – lhagemann

उत्तर

8

मैं एक ही मुद्दे का सामना करना पड़ा और यह कैसे मैं इस मुद्दे को हल कर दिया है।

पहले, मैं भूमिका (रों) उदाहरण के लिए प्रश्न में चाकू का उपयोग कर लागू होते हैं:

$ knife node run_list add [NODE] [ENTRY] 

Be sure and include the items in [ENTRY] in quotes (for example, "role[my-role]"). 

एक बार भूमिका EC2 उदाहरण के लिए लागू किया गया है, मैं तो सवाल में उदाहरण पर महाराज ग्राहक आह्वान ।

$ sudo chef-client 

इससे आपके विकास चक्र को काफी हद तक तेज करना चाहिए।

+0

हाँ, यह काम करता है। धन्यवाद! जो मुझे बहुत समय बचाएगा। –

+0

आपका स्वागत है फिलिप! –

2

जॉर्डन के जवाब ने वास्तव में मेरी मदद की लेकिन उन लोगों के लिए जो मेरे जैसे शेफ शुरू कर रहे हैं, मैं थोड़ा और विस्तार से समझाऊंगा।

मैं ईसी 2 पर चल रहा हूं और उपर्युक्त त्रुटि प्राप्त कर रहा हूं।

  1. अपने स्थानीय मशीन पर, चलाएँ:: knife ec2 server list EC2 सर्वर
  2. पर मेजबान नोड प्राप्त करने के लिए अपने स्थानीय देव मशीन से उस नोड के लिए रन सूची जोड़ें: यह वही है मैं इसे हल करने के लिए किया था knife node run_list add i-xxxxx "role[aws-db-deploy]" जहां मैं-xxxxx अपने नोड नाम
  3. ssh अपने एडब्ल्यूएस पर EC2 उदाहरण और आदेश चला है: sudo chef-client

आशा इस मदद करता है

0

आप वें चला सकते हैं ई शेफ-क्लाइंट रनलिस्ट के साथ:

$ sudo chef-client --runlist <role>