Elastic Beanstalk की मेरी समझ यह है कि जब आप अपने ऐप का एक नया संस्करण तैनात करते हैं, तो यह इसे एक समय में Amazon EC2 उदाहरणों में तैनात करता है (यदि आपके पास एक से अधिक हैं)। हालांकि, यहां तक कि कम से कम दो उदाहरणों के साथ, जब मैं इसे तैनात कर रहा हूं, तो एक नया .war
अपलोड करते समय मेरा एप्लिकेशन डाउनटाइम की थोड़ी सी मात्रा में पड़ता है, जैसे कि यह उन्हें दोनों को एक साथ अपडेट कर रहा है। क्या कोई तरीका है कि मैं सुनिश्चित कर सकता हूं कि कोई डाउनटाइम नहीं है और यह एक उदाहरण पूरी तरह से अपडेट हो गया है और अगली शुरूआत से पहले अनुरोध स्वीकार कर रहा है: यहां बताया गया है कि ईवेंट कैसा दिखता है। ध्यान दें कि यह ऐप पर शून्य लोड के साथ है, इसलिए यह केवल उत्पादन यातायात के साथ बदतर हो जाएगा।एडब्ल्यूएस लोचदार बीनस्टॉक एप के नए संस्करण की तैनाती के दौरान डाउनटाइम को कैसे रोकें?
INFO
Environment update completed successfully.
INFO
New application version was deployed to running EC2 instances.
ERROR
The application did not respond at the health check URL.
INFO
Waiting for 8 seconds while EC2 instances download the updated application version.
INFO
Deploying version SomethingMore to 2 instance(s).
धन्यवाद, पर्यावरण सीएनएन स्वैपिंग वही है जो मैं ढूंढ रहा था। – Peter
मैंने अपने उत्पादन ऐप पर यह कोशिश की और देखा कि सीएनएन को स्वैप करने और DNS टीटीएल की अवधि समाप्त होने के बाद भी, यातायात का एक बड़ा हिस्सा पुराने बीनस्टॉक पर्यावरण में जा रहा था। मुझे संदेह है कि ऐसा इसलिए है क्योंकि ग्राहक DNS कैश पर लंबे समय तक पकड़ रहे हैं। यदि टीटीएल का पालन करने के लिए ग्राहकों पर भरोसा नहीं किया जा सकता है, तो यह सीएनएन-स्वैपिंग तकनीक बीनस्टॉक के साथ जेडडीडी तैनाती करने का एक विश्वसनीय तरीका प्रतीत नहीं होता है। –
@AaronIba यह एक बहुत अच्छा अवलोकन है। क्या आप कुछ वैकल्पिक तरीके से आए थे?मैं बस मौजूदा एप्लिकेशन संस्करण को ओवरराइट करने और मौजूदा उदाहरणों को मैन्युअल रूप से बंद करने की सोच रहा हूं (एएसजी को नए लोगों को रैंप करना चाहिए और अपडेट किए गए एप्लिकेशन संस्करण को खींचना चाहिए)। लेकिन यह मैन्युअल/धीमी/बोझिल प्रक्रिया है और एक हैक की तरह लगता है। –