2011-09-21 13 views
13

मैंने ईसी 2 इंस्टेंस से इंस्टेंस-आईडी प्राप्त करने के लिए यह आदेश चलाया, अनुरोध कैसे संसाधित किया गया और सेवा कैसे जानती है कि कौन सा विवरण वापस भेजना है?अमेज़ॅन ईसी 2 इंस्टेंस मेटाडाटा

wget -q -O - http://169.254.169.254/latest/meta-data/instance-id

धन्यवाद

उत्तर

24

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

चूंकि ईसी 2 डोम 0 होस्ट वर्चुअल मशीन में चल रहे आपके इंस्टेंस द्वारा देखे गए नेटवर्क स्टैक को नियंत्रित करता है, ईसी 2 नेटवर्क ट्रैफिक को 16 9.254.169.254 को किसी भी तरह से संभाल सकता है।

इस मामले में, ईसी 2 जानता है कि कौन सा उदाहरण अनुरोध कर रहा है (चाहे वह ईसी 2 द्वारा नियंत्रित आपके आंतरिक आईपी पते पर आधारित है या इस तथ्य के आधार पर कि dom0 होस्ट अनुरोध को संसाधित कर सकता है इससे पहले कि यह भी भेजा जा सके नेटवर्क)।

तो, ईसी 2 जानता है कि कौन सा उदाहरण अनुरोध कर रहा है और ईसी 2 प्रत्येक उदाहरण के बारे में सारी जानकारी जानता है, इसलिए ईसी 2 इंस्टेंस आईडी सहित अनुरोध किए गए मेटा-डेटा को वापस कर सकता है।

अमेज़ॅन ने बिल्कुल प्रकाशित नहीं किया है कि उन्होंने इस सुविधा को कैसे कार्यान्वित किया है, लेकिन वे गारंटी देते हैं कि यह अनुरोध करने वाले उदाहरण के लिए सही डेटा लौटाएगा और किसी और के हस्तक्षेप की संभावना नहीं होगी।

आप उपलब्ध EC2 मेटाडाटा के बारे में अधिक सीख सकते हैं:

http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?AESDG-chapter-instancedata.html

जादू आईपी पते 169.254.169.254 और इसी मेटाडेटा URL एक EC2 उदाहरण के बाहर काम नहीं करेगा, जब तक कि आप ईसी 2 अनुकरण करने की कोशिश कर रहे सिस्टम पर चलने वाले न हों।

5

आप उपयोग कर सकते हैं ec2metadata

ec2metadata --instance-id 
+0

ec2metadata यहाँ डाउनलोड किया जा सकता है: http://s3.amazonaws.com/ec2metadata/ec2-metadata (chmod + x) – John

+1

मात्रा-आईडी उदाहरण के साथ जुड़े मैं कैसे मिलता है -id –

+1

यदि आप इस ec2metadata कमांड के स्रोत को देखते हैं, तो यह मेटाडेटा यूआरएल http://169.254.169.254/latest/meta-data/ पर कर्ल को कॉल करता है। –

संबंधित मुद्दे