প্রশ্ন ক্ষুদ্র ফাইল 15TB স্থানান্তর


আমি এক সার্ভার থেকে অন্য তথ্য সংরক্ষণ করছি। প্রাথমিকভাবে আমি একটি শুরু rsync কাজ। মাত্র 5 টি বিবি তথ্যের জন্য ফাইল তালিকা তৈরির জন্য 2 সপ্তাহ লেগেছে এবং অন্য সপ্তাহে 1 টি টিবি তথ্য স্থানান্তরিত করতে হবে।

তারপর আমাকে নতুন সার্ভারে কিছুটা ডাউন টাইম হিসাবে কাজটি হত্যা করতে হয়েছিল।

সম্মত হয়েছে যে আমরা এটি বন্ধ করবো কারণ আমাদের সম্ভবত এটি আবার অ্যাক্সেস করতে হবে না। আমি 500 জিবি অংশে ভাঙ্গার কথা ভাবছিলাম। আমি পরে tar তারপর আমি মাধ্যমে জুড়ে এটি অনুলিপি যাচ্ছে ssh। আমি ব্যবহার করছিলাম tar এবং pigz কিন্তু এটা এখনও খুব ধীর।

এটা করতে একটি ভাল উপায় আছে কি? আমি উভয় সার্ভার Redhat উপর মনে হয়। পুরানো সার্ভারটি Ext4 এবং নতুন এক এক্সএফএস।

ফাইলের মাপ কয়েক কেবি থেকে কয়েক এমবি পর্যন্ত এবং 5 টিবিতে 24 মিলিয়ন জেপিএস রয়েছে। তাই আমি 15 টিবি এর জন্য প্রায় 60-80 মিলিয়ন অনুমান করছি।

সম্পাদনা: কয়েকদিনের জন্য rsync, nc, tar, mbuffer এবং pigz দিয়ে খেলার পরে। বিট আই ডি হতে যাচ্ছে। তথ্য 500 এসএএস ডিস্ক এবং প্রায় 250 মিলিয়ন জেপিএস জুড়ে ডোরাকাটা হয়। যাইহোক, এখন আমি এই সমস্ত সুন্দর সরঞ্জাম সম্পর্কে শিখেছি যা আমি ভবিষ্যতে ব্যবহার করতে পারি।


73
2017-09-09 15:23


উত্স


সম্ভাব্য সদৃশ linux থেকে linux, 10TB স্থানান্তর? - D34DM347
এক বিকল্প একটি বহিরাগত ড্রাইভ উপর সংকুচিত tar ফাইল তৈরি এবং নতুন সিস্টেম যে চলন্ত হয়। অতিরিক্ত ডিস্ক টারপ ফাইলগুলি তৈরির গতি বাড়বে (সিস্টেমে বিদ্যমান ডিস্কগুলিতে লেখা হবে না, সম্ভবত তাদের থেকে 15 টিবি পড়ার চেষ্টা করার সময়) এবং নতুন সার্ভারটি আপলোড করবে না। - Brian
এটা করতে একটি ভাল উপায় আছে কি? - হ্যাঁ, উইন্ডোজ সার্ভার 2012 আর 2 ডিএফএস প্রতিলিপি প্রায় 10 ঘন্টা যে প্রস্তুত হবে। এবং এটি পরিবর্তনগুলিকে সিঙ্ক করবে এবং পুনরায় বুট করার পরে এটি ছেড়ে চলে যাবে। - TessellatingHeckler
@ টিসেলটিং হেকলারঃ তাই আপনি কি রেডহ্যাট থেকে উইন্ডোজ থেকে ওপেন মাইক্র্রেটস সংরক্ষণ করতে চান? - Thomas Weller
@ থোমাসওয়ালার তারা জিজ্ঞেস করলো, "একটি ভাল উপায় আছে?", এবং আছে। আমি ভাল উপায় ব্যবহার করে যে কোন সুপারিশ। তারা কোনও পাইপের কমান্ডগুলি ব্যবহার করতে মুক্ত, যা বাধা থেকে পুনরুদ্ধার করতে পারে না, ফাইল সামগ্রী যাচাই করবে না, অনুলিপি স্থিতি প্রতিবেদন করতে পারে না, ফাইলগুলির অংশ অনুলিপি করা এড়ানোর জন্য পূর্বে অনুলিপি করা ব্লকগুলি ব্যবহার করতে পারে না। কম-অগ্রাধিকার অনুলিপি সমর্থন করে, বিরতি দেওয়া যায় না, এসিএলগুলি অনুলিপি করার কোন উল্লেখ নেই এবং এটি চালানোর জন্য লগ ইন থাকা প্রয়োজন। যাইহোক, অন্য কেউ অনুসরণ করে আগ্রহী হতে পারে - বা "x লিনাক্সে এটি করে" বলে প্ররোচিত করে। - TessellatingHeckler


উত্তর:


আমি ব্যবহার করে খুব ভাল ফলাফল ছিল tar, pigz (সমান্তরাল gzip) এবং nc

উত্স মেশিন:

tar -cf - -C /path/of/small/files . | pigz | nc -l 9876

গন্তব্য মেশিন:

নিষ্কর্ষ:

nc source_machine_ip 9876 | pigz -d | tar -xf - -C /put/stuff/here

সংরক্ষণাগার রাখতে:

nc source_machine_ip 9876 > smallstuff.tar.gz

যদি আপনি স্থানান্তর হার দেখতে চান মাধ্যমে পাইপ pv পরে pigz -d!


62
2017-09-09 16:29



FYI, আপনি প্রতিস্থাপন করতে পারেন pigz সঙ্গে gzip অথবা এটি একেবারে মুছে ফেলুন, কিন্তু গতি উল্লেখযোগ্যভাবে ধীর হবে। - h0tw1r3
OP কীভাবে ইতিমধ্যে চেষ্টা করা হলে এটি কিভাবে গৃহীত হতে পারে tar এবং pigz? আমি বুঝতে পারছি না ... - Thomas Weller
@ থোমাসেভেলার যেখানে আপনি চেষ্টা করেছেন যে তিনি চেষ্টা করেছেন pigz? প্রশ্ন থেকে দেখে মনে হচ্ছে সে শুধু চেষ্টা করেছে rsync এতদূর, এবং ছিল বিবেচনা করা ব্যবহার tar বিভক্ত এবং তথ্য বান্ডিল। তিনি ব্যবহার না করে বিশেষ করে যদি -z/--compress rsync উপর বিকল্প, pigz তাত্ত্বিকভাবে উল্লেখযোগ্যভাবে সাহায্য করতে পারে। - Doktor J
@ থোমাসওয়ালার হ্যাঁ হ্যাঁ আমি ইতোমধ্যেই টার এবং পিগজ চেষ্টা করেছি কিন্তু এনসি নয়। আমি ssh ব্যবহার করেছিলাম তাই এটি অনেক বেশি ওভারহেড যোগ করা হয়েছে। - lbanz
@lbanz যে কেবল মানে tar দ্রুত জন্য ডেটা উত্পাদন করা হয় না pigz কম্প্রেশন জন্য অনেক CPU ব্যবহার করতে। বড় ফাইলগুলির মধ্যে অনেকগুলি সিস্কল, অনেক বেশি ডিস্ক অনুসন্ধান এবং বৃহত্তর ফাইলগুলির বাইটগুলির সংখ্যা পড়ার চেয়ে অনেক বেশি কার্নেল ওভারহেড জড়িত রয়েছে এবং মনে হচ্ছে আপনি কেবল মৌলিক স্তরে বোতামটি যুক্ত করছেন। - hobbs


আমি rsync সমাধান লাঠি চাই। আধুনিক (3.0.0+) rsync ক্রমবর্ধমান ফাইল তালিকা ব্যবহার করে, তাই এটি স্থানান্তর করার আগে সম্পূর্ণ তালিকা তৈরি করতে হবে না। সুতরাং এটি পুনঃসূচনা করার জন্য আপনাকে সমস্যার ক্ষেত্রে আবার সম্পূর্ণ স্থানান্তর করতে হবে না। প্রতি শীর্ষ বা দ্বিতীয় স্তরের ডিরেক্টরি প্রতি স্থানান্তর বিভক্ত আরও এই অপ্টিমাইজ করা হবে। (আমি ব্যবহার করব rsync -a -P এবং যোগ করুন --compress আপনার নেটওয়ার্ক আপনার ড্রাইভের চেয়ে ধীর হয়।)


20
2017-09-09 18:44



আমি পুরানো সার্ভারে rsync 2.6.8 ব্যবহার করছি। এটি সেই বাক্সগুলির মধ্যে একটি যেখানে আমাদের বিক্রেতার দ্বারা বর্ণিত হিসাবে ইনস্টল / আপডেট করার অনুমতি দেওয়া হয় না বা এটি ওয়ারেন্টিটি ভয়েড হয়। আমি এটা আপডেট হতে পারে এবং এটি কোনো দ্রুত কিনা দেখতে। - lbanz
একটি স্ট্যাটিকালি-লিঙ্কযুক্ত rsync বাইনারি খুঁজুন (বা বিল্ড করুন) এবং আপনার বাড়ির থেকে এটি চালান। আশা করি যে কোন ওয়্যারেন্টি ধ্বংস হবে না। - Fox


একটি ভিপিএন সেট আপ করুন (যদি এটির ইন্টারনেট থাকে), রিমোট সার্ভারে কিছু ফরম্যাটের ভার্চুয়াল ড্রাইভ তৈরি করুন (এটি ext4 করুন), দূরবর্তী সার্ভারে মাউন্ট করুন, তারপর স্থানীয় সার্ভারে মাউন্ট করুন (iSCSI- র মত ব্লক স্তরের প্রোটোকল ব্যবহার করে), এবং স্থানান্তর করার জন্য ডিডি বা অন্য ব্লক-স্তরের সরঞ্জাম ব্যবহার করুন। তারপরে আপনি ভার্চুয়াল ড্রাইভ থেকে ফাইলগুলিকে আপনার নিজস্ব সুবিধাতে আসল (এক্সএফএস) ড্রাইভে কপি করতে পারেন।

দুটি কারণ:

  1. কোন ফাইল সিস্টেম ওভারহেড, যা প্রধান কর্মক্ষমতা অপরাধী হয়
  2. কোন চাওয়া, আপনি উভয় পক্ষের অনুক্রমিক পড়া / লিখতে খুঁজছেন

15
2017-09-09 16:17



ফাইল সিস্টেম বাইপাস করা ভাল। একটি পঠন-লেখা মাউন্ট করা ফাইল সিস্টেম ব্লক স্তরের অনুলিপি করা সত্যিই একটি খারাপ ধারণা। আনমাউন্ট বা শুধুমাত্র প্রথম পড়া মাউন্ট। - JB.
একটি 15TB অনুলিপি হচ্ছে, খুব sucks। এটি নতুন সার্ভারের সর্বনিম্ন 30 মানে। - Arthur Kay
সার্ভারটি যদি LVM ব্যবহার করে তবে ফাইল-সিস্টেমের কেবলমাত্র একটি পঠনযোগ্য স্ন্যাপশট করতে পারে এবং এর পরিবর্তে এটি অনুলিপি করতে পারে। স্ন্যাপশট পড়ার সময় ঘটতে থাকা ফাইল সিস্টেমে পরিবর্তনের জন্য শুধুমাত্র মহাশূন্য ওভারহেড। - liori


যদি পুরানো সার্ভারটি বাতিল করা হয় এবং কয়েক মিনিটের জন্য ফাইলগুলি অফলাইনে থাকতে পারে তবে এটি পুরানো বাক্সটিকে কেবল ড্রাইভগুলি পুরাতন বাক্সে টেনে আনতে এবং তাদের নতুন সার্ভারে ক্যাবল করা, তাদের মাউন্ট করে (এখন অনলাইনে অনলাইনে) এবং ফাইলগুলি অনুলিপি করে নতুন সার্ভারের স্থানীয় ডিস্কগুলিতে।


9
2017-09-10 03:14



এটি 2TB ড্রাইভের প্রায় 1PB তাই এটি অনেক বেশি উপায়। - lbanz


Mbuffer ব্যবহার করুন এবং যদি এটি একটি নিরাপদ নেটওয়ার্কে থাকে তবে আপনি এনক্রিপশন পদক্ষেপ এড়াতে পারেন।


3
2017-09-09 15:39





(অনেক ভিন্ন উত্তর কাজ করতে পারে। এখানে অন্য একটি।)

সঙ্গে ফাইল তালিকা জেনারেট করুন find -type f (এটি কয়েক ঘণ্টার মধ্যে শেষ হওয়া উচিত), এটি ছোট অংশে বিভক্ত করে এবং প্রতিটি খণ্ড ব্যবহার করে স্থানান্তর করুন rsync --files-from=...


3
2017-09-10 23:34





আপনি কি sneakernet বিবেচিত? তার সাথে, আমি একই ড্রাইভে সবকিছু স্থানান্তর করার অর্থ, শারীরিকভাবে যে ড্রাইভ উপর চলন্ত।

প্রায় এক মাস আগে, স্যামসাং একটি 16 টিবি ড্রাইভ উন্মোচন করে (টেকনিক্যালি এটি 15.36 টিবি), যা এসএসডিও: http://www.theverge.com/2015/8/14/9153083/samsung-worlds-largest-hard-drive-16tb

আমি এই ড্রাইভ শুধু এই জন্য কি মনে হবে। আপনাকে এখনও সব ফাইল অনুলিপি করতে হবে, কিন্তু আপনার কাছে নেটওয়ার্ক বিলম্বিততা নেই এবং সম্ভবত SATA বা একই রকম দ্রুত প্রযুক্তি ব্যবহার করতে গেলে এটি খুব দ্রুত হওয়া উচিত।


3
2017-09-12 17:56





যখন deduplication উচ্চ সাফল্য অনুপাত পেতে কোন সুযোগ আছে, আমি ভালো কিছু ব্যবহার করবে borgbackup অথবা Attic।

যদি না হয়, netcat + tar + চেক করুনpbzip2 সমাধান, আপনার হার্ডওয়্যার অনুসারে সংকোচন বিকল্পগুলি মানানসই করুন - বোতলটি পরীক্ষা করুন (CPU? নেটওয়ার্ক? আইও?)। Pbzip2 ভাল কর্মক্ষমতা প্রদান করে, সব CPUs জুড়ে চমত্কারভাবে স্প্যানিশ হবে।


2
2017-09-09 20:38



Lzma (xz) bzip2 চেয়ে দ্রুত decompresses, এবং সবচেয়ে ইনপুট ভাল। দুর্ভাগ্যবশত, xzএর multithread বিকল্প এখনো বাস্তবায়ন করা হয় না। - Peter Cordes
সাধারণত সংকোচনের পর্যায়ে ডিকম্প্রেসেশনয়ের চেয়ে বেশি হর্সপ্যাশের প্রয়োজন হয়, তাই সিপিইউ সীমিত করার ফ্যাক্টর থাকলে, pbzip2 এর ফলে সামগ্রিক সামগ্রিক পারফরম্যান্স হতে পারে। উভয় মেশিন অনুরূপ যদি decompression, প্রক্রিয়া প্রভাবিত করা উচিত নয়। - neutrinus
হ্যাঁ, আমার পয়েন্টটি ছিল লজ্জাজনক যে একক-স্ট্রিম মাল্টি-থ্রেড এলজমা নেই। যদিও এই ব্যবহারের ক্ষেত্রে, তথ্যের সম্পূর্ণ ফাইল সিস্টেমগুলি স্থানান্তর করার জন্য, pigz prob হবে। আপনি ব্যবহার করতে চান ধীরতম কম্প্রেসার হতে হবে। অথবা এমনকি lz4। (একটি আছে lz4mt একাধিক থ্রেডেড জন্য উপলব্ধ একটি একক স্ট্রিম। এটি থ্রেড খুব দক্ষতার সাথে নয় (বেশিরভাগ ক্ষেত্রেই নতুন থ্রেডগুলি স্পন করে), তবে এটি একটি কঠিন গতিবেগ পায়) - Peter Cordes


আপনি রেডহ্যাট লিনাক্স ব্যবহার করছেন, তাই এটি প্রযোজ্য হবে না, তবে অন্য বিকল্প হিসাবে:

ইনডোডগুলি কোনও সমস্যা নয় বলে আমি লক্ষ লক্ষ ফাইল ধরে রাখতে ZFS ব্যবহার করে প্রচুর সাফল্য অর্জন করেছি।

যদি এটি আপনার জন্য একটি বিকল্প হয় তবে আপনি স্ন্যাপশটগুলি নিতে এবং ক্রমবর্ধমান আপডেট পাঠাতে zfs ব্যবহার করতে পারেন। আমি স্থানান্তর করার পাশাপাশি সংরক্ষণাগার তথ্য এই পদ্ধতি ব্যবহার করে অনেক সাফল্য হয়েছে।

জেডএফএস প্রাথমিকভাবে একটি সৌরস ফাইল সিস্টেম, কিন্তু এটি Illumos (সূর্যের OpenSolaris ওপেন সোর্স ফর্ক) পাওয়া যাবে। আমি জানি, জেডএফএস ব্যবহার করে বিএসডি ও লিনাক্সের অধীনে কিছু ভাগ্য আছে (FUSE ব্যবহার করে?) - কিন্তু আমার চেষ্টা করার কোনো অভিজ্ঞতা নেই।


2
2017-09-10 18:49



বেশ কিছুক্ষণের জন্য জেডএফএসগুলির একটি অ-ফুসিয়াস নেটিভ লিনাক্স পোর্ট হয়েছে: zfsonlinux.org - EEAA


একটি শুরু করুন rsync টার্গেট মেশিনে ডেমন। এই স্থানান্তর প্রক্রিয়া অনেক গতিবিধি হবে।


1
2017-09-11 15:50