2013-08-28 3 views
7

कहें कि संबंधित वीएम चलने के दौरान शेफ सर्वर से नोड को हटाने के लिए knife node delete 'NODENAME' कहें।शेफ: चाकू के साथ नोड हटाएं और बाद में इसे

क्या यह संभव है, अगर मुझे भविष्य में उस सर्वर में परिवर्तन करने की आवश्यकता है, तो वीएम को फिर से नोड के रूप में जोड़ने और उस पर शेफ-क्लाइंट चलाने के लिए (या उस मामले के लिए कोई अन्य शेफ कमांड) चलाने के लिए?

+0

आप इसे क्यों हटाते हैं? – StephenKing

+1

क्या आपको इस समस्या का समाधान मिला? अपने प्रश्न का उत्तर देना ठीक है। उत्तर को सही के रूप में चिह्नित करना न भूलें! :) – sethvargo

उत्तर

2

गुण नोड को हटाने के बाद चले गए हैं। इस प्रकार: नहीं।

+1

दरअसल ... यदि आप जिस कुकबुक का उपयोग कर रहे हैं वह वीएम के राज्य के नुकसान को सहन कर सकती है (आमतौर पर नोड के गुणों द्वारा कैप्चर की जाती है) तो एक नया बूटस्ट्रैप ठीक काम करेगा। –

3

मुझे लगता है कि, अपने शेफ सर्वर से नोड को हटाने के बाद, जो मशीन आप हटाते हैं उसके प्रमाण पत्र सर्वर से चले गए थे। दोबारा यदि आप एक ही नोड को फिर से जोड़ना चाहते हैं तो आपको उस कोड में क्लाइंट.pem (/etc/chef/client.pem) फ़ाइल को हटाना होगा जो पिछले बूटस्ट्रैप द्वारा बनाया गया था।

1

इस आदेश से knife node delete 'NODENAME' आप एक शेफ संगठन से एक नोड हटाते हैं। लेकिन नोड जानकारी (ज्यादातर एक yml फ़ाइल) याद रखें जिसमें विभिन्न कुकबुक एससीएम में संग्रहीत हैं। इसलिए, आपको उस प्रविष्टि को हटाने या उस नोड को टिप्पणी करने की आवश्यकता है जिसे आप निकालना चाहते हैं और कोड में चेक-इन करना चाहते हैं। ताकि अगली बार जब आप शेफ-सर्वर पर कुकबुक अपलोड कर सकें तो नोड नहीं देखा जाएगा।

जब आप इसे वापस जोड़ना चाहते हैं, तो इसे अपनी कुकबुक & में जोड़ें कोड में चेक-इन करें। यह एससीएम के लिए है। फिर शेफ-सर्वर पर कुकबुक अपलोड करें। अब - जब आप एक शेफ-क्लाइंट करते हैं, तो यह हाथ में हिलाएगा।

नोड पर /etc/chef/client.pem हटाएं (सुनिश्चित करें कि validation.pem पहले से मौजूद है)। और शेफ-क्लाइंट को पुनः चलाएं

12

हमारे उपयोग मामले में वर्चुअल मशीन और शेफ बूटस्ट्रैपिंग (मेजबाननाम को शेफ नोड नाम के रूप में उपयोग करके) बनाना शामिल है। नोड्स को अक्सर उसी नाम से हटा दिया जाता है और बनाया जाता है। जब हम आभासी मशीन को नष्ट करते हैं तो हम शेफ में साफ करने के लिए दो आदेश चलाते हैं।

knife node delete --yes NODENAME 
knife client delete --yes NODENAME 

ध्यान रखें कि हमारे उपयोग के मामले में हम क्या नोड कर रहा था (जैसे कि, अपनी दौड़ सूची या अन्य विशेषताओं) के बारे में किसी भी जानकारी को ध्यान में रखते हुए दिलचस्पी नहीं है।

यदि आप सर्वर को हटाना नहीं चाहते हैं, तो आप शेफ सर्वर से नोड को साफ करने के लिए उपरोक्त दो आदेश चला सकते हैं और फिर स्थानीय स्तर पर शेफ को निकालने के लिए मशीन पर निम्न आदेश चला सकते हैं। एक बार पूरा हो जाने पर आप मशीन को फिर से बूटस्ट्रैप शेफ कर सकते हैं।

#depending on how you installed chef 
yum -y remove chef 
OR 
rpm -e `rpm -q chef` # rpm -q chef returns the version of chef installed 

rm -rf /var/chef 
rm -rf /etc/chef 
rm -rf /opt/chef 
संबंधित मुद्दे