আমার এক্সএফএস ফাইল সিস্টেমগুলি কেন হঠাৎ করে আরও বেশি জায়গা এবং স্পার ফাইল সহ পূর্ণ ব্যবহার করছে?


62

আমি বিভিন্ন লিনাক্স সার্ভার জুড়ে প্রায় 10 বছর ধরে ডেটা / গ্রোথ পার্টিশন হিসাবে এক্সএফএস ফাইল সিস্টেমগুলি চালিয়েছি।

আমি সাম্প্রতিক সেন্টস / আরএইচএল সার্ভারগুলি চলমান সংস্করণ 6.2+ সহ একটি অদ্ভুত ঘটনা লক্ষ্য করেছি।

EL6.0 এবং EL6.1 থেকে নতুন ওএস পুনর্বিবেচনার পদক্ষেপের পরে স্থিতিশীল ফাইল সিস্টেমের ব্যবহার অত্যন্ত পরিবর্তনশীল হয়ে ওঠে। প্রাথমিকভাবে EL6.2 + সহ ইনস্টল করা সিস্টেমগুলি একই আচরণ প্রদর্শন করে; এক্সএফএস পার্টিশনে ডিস্কের ব্যবহারে বুনো দোল দেখানো হচ্ছে ( নীচের গ্রাফের নীল রেখাটি দেখুন)।

আগপাছ. শনিবার 6.1 থেকে 6.2 এ আপগ্রেড হয়েছে। এক্সএফএস গ্রাফ

গত সপ্তাহের একই সিস্টেমে ডিস্ক ব্যবহারের গ্রাফ, গত সপ্তাহে ওঠানামা দেখিয়ে। এখানে চিত্র বর্ণনা লিখুন

আমি বড় ফাইল এবং রানওয়ে প্রসেসের জন্য ফাইল সিস্টেমগুলি পরীক্ষা করতে শুরু করেছি (লগ ফাইলগুলি, সম্ভবত?)। আমি আবিষ্কার করেছি যে আমার বৃহত্তম ফাইলগুলি থেকে duএবং বিভিন্ন মানকে প্রতিবেদন করছে ls। স্যুইচটির duসাথে এবং ছাড়া চলমান --apparent-sizeপার্থক্যটি চিত্রিত করে।

# du -skh SOD0005.TXT
29G     SOD0005.TXT

# du -skh --apparent-size SOD0005.TXT
21G     SOD0005.TXT

পুরো ফাইল সিস্টেমে এনসিডিইউ ইউটিলিটি ব্যবহার করে একটি দ্রুত চেক পাওয়া গেছে :

Total disk usage: 436.8GiB  Apparent size: 365.2GiB  Items: 863258

ওএস / কার্নেলের পূর্ববর্তী সংস্করণের তুলনায় প্রায় 70 গিগাবাইট হারিয়ে যাওয়া ফাইল সহ ফাইল সিস্টেমটি বিচ্ছিন্ন ফাইলগুলিতে পূর্ণ !

আমি রেড হ্যাট বাগজিলার মাধ্যমে ছিটিয়েছি এবং এক্সএফএস সম্পর্কিত একই আচরণ বা নতুন ঘোষণার কোনও প্রতিবেদন আছে কিনা তা দেখতে লগগুলি পরিবর্তন করেছিলাম।

নাদা।

আমি আপগ্রেড করার সময় কার্নেল সংস্করণ 2.6.32-131.17.1.el6 থেকে 2.6.32-220.23.1.el6 এ চলেছি ; গৌণ সংস্করণ সংখ্যায় কোনও পরিবর্তন নেই।

আমি filefragটুলটি দিয়ে ফাইল টুকরো টুকরো পরীক্ষা করেছি । এক্সএফএস বিভাজনের বৃহত্তম ফাইলগুলির কয়েকটিতে কয়েক হাজার এক্সটেন্ট ছিল। অবিচ্ছিন্নভাবে xfs_fsr -vক্রিয়াকলাপের সময় অনলাইন ডিফ্র্যাগের সাথে চালনা অস্থায়ীভাবে ডিস্কের ব্যবহার হ্রাস করতে সহায়তা করে (উপরের প্রথম গ্রাফে বুধবার দেখুন)। তবে ভারী সিস্টেমের ক্রিয়াকলাপটি পুনরায় শুরু হওয়ার সাথে সাথে ব্যবহার বেলুন করা হয়েছে।

এখানে কি হচ্ছে?


2
মিম ... পিয়াজা ....
টম ও'কনর

উত্তর:


76

আমি এই সমস্যাটি ডিসেম্বর ২০১০ থেকে এক্সএফএস উত্স বৃক্ষের প্রতিশ্রুতি সম্পর্কে আলোচনায় ফিরে এসেছি । প্যাচটি কার্নেল ২.6.৩৮ এ প্রবর্তিত হয়েছিল (এবং স্পষ্টতই, পরে কিছু জনপ্রিয় লিনাক্স বিতরণ কার্নেলগুলিতে ব্যাকপোর্ট করা হয়েছে)।

ডিস্ক ব্যবহারে পর্যবেক্ষণ করা ওঠানামা একটি নতুন বৈশিষ্ট্যের ফলস্বরূপ; এক্সএফএস ডাইনামিক স্পেকুলিটিভ ইওএফ প্রিলোকেশন

স্ট্রিমিংয়ের সময় ফাইলের খণ্ডন হ্রাস করার এটি একটি পদক্ষেপ যা ফাইলের আকার বাড়ার সাথে সাথে স্পষ্টতই স্থান বরাদ্দ করে writes প্রতি ফাইলটিতে পূর্বনির্ধারিত স্থানের পরিমাণ গতিশীল এবং মূলত ফাইল সিস্টেমে উপলব্ধ মুক্ত স্থানের একটি ফাংশন (সম্পূর্ণরূপে স্থান দৌড়াতে অব্যাহত রাখতে)।

এটি এই সময়সূচী অনুসরণ করে:

freespace       max prealloc size
  >5%             full extent (8GB)
  4-5%             2GB (8GB >> 2)
  3-4%             1GB (8GB >> 3)
  2-3%           512MB (8GB >> 4)
  1-2%           256MB (8GB >> 5)
  <1%            128MB (8GB >> 6)

এটি ফাইল সিস্টেমে একটি আকর্ষণীয় সংযোজন কারণ এটি আমার মোকাবেলা করা বিশাল আকারের খণ্ডিত ফাইলগুলির কিছুতে সহায়তা করতে পারে।

পৃষ্ঠাগুলি, ডেন্টি এবং ইনডগুলি এগুলি দিয়ে বিনামূল্যে অস্থায়ীভাবে পুনরুদ্ধার করা যেতে পারে:

sync; echo 3 > /proc/sys/vm/drop_caches

allocsizeফাইল সিস্টেম মাউন্টের সময় কোনও মান নির্ধারণ করে বৈশিষ্ট্যটি পুরোপুরি অক্ষম করা যায় । এক্সএফএসের জন্য ডিফল্ট allocsize=64k

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

সর্বোপরি, এটি আমাকে অফ-গার্ড ধরে ফেলেছিল কারণ বিতরণ পর্যায়ে বা এমনকি এক্সএফএস মেলিং তালিকা পর্যবেক্ষণের ক্ষেত্রে ফাইল সিস্টেমের পরিবর্তনের কোনও সুস্পষ্ট ঘোষণা ছিল না ।


সম্পাদনা করুন :
এই বৈশিষ্ট্যটির সাথে এক্সএফএস ভলিউমের পারফরম্যান্স অত্যন্ত উন্নত হয়েছে। আমি ভলিউমে সামঞ্জস্য <1% টুকরা দেখতে পাচ্ছি যা পূর্বে 50% অবধি প্রদর্শিত হয়েছিল। লেখার পারফরম্যান্স বিশ্বব্যাপী!

EL6.3 সংস্করণে লিগ্যাসি এক্সএফএসের তুলনা করে একই ডেটাসেটের পরিসংখ্যান।

পুরানো:

# xfs_db -r -c frag /dev/cciss/c0d0p9
actual 1874760, ideal 1256876, fragmentation factor 32.96%

নতুন:

# xfs_db -r -c frag /dev/sdb1
actual 1201423, ideal 1190967, fragmentation factor 0.87%

4
দশ লক্ষ উত্সাহ এবং আপনার কাছে আমার রাজ্য
জোয়েল ই সালাস

1
ধন্যবাদ! আমরা সবেমাত্র ডেবিয়ান স্কুইজ থেকে উবুন্টুতে আপগ্রেড করেছি এবং ভাবছিলাম যে ডু এবং এলএস লার্জি ফাইলগুলির জন্য কেন এইরকম বুনো বিভিন্ন মান দেখাচ্ছে (উদাহরণস্বরূপ 50 এমবি বনাম 64 এমবি)
গাইলস থমাস

1
@ নতুন সাদা স্থানটি দাবি করার জন্য আপনি কি এই বৈশিষ্ট্যটি বন্ধ করে দিয়েছেন? বা এই নিবন্ধটি কি কেবল বলছে, আরে, এই বৈশিষ্ট্যটি হ'ল রিপোর্ট করা আকারগুলিতে তাত্পর্য সৃষ্টি করেছিল? এটি "ডাটাবেস সিস্টেমগুলিতে, বা পাতলা-বিধানিত ভিএমগুলিতে, এটি বন্ধ করে রাখার বিষয়ে বিবেচনা করুন" বলে মনে হচ্ছে তবে আপনি কী করার সিদ্ধান্ত নিয়েছেন তা শেষ পর্যন্ত আমি নিশ্চিত নই।
জেডিএস 12'14

2
@ জেডিএস আমি এটি ছেড়ে দিচ্ছি এটি টুকরো টুকরো টিকিয়ে দেয় এবং আমার অ্যাপ্লিকেশনগুলিতে পারফরম্যান্স বাড়িয়েছে।
ew

3
ওহ, দুর্দান্ত সন্ধান। এটি 35 গিগাবাইট ফাইলে 750 জিবি ব্যবহার করছিল। পরে xfs_fsrএটি ফিরিয়ে 35GB সম্পর্কে নিচে আছে। আমাকে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.