একটি পূর্ণ রিসিলভারের প্রয়োজন ছাড়াই কোনও জেডএফএস ডিস্ককে আলাদা করে পুনরায় সংযুক্ত করা কি সম্ভব?


10

আমার কাছে চারটি মোট ড্রাইভ সহ একটি জেডএফএস মিররড পুল রয়েছে। দুটি ড্রাইভই অফসাইট ব্যাকআপ ঘোরানোর জন্য ব্যবহার করার উদ্দেশ্যে। আমার প্রত্যাশাটি ছিল যে প্রাথমিক পুনর্নির্মাণের detachপরে আমি এবং পরে attachএকটি ডিস্ক করতে পারি এবং এটি কেবল একটি ইনক্রিমেন্টাল রিসিলবার করতে পারি - তবে পরীক্ষায় এটি ডিস্কটি সংযুক্ত করা হয়েছে কিনা তা পূর্বেই প্রায় সমস্ত পুল রয়েছে কিনা তা নির্বিশেষে একটি সম্পূর্ণ রিসিলবার সম্পাদন করে বলে মনে হচ্ছে বিষয়বস্তু।

কোনও offline/ onlineপদ্ধতির ব্যবহার আমাকে কেবল ডিস্ক আপডেট করার পছন্দসই ফলাফল দেবে - পুরোপুরি পুনর্নির্মাণের চেয়ে? অথবা প্রত্যাশা মতো এই কাজটি করার জন্য আমার কি সম্পূর্ণ আলাদা কিছু করা দরকার - যেমন প্রতিটি ব্যাকআপ ডিস্ককে 1-ডিস্ক পুল হিসাবে ব্যবহার করা এবং sendযখনই এটি আপডেট করার দরকার হয় তখন এটিতে সর্বাধিক স্নাপশটগুলি যুক্ত করা যায়?


5
-1 ব্যাকআপের জন্য ড্রাইভগুলি বিচ্ছিন্ন / সংযুক্ত করবেন না, জেডএফএস ডিজাইনারদের উদ্দেশ্য হিসাবে প্রেরণ / গ্রহণ আদেশগুলি ব্যবহার করুন।
ক্রিস এস

2
@ ক্রিসস এ -1 এর পরিবর্তে কীভাবে কিছু উদ্ধৃতি দিয়ে উত্তর লিখবেন। দেখে মনে হচ্ছে আপনার ব্যাকআপের একমাত্র বিকল্পগুলি অন্য কোথাও একটি অনলাইন পুল which এটি সত্য কিনা তা জানতে পেরে ভাল লাগবে, তবে আমি সন্দেহ করি যে এটি ঘটেনি।
এসটিডাব্লু

1
দুঃখিত, আমি অহংকারী জার্ক হওয়ার ইচ্ছা করি না, তবে সার্ভার ফল্ট কেবল পেশাদার সিস্টেম অ্যাডমিনিস্ট্রেটরের (এট আল) জন্য বলে মনে করা হচ্ছে। ব্যাকআপগুলির ব্রেকিং-মিরর পদ্ধতিটি পুরোপুরি নিয়ন্ত্রণহীন, ত্রুটি-প্রবণ এবং অপেশাদারী যে এটিকে একটি কার্যকর ব্যাকআপ পদ্ধতি হিসাবে বিবেচনা করা উচিত নয়। আমি যা পরামর্শ দিচ্ছি তা হ'ল আপনি যে দুটি ফাইল সিস্টেম চান তার সাথে দুটি ব্যাকআপ ড্রাইভ ফর্ম্যাট করে zfs sendএবং ব্যাকআপ ডিস্কগুলিতে সংরক্ষিত পূর্ণ বা বর্ধিত ব্যাকআপ স্ট্রিম নিতে কমান্ডটি ব্যবহার করে , বা zfs recvএকটি সদৃশ ডিস্ক তৈরি করতে ব্যবহার করুন । আমি এই প্রক্রিয়াটি পরিচালনা করতে কোনও ধরণের সফ্টওয়্যার ব্যবহার করার পরামর্শ দিচ্ছি।
ক্রিস এস

আমি মনে করি আপনার পয়েন্টগুলি বৈধ, আমি উত্তর হিসাবে এটি upvote করব। আমি আমার নির্দিষ্ট দৃশ্যে (যা একটি অ-সমালোচনামূলক, তবুও গুরুত্বপূর্ণ, ইন-হাউস সার্ভারের জন্য একটি ঝাঁকুনি বাজেট থেকে উদ্ভূত হয়) এবং মূলটিতে আরও কিছু বিষয়ে আমার প্রশ্নকে পুনরায় লেখার কথা বিবেচনা করছি "আমি কি কোনও সম্পূর্ণ প্রয়োজন ছাড়াই পুনরায় সংযোগ করতে পারি? resilvering? "
STW

উত্তর:


14

জেডএফএস অ্যারে ভাঙ্গার রাস্তায় নামবেন না ডিস্কসসাইটকে "আবর্তিত" করতে। যেমনটি আপনি দেখেছেন, পুনর্নির্মাণের সময় বেশি এবং পুনর্নির্মাণ প্রক্রিয়াটি ডেটাসেটের ব্যবহৃত আকারটি পড়বে / যাচাই করবে ।

আপনার যদি দক্ষতা থাকে তবে স্ন্যাপশট এবং একটি দূরবর্তী সিস্টেমে ডেটা প্রেরণ করা একটি পরিষ্কার, অ-অনুপ্রেরণীয় পদ্ধতি। আমি মনে করি আপনি একটি ডেডিকেটেড সিঙ্গল-ডিস্ক পুল রাখার প্রক্রিয়াটি পেরিয়ে যেতে পারেন, এটিতে অনুলিপি করতে পারেন, এবং zpool এক্সপোর্ট / আমদানি করুন ... তবে এটি খুব মার্জিত নয়।


দুর্ভাগ্যক্রমে আমি একটি স্ন্যাপশট-> প্রেরণ পদ্ধতির ব্যবহার করতে পারি না কারণ আমার কাছে দ্বিতীয় জেডএফএস সার্ভার অফসাইট চালানোর জন্য হার্ডওয়্যার বা ব্যান্ডউইথ নেই th তবে এটি প্রদর্শিত হয় যে অফলাইন / অনলাইন ব্যবহার করে স্ট্যাটাসটি অবনমিত হিসাবে প্রকাশিত ট্রেডঅফের সাথে কাজ করবে। আমি দেখতে পাচ্ছি কিভাবে এটি পরের সপ্তাহে বা তার জন্য যায়।
এসটিডাব্লু

1
বুঝতে পারছিল না। তবে ব্যাকআপের রূপ হিসাবে কোনও সিস্টেমের বাইরে চলমান ডিস্কগুলি টানানো কোনও শক্ত সমাধান নয়। আপনি যখন এটি করেন তখন আপনার ঝুঁকি তীব্রভাবে বৃদ্ধি পায়।
ewwhite

ভালো কথা, আমার পরিকল্পনাটি তাদের অফলাইন করা, তাদের স্থগিত করা, তাদের হট-সোয়াপ ট্রেটি আনসিট করা এবং তারপরে এটি পুরোপুরিভাবে টানানোর আগে একটি পুরো স্টপ নিশ্চিত করার জন্য এটি একটি মিনিট দিন
STW

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

11

আরও পরীক্ষার পরে আমি একটি ন্যায্য সমাধান খুঁজে পেয়েছি, তবে এটি একটি উল্লেখযোগ্য বাণিজ্য বন্ধ নিয়ে আসে। যে ডিস্কগুলি offline'ডি করা হয়েছে তবে আলাদা করা হয়নি কেবল সেগুলি পরে কেবলমাত্র একটি ইনক্রিমেন্টাল রিসিলভারিং অপারেশন দিয়ে অনলাইনে ফিরিয়ে আনা যেতে পারে (" যখন কোনও ডিভাইস অনলাইনে আনা হয়, তখন পুলে লেখা যে কোনও ডেটা নতুন উপলব্ধ ডিভাইসের সাথে পুনরায় সংশ্লেষিত হয় " ") আমার পরীক্ষাগুলিতে এটি প্রায় 3 জিবি ডেটা-ডেল্টা সহ, 3-ডিস্ক মিররটির জন্য ২৮ ঘন্টা থেকে ৩০ মিনিটের বেশি নামিয়ে আনে res

ট্রেড অফটি হ'ল অফলাইন ডিস্ক সহ যে কোনও পুল অবনতি হিসাবে চিহ্নিত করা হবে। শর্ত থাকলেও সেখানে কমপক্ষে দুটি অনলাইন ডিস্ক রয়েছে (মিররড পুলে) এটি কার্যকরভাবে একটি সতর্কতা - সততা এবং অপ্রয়োজনীয়তা অক্ষত থাকবে।

অন্যরা যেমন উল্লেখ করেছেন এই সামগ্রিক পদ্ধতিটি আদর্শের থেকে অনেক দূরে - একটি প্রত্যন্ত পুলে স্ন্যাপশট প্রেরণ করা আরও বেশি উপযুক্ত হবে তবে আমার ক্ষেত্রে এটি সম্ভবপর নয়।

সংক্ষিপ্তসার হিসাবে, যদি আপনার কোনও পুল থেকে একটি ডিস্ক সরিয়ে ফেলার প্রয়োজন হয় এবং পরে এটি পুনরায় সংশোধন না করে পুনরায় যুক্ত করতে হয় তবে আমি যে পদ্ধতির পরামর্শ দিচ্ছি তা হ'ল:

  • পুলটিতে ডিস্কটি অফলাইন করুন: zpool offline pool disk
  • ড্রাইভটি স্পিন করুন (যদি এটি শারীরিকভাবে টানতে হয়): hdparm -Y /dev/thedisk
  • ড্রাইভটিকে অফলাইনযুক্ত রেখে পুলটিকে অবনমিত অবস্থায় ছেড়ে দিন
  • পুলটিতে ডিস্কটি যুক্ত করতে: zpool online pool disk

এবং, যেহেতু এটি এখনও অনির্ধারিত, তাই ডেল্টা পুনর্নির্মাণের অপারেশন সঠিক না হওয়ার ঝুঁকি রয়েছে। "লাইভ" পুল এবং / অথবা অফলাইন ডিস্কগুলি সমস্যার সম্মুখীন হতে পারে। আমার সাথে যদি এটি ঘটে তবে আমি আপডেট করব, তবে আপাতত এই পদ্ধতির সাথে পরীক্ষা করব।


1
যদি রিসিলবারটি ডেটা ত্রুটিগুলি প্রবর্তন করতে চলেছে তবে এগুলি সময়ের সাথে সাথে বা একটি জপুল স্ক্রাবের পরে স্বয়ংক্রিয়ভাবে নিরাময় করতে চলেছে।
The wabbit

আমি একটি স্ক্রাবের মান বুঝতে পেরেছি; আমি অফলাইনে সফল স্ক্রাব না হওয়া পর্যন্ত অপেক্ষা করি এবং ব্যাকআপ ডিস্কটি অপসারণ করি
STW

2
মাত্র একটি দ্রুত আপডেট: গত বছর ধরে এই পদ্ধতির যথেষ্ট ভাল কাজ করেছে। অফসাইট ব্যাকআপের মাসিক পুনরুদ্ধার পরীক্ষাগুলি সফল এবং ধারাবাহিক হয়েছে। একটি অ্যারে ঘোরানো (একক ডিস্কের পরিবর্তে) অফসাইট অনুলিপিতে একটি মাত্রার রিডানডেন্সি সরবরাহ করা ভাল এবং আমি যদি সম্ভব হয় তা করার পরামর্শ দিই। সামগ্রিকভাবে এটি এখনও একটি হ্যাকিশ দৃষ্টিভঙ্গি এবং কিছু ঝুঁকি প্রবর্তন করে, তবে আমাদের ডেটাগুলিতে যুক্তিসঙ্গতভাবে নিরাপদ এবং সাশ্রয়ী অফসাইট ব্যাকআপ সরবরাহ করেছে।
STW

অ্যারেতে সমস্ত ড্রাইভ ঘোরানোর বিরুদ্ধে আমি তর্ক করব কারণ পরিবহণটি ধীরে ধীরে তাদের সমস্তটির ক্ষতি করতে পারে। ড্রাইভগুলি সাইটে থাকা থাকলেও আমি আবর্তনটি করব না।
কস্টিন গুșă

2

2015 অক্টোবর 15-এ আপডেট করুন: আজ আমি zpool splitকমান্ডটি আবিষ্কার করেছি , যা একটি নতুন পুল (একটি নতুন নাম সহ) একটি বিদ্যমান পুলের বাইরে বিভক্ত হয়। splitএর চেয়ে অনেক পরিষ্কার offlineএবং detachউভয় পুল একই সিস্টেমে উপস্থিত থাকতে পারে (এবং আলাদাভাবে স্ক্রাব করা হবে)। নতুন পুলটি export[ed]সিস্টেম থেকে আনপ্লাগ করার আগে পরিষ্কার (এবং সঠিকভাবে) হতে পারে ।

(আমার মূল পোস্ট নীচে অনুসরণ করা হয়।)

সতর্কবাণী! এই পৃষ্ঠায় বিভিন্ন মন্তব্য ইঙ্গিত দেয় যে এটি zpool detachকোনও ড্রাইভে সম্ভব (বা হতে পারে) এবং তারপরে কোনওভাবে ড্রাইভটি পুনরায় সংযুক্ত করতে এবং এতে থাকা ডেটা অ্যাক্সেস করতে পারে।

তবে এই থ্রেড অনুসারে (এবং আমার নিজের পরীক্ষা-নিরীক্ষা) zpool detachবিচ্ছিন্ন ড্রাইভ থেকে "পুল তথ্য" সরিয়ে দেয়। অন্য কথায়, একটি ড্রাইভের দ্রুত পুনর্নির্মাণেরdetach মতো । পরে তথ্য প্রচুর এখনও ড্রাইভে হতে পারে, কিন্তু এটা হবে কার্যত অসম্ভব ড্রাইভ পুনরারোহণ এবং একটি ব্যবহারযোগ্য ফাইল সিস্টেম যেমন ডেটা দেখতে।detach

ফলস্বরূপ, এটি আমার কাছে এটির detachচেয়ে বেশি ধ্বংসাত্মক বলে মনে হয় destroy, যেমন আমি বিশ্বাস করি যে zpool importধ্বংস হওয়া পুলগুলি পুনরুদ্ধার করতে পারে!

একটি detachহল না একটি umount, কিংবা একটি zpool export, কিংবা একটি zpool offline

আমার পরীক্ষায়, যদি আমি প্রথমে zpool offlineকোনও ডিভাইস এবং তারপরে zpool detachএকই ডিভাইসটি করি, তবে পুলের বাকী অংশটি ডিভাইসটির অস্তিত্ব কখনও ভুলে যায়। যাইহোক, ডিভাইসটি এটির offline[d]আগে ছিল detach[ed]বলে ডিভাইসটি কখনই সে সম্পর্কে অবহিত হয় না detach। সুতরাং, ডিভাইসটিতে এখনও তার পুল তথ্য রয়েছে, এবং অন্য সিস্টেমে সরানো যেতে পারে এবং তারপরে import[ed](অবনমিত অবস্থায়)।

detachআপনার বিরুদ্ধে অতিরিক্ত সুরক্ষার জন্য এমনকি offlineকমান্ড দেওয়ার পরেও কমান্ডের পরে ডিভাইসটিকে শারীরিকভাবে প্লাগ করতে পারেন detach

আমি এটি ব্যবহার করার আশা করি offline, তারপরে detach, তারপরে importআমার পুলটিকে ব্যাক আপ করার প্রক্রিয়া করব। মূল পোস্টারের মতো, আমি চারটি ড্রাইভ, দুটি ধ্রুবক আয়নাতে এবং দুটি মাসিক, ঘোরানো, অফ-সাইট (এবং অফ-লাইন) ব্যাকআপ ব্যবহার করার পরিকল্পনা করছি। আমি প্রতিটি ব্যাকআপটি সাইট থেকে অফ-সাইটে পরিবহণের আগে আলাদা সিস্টেমে আমদানি করে এবং স্ক্রাব করে যাচাই করব। মূল পোস্টারটির বিপরীতে, আমি প্রতি মাসে পুরো ব্যাকআপ ড্রাইভটি আবার লিখতে আপত্তি করি না। আসলে, আমি সম্পূর্ণ পুনর্লিখনগুলি পছন্দ করি যাতে তাজা বিট থাকে।


0

একই মেশিনে, আপনি একটি আয়নাতে 2 ড্রাইভ দিয়ে একটি নতুন পুল তৈরির চেষ্টা করেছেন? এর পরে, আপনার ওয়ার্কিং পুলে একটি স্ন্যাপশট তৈরি করুন তারপরে সেই স্ন্যাপশটটি নতুন পুলটিতে প্রেরণ করুন, পুনরাবৃত্তি করুন, তারপরে পরবর্তী স্ন্যাপশট প্রেরণটি বর্ধমান হবে। "দূরবর্তী সিস্টেমে ডেটা প্রেরণ করা" এটি একই নয় কারণ এটি একই সিস্টেম / সার্ভার / মেশিনের মধ্যে একটি পুল। এই সেটআপের সাহায্যে আপনি এখনও জপুল স্প্লিট / অফলাইন / বিচ্ছিন্ন / সংযুক্তি প্রয়োগ করতে পারেন তবে আপনি এটি কেবল দ্বিতীয় (অনুলিপি) পুলটিতে করুন এবং উত্স পুলটিতে নয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.