amazon web services - certification - अमेज़ॅन ईसी 2/एसईएस एसएमटीपी टाइमआउट




aws console (2)

मुझे एसईएसटी के एसएमटी का उपयोग करके अपने ईसी 2 इंस्टेंस से ईमेल भेजने का प्रयास करते समय एक समस्या है। किसी कारण से मुझे स्पोराडिक टाइमआउट समस्याएं मिल रही हैं, जहां मैं अब SMTP होस्ट से संपर्क नहीं कर सकता। यह ध्यान रखना महत्वपूर्ण है कि एसईएस के माध्यम से भेजना शायद 75% समय काम करता है।

मैं कुछ विवरणों से शुरू करूंगा। मेरा एसईएस खाता ज्यादातर समय काम कर रहा है। प्रेषक ईमेल सत्यापित किया गया है, और मेरी सीमा 10k / दिन, 5 ईमेल / सेकंड तक बढ़ा दी गई है। मैं इस धारणा के तहत हूं कि अगर सीमा से संबंधित था तो मुझे सीमा-विशिष्ट त्रुटि मिल जाएगी। मेरे एसएमटीपी विन्यास के लिए, मैं पॉज़िक्स डब्ल्यू / टीएलएस का उपयोग कर रहा हूं। मैंने आधिकारिक एडब्ल्यूएस एसईएस मंचों पर एक बहुत ही समान पोस्ट पोस्ट की है, लेकिन अभी तक कोई सफलता नहीं मिली है। उस पोस्ट के लिए जानकारी इस पोस्ट के नीचे है।

आज सुबह से विफलता का एक उदाहरण यहां दिया गया है। नीचे दिए गए सभी आदेश ईसी 2 उदाहरण से चलाए गए थे कि मैं मेल भेजने की कोशिश कर रहा हूं। उपन्यास आकार के पोस्ट के लिए खेद है, मैं बस यह सुनिश्चित करना चाहता हूं कि मैं सब कुछ शामिल करूँ।

एक ईमेल जो मैंने स्वयं भेजा था उसे वितरित नहीं किया जा रहा था:

Jun 25 06:16:36 intranet01 postfix/smtp18832: 9E00C230DA: to=<myemailaddress>, relay=none, delay=150, delays=0.02/0.01/150/0, dsn=4.4.1, status=deferred (connect to email-smtp.us-east-1.amazonaws.comhttp://107.22.187.122:25: Connection timed out)

और जब मैंने विफलता देखी तो मैंने पोर्ट 25 पर ईमेल होस्ट से कनेक्ट करने का प्रयास किया। मैं कनेक्ट नहीं कर सका:

[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25  
Trying 174.129.28.151...  
^C

कुछ मिनट बाद मेरा स्थगित ईमेल अंततः चला गया:

Jun 25 06:23:14 intranet01 postfix/smtp18861: 9E00C230DA: to=<myemailaddress>, relay=email-smtp.us-east-1.amazonaws.comhttp://184.73.218.23:25, delay=548, delays=548/0.02/0.21/0.36, dsn=2.0.0, status=sent (250 Ok 0000013823cf7441-83710873-e946-4c80-8a54-0dd72bae6f30-000000)
Jun 25 06:23:14 intranet01 postfix/qmgr3972: 9E00C230DA: removed

और अब मैं पोर्ट 25 से कनेक्ट कर सकता हूं:

[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25  
Trying 107.20.152.208...  
Connected to email-smtp.us-east-1.amazonaws.com.  
Escape character is '^]'.  
220 email-smtp.amazonaws.com ESMTP SimpleEmailService-222567251  
^]

किक्स के लिए, मैंने एसईएस होस्ट एंडपॉइंट को देखने का फैसला किया। यह पता चला है कि यह सिर्फ एक ईएलबी नाम है, जिसमें एक रिकॉर्ड है जो एकाधिक एजेड में इंटरफेस को इंगित करता है।

[email protected] sbin# dig email-smtp.us-east-1.amazonaws.com  

; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.17.amzn1 <<>> email-smtp.us-east-1.amazonaws.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8592
;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:  
;email-smtp.us-east-1.amazonaws.com. IN A  

;; ANSWER SECTION:  
email-smtp.us-east-1.amazonaws.com. 54 IN CNAME ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com.  
ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com. 60 IN A 174.129.200.82  
ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com. 60 IN A 184.73.219.75  
ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com. 60 IN A 107.20.152.208  
ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com. 60 IN A 107.20.160.81  
ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com. 60 IN A 107.20.203.50  
ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com. 60 IN A 107.22.229.233 
ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com. 60 IN A 174.129.6.189  
ses-smtp-prod-335357831.us-east-1.elb.amazonaws.com. 60 IN A 174.129.28.151

मैंने एक और संदेश भेजने की कोशिश की और यह असफल रहा। इस बार मैंने प्रत्येक रिकॉर्ड पते के माध्यम से looped कि एसईएस cname वापस आ गया। मैं उनमें से किसी से कनेक्ट नहीं कर सका। इस समय के दौरान मैंने अपनी स्थानीय मशीन से कनेक्ट करने का भी प्रयास किया (मेरा ईसी 2 उदाहरण नहीं), और यह ठीक काम करता था।

[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 174.129.28.151...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 174.129.6.189...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 107.22.229.233...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 107.20.203.50...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 107.20.160.81...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 107.20.152.208...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 184.73.219.75...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 174.129.200.82...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 174.129.28.151...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 174.129.6.189...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 107.22.229.233...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 107.20.203.50...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 107.20.179.13...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 107.20.160.81...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 184.73.219.75...
^C
[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 174.129.200.82...
^C

लगभग 30 सेकंड इंतजार करने के बाद मैंने फिर कोशिश की, इस बार यह काम किया।

[email protected] sbin# telnet email-smtp.us-east-1.amazonaws.com 25
Trying 174.129.28.151...
Connected to email-smtp.us-east-1.amazonaws.com.
Escape character is '^]'.
220 email-smtp.amazonaws.com ESMTP SimpleEmailService-222567251
^C^[
^]

telnet>

जैसा कि मैंने पहले बताया था, मैंने एडब्ल्यूएस एसईएस मंच पर एक बहुत ही समान पोस्ट पोस्ट किया था। पद नीचे पाया जा सकता है।

https://forums.aws.amazon.com/thread.jspa?threadID=97736&tstart=0

साथ ही, ऐसा लगता है कि मैं अकेला नहीं हूं, क्योंकि मुझे एसईएस मंच पर यह अन्य पोस्ट मिली है, वही समस्या दिखती है।

https://forums.aws.amazon.com/thread.jspa?threadID=91260&tstart=0

मैंने सोचा कि ईसी 2 एसएमटीपी सीमा का कुछ प्रकार हो सकता है, इसलिए मैंने "ईसी 2 से ईमेल भेजना" अनुरोध फ़ॉर्म भर दिया, लेकिन यह मुझे मूर्खतापूर्ण लगता है क्योंकि मैं तीसरी पार्टी के विरोध में अमेज़ॅन की सेवा का उपयोग कर रहा हूं। अब तक फॉर्म भरने के बाद मैंने अमेज़ॅन से कुछ भी नहीं सुना है।

क्या किसी के पास कोई विचार है? अग्रिम में धन्यवाद।


तो स्पष्ट रूप से ईसी 2 की अपनी सीमाएं हैं। मैंने माना (गलत तरीके से) कि एसईएस में उत्पादन पहुंच होने का मतलब ईसी 2 से एसएमटीपी सीमाओं को भी आराम से करना होगा, लेकिन क्योंकि वे दो पूरी तरह अलग उत्पादों हैं, मुझे लगता है कि ऐसा नहीं है।

लेकिन जैसा कि मैंने अपनी पोस्ट के अंतिम पैराग्राफ में कहा है, आप इन सीमाओं को बढ़ाने के लिए ईमेल भेजने की सीमाओं को निकालने का अनुरोध कर सकते हैं। मैंने ऐसा किया और समस्या बंद हो गई (मेरी सीमाओं को हटाने के लिए उन्हें लगभग 5 घंटे लग गए)।

अद्यतन करें

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

जरूरी

लोचदार कम्प्यूट क्लाउड (ईसी 2) डिफ़ॉल्ट रूप से पोर्ट 25 पर ईमेल ट्रैफिक थ्रॉटल करता है। ईसी 2 से एसएमटीपी एंडपॉइंट के माध्यम से ईमेल भेजते समय टाइमआउट से बचने के लिए, एक अलग पोर्ट (587 या 2587) का उपयोग करें या थ्रॉटल को हटाने के लिए ईमेल भेजने की सीमाएं निकालने का अनुरोध भरें।

सावधान रहें कि यह थोड़ा पुराना हो सकता है, एडब्ल्यूएस प्रबंधन कंसोल और सेक्शन दोनों के बीच अमेज़ॅन एसईएस एसएमटीपी मुद्दे अधिक आम वैकल्पिक बंदरगाहों का जिक्र कर रहे हैं 465 और 587 केवल:

आप अमेज़ॅन एसईएस को पोर्ट 25 के माध्यम से अमेज़ॅन ईसी 2 इंस्टेंस से भेज रहे हैं और आप अपने अमेज़ॅन एसईएस को सीमा भेज नहीं सकते हैं या आप समय निकाल रहे हैं - अमेज़ॅन एसईएस ईसी 2 पोर्ट 25 के माध्यम से भेजे गए ईमेल पर डिफ़ॉल्ट प्रेषण सीमा लगाता है और यदि आप प्रयास करते हैं तो थ्रॉटल आउटबाउंड कनेक्शन उन सीमाओं को पार करने के लिए। इन सीमाओं को हटाने के लिए, ईमेल भेजने की सीमाएं निकालने का अनुरोध सबमिट करें। आप पोर्ट 465 या पोर्ट 587 के माध्यम से अमेज़ॅन एसईएस से भी कनेक्ट कर सकते हैं, जिनमें से कोई भी थ्रॉटल नहीं है।


यदि आप एक Django ऐप चला रहे हैं और संदेह है कि स्टीफन का जवाब कारण हो सकता है - यहां एक त्वरित लिटमस परीक्षण है:

In [1]: from django.core.mail.backends.smtp import EmailBackend
In [2]: from django.core.mail import EmailMultiAlternatives
In [3]: message = EmailMultiAlternatives(
   ...:     subject='testing the rate limit',
   ...:     body='this is a test',
   ...:     to=['[email protected]'],
   ...:     from_email='[email protected]',
   ...: )
In [4]: backend_587 = EmailBackend(port=587)
In [5]: backend_25 = EmailBackend(port=25)
In [6]: backend_587.send_messages([message])
Out[6]: 1
In [7]: backend_25.send_messages([message])  # hangs for a long time. Might even timeout

पोर्ट 25 से ईमेल भेजना लटका चाहिए। 587 से ईमेल भेजना जल्दी भेजना चाहिए।





amazon-ses