इलास्टिक फाइल सिस्टम (EFS) AWS के बाहर स्थित है


23

मेरे पास एक सर्वर है जो AWS के बाहर है। मैं इसे EFS वॉल्यूम माउंट करने में सक्षम होना चाहता हूं, लेकिन मुझे यकीन नहीं है कि अगर यह संभव है।

शायद अगर आप वीपीसी बनाते हैं, और आप वीपीएन पर एक सुरंग बनाते हैं?

क्या किसी को पता है कि क्या यह संभव है?


यह निश्चित रूप से संभव है ... मैं थोड़ी देर के लिए एक टीएलएस सुरंग के ऊपर एडब्ल्यूएस के बाहर से ईएफएस का उपयोग कर रहा हूं ... लेकिन "चाल" का एक सा है जो मुझे लगता है कि आपको इसे बनाने के लिए लागू करने की आवश्यकता होगी काम। मैं पुष्टि करता हूं कि जिस तरह से मैं कर रहा हूं वह वास्तव में आवश्यक है (इसे सेट करने के बाद कुछ समय हो गया है) या क्या यह इसके बिना संभव है, और मैं पुष्टि करने के बाद एक उत्तर पोस्ट करूंगा।
माइकल -

EFS का मतलब कई EC2 उदाहरणों के लिए एक साझा फ़ाइल सिस्टम है। बाह्य रूप से आपको S3 का उपयोग करने पर विचार करना चाहिए (जो एक फ़ाइल सिस्टम के समान है, यह वास्तव में एक ऑब्जेक्ट स्टोर है) या शायद ईबीएस उदाहरण के साथ एक छोटा ईसी 2 उदाहरण। या तो ईएफएस से सस्ता होगा - एसएसडी पर ईबीएस 1/3 ईएफएस की कीमत है, चुंबकीय पर ईबीएस ईएफएस की लागत 1/6 है और एस 3 1/10 वीं ईएफएस की लागत है। क्या वास्तव में आप यह प्राप्त करने की कोशिश कर रहे हैं कि ईएफएस सबसे अच्छा विकल्प है?
टिम

मैंने सोचा था कि क्योंकि इसे ELASTIC फाइल सिस्टम कहा जाता है इसलिए इसे AWS के बाहर से कनेक्ट करना आसान होगा। इसके अलावा - अगर मैं AWS के बाहर फ़ाइलों का बैकअप लेना चाहता था, तो S3 से करना असंभव नहीं तो मुश्किल होगा। EFS से मैं इसे EC2 उदाहरण में माउंट कर सकता हूं और बैकअप कर सकता हूं। लेकिन अगर वे दोनों वीपीएन की आवश्यकता होती है, तो मुझे लगता है कि इससे बहुत कम अंतर पड़ता है ...
एडम

S3 डिज़ाइन से, AWS के बाहर से आसानी से सुलभ है, एकीकरण के लिए बहुत आसान है / बैकअप / कुछ भी वास्तव में - सुपर लचीला। EFS को EC2 उदाहरणों के बीच एक साझा फ़ाइल सिस्टम के रूप में डिज़ाइन किया गया है, इसलिए संभवतः AWS के बाहर उपयोग करने में अधिक मुश्किल होगी, संभवतः एक प्रॉक्सी के रूप में EC2 उदाहरण की आवश्यकता होती है। न ही वीपीएन की आवश्यकता है। सुझाव दें कि आपको मान्यताओं को बनाने और कूदने के बजाय किसी योग्य / अनुभवी के साथ अपने उपयोग के मामलों पर चर्चा करने की आवश्यकता है।
टिम

जवाबों:


40

महत्वपूर्ण अपडेट:

अक्टूबर, 2018 में, एडब्ल्यूएस ने ईएफएस को कम करने वाली नेटवर्क प्रौद्योगिकी की क्षमताओं का विस्तार किया ताकि यह अब मूल रूप से प्रबंधित वीपीएन कनेक्शन और क्रॉस-रीजन वीपीसी पेअरिंग में काम करे, नीचे दिए गए प्रॉक्सी वर्कअराउंड का सहारा लिए बिना।

https://aws.amazon.com/about-aws/whats-new/2018/10/amazon-efs-now-supports-aws-vpn-and-inter-region-vpc-peering/

ईएफएस ने 2016 के अंत में AWS डायरेक्ट कनेक्ट सर्किट के माध्यम से कनेक्टिविटी के लिए समर्थन जोड़ा।

https://aws.amazon.com/blogs/aws/amazon-efs-update-on-premises-access-via-direct-connect-vpc/


टिप्पणियों ने कुछ दिलचस्प मुद्दों को उठाया है, क्योंकि प्रश्न के मेरे शुरुआती पढ़ने में, मैंने आपके साथ ईएफएस के साथ अधिक परिचितता ग्रहण की हो सकती है।

तो, पहले, पृष्ठभूमि की एक बिट:

इलास्टिक फाइल सिस्टम में "इलास्टिक" मुख्य रूप से भंडारण स्थान और थ्रूपुट के स्वचालित स्केलिंग को संदर्भित करता है - बाहरी पहुंच लचीलापन नहीं।

EFS को आपके द्वारा संग्रहित डेटा की मात्रा पर कोई सार्थक सीमा नहीं लगती है। ईएफएस वॉल्यूम पर किसी भी एकल फ़ाइल का प्रलेखित अधिकतम आकार 52,673,613,135,872 बाइट्स (52 टीआईबी) है । अधिकांश अन्य सीमाएं समान रूप से उदार हैं।

ईएफएस विशेष रूप से "लोचदार" है जिस तरह से यह बिल किया जाता है। ईबीएस वॉल्यूम पर फाइलसिस्टम के विपरीत, ईएफएस पर अंतरिक्ष का प्रचार नहीं किया जाता है, और आप केवल एक घंटे के औसत आधार पर स्टोर करने के लिए भुगतान करते हैं। आपके शुल्क बढ़ते हैं और सिकुड़ते हैं (वे "लोचदार" हैं) आपके द्वारा संग्रहीत पर आधारित है। जब आप फ़ाइलें हटाते हैं, तो आप एक घंटे के भीतर उनके कब्जे वाले स्थान के लिए भुगतान करना बंद कर देते हैं। यदि आप 1 जीबी को 750 घंटे (and1 महीने) के लिए स्टोर करते हैं और फिर इसे हटाते हैं, या यदि आप 2 घंटे के लिए 375 जीबी स्टोर करते हैं और फिर इसे हटाते हैं, तो आपका मासिक बिल समान होगा ... $ 0.30। यह निश्चित रूप से ईबीएस की तुलना में काफी अलग है, जो आपको 0x00महीने में शेष घंटों के लिए 375 जीबी स्टोर करने के लिए $ 37.50 का बिल देगा ।

S3 का स्टोरेज प्राइसिंग मॉडल EFS के समान ही है, क्योंकि किसी ऑब्जेक्ट को हटाते ही स्टोरेज के लिए बिलिंग रुक जाती है, और लागत EFS की लागत ~ 1/10 है, लेकिन जैसा कि मैंने और दूसरों ने कई बार उल्लेख किया है, S3 एक नहीं है फाइल सिस्टम। S3fs-fuse जैसी उपयोगिताएँ एक "प्रतिबाधा सेतु" प्रदान करने का प्रयास करती हैं, लेकिन कुछ ऐसा इलाज करने की कोशिश में अंतर्निहित कठिनाइयाँ हैं जो वास्तव में एक फाइलसिस्टम नहीं है क्योंकि यह (ओवरराइट्स के लिए अंततः संगति) उनमें से कम से कम नहीं थी। इसलिए, यदि एक वास्तविक "फाइलसिस्टम" आपकी आवश्यकता है, और यह एक ऐसे एप्लिकेशन के लिए है, जहां एक्सेस को साझा करने की आवश्यकता है, या भंडारण के लिए आवश्यक स्थान की आवश्यकता है, यह निर्धारित करना मुश्किल है या आप इसे मांग के पैमाने पर रखना चाहते हैं, तो ईएफएस उपयोगी हो सकता है।

और, यह तब अच्छा लगता है जब आपके पास 8.0 ईआइबी खाली जगह हो।

$ df -h | egrep '^Filesystem|efs'
Filesystem                                            Size  Used Avail Use% Mounted on
us-west-2a.fs-5ca1ab1e.efs.us-west-2.amazonaws.com:/  8.0E  121G  8.0E   1% /srv/efs/fs-5ca1ab1e
us-west-2a.fs-acce55ed.efs.us-west-2.amazonaws.com:/  8.0E  7.2G  8.0E   1% /srv/efs/fs-acce55ed

लेकिन, निश्चित रूप से, आपके अनुप्रयोगों के लिए सबसे उपयुक्त भंडारण सेवा का उपयोग करना महत्वपूर्ण है। प्रत्येक विकल्प के पास इसके वैध उपयोग के मामले हैं। ईएफएस या एस 3 की तुलना में उपयोग मामलों के एक संकीर्ण सेट होने पर, ईडब्ल्यूएस द्वारा प्रस्तावित भंडारण समाधानों में ईएफएस संभवतः सबसे विशेष है।


लेकिन क्या आप इसे VPC के बाहर से उपयोग कर सकते हैं?

आधिकारिक उत्तर है :

वीपीएन कनेक्शन, वीपीसी पेअरिंग, और एडब्ल्यूएस डायरेक्ट कनेक्ट जैसे वीपीसी निजी कनेक्टिविटी तंत्र पर एक फ़ाइल सिस्टम माउंट करना समर्थित नहीं है।

- http://docs.aws.amazon.com/efs/latest/ug/limits.html

EFS वर्तमान में केवल EC2 लिनक्स एक्सेस तक ही सीमित है। वह भी वीपीसी के भीतर। जल्द ही और सुविधाएँ जोड़ी जाएंगी। लॉन्च की गई नई सुविधाओं के लिए आप AWS घोषणाओं पर नज़र रख सकते हैं।

- https://forums.aws.amazon.com/thread.jspa?messageID=732749

हालाँकि, व्यावहारिक उत्तर हां है , भले ही यह आधिकारिक रूप से समर्थित कॉन्फ़िगरेशन नहीं है। इसे काम करने के लिए, कुछ विशेष चरणों की आवश्यकता होती है।

प्रत्येक ईएफएस फाइलसिस्टम को आपके वीपीसी में लोचदार नेटवर्क इंटरफेस (ईएनआई), आमतौर पर प्रति उपलब्धता क्षेत्र का उपयोग करते हुए एंडपॉइंट आईपी पते सौंपे जाते हैं, और आप सुनिश्चित करना चाहते हैं कि आप उपलब्धता के क्षेत्र में एक को माउंट करें, उदाहरण के लिए, न केवल प्रदर्शन कारणों के लिए, बल्कि उपलब्धता क्षेत्र की सीमाओं के पार डेटा ले जाने पर बैंडविड्थ शुल्क लागू होता है।

इन ईएनआई के बारे में दिलचस्प बात यह है कि वे सबनेट के लिए रूट टेबल का उपयोग नहीं करते हैं, जिसमें वे संलग्न हैं। वे केवल VPC के अंदर के उदाहरणों पर प्रतिक्रिया देने में सक्षम प्रतीत होते हैं, भले ही सुरक्षा समूह सेटिंग्स (प्रत्येक EFS फाइलसिस्टम का अपना सुरक्षा समूह है जो अभिगम को नियंत्रित करता है)।

चूंकि कोई बाहरी मार्ग सुलभ नहीं है, इसलिए मैं सीधे अपने हार्डवेयर वीपीएन पर ईएफएस एंडपॉइंट्स तक नहीं पहुंच सकता ... इसलिए मैंने अपने पुराने पाल हाप्रोसी की ओर रुख किया, जो वास्तव में (जैसा कि @Tim की भविष्यवाणी की गई थी) इस काम को करने के लिए आवश्यक है। यह एक सीधा विन्यास है, क्योंकि EFS केवल TCP पोर्ट 2049 का उपयोग करता है।

मैं एक t2.nano पर HAProxy का उपयोग कर रहा हूं (HAProxy बहुत कुशल है), एक कॉन्फ़िगरेशन के साथ जो कुछ इस तरह दिखता है:

listen fs-8d06f00d-us-east-1
    bind :2049
    mode tcp
    option tcplog
    timeout tunnel 300000 
    server fs-8d06f00d-us-east-1b us-east-1b.fs-8d06f00d.efs.us-east-1.amazonaws.com:2049 check inter 60000 fastinter 15000 downinter 5000
    server fs-8d06f00d-us-east-1c us-east-1c.fs-8d06f00d.efs.us-east-1.amazonaws.com:2049 check inter 60000 fastinter 15000 downinter 5000 backup
    server fs-8d06f00d-us-east-1d us-east-1d.fs-8d06f00d.efs.us-east-1.amazonaws.com:2049 check inter 60000 fastinter 15000 downinter 5000 backup

यह सर्वर हम-पूर्व -1 बी में है इसलिए यह प्राथमिक के रूप में us-East-1b समापन बिंदु का उपयोग करता है, अन्य दो बैकअप के रूप में अगर 1b में समापन बिंदु कभी भी स्वास्थ्य जांच में विफल रहता है।

यदि आपके वीपीएन में वीपीएन है, तो आप इस प्रॉक्सी उदाहरण के आईपी पते का उपयोग करके वॉल्यूम को लक्ष्य के बजाय माउंट करें (सीधे ईएफएस समापन बिंदु का उपयोग करने के बजाय), और वॉइलिया आपने वीपीसी के बाहर से ईएफएस फाइलसिस्टम को माउंट किया है।

मैंने इसे बाहरी उबंटू मशीनों के साथ-साथ सोलारिसो सर्वरों पर भी सफलतापूर्वक आरोहित किया है (जहाँ ईएफएस ने इनसे दूर रहने के लिए सेवाओं को माइग्रेट करना आसान बनाकर अपने डीकमीशनिंग को तेज करने के लिए बहुत आसान साबित किया है)।

कुछ स्थितियों के लिए, जैसे AWS में डेटा ले जाना या प्रवास के दौरान विशिष्ट डेटा पर समानांतर में विरासत और क्लाउड सिस्टम चलाना, EFS एक विजेता की तरह लगता है।

बेशक, विरासत प्रणाली, उच्च गोल-यात्रा समय वाले, EC2 उदाहरणों के साथ-साथ प्रदर्शन नहीं करेंगे, लेकिन यह उम्मीद की जानी चाहिए - भौतिकी के नियमों के अपवाद नहीं हैं। इसके बावजूद, EFS और HAProxy गेटवे बाहरी रूप से काम करने के लिए एक स्थिर समाधान प्रतीत होते हैं।

यदि आपके पास वीपीएन नहीं है, तो HAProxy मशीनों की एक जोड़ी, AWS में एक और आपके डेटा सेंटर में एक, TLS पर EFS को भी टनल कर सकता है, प्रत्येक व्यक्ति FFS के परिवहन के लिए TLS में लिपटे पेलोड के साथ एक अलग टीसीपी कनेक्शन स्थापित करता है। इंटरनेट भर में कनेक्शन। तकनीकी रूप से वीपीएन नहीं, लेकिन कनेक्शनों की एन्क्रिप्टेड टनलिंग। यह भी काफी अच्छा प्रदर्शन करता है।


SomewhatSolaris 10 डिफ़ॉल्ट रूप से टूटा हुआ (आश्चर्यजनक रूप से नहीं) है - शुरू में, रूट के पास विशेष विशेषाधिकार नहीं थे - रूट द्वारा बनाई गई EFS मात्रा पर फाइलें रूट के स्वामित्व में हैं, लेकिन chownकिसी अन्य उपयोगकर्ता से एड नहीं किया जा सकता है सोलारिस मशीन ( Operation not permitted), भले ही सब कुछ उबंटू ग्राहकों से अपेक्षित रूप से काम करता हो। इस मामले में, समाधान सोलारिस मशीन के उपयोग से एनएफएस आईडी मैपिंग डेमन को हराने के लिए है svcadm disable svc:/network/nfs/mapid:default। इस सेवा को रोकने से सब कुछ अपेक्षित रूप से काम करता है। इसके अतिरिक्त, /usr/sbin/quotaप्रत्येक लॉगिन पर मंगलाचरण को अक्षम किया जाना चाहिए /etc/profile। बेहतर या अधिक सही समाधान हो सकते हैं, लेकिन यह सोलारिस है, इसलिए मैं जांच करने के लिए उत्सुक नहीं हूं।


2
यह एक उत्कृष्ट उत्तर है, लेकिन मेरा मानना ​​है कि आपने गलत प्रश्न पूछा है। मैं कांटा के साथ एक पेड़ काट सकता हूं, लेकिन नौकरी के लिए बेहतर उपकरण हैं।
टिम

कभी-कभी मुझे आश्चर्य होता है कि क्या किसी ने 3 छोटे-छोटे ईस्टर अंडे को देखा है जिन्हें मैंने इस उत्तर में शामिल किया है।
माइकल - sqlbot

4
5ca1ab1e (स्केलेबल) और acce55ed (एक्सेस) और 8d06f00d (डॉगफूड)?
रनमोक

2
यह "कुत्ते का खाना खाया" ... लेकिन काफी करीब है, @runamok :)
माइकल - sqlbot

3
मैं किसी को कांटे के साथ एक पेड़ को काटते हुए देखना पसंद करूंगा
जैम रिज़र

0

20 दिसंबर 2016 तक, अमेज़ॅन ने एडब्ल्यूएस डायरेक्ट कनेक्ट की घोषणा की, जिसका उपयोग ऑन-प्रिमाइसेस सर्वर पर ईएफएस फाइल सिस्टम को माउंट करने के लिए किया जा सकता है। तो, मूल रूप से, एक देशी विशेषता है जो आपको VWS के बाहर AWS EFS का उपयोग करने की अनुमति देती है।

एक शर्त के रूप में, आपको एडब्ल्यूएस डायरेक्ट कनेक्ट कनेक्शन को सक्षम और स्थापित करना होगा, और फिर ईसीएफ इंस्टेंसेस को ईसी 2 इंस्टेंसेस के दौरान बढ़ते समय उपयोग करना चाहिए।

अधिक जानकारी f olling URL पर पाई जा सकती है । मैंने इसे अभी पोस्ट किया है, जैसा कि मैंने इस भविष्य के लिए भी खोजा था, दूसरों के लिए यह जानने के लिए कि वीपीसी के बाहर ईएफएस कनेक्टिविटी के लिए मूल समाधान है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.