मैंने अभी अमेज़न के नए इलास्टिक बीनस्टॉक ऑफर के लिए साइन अप किया है। मैं यह कैसे पता नहीं कर सकता कि एसएसएच एक बीनस्टॉक उदाहरण के लिए कैसे है। मेरे पास एक निजी कुंजी नहीं है क्योंकि बीनस्टॉक ने मेरी ओर से उदाहरण प्रस्तुत किया है।
eb ssh
मैंने अभी अमेज़न के नए इलास्टिक बीनस्टॉक ऑफर के लिए साइन अप किया है। मैं यह कैसे पता नहीं कर सकता कि एसएसएच एक बीनस्टॉक उदाहरण के लिए कैसे है। मेरे पास एक निजी कुंजी नहीं है क्योंकि बीनस्टॉक ने मेरी ओर से उदाहरण प्रस्तुत किया है।
eb ssh
जवाबों:
मैंने इसे 2-चरणीय प्रक्रिया के रूप में पाया। यह मानता है कि संबंधित क्षेत्र में EC2 उदाहरणों तक पहुँचने के लिए आपने पहले से ही एक कीपर लगाई है।
elasticbeanstalk-default
यदि आपके पास उस क्षेत्र में इलास्टिक बीनस्टॉक उदाहरण लॉन्च किया है, तो आपके पास एक सुरक्षा समूह होना चाहिए ।SSH पहुंच के लिए एक नियम जोड़ने के लिए सुरक्षा समूह को संपादित करें। नीचे यह केवल एक विशिष्ट आईपी पते से प्रवेश की अनुमति देने के लिए इसे बंद कर देगा।
SSH | tcp | 22 | 22 | 192.168.1.1/32
Existing Key Pair
क्षेत्र में अपनी कीपेयर के नाम का चयन करें । एक बार उदाहरण स्थानांतरित हो जाने के बाद, आपको होस्ट नाम AWS कंसोल EC2 इंस्टेंसेस टैब से या API के माध्यम से प्राप्त करना होगा। फिर आपको सर्वर पर ssh करने में सक्षम होना चाहिए।
$ ssh -i path/to/keypair.pub ec2-user@ec2-an-ip-address.compute-1.amazonaws.com
नोट: पर्यावरण विन्यास में एक कीपर को जोड़ने के लिए, इंस्टेंसेस की समाप्ति की सुरक्षा बंद होनी चाहिए क्योंकि बीनस्टॉक वर्तमान उदाहरणों को समाप्त करने और कीपर के साथ नए इंस्टेंस को शुरू करने की कोशिश करेगा।
नोट: यदि कुछ काम नहीं कर रहा है, तो बीनस्टॉक एप्लिकेशन / वातावरण में "ईवेंट" टैब देखें और पता करें कि क्या गलत हुआ।
लोचदार बीनस्टॉक सीएलआई v3 अब कमांड के साथ सीधे एसएसएच का समर्थन करता है eb ssh
। उदाहरण के लिए
eb ssh your-environment-name
EC2 उदाहरण पता लगाने के सुरक्षा समूहों को स्थापित करने की सभी परेशानी के लिए कोई ज़रूरत नहीं है।
वहाँ भी इस शांत चाल है:
eb ssh --force
यह अस्थायी रूप से पोर्ट 22 को 0.0.0.0 के लिए खुलेगा, और इसे तब तक खुला रखें जब तक आप इसे खोल न दें exit
। इस मिश्रण में थोड़ा शीर्ष जवाब के लाभों में से, परेशानी के बिना। आप अस्थायी रूप से डिबगिंग और व्हाट्सएप के लिए अपने अलावा किसी और को अनुदान दे सकते हैं। बेशक आपको उनकी पहुंच के लिए उनकी सार्वजनिक कुंजी को होस्ट पर अपलोड करना होगा। एक बार जब आप ऐसा करते हैं (और जब तक आप अंदर हैं eb ssh
), तो दूसरा व्यक्ति कर सकता है
ssh ec2-user@ec2-xx-xxx-xxx-xx.compute-1.amazonaws.com
eb ssh production
। आप सेटअप विकल्प के साथ एक विशिष्ट वातावरण भी सेट कर सकते हैं:eb ssh production --setup
अगस्त 2013 में एक linux क्लाइंट और एक साधारण AWS बीनस्टॉक इंस्टालेशन (एकल EC2 उदाहरण) के साथ मेरा अनुभव निम्नानुसार है (ऊपर सामुदायिक विकी पर आधारित)
awsweb...
सुरक्षा समूह का चयन करें और विवरण पृष्ठ के आधार पर दिखाना चाहिएसौभाग्य
मैं इसके साथ भी खेलता रहा हूं।
सेवा को फिर से शुरू किया जाएगा ताकि 5 मिनट के लिए कॉफी बनाई जा सके
उसी क्षेत्र के लिए अपने ec2 टैब पर आप अपना नया रनिंग इंस्टेंस देखेंगे। ssh ने सार्वजनिक dns नाम को ec2-user के रूप में उपयोग किया जो कि 3 में जोड़े गए जैसे ssh ec2-user@ec2-xx-xxx-xx-xxx.compute-1.amazonaws.com
उपरोक्त उत्तर थोड़े पुराने हैं।
सबसे पहले एक की-पेयर बनाएं और फिर इसे इलास्टिक बीनस्टॉक वातावरण में संलग्न करें।
की-जोड़ी बनाने के लिए कदम
इलास्टिक बीनस्टॉक पर्यावरण के लिए महत्वपूर्ण जोड़ी बनाने के लिए कदम
AWS -> सेवाएं -> लोचदार बीनस्टॉक
अपने वातावरण का चयन करें और बाईं ओर कॉन्फ़िगरेशन पर क्लिक करें।
कॉन्फ़िगरेशन अवलोकन में सुरक्षा से संशोधित करें का चयन करें।
वर्चुअल मशीन अनुमतियों के तहत हमने बनाया कुंजी-जोड़ी का चयन करें।
Save पर क्लिक करें और फिर save कॉन्फ़िगरेशन पर।
आपके EC2 उदाहरण को दर्शाने में कुछ समय लगेगा।
यदि आप लोचदार बीन और ईबी सीएलआई का उपयोग कर रहे हैं, तो eb ssh
उदाहरण के लिए लॉगिन करने के लिए उपयोग करें। आप नीचे दिए गए लिंक http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-ssh.html में निर्दिष्ट विकल्पों का उपयोग कर सकते हैं
आपको अपने सार्वजनिक आईपी पते का उपयोग करके सीधे ec2 उदाहरण से कनेक्ट करने की आवश्यकता है। आप इलास्टिकबेस्टल यूआरएल का उपयोग करके कनेक्ट नहीं कर सकते।
आप उदाहरण के लिए IP2 को ec2 कंसोल में देख कर पता कर सकते हैं।
आपको यह भी सुनिश्चित करना होगा कि पोर्ट 22 खुला है। डिफ़ॉल्ट रूप से EB सीएलआई एक ssh कनेक्शन पूरा होने के बाद पोर्ट 22 को बंद कर देता है। Ssh सत्र पूरा होने के बाद पोर्ट को खुला रखने के लिए आप eb ssh -o कह सकते हैं।
चेतावनी: आपको पता होना चाहिए कि लोचदार बीनस्टॉक कभी भी आपके उदाहरण को बदल सकता है। आपके किसी भी लोचदार बीनस्टॉक उदाहरणों पर राज्य की गारंटी नहीं है। इसका शायद परीक्षण और डिबगिंग उद्देश्यों के लिए ssh का उपयोग करना बेहतर है, क्योंकि आप जो भी संशोधित करते हैं वह किसी भी समय दूर जा सकता है।
वर्तमान UI के साथ ElasticBeanstalk ec2 उदाहरण के लिए की-जोड़ी सेट करने की दिशा है: चेतावनी: इसके लिए आपके ElasticBeanstalk App में EC2 उदाहरणों के अपडेट की आवश्यकता होगी। नोट: आपको इससे पहले EC2 डैशबोर्ड में एक की-जोड़ी बनानी होगी।
1) AWS डैशबोर्ड में, ElasticBeanstalk सेवा का चयन करें 2) उस एप्लिकेशन का चयन करें जिसका आप उपयोग करना चाहते हैं। 3) 'कॉन्फ़िगरेशन' का चयन करें 4) 'इंस्टेंस' कॉन्फ़िगरेशन बॉक्स पर गियर (सेटिंग्स) आइकन चुनें। 5) यह आपको 'सर्वर' नाम के एक पृष्ठ पर ले जाएगा, जहाँ आप अपनी वांछित कुंजी-जोड़ी के साथ 'EC2 कुंजी जोड़ी' ड्रॉप-डाउन फ़ील्ड को अपडेट कर सकते हैं और 'सेव' चुन सकते हैं।
ध्यान देने वाली एक बात यह है कि यह कई उदाहरणों वाले एप्लिकेशन के लिए काम नहीं कर सकता है (लेकिन मेरा मानना है कि यह संभावना है कि यदि वे कुंजी-जोड़ी के समान क्षेत्र में हैं)।
मैं यहाँ आया हूँ कि प्रोविजनिंग के दौरान बीनस्टॉक क्रिएट करने के लिए एक कुंजी जोड़ने का रास्ता खोज रहा है (हम टेराफॉर्म का उपयोग कर रहे हैं)। आप टेराफॉर्म में निम्न कार्य कर सकते हैं:
resource "aws_elastic_beanstalk_environment" "your-beanstalk" {
...
setting {
namespace = "aws:autoscaling:launchconfiguration"
name = "EC2KeyName"
value = "${aws_key_pair.your-ssh-key.key_name}"
}
...
}
फिर आप उस कुंजी को SSH बॉक्स में उपयोग कर सकते हैं।
यदि आपने eb init
अपने पर्यावरण का उपयोग करते हुए सीएलआई की स्थापना की है तो यह उतना ही सरल होना चाहिए
eb ssh --setup
जो आपको एक नई कुंजी जोड़ी बनाने या मौजूदा एक का उपयोग करने की अनुमति देगा यदि कोई मौजूद है।
आप मौजूदा वातावरण से भी जुड़ सकते हैं, eb use
हालांकि मैंने ऐसा नहीं किया है।
CLI स्थापित करने के विवरण के लिए - https://docs.aws.amazon.com/console/elasticbeanstalk/eb-li-install
आपके पर्यावरण कॉन्फ़िगरेशन के आधार पर, आपके EC2 उदाहरण पर सार्वजनिक IP पता नहीं हो सकता है जो आपके वातावरण के लिए बनाया गया था। आप द्वारा जाँच कर सकते हैं:
अंत में, अपना नया ईआईपी चुनें और एक्शन मेनू से एसोसिएट एड्रेस चुनें। अपने EC2 उदाहरण के साथ उस IP को संबद्ध करें। आपको eb ssh
अभी का उपयोग करके कनेक्ट करने में सक्षम होना चाहिए ।
आप कनेक्शन विवरण चलाकर रीसेट कर सकते हैं eb ssh --setup
।
मैं भी थोड़ी देर पहले उसी समस्या में भाग गया। मैं कुंजी फ़ाइल का उपयोग करना चाहता था, लेकिन अमेज़ॅन कहीं कहता है कि आप मौजूदा EC2 सर्वर में एक कुंजी फ़ाइल नहीं जोड़ सकते। पहला बीनस्टॉक आवेदन के लिए, अमेज़ॅन आपके लिए आवेदन को पूर्व-निर्धारित करता है। आपको एक नया एप्लिकेशन बनाने की आवश्यकता है, और आप EC2 सर्वर को कॉन्फ़िगर कर सकते हैं जो एक पुरानी pem फाइल (अगर पोट्टी का उपयोग करके ppk) का उपयोग करने के लिए बीनस्टॉक ऐप चलाता है, या आप एक नया बना सकते हैं। अब आपको एसएसएच करने में सक्षम होना चाहिए।
फिर कॉन्फ़िगर करें, फिर अपना पुराना ऐप हटाएं।