असफल होने पर आपकी प्लेबुक बंद हो जाएगी और आप प्रलेखन केserial: 1 अनुसार उपयोग कर रहे हैं ।
डिफ़ॉल्ट रूप से, जब तक समूह में मेजबान नहीं होते हैं तब तक अन्सिबल क्रियाएं निष्पादित करता रहेगा।
कहा कि डिफ़ॉल्ट व्यवहार को लेकर समुदाय में कुछ भ्रम की स्थिति है, और लगता है कि यह बदल गया है - या छोटी गाड़ी है - कहीं 1.8 और 2.1 के बीच।
इसलिए, यदि serial: 1पर्याप्त नहीं है, तो इस अतिरिक्त सेटिंग का उपयोग करें:
max_failure_percentage: 0
कुछ स्थितियों में, जैसे कि ऊपर वर्णित रोलिंग अपडेट के साथ, विफलताओं की एक निश्चित सीमा तक पहुंचने पर नाटक को रोकना वांछनीय हो सकता है। इसे प्राप्त करने के लिए, संस्करण 1.3 के रूप में आप अधिकतम विफलता प्रतिशत निर्धारित कर सकते हैं ...
==
अपनी प्लेबुक पुनः प्राप्त करने के लिए, आपको इस तरह से एक विफलता संदेश देखना चाहिए:
to retry, use: --limit @/home/user/site.retry
उस --limitध्वज का उपयोग करें और अपने अगले निष्पादन पर ansible-playbookऔर यह वहीं से जारी रहेगा जहां यह विफल हुआ था।
जब तक आप retry_files_enabled = Falseअपने कॉन्फ़िगरेशन में सेट नहीं करेंगे, तब तक पुनर्प्रयास फ़ाइलें बनाई जाएंगी ।
वैकल्पिक रूप से, --start-at-taskयह भी काम कर सकता है।
सूत्रों का कहना है:
https://github.com/ansible/ansible/issues/1663
https://github.com/ansible/ansible/issues/16241
http://docs.ansible.com/ansible/playbooks_delegation.html#rolling-update-batch-size
http://docs.ansible.com/ansible/playbooks_delegation.html#maximum-failure-percentage
http://docs.ansible.com/ansible/intro_configuration.html#retry-files-enabled
http://docs.ansible.com/ansible/playbooks_startnstep.html#start-at-task