স্ট্রিপ_ক্যাচি_ আকার স্থায়ী করা


15

আমি করেছিলাম

echo 8192 > /sys/block/md0/md/stripe_cache_size

আমার RAID পারফরম্যান্স উন্নত করতে, এবং এটি প্রচুর সাহায্য করেছিল।

তবে কীভাবে এটি স্থায়ী করা যায় তা আমি এখনও বুঝতে পারি না।

আমি এটি /etc/rc.local এ সেট করার চেষ্টা করছিলাম - অন্যান্য কমান্ড কার্যকর করা হয়েছে, তবে এটি অন্য জায়গায় 256 এ ওভাররাইট করা হয়েছিল ... কোনও ইঙ্গিত?


নীচে আমার উত্তর থেকে মন্তব্য পোস্ট করা; আপনি স্ট্যাক এক্সচেঞ্জ কীভাবে কাজ করেন তা আমি নিশ্চিত কিনা তা আমি নিশ্চিত নই: হুম্মম ... আমার রেড নেই, সুতরাং এটি দীর্ঘ শট, তবে আপনি 'গ্রেপ -আর 256 / চেষ্টা করতে পারেন ইত্যাদি / init.d 'এবং' গ্রেপ -আর স্ট্রাইপ_ক্যাচি_সাইজ /etc/init.d '?
zpletan

1
Sysfsutils প্যাকেজ আপনার সমস্যার সমাধান করতে সহায়তা করবে?
zpletan

উত্তর:


16

একটি udev নিয়ম যুক্ত করুন, যেমন /etc/udev/rules.d/60-md-stripe-cache.rules:

SUBSYSTEM=="block", KERNEL=="md*", ACTION=="change", TEST=="md/stripe_cache_size", ATTR{md/stripe_cache_size}="8192"

আমি বাস্তবে এটি চেষ্টা করি নি তাই এটি 100% সঠিক নাও হতে পারে (কিছু টাইপস হতে পারে) তবে এটি কাছাকাছি হওয়া উচিত। man udevআরও বুঝতে চেক করুন ।

আপনি নতুন নিয়মটি তত্ক্ষণাত প্রয়োগ করতে নিম্নলিখিত কমান্ডগুলি চালিয়ে যেতে চাইবেন:

udevadm trigger
udevadm control --reload-rules

1
আপনাকে অনেক ধন্যবাদ, এটি শেষ অবধি নিখুঁত সমাধান :-) সিনট্যাক্স ঠিক আছে, নামের আগে আমাকে সবেমাত্র 60০- যোগ করতে হয়েছিল, এবং র‌্যামফগুলি পুনরায় তৈরি করতে হয়েছিল।
বার্সমন্সটার

1
ধন্যবাদ। আমি বিশ্বাস করতে পারি না যে এটি এখনও উবুন্টু 13.10 এ একটি সমস্যা। একটি এনক্রিপ্ট করা RAID থেকে অন্যটিতে অনুলিপি করার সময় <10MB / s থেকে সম্পূর্ণ hangs> 100MB / s এ গিয়েছে, কেবল স্ট্রাইপ ক্যাশের আকারকে আরও উদার মানের পরিবর্তনে।
frostschutz

ঠিক তাই এটি অন্যদের জন্য স্পষ্ট: কমপক্ষে আধুনিক উবুন্টু সিস্টেমে (আমার ক্ষেত্রে 17.04), সম্ভবত অন্যরা, আপনাকে এই নতুন নিয়ম তৈরির পরে আপনার initramfs ("sudo আপডেট-initramfs -u") পুনর্নির্মাণ করতে হবে বা এটি আসলে হবে না স্বয়ংক্রিয়ভাবে কার্যকর।
ব্রায়ান হেনরি

1

শুধু শেষ পোস্টে প্রসারিত করতে; নীচের স্ক্রিপ্টটি আমার পক্ষে কাজ করে। আপনার বিবরণটিকে "<...>" এর মধ্যে সরিয়ে নিন। উপভোগ করুন!


#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

#################NOTE######################
##  You are limited by CPU and memory too #
##  <Your Name> <Date of Modification>    #
##  stripe cache size and read-ahead      #
###########################################
echo 16384 > /sys/block/<Your RAID5 or 6 Volume>/md/stripe_cache_size
blockdev --setra 16384 /dev/<Your RAID5 or 6 Volume>

exit 0

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

0

আমি এটি বের করার চেষ্টাও করছি। আমি rc.local এ আমার রাখি এবং ভাগ্য নেই। আমি লগ ইন করার পরে এটি ম্যানুয়ালি শুরু করেছি I আমি মনে করি আপনি এটি পরিচালনা করতে কোনও স্ক্রিপ্ট লিখতে পারেন এবং এটি আপনার "স্টার্টআপ অ্যাপ্লিকেশনগুলিতে" রাখতে পারেন তবে আপনি জিনোমে লগ ইন না করলে এটি কোনও লাভ হয় না।


এটি উবুন্টু সার্ভার, সুতরাং এখানে ভাগ্য নেই।
বার্সমন্সটার

0

Sysfsutils প্যাকেজ আপনার সমস্যার সমাধান করতে সহায়তা করবে?

মূল উত্তর:

আপনার প্রশ্নে কীভাবে মন্তব্য করবেন তা আমি বুঝতে পারি না; আমার ধারণা আমি আপনার সমস্যাটি সম্পর্কে আরও জানার সাথে সাথে এই উত্তরটি সম্পাদনা করব।

আপনি কি পোস্ট (বা পেস্টবিন, যদি এটি দীর্ঘ হয়) এর আউটপুট পোস্ট করতে পারেন?

grep -R md0 /etc/init.d

সেখানে কিছুই পাওয়া যায়নি।
বারমন্সটার

হুমম ... আমার কাছে রেড নেই, সুতরাং এটি দীর্ঘ শট ধরণের, তবে আপনি কি 'গ্রেপ -আর 256 /etc/init.d' এবং 'গ্রেপ -আর স্ট্রাইপ_ক্যাচি_সাইজ /etc/init.d' চেষ্টা করতে পারেন?
zpletan

দু'জনই কোনও ফল দেয়নি।
বার্সমন্সটার

0

আপনার কাছে আমার কাছে সত্যিকারের উত্তর নেই তবে আপনি সম্ভবত একটি সাধারণ আপস্টার্ট স্টার্টআপ স্ক্রিপ্ট তৈরি করতে চেষ্টা করতে পারেন। .Conf এক্সটেনশান দিয়ে / etc / init এ একটি ফাইল তৈরি করুন। ফাইলটি লিখুন:

start on started tty1

exec echo 8192 > /sys/block/md0/md/stripe_cache_size

আমার চিন্তাভাবনাটি হ'ল টার্মিনালটি শুরু হওয়ার সময় কমান্ডটি চালানো উচিত যা সম্ভবত আপনি কমান্ডটি চালাচ্ছেন একই সময়ে is


আমি ইতিমধ্যে এটি স্টার্টআপ স্ক্রিপ্ট (rc.local) এ দেওয়ার চেষ্টা করেছি এবং এটি কোনও উপকারে আসেনি। এছাড়াও, এটি যেমন উবুন্টু সার্ভার, রিবুট করার পরে কোনও টার্মিনাল নাও থাকতে পারে, এএফএআইআইকি।
বার্সমন্সটার

আমি এটি আরসি.লোকাল পদ্ধতির বিকল্প হিসাবে প্রস্তাব করছি। এটি পরে শুরু হবে। আমি যদিও জানি না।
ব্যবহারকারী 1974

টার্মিনালের অভাব হিসাবে, আমার কোনও ধারণা নেই। স্টার্টআপের পরে কোনও সার্ভারে টিটি থাকবে না কেন? আমরা যখন টার্মিনাল বলি তখন আমরা একই জিনিসটি বোঝাই? নির্বিশেষে, আপনি কমান্ডটি ট্রিগার করতে একটি পৃথক পরিষেবা ব্যবহার করতে পারেন, কেবল পরিবর্তন করুনtty1
user1974

0

অন্ধকারে মোট শট আমার কাছে পরীক্ষার জন্য একটি রেড 5 সেটআপ নেই: সম্ভবত এর সাথে একটি লাইন যুক্ত করুন

chmod -w /sys/block/md0/md/stripe_cache_size

rc.local এ সেট করার পরে লেখার অনুমতিগুলি সরাতে। সম্ভবত এটি অন্য কোথাও পরিবর্তিত হওয়া থেকে থামবে?


ভাল ধারণা, তবে মনে হচ্ছে উবুন্টু বুট প্রক্রিয়াতে কোনও কিছু ছড়িয়ে পড়েছে: - আমি আজ চেষ্টা করে পোস্ট করব।
বার্সমন্সটার

সাহায্য করেনি: - |
বারসনস্টার

0

পরিশেষে

echo 8192 > /sys/block/mdX/md/stripe_cache_size

to /etc/rc.local


প্রশ্নটি দেখুন - এটিই আমি প্রথম চেষ্টা করেছি এবং এটি কার্যকর হয়নি, স্পষ্টতই এমডি-ড্রাইভারকে পুনর্নির্মাণ করা হয়েছিল বা আরসি.লোকাল মৃত্যুদন্ড কার্যকর করার পরে কিছু ছিল।
বারসনস্টার

-1

এই পৃষ্ঠাটি পরামর্শ দেয় যে fs সেট আপ করার সময় স্ট্রাইপের আকার (বা প্রস্থ) সেট আপ করা উচিত ছিল। টিউনস এখানে সাহায্য করতে পারে?


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