2015-01-03 21 views
34

क्या एडब्ल्यूएस लैम्ब्डा फ़ंक्शन से रेडिस एलिस्टी कैश क्लस्टर में कनेक्ट करना संभव है?एडब्ल्यूएस लैम्ब्डा फ़ंक्शन से ElastiCache क्लस्टर से कनेक्ट करें

मैं यह नहीं समझ सकता कि यह कॉन्फ़िगरेशन समस्या है या यह संभव नहीं है।

पीएस: मैंने ईसी 2 इंस्टेंस से एक परीक्षण किया और मैं रेडिस नोड से कनेक्ट कर सकता हूं। इसके अलावा लैम्ब्डा फ़ंक्शन और रेडिस नोड एक ही क्षेत्र में हैं।


अद्यतन (09 अक्टू 2015):

अमेज़न एडब्ल्यूएस Lambda प्रकार्य के लिए VPC की घोषणा की। Details here

इसका मतलब है कि अब हम एल्स्टी कैश और आरडीएस मशीनों सहित वीपीसी सुरक्षा समूह के पीछे एडब्ल्यूएस में किसी भी संसाधन तक पहुंच सकते हैं।

अद्यतन (11 फ़रवरी 2016): अमेज़ॅन ने एडब्ल्यूएस लैम्ब्डा के लिए वीपीसी लॉन्च किया।

https://aws.amazon.com/about-aws/whats-new/2016/02/access-resources-within-a-vpc-using-aws-lambda/

+0

लैम्ब्डा से बाहरी सेवा तक कनेक्ट करने के लिए कोई तकनीकी प्रतिबंध नहीं है। यदि आप तृतीय पक्ष पुस्तकालयों का उपयोग कर रहे हैं, तो आपको उन्हें अपनी ज़िप फ़ाइल में शामिल करना होगा और इन पुस्तकालयों को लिनक्स पर चलाने में सक्षम होना चाहिए। क्या आप एक कोड नमूना और त्रुटि संदेश दे सकते हैं? आपके प्रश्न में –

+1

की सहायता के लिए पर्याप्त तत्व शामिल नहीं है, मुझे पता है कि लैम्ब्डा बाहरी सेवाओं से कनेक्ट हो सकता है। सवाल यह है कि अगर एलिस्टी कैश लैम्बडा कार्यों को अपने समूहों से कनेक्ट करने की अनुमति देता है। –

+2

यदि आपके सुरक्षा समूह सही तरीके से सेटअप किए गए हैं, तो लोचदार कैश बिंदु दृश्य से कोई अंतर नहीं है। यह सिर्फ एक सादा टीसीपी कनेक्शन है - लैम्ब्डा या किसी अन्य सेवा –

उत्तर

12

@ RohitChatterjee की टिप्पणी यहाँ पर विस्तार करने के लिए http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/GettingStarted.AuthorizeAccess.html

पर एडब्ल्यूएस डॉक्स से पूर्ण उद्धरण है "सभी ElastiCache समूह केवल एक अमेज़न EC2 उदाहरण से पहुँचा जा सकता है। एक क्लस्टर और इससे संबंधित अमेज़न EC2 उदाहरण होना चाहिए एक ही अमेज़ॅन वर्चुअल प्राइवेट क्लाउड (वीपीसी) में। यदि आपको एक ही वीपीसी में अमेज़ॅन ईसी 2 इंस्टेंस के अलावा कहीं से एलिस्टी कैश क्लस्टर तक पहुंचना है, तो वर्कअराउंड के रूप में आप कैश के वीपीसी के अंदर एक या अधिक अमेज़ॅन ईसी 2 होस्ट्स सेट कर सकते हैं बाहरी दुनिया के लिए प्रॉक्सी के रूप में कार्य करें। होस्ट सेट अप करने से अतिरिक्त नेटवर्क हॉप या अतिरिक्त सिक्योर सॉकेट लेयर (एसएसएल) ओवरहेड और लागत या दोनों शामिल होते हैं। हालांकि, वे कई उपयोग मामलों के लिए लागत कम है। आप अपने क्लस्टर के लिए प्रॉक्सी अमेज़न EC2 उदाहरण पहुँच

तो कोई एडब्ल्यूएस लैम्ब्डा सीधे एक elasticache क्लस्टर से कनेक्ट नहीं कर या तो सेटअप पर एक साधारण http_proxy देना चाहिए। "।
आप एक प्रॉक्सी के रूप में एक EC2 उपयोग करना चाहिए। आप कर सकते हैं

Redis कॉल HTTP नहीं हैं और: अपने उदाहरणों में से एक या इस तरह के इस जवाब https://serverfault.com/a/586553

+5

फरवरी 2016 तक, एडब्ल्यूएस ने घोषणा की [लैम्ब्डा के लिए वीपीसी] (https://aws.amazon.com/about-aws/whats-new/2016/02/access-resources-within-a-vpc-using-aws -lambda /)। –

1

मैं एक ही समस्या का सामना कर रहा था। मुझे सीधा समाधान नहीं मिला लेकिन इसके बजाय socket.io का उपयोग कर ईसी 2 सर्वर से कनेक्ट करने के लिए एक लैम्ब्डा फ़ंक्शन का उपयोग किया गया जो कि बहुत आसान था और उस ईसी 2 सर्वर पर एक ईवेंट उत्सर्जित करता था।

जब ईसी 2 सर्वर ने घटना प्राप्त की तो यह आवश्यक रेडिस कार्य (छवि थंबनेल पीढ़ी के बाद डेटाबेस सफाई) का प्रदर्शन किया।

आशा है कि इससे मदद मिलती है! अगर किसी को पता चलता है कि लैम्ब्डा से एलिस्टी कैश से कैसे कनेक्ट किया जाए तो मुझे अभी भी जानना अच्छा लगेगा!

3

एक HTTP प्रॉक्सी या iptables की स्थापना निम्नलिखित कारणों के लिए कार्य नहीं करेगा पर वर्णित के रूप में दोनों DNAT और SNAT साथ पोर्ट अग्रेषण करना HTTP प्रॉक्सी द्वारा नियंत्रित नहीं किया जाएगा। iptables (या कोई पोर्ट उस मामले के लिए अग्रेषण) या तो डोमेन नाम को गंतव्य के रूप में स्वीकार नहीं करेगा या हर बार आवश्यक DNS समाधान के कारण अत्यधिक अक्षम होगा।

ईसी 2 मशीन में twemproxy स्थापित करने और इसके माध्यम से आपके अनुरोधों को रूट करने का सबसे अच्छा और सुविधाजनक तरीका है। बोनस के रूप में, आपने अचानक एक शानदार sharding रणनीति तैनात की है।

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