এডাব্লুএস কনসোলে অন্তর্নির্মিত অ্যামাজন ফাইল স্থানান্তর ইন্টারফেসের চেয়ে এফটিপি বা এসএফটিপি দিয়ে একটি অ্যামাজন এস 3 বালতিতে সংযোগ করার কোনও উপায় আছে কি? অদ্ভুত বলে মনে হচ্ছে যে এটি সহজেই উপলব্ধ বিকল্প নয়।
এডাব্লুএস কনসোলে অন্তর্নির্মিত অ্যামাজন ফাইল স্থানান্তর ইন্টারফেসের চেয়ে এফটিপি বা এসএফটিপি দিয়ে একটি অ্যামাজন এস 3 বালতিতে সংযোগ করার কোনও উপায় আছে কি? অদ্ভুত বলে মনে হচ্ছে যে এটি সহজেই উপলব্ধ বিকল্প নয়।
উত্তর:
তিনটি বিকল্প আছে।
আপনার অ্যামাজন এডাব্লুএস কনসোলে, এসএফটিপি-র জন্য অ্যাডাব্লুএস ট্রান্সফারে যান এবং একটি নতুন সার্ভার তৈরি করুন।
এসএফটিপি সার্ভার পৃষ্ঠায় একটি নতুন এসএফটিপি ব্যবহারকারী (বা ব্যবহারকারী) যুক্ত করুন।
ব্যবহারকারীদের অনুমতিগুলি আইএএম পরিষেবাতে সম্পর্কিত অ্যাডাব্লুএসের ভূমিকা দ্বারা পরিচালিত হয় (দ্রুত শুরু করার জন্য, আপনি অ্যামাজনএস 3 ফুলঅ্যাক্সেস নীতি ব্যবহার করতে পারেন )।
ভূমিকা অবশ্যই একটি বিশ্বাসের সম্পর্ক থাকতে হবে transfer.amazonaws.com
।
বিশদগুলির জন্য, আমার গাইডটি অ্যামাজন এস 3 এ একটি এসএফটিপি অ্যাক্সেস সেট আপ করুন ।
s3fs
একটি লিনাক্স সার্ভারে (যেমন অ্যামাজন ইসি 2) ফাইল সিস্টেম (বা অনুরূপ) ব্যবহার করে বালতিটি মাউন্ট করুন এবং বালতিটি অ্যাক্সেস করতে সার্ভারের অন্তর্নির্মিত এসএফটিপি সার্ভারটি ব্যবহার করুন।
s3fs
access-key-id:secret-access-key
করুন/etc/passwd-s3fs
এতে একটি বালতি মাউন্টিং এন্ট্রি যুক্ত করুন fstab
:
<bucket> /mnt/<bucket> fuse.s3fs rw,nosuid,nodev,allow_other 0 0
বিশদগুলির জন্য, আমার গাইডটি অ্যামাজন এস 3 এ একটি এসএফটিপি অ্যাক্সেস সেট আপ করুন ।
অথবা যে কোনও নিখরচায় "এফটিপি / এসএফটিপি ক্লায়েন্ট" ব্যবহার করুন , এটি একটি "এস 3 ক্লায়েন্ট" এবং সার্ভার-সাইডে আপনার কোনও সেটআপ নেই। উদাহরণস্বরূপ, আমার উইনসিসিপি বা সাইবারডুক ।
উইনসিসিপির এমনকি স্ক্রিপ্টিং এবং। নেট / পাওয়ারশেল ইন্টারফেস রয়েছে , যদি আপনাকে স্থানান্তরগুলি স্বয়ংক্রিয় করতে হয়।
root
পরে স্থানান্তর permission denied
সমস্যা দেয় ec2-user
। /mnt/<bucket>
ফোল্ডারটির মালিকানা root
রয়েছে এবং গ্রুপটিও রয়েছে root
।
allow_other
(অথবা -o allow_other
যদি s3fs কমান্ড লাইন থেকে মাউন্ট করা হয়) .. আমার পক্ষে কাজ করে। আমার ক্ষেত্রে ফাইলগুলি কেবল পঠনযোগ্য অনুমতি (-o default_acl = সর্বজনীন-পঠিত) হিসাবে লিখতে ভাল ধারণা (ব্যক্তিগত বালিতে)।
হালনাগাদ
এস 3 এখন এস 3 এর জন্য একটি সম্পূর্ণ-পরিচালিত এসএফটিপি গেটওয়ে পরিষেবা সরবরাহ করে যা আইএএমের সাথে সংহত হয় এবং অ্যাওস-ক্লাইম ব্যবহার করে পরিচালিত হতে পারে।
এটি একটি নিখুঁত সমাধান নয় কেন তাত্ত্বিক এবং ব্যবহারিক কারণ আছে, কিন্তু এটি কার্যকর ...
আপনি একটি লিনাক্স সার্ভারে একটি এফটিপি / এসএফটিপি পরিষেবা (যেমন প্রোটিপিডি) ইনস্টল করতে পারবেন, ইসি 2 অথবা আপনার নিজের ডেটা সেন্টারে ... তারপরে একটি বালতি মাউন্ট করুন যেখানে ফাইলটি সিস্টেমে s3fs ব্যবহার করে chroot এ কনফিগার করা হয়েছে ।
আমার কাছে একটি ক্লায়েন্ট রয়েছে যা এস 3 এর বাইরে সামগ্রী পরিবেশন করে এবং লিখিত সামগ্রীটি তৃতীয় পক্ষ তাদের সরবরাহ করে যারা কেবলমাত্র ftp পুশকে সমর্থন করে ... সুতরাং কিছুটা দ্বিধা সহ (এস 3 এবং একটি প্রকৃত ফাইল সিস্টেমের মধ্যে প্রতিবন্ধকতা মেলে না বলে) তবে অভাব রয়েছে যথাযথ এফটিপি / এস 3 গেটওয়ে সার্ভার সফ্টওয়্যার প্যাকেজ লেখার সময় (যা আমি এখনও এই দিনগুলির মধ্যে একটি করার ইচ্ছা করি), আমি বেশ কয়েক মাস আগে তাদের জন্য এই সমাধানটি প্রস্তাব এবং স্থাপন করেছি এবং তারা সিস্টেমে কোনও সমস্যা হিসাবে রিপোর্ট করেনি।
বোনাস হিসাবে, যেহেতু proftpd প্রতিটি ব্যবহারকারীকে তাদের নিজস্ব ডিরেক্টরি ডিরেক্টরিতে chroot করতে পারে এবং "ভান" করতে পারে (ব্যবহারকারী যতদূর বলতে পারে) যে proftpd ব্যবহারকারীর মালিকানাধীন ফাইলগুলি লগ-ইন করা ব্যবহারকারীর মালিকানাধীন, এই প্রতিটি এফটিপি ব্যবহারকারীকে আলাদা করে দেয় বালতিটির একটি "উপ-ডিরেক্টরি" এবং অন্য ব্যবহারকারীদের ফাইলকে অ্যাক্সেসযোগ্য করে তুলবে।
ডিফল্ট কনফিগারেশন নিয়ে অবশ্য সমস্যা আছে।
একবার আপনি কয়েক দশক বা শত শত ফাইল পেতে শুরু করলে, আপনি যখন কোনও ডিরেক্টরি তালিকা টানবেন তখন সমস্যাটি নিজেই প্রকাশ পাবে, কারণ প্রোএফটিপিডি .ftpaccess
ফাইলগুলি বারবার এবং বার বার পড়ার চেষ্টা করবে এবং ডিরেক্টরিতে প্রতিটি ফাইলের জন্য, .ftpaccess
ব্যবহারকারীর এটি দেখার অনুমতি দেওয়া উচিত কিনা তা পরীক্ষা করে দেখুন।
আপনি প্রোএফটিপিডিতে এই আচরণটি অক্ষম করতে পারেন, তবে আমি পরামর্শ দেব যে সর্বাধিক সঠিক কনফিগারেশন হ'ল -o enable_noobj_cache -o stat_cache_expire=30
এস 3 এসএসে অতিরিক্ত বিকল্পগুলি কনফিগার করা :
-o stat_cache_expire
(ডিফল্ট কোন মেয়াদ শেষ হয় না)স্ট্যাট ক্যাশে প্রবেশের জন্য মেয়াদোত্তীর্ণ সময় (সেকেন্ড) নির্দিষ্ট করুন
এই বিকল্পটি ব্যতীত, আপনি এস 3-র কাছে কম অনুরোধ করবেন, তবে বাহ্যিক প্রক্রিয়াগুলি বা এস 3 এফ-এর অন্যান্য উদাহরণগুলি যদি বালতিতে বস্তুগুলিকে সংশোধন করে তবে আপনি সর্বদা নির্ভরযোগ্যভাবে অবজেক্টগুলিতে করা পরিবর্তনগুলি আবিষ্কার করতে পারবেন না। আমার সিস্টেমে "30" মানটি কিছুটা নির্বিচারে নির্বাচন করা হয়েছিল।
-o enable_noobj_cache
(ডিফল্ট অক্ষম করা হয়)যে অস্তিত্ব নেই তার জন্য ক্যাশে এন্ট্রি সক্ষম করুন। s3fs সর্বদা পরীক্ষা করতে হবে যখন s3fs কিছু আদেশ দেয় তখন বস্তু (পাথ) এর অধীনে ফাইল (বা উপ ডিরেক্টরি) উপস্থিত রয়েছে কি না, যেহেতু s3fs একটি ডিরেক্টরিকে স্বীকৃত করেছে যা বিদ্যমান নেই এবং তার নিজস্ব ফাইল বা উপ-ডিরেক্টরি রয়েছে। এটি তালিকার ক্ষেত্রে অনুরোধ বাড়ায় এবং কার্য সম্পাদনকে খারাপ করে তোলে। আপনি পারফরম্যান্সের জন্য এই বিকল্পটি নির্দিষ্ট করতে পারেন, স্ট্যাট ক্যাশে s3fs মুখস্থ করে যা বস্তুর (ফাইল বা ডিরেক্টরি) উপস্থিত নেই।
এই বিকল্পটি s3fs কে মনে করতে দেয় যে .ftpaccess
সেখানে ছিল না।
উপরোক্ত পরিবর্তনগুলি দ্বারা সমাধান করা প্রোফটিপিডি সহ উত্পন্ন হতে পারে এমন পারফরম্যান্স সম্পর্কিত সমস্যার সাথে সম্পর্কিত নয়, আপনাকে -o enable_content_md5
এস 3 এফও সক্ষম করতে হবে ।
-o enable_content_md5
(ডিফল্ট অক্ষম করা হয়)কনটেন্ট-এমডি 5 হেডার দ্বারা গুণিতকৃত আপলোড হওয়া ডেটা যাচাই করা। মাল্টিপার্ট পোস্টিং ছাড়াই কোনও সামগ্রী আপলোড করার সময় "সামগ্রী-MD5" শিরোনাম প্রেরণ সক্ষম করুন। এই বিকল্পটি সক্ষম থাকলে, ছোট বস্তু আপলোড করার সময় এর s3fs এর পারফরম্যান্সের কিছুটা প্রভাব রয়েছে। যেহেতু বড় 3 অবজেক্ট আপলোড করার সময় s3fs সর্বদা MD5 চেক করে, এই বিকল্পটি বড় অবজেক্টের উপর প্রভাব ফেলবে না।
এটি এমন একটি বিকল্প যা কখনই কোনও বিকল্প হওয়া উচিত ছিল না - এটি সর্বদা সক্ষম করা উচিত, কারণ এটি না করা কেবলমাত্র একটি তুচ্ছ কর্মক্ষমতা সুবিধার জন্য একটি সমালোচনামূলক অখণ্ডতা যাচাই করে চলে। যখন কোনও বস্তু এস দিয়ে এস 3 এ আপলোড করা হয়Content-MD5:
শিরোনামের চেকসামটিকে বৈধতা দেবে এবং ট্রানজিটে দুর্নীতিগ্রস্থ হলে অবজেক্টটিকে প্রত্যাখ্যান করবে। তবে তা অসম্ভব বলে মনে হলেও এই সুরক্ষা চেকটি অক্ষম করা স্বল্পদৃষ্টির বলে মনে হয়।
উদ্ধৃতিগুলি s3fs এর ম্যান পৃষ্ঠা থেকে। ব্যাকরণগত ত্রুটিগুলি মূল পাঠ্যে রয়েছে।
sudo s3fs bucket-name /local-mount-folder-name/ -o iam_role=sftp-server -o allow_other -o umask=022 -o uid=501 -o gid=501
- মাউন্ট করা এস 3 ফোল্ডারে এটি তৈরি হয়ে গেলে আমি কোনও অনুমতি পরিবর্তন করতে পারি না।
যে লোকেরা আমাকে কম ভোট দিচ্ছে তাদের জন্য ২০১৪ সালের উত্তর:
ভাল, এস 3 এফটিপি নয়। তবে প্রচুর এবং প্রচুর ক্লায়েন্ট রয়েছে যা এস 3 সমর্থন করে।
ওএস এক্স-এর প্রতিটি উল্লেখযোগ্য এফটিপি ক্লায়েন্টের ট্রান্সমিট এবং সাইবারডাক্ক সহ অনেকগুলি সমর্থন রয়েছে ।
আপনি যদি উইন্ডোজে থাকেন তবে সাইবারডাক্ক বা ক্লাউডবেরি একবার দেখুন ।
2019 এর জন্য আপডেট হওয়া উত্তর:
এডাব্লুএস সম্প্রতি এসএফটিপি পরিষেবার জন্য অ্যাডাব্লুএস স্থানান্তর প্রকাশ করেছে , যা আপনি যা খুঁজছেন তা করতে পারে।
অথবা এসএফটিপি গেটওয়ের জন্য স্পিন লিনাক্স উদাহরণ আপনার AWS অবকাঠামোতে যা আপনার অ্যামাজন এস 3 বালতিতে আপলোড করা ফাইলগুলি সংরক্ষণ করে।
থর্নটেক সমর্থিত
ফাইলজিলা সবেমাত্র তাদের এফটিপি ক্লায়েন্টের একটি প্রো সংস্করণ প্রকাশ করেছে। এটি অভিজ্ঞতার মতো স্ট্রিমলাইন করা এফটিপিতে এস 3 বাল্টির সাথে সংযোগ স্থাপন করে। আমি এটি নিজেই ব্যবহার করি (কোনও সম্পৃক্ততা নেই) এবং এটি দুর্দান্ত কাজ করে।
উইনসিসিপি এখন এস 3 প্রোটোকল সমর্থন করে
প্রথমে নিশ্চিত হয়ে নিন যে আপনার এস 3 অ্যাক্সেস অনুমতি সহ AWS ব্যবহারকারীর একটি "অ্যাক্সেস কী আইডি" তৈরি হয়েছে। আপনাকে "সিক্রেট অ্যাক্সেস কী "ও জানতে হবে। অ্যাক্সেস কীগুলি আইএএম ম্যানেজমেন্ট কনসোলের ব্যবহারকারী পৃষ্ঠাগুলিতে তৈরি এবং পরিচালনা করা হয়।
নতুন সাইট নোড নির্বাচন করা হয়েছে তা নিশ্চিত করুন।
নতুন সাইট নোডে, অ্যামাজন এস 3 প্রোটোকলটি নির্বাচন করুন।
আপনার AWS ব্যবহারকারী অ্যাক্সেস কী আইডি এবং গোপন অ্যাক্সেস কী প্রবেশ করান
সংরক্ষণ বোতামটি ব্যবহার করে আপনার সাইটের সেটিংস সংরক্ষণ করুন।
লগইন বোতামটি ব্যবহার করে লগইন করুন।
অ্যামাজন এস 3 এর জন্য এসএফটিপি পরিষেবাদি প্রকাশ করেছে, তবে তারা কেবল এসএফটিপি করে (এফটিপি বা এফটিপিইএস নয়) এবং এটি আপনার পরিস্থিতির উপর নির্ভর করে ব্যয়বহুল হতে পারে।
আমি ডকইভেন্ট.ওয়ের প্রতিষ্ঠাতা এবং সার্ভার স্পিন না করে বা অবকাঠামোগত চিন্তা না করে আমরা আপনার এস 3 বালতির জন্য এফটিপি / এস গেটওয়ে সরবরাহ করি।
এছাড়াও অন্যান্য সংস্থাগুলি রয়েছে যে আপনি স্ট্যান্ডেলোন এফটিপি সার্ভার সরবরাহ করেন যা আপনি মাসে মাসে অর্থ প্রদান করেন যা সফ্টওয়্যার কনফিগারেশনের মাধ্যমে কোনও এস 3 বালতিতে সংযুক্ত হতে পারে, উদাহরণস্বরূপ, ইন্টিটফট.কম ।
সবশেষে এমন কয়েকটি এডাব্লুএস মার্কেটপ্লেস অ্যাপস রয়েছে যা সহায়তা করতে পারে, এখানে একটি অনুসন্ধান লিঙ্ক । আপনার নিজের অবকাঠামোতে এর অনেকগুলি স্পিন আপ উদাহরণস্বরূপ - এর অর্থ আপনাকে নিজেরাই সেই দৃষ্টান্ত পরিচালনা এবং আপগ্রেড করতে হবে যা সময়ের সাথে সাথে রক্ষণাবেক্ষণ এবং কনফিগার করা কঠিন হতে পারে।
অন্যান্য পোস্টারগুলিতে যেমন উল্লেখ করা হয়েছে, এসএফটিপি পরিষেবার জন্য এডাব্লুএস স্থানান্তরের সাথে কিছু সীমাবদ্ধতা রয়েছে। আপনার প্রয়োজনগুলি নিবিড়ভাবে প্রান্তিককরণ করা দরকার। উদাহরণস্বরূপ, কোনও কোটা, শ্বেত তালিকা / ব্ল্যাকলিস্ট, ফাইলের ধরণের সীমা এবং নন কী ভিত্তিক অ্যাক্সেসের জন্য বাহ্যিক পরিষেবা প্রয়োজন requires ব্যবহারকারী পরিচালনা এবং আইএএম সম্পর্কিত একটি নির্দিষ্ট ওভারহেড রয়েছে যা স্কেল এ ব্যথা হতে পারে।
আমরা আমাদের গ্রাহকদের জন্য প্রায় 5 বছর ধরে একটি এসএফটিপি এস 3 প্রক্সি গেটওয়ে চালাচ্ছি । মূল সমাধানটি ডকার পরিষেবাদির সংকলনে আবৃত এবং প্রাসঙ্গিক বা স্থানীয় বিকাশ সার্ভারগুলি যা প্রসঙ্গে প্রয়োজন তা মোতায়েন করা হয়। আমাদের সমাধানটি ডেটা প্রসেসিং এবং পাইপলাইন বনাম একটি ফাইল ভাগ করে দেওয়ার কারণে আমাদের ক্ষেত্রে ব্যবহারের ক্ষেত্রে কিছুটা আলাদা। বিক্রয়কেন্দ্রের উদাহরণে, কোনও গ্রাহক এসএফটিপি / এস 3 এনপয়েন্টে ইমেল প্রেরণ, ক্রয় ... ডেটা পরিবহন পদ্ধতি হিসাবে ব্যবহার করবেন। এটি S3 এ একটি অবজেক্ট কী ম্যাপ করা হয়েছে। আসার পরে, ডেটা তুলে নেওয়া, প্রক্রিয়াজাতকরণ, রুটেড এবং একটি গুদামে লোড করা হয়। আমাদের প্রতিটি স্থানান্তরের জন্য মোটামুটি উল্লেখযোগ্য নিরীক্ষণের প্রয়োজনীয়তা রয়েছে, AWS এর জন্য ক্লাউডওয়াচ লগগুলি সরাসরি সরবরাহ করে না।
অন্যরা যেমন উল্লেখ করেছে, নিজের ঘূর্ণায়মানও একটি বিকল্প। AWS লাইটসেল ব্যবহার করে আপনি রুট 53 বা কোনও ELB ব্যবহার করে 10 ডলার 2 জিবি উদাহরণের মধ্যে একটি ক্লাস্টার সেটআপ করতে পারেন।
সাধারণভাবে, এডাব্লুএস এই পরিষেবাটি সরবরাহ করে দেখায় দুর্দান্ত লাগবে এবং আমি আশা করি এটি সময়ের সাথে সাথে পরিপক্ক হবে। তবে, আপনার ব্যবহারের ক্ষেত্রে নির্ভর করে বিকল্প সমাধানগুলি আরও ভাল ফিট হতে পারে।