AWS इलास्टिक बीनस्टॉक में नवीनतम AMI में अपग्रेड कैसे करें?


18

मैं AWS इलास्टिक बीनस्टॉक पर एक एप्लिकेशन चला रहा हूं, और ऐसा लग रहा है कि अगर मुझे नवीनतम एएमआई का उपयोग करना है तो मुझे एक नया वातावरण बनाने की आवश्यकता है।

अगर मुझे पता था कि नवीनतम एएमआई आईडी क्या है, तो मैं इसे पर्यावरण कॉन्फ़िगरेशन में अपडेट कर सकता हूं।

क्या कोई ऐसी जगह है जहां मुझे नवीनतम इलास्टिक बीनस्टॉक एएमआई की आईडी मिल सकती है, या इससे भी बेहतर, क्या यह संभव है कि जब भी कोई नया संस्करण लुढ़का हो, उदाहरणों को स्वचालित रूप से नए संस्करण से बदल दिया जाए?


2
एक नए वातावरण में आग लगाएं और देखें कि यह लॉन्च होने वाले सर्वर पर एएमआई आईडी क्या है?
सियजॉयज़

2
यह दर्द का एक सा है, है ना?
बेंजामिन

पिछली बार मैंने एक ईबी वातावरण स्थापित किया था जिसमें लगभग पांच मिनट लगे। अमेज़ॅन लिनक्स एएमआई हर तीन महीने में एक बार बाहर निकलते हैं IIRC। महीने में 1.6 मिनट मुझे बहुत दर्द के रूप में हड़ताल नहीं करता है।
सियजॉयज़

मुझे फिर से समझने दो: ऐसा लगता है कि एक बेहतर तरीका होना चाहिए। लेकिन आप सही हैं, यह कोई बड़ी बात नहीं है।
बेंजामिन

2
वे वास्तव में कुछ रिलीज नोट्स या अपने मंचों में एक चिपचिपा के बजाय उन्हें चुपचाप रोल करने के लिए पोस्ट करना चाहिए।
केन लियू

जवाबों:


2

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

इसलिए मैं बस यह दोहराना चाहता हूं कि प्रबंधित प्लेटफ़ॉर्म अपडेट संभवतः वही हैं जो आप या Google से यहां आने वाले कोई और व्यक्ति चाहेगा, लेकिन यदि आप अपने बीनस्टॉक पर्यावरण के लिए नवीनतम एडब्ल्यूएस प्रदान करना चाहते हैं तो यह एडब्ल्यूएस सीएलआई के साथ काफी तुच्छता से किया जा सकता है (धन्यवाद उनके एएमआई पर अमेज़ॅन से नामकरण सम्मेलनों के लिए)।

अपने वातावरण से एक उदाहरण के साथ शुरू, वर्तमान एएमआई प्राप्त करने के लिए उदाहरण का वर्णन करें (छोड़ें यदि आप पहले से ही मौजूदा एएमआई जानते हैं)।

aws ec2 describe-instances --instance-ids i-0909613f35ec0ffee --query 'Reservations[*].Instances[*].ImageId' --output text

ami-35290a56

परिणामी एएमआई आईडी लें और इसका वर्णन करें।

aws ec2 describe-images --image-ids ami-35290a56 --query 'Images[*][Architecture, Hypervisor, Name, RootDeviceType, VirtualizationType]' --output json

[
    [
        "x86_64",
        "xen",
        "aws-elasticbeanstalk-amzn-2016.03.0.x86_64-python34-hvm-201603290718",
        "ebs",
        "hvm"
    ]
]

हम नए, सॉर्ट किए गए इनपुट के रूप में उपरोक्त के आउटपुट का उपयोग कर सकते हैं, describe-imagesलेकिन इस बार हम *वाइल्डकार्ड प्रतीकों के साथ टाइमस्टैम्प को बदल सकते हैं , जैसे:

aws ec2 describe-images --filters 'Name=architecture,Values=x86_64' 'Name=virtualization-type,Values=hvm' 'Name=owner-alias,Values=amazon' 'Name=name,Values=aws-elasticbeanstalk-amzn-*.x86_64-python34-hvm-*' --query 'sort_by(Images[*], &Name)[-1].ImageId' --output text

ami-1be5de78

लेक्सिकल सॉर्टिंग और आईएसओ 8601 की शक्ति के कारण, हम नवीनतम एएमआई के साथ समाप्त होते हैं, जो मेरे उदाहरण में है ami-1be5de78

aws ec2 describe-images --image-ids ami-1be5de78 --query 'Images[*].Name' --output text

aws-elasticbeanstalk-amzn-2016.09.0.x86_64-python34-hvm-201612200708

फिर, मैं आपको हाथ से इस एएमआई को बदलने की कोशिश करने की सलाह नहीं दूंगा, बीनस्टॉक में आपके लिए यह सब करने का प्रावधान है!


0

ऐसा लगता है कि भले ही आप एएमआई को बदल दें, एक उचित एएमआई इलास्टिकबिनस्टक उपयोगों के लिए। यह ठीक से काम नहीं करता है। यह सभी फ़ाइलों को याद करता है। यह सही काम नहीं करता है।

मुझे लगता है कि आपको एक नया इलास्टिक बीनस्टॉक वातावरण शुरू करना होगा जिसमें अपडेटेड एएमआई है। सब कुछ काम करो तो पर्यावरण के उरोजों की अदला-बदली करो।


0

आप प्रबंधित अपडेट सुविधाओं का उपयोग कर सकते हैं जो ईबे के साथ आती हैं लेकिन ऐसा करने के लिए बढ़ी हुई स्वास्थ्य रिपोर्टिंग के लिए भुगतान करना होगा। या 'ईबी प्लेटफॉर्म शो' कमांड का उपयोग करें; वर्कर ऐप में एक क्रॉन होता है जो CURRENT = eb platform show your_env_name | sed -n '5p' | cut -d: -f2- | tr -d '[[:space:]]' LATEST = चलाता है eb platform show your_env_name | sed -n '6p' | cut -d: -f2- | tr -d '[[:space:]]' - फिर उनकी तुलना करें और यदि अलग है तो आप ईब क्लोन (नए संस्करण में चूक) का उपयोग कर सकते हैं और फिर cname स्वैप कर सकते हैं।


0

अपने एप्लिकेशन के डैशबोर्ड पर नेविगेट करके 'कॉन्फ़िगरेशन' का पता लगाएं और 'बदलें' पर क्लिक करें

आपको एक सूची देखनी चाहिए जहाँ आप एक प्लेटफ़ॉर्म चुन सकते हैं। नवीनतम संस्करण को उस सूची में दर्शाया गया है। मंच का चयन

AWS EB विभिन्न प्रोग्रामिंग भाषाओं के लिए विशिष्ट सेटअप का उपयोग करता है। आप दस्तावेज़ में सेटअप की एक सूची पा सकते हैं। http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/congets.platforms.html

आपको दिखाने वाले टेबल हैं जो प्रत्येक प्लेटफॉर्म का उपयोग करता है।

हालाँकि मुझे इन अद्यतनों को स्वचालित रूप से चलाने का कोई तरीका नहीं मिला। मैं वास्तव में मंच के परिवर्तनों की समीक्षा करना और उन्हें तैनात करने से पहले उनका परीक्षण करना पसंद करता हूं।


0

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


-2

मैं नीचे दिए गए चरणों का उपयोग करके अपने वर्तमान एप्लिकेशन को नवीनतम अमेज़ॅन लिनक्स एएमआई पर बीनस्टॉक पर होस्ट करने में सक्षम था।

1- एडब्ल्यूएस कंसोल में प्रवेश करें और बीनस्टॉक पोर्टल में नेविगेट करें।

2- अपने एप्लिकेशन के कॉन्फ़िगरेशन पृष्ठ पर नेविगेट करें और 'इंस्टेंस' पर क्लिक करें।

3- एएमआई आईडी का पता लगाएं, यह एएमआई-एक्सएक्सएक्सएक्सएक्सएक्सएक्स की तरह होना चाहिए।

4- AMI आईडी लें और EC2 कंसोल में वापस जाएँ और AMI पर क्लिक करें।

5- सार्वजनिक छवियों के लिए दृश्य बदलें और एएमआई आईडी की खोज करें, जो पहले बीनस्टॉक कॉन्फ़िगरेशन से पुनर्प्राप्त की गई थी।

6- उस एएमआई को एक नए उदाहरण के रूप में लॉन्च करें।

7- एक बार इसकी लॉन्चिंग लॉग इन करने के बाद और आपके अनुप्रयोगों की आवश्यकताओं के अनुसार अनुकूलित।

8- एक बार जब आपकी जगह पर सब कुछ संतुष्ट हो जाता है, तो आप इसे इस नए उदाहरण की एएमआई छवि बनाना चाहते हैं।

9- चरण 8 में बनाई गई नई आवृत्ति एएमआई आईडी लें और इसे अपने बीनस्टॉक एप्लिकेशन कॉन्फ़िगरेशन पर लागू करें।

10- यह पुराने इंस्टेंस को डिलीट नहीं करेगा और आपके कस्टमाइज़ किए गए AMI के साथ नया इंस्टेंस बनाएगा और नए इंस्टेंस पर आपके नवीनतम एप्लिकेशन को भी तैनात करेगा।


1
मुझे लगता है कि आपने प्रश्न को गलत समझा। मैंने यह नहीं पूछा कि एक कस्टम एएमआई कैसे बनाया और उपयोग किया जाता है, मैंने पूछा कि कैसे पता करें कि नवीनतम डिफ़ॉल्ट इलास्टिक बीनस्टॉक एएमआई आईडी क्या है जिसे आप एक नया वातावरण बनाते समय लागू किया जाता है, और यदि संभव हो, तो नए एएमआई को स्वचालित रूप से कैसे लागू किया जाए। जब यह AWS द्वारा जारी किया जाता है।
बेंजामिन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.