रीबूट पर एक अमेज़ॅन ईसी 2 इंस्टेंस के आईपी पते को कैसे ढूंढें, अमेज़ॅन इंस्टेंस के आईपी पते में परिवर्तन होता है। जावा एपीआई का उपयोग कर नया आईपी पता कैसे खोजें?रीबूट
रीबूट
उत्तर
मान लें कि आप एक लचीला आईपी पते आवंटित करने के लिए नहीं करना चाहते हैं (और वहाँ कारण हैं यह हमेशा एक समाधान नहीं है) तो बस रिबूट उदाहरण हैं, जिनमें से एक गुच्छा रिटर्न पर DescribeInstances
फोन सार्वजनिक आईपी पते सहित जानकारी।
इस विषय पर AWS EC2 Java API Documentation है।
मैंने आपको आठ-बिट-गुरु को उखाड़ फेंक दिया। क्या आप तुरंत एलैस्टिकिप को जोड़ने के लिए आखिरी बनाए गए इंस्टेंस के इंस्टेंस आईडी प्राप्त करने के किसी भी आसान तरीके से जानते हैं? मेरे ज्ञान के लिए इसे 'ec2-run-instances' से लौटाई गई जानकारी को पार्स करना होगा या' aws ec2 रन-इंस्टेंस 'से वापसी JSON के साथ बैश का उपयोग करके JSON को पार्स करना होगा। अतिरिक्त निर्भरताओं से बचने की कोशिश कर रहा है। – JohnAllen
उपरोक्त 'DescribeInstances' कमांड को स्पष्ट करने के लिए, मैं इसका उपयोग करना चाहता हूं:' aws ec2 वर्णन-उदाहरण | grep "वैल्यू \ | PublicIpAddress" '(बेशक आपको aws cli इंस्टॉल की आवश्यकता होगी) – modulitos
धन्यवाद, गुमनाम डाउनवॉटर। मेरे छः वर्षीय स्वीकृत उत्तर को दंडित करके थोड़ा सा मेरे प्रतिनिधि को कम करने का आपका कारण इतना स्पष्ट रूप से स्पष्ट है कि कोई टिप्पणी की आवश्यकता नहीं है! –
उदाहरण को रीबूट करने और स्क्रैच से लॉन्च नहीं करने से आप एक लोचदार आईपी असाइन कर सकते हैं जो हमेशा ec2 इंस्टेंस के साथ रहता है (जब तक कि आप आईपी को दूसरे सर्वर पर नहीं ले जाते)। यह आपको अपने सभी DNS को उस आईपी पर इंगित करने की अनुमति देता है और चिंता न करें कि रीबूट आपको समस्याएं देगा।
मुझे लगता है कि आपकी पूछताछ क्या है लेकिन अन्य चीजें हैं जो आप पूछ सकते हैं। सर्वर का आंतरिक आईपी बदलता है (यदि आप आवृत्ति को रीबूट नहीं करते हैं) और आप इसे 'आरक्षित' नहीं कर सकते हैं, तो आपको नया आईपी रखने के लिए आपको एक स्क्रिप्ट बनाने की आवश्यकता हो सकती है (यदि आपकी ओर इशारा करते हुए आंतरिक सेवाएं)।
आशा व्यक्त की कि मदद करता है
रीबूट पर, ईसी 2 उदाहरण के आईपी पते परिवर्तन नहीं करते हैं। वे आम तौर पर गैर-वीपीसी ईबीएस बूट इंस्टेंस के स्टॉप/स्टार्ट पर बदलते हैं।
अपने संबंधित सवाल यहाँ करने के लिए अपने जवाब देखें:
कहा, आप अपने विशेष भाषा में DescribeInstances के लिए API कॉल के माध्यम से निजी और सार्वजनिक IP पते पा सकते हैं।
आप उदाहरण पर ही कर रहे हैं, तो आप भी सरल HTTP का उपयोग कर उपयोगकर्ता के डेटा एपीआई के माध्यम से IP पते पा सकते हैं:
http://instance-data/latest/meta-data/local-ipv4
http://instance-data/latest/meta-data/public-ipv4
उदाहरण के लिए,
wget -qO- http://instance-data/latest/meta-data/public-ipv4
Elastic IP addresses के लिए सिफारिश कर रहे हैं किसी विशेष सेवा या सर्वर के लिए बाहरी (स्थिर) बाहरी आईपी पते का सामना करना। स्टॉप/स्टार्ट के बाद इन्हें दोबारा आवंटित करने की आवश्यकता है (लेकिन रीबूट के बाद नहीं)।
यह एक ठोस पूर्ण उत्तर है। "Wget" विशिष्ट सही उत्तर प्रदान करता है और आसपास के गद्य भी सहायक/उपयोगी है। – javadba
curl http://169.254.169.254/latest/meta-data/public-ipv4
यह स्वीकार्य उत्तर होना चाहिए, और वे दस्तावेज़ों में जो भी कहते हैं वह भी है। http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html – jontsai
वह अजीब आईपी क्या है? क्या यह अज्ञात आईपी को किसी के सर्वर से कॉल करने का सुरक्षा खतरा है? : डी मैं एक संपादन कि आईपी समझा सुझाव दिया और लगता है कि यह स्वीकार नहीं किया गया –
@RavindranathAkila नहीं, तो आप इस आदेश अपने EC2 उदाहरण –
यह कैसे मैं एक Ubuntu 12.04 EC2 उदाहरण पर यह किया एक VPC के भीतर है:
curl ifconfig.me
यकीन है कि क्यों, लेकिन सार्वजनिक-आईपीवी 4 मेटा डेटा यूआरएल के तहत नहीं मिला था नहीं
मैं इस कोशिश की अंदर से उपयोग कर सकते हैं: यह कोई जवाब नहीं CentOS 7 – javadba
वर्क्स के साथ लटका हुआ है यह वास्तव में बेहतर काम किया। उपर्युक्त उत्तर/सार्वजनिक-आईपीवी 4 हाल ही में काम कर रहा था, अगर एडब्ल्यूएस ने कुछ बदल दिया या ईएलबी के माध्यम से यातायात को सीमित कर दिया तो कोई फर्क नहीं पड़ता, लेकिन मुझे अपने लोचदार आईपी दोनों उदाहरणों पर वापस रिपोर्ट कर रही थी। कर्ल चेकिप ने हालांकि यह सही ढंग से किया, एक पर मेरा लोचदार आईपी और दूसरे पर एक यादृच्छिक असाइन किया गया। –
उदाहरण के सार्वजनिक आईपी को लाने के लिए आपको पहले उस उदाहरण की इंस्टेंस आईडी प्राप्त करने की आवश्यकता है। आप निम्नलिखित जावा कोड का उपयोग करके इंस्टेंस की इंस्टेंस आईडी प्राप्त कर सकते हैं।
List<Instance> instances = runInstancesResult.getReservation().getInstances();
String instanceId = instances.get(0).toString().substring(13, 23);
और अब सार्वजनिक आईपी प्राप्त करने के लिए आप निम्नलिखित जावा कोड का उपयोग कर सकते हैं।
public void fetchInstancePublicIP() {
DescribeInstancesRequest request = new DescribeInstancesRequest().withInstanceIds("i-d99ae7d2");
DescribeInstancesResult result= ec2.describeInstances(request);
List <Reservation> list = result.getReservations();
for (Reservation res:list) {
List <Instance> instanceList= res.getInstances();
for (Instance instance:instanceList){
System.out.println("Public IP :" + instance.getPublicIpAddress());
System.out.println("Public DNS :" + instance.getPublicDnsName());
System.out.println("Instance State :" + instance.getState());
System.out.println("Instance TAGS :" + instance.getTags());
}
}
}
उनके पास उपयोग कक्षा है जो ईसी 2 मेटाडेटा तक पहुंच की सुविधा प्रदान करती है। उदाहरण के लिए
EC2MetadataUtils.getNetworkInterfaces().get(0).getPublicHostname();
EC2MetadataUtils.getNetworkInterfaces().get(0).getPublicIPv4s();
आप इसका उपयोग कर सकते हैं।
var ipofnewServer = string.Empty;
while (string.IsNullOrEmpty(ipofnewServer))
{
var statusRequest1 = new DescribeInstancesRequest
{
InstanceIds = new List<string>() { instanceId }
};
var result = amazonEc2client.DescribeInstances(statusRequest1);
var status = result.Reservations[0].Instances.FirstOrDefault();
if (status != null)
{
ipofnewServer = status.PublicIpAddress;
}
}
सार्वजनिक IPv4 पता तो जैसे भी EC2 उदाहरण से उपलब्ध है:
curl checkip.amazonaws.com
और सार्वजनिक होस्ट नाम है:
dig -x $(curl -s checkip.amazonaws.com) +short
पर –
- 1. रीबूट
- 2. रीबूट
- 3. रीबूट
- 4. एंड्रॉइड एमुलेटर रीबूट/पावर
- 5. विंडोज सेवा रीबूट
- 6. एंड्रॉइड, फोन रीबूट
- 7. रेल वर्तमान में रीबूट
- 8. लिथॉन ctypes रीबूट() को लिनक्स
- 9. मैं विंडोज़ अंतिम रीबूट कारण
- 10. जेवीएम को "रीबूट" करने का कोई तरीका?
- 11. वाईफाई कॉन्फ़िगरेशन और कनेक्टेड नेटवर्क को रीबूट
- 12. नियमित सर्वर रीबूट के लाभ और हिंसा
- 13. एंड्रॉइड फोन अनइंस्टॉल करने पर रीबूट
- 14. विंडोज अंतिम रीबूट टाइमस्टैम्प प्राप्त करें?
- 15. एंड्रॉइड 2.2: रीबूट डिवाइस प्रोग्रामेटिक रूप से
- 16. रीबूट में CouchDB के साथ स्थायी निरंतर प्रतिकृति
- 17. यह पता लगाएं कि विंडोज़ रीबूट विंडोज अपडेट
- 18. ओएस रीबूट, शटडाउन, हाइबरनेट, सो जाओ, वेकअप (विंडोज अजगर)
- 19. बटन पर रीबूट करें बटन पर क्लिक करें
- 20. डिवाइस को रीबूट किए बिना होम बटन को अक्षम करें
- 21. क्या अलार्म प्रबंधक रीबूट के बाद भी जारी रहता है?
- 22. एक राख खोल से रीबूट कैसे करता है?
- 23. जब मैं ईसी 2 इंस्टेंस रीबूट करता हूं तो क्या होता है?
- 24. मैं विंडोज अपडेट रीबूट प्रॉम्प्ट से कैसे छुटकारा पा सकता हूं?
- 25. आईआईएस: वेब एप्लिकेशन को समय-समय पर सिस्टम रीबूट की आवश्यकता होती है
- 26. बैश/साइगविन/$ पाथ: क्या मुझे वास्तव में $ पाथ बदलने के लिए रीबूट करना है?
- 27. रीबूट के बीच GoogleAppEngineLauncher के लिए मैं स्थानीय डेटास्टोर कैसे बना सकता हूं?
- 28. लिनक्स रीबूट() सिस्टम कॉल: यह kernel_halt() के बाद do_exit (0) क्यों कॉल करता है?
- 29. एंड्रॉइड वेबव्यू या ब्राउजर डिवाइस रीबूट पर सत्र कुकीज़ को हटा नहीं रहा
- 30. क्या फ़ोन रीबूट के बाद मुझे लॉगकैट लॉग मिल सकता है?
आप एक निश्चित लोचदार आईपी क्यों नहीं सौंपते हैं ? – okrasz