আমি কীভাবে আমার সার্ভারের ডিস্কের কার্যকারিতা উন্নত করব


10

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

আমার সার্ভার রিমোট হোস্টগুলিকে ব্যাকআপ করতে দিনে একাধিকবার আরএসএন্যাপশট চালায়। আসল ইনক্রিমেন্টাল ব্যাকআপ অংশটি খুব কম সময় নেয়। তাৎপর্যপূর্ণ সময় ব্যয় করে যেমন:

/bin/cp -al /srv/rsnapshot/hourly.0 /srv/rsnapshot/hourly.1

যা প্রায় ২ ঘন্টা সময় নেয়। আমি বুঝতে পারি যে সেখানে একটি বাজিলিয়ান ক্ষুদ্র ফাইল রয়েছে।

$ sudo du -hs hourly.1
659G    hourly.1

এছাড়াও যখন আরএসএন্যাপশট পুরানো ব্যাকআপ মোছা এতে দীর্ঘ সময় নিতে পারে: -

/bin/rm -rf /srv/rsnapshot/daily.6/

যা প্রায় আধা ঘন্টা সময় নেয়।

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

বাধা কোথায় আছে আমি কীভাবে সনাক্ত করতে পারি?

আমি কি এই বাক্সটি সহ সক্ষম (আইও বুদ্ধিমান) এর সীমাতে পৌঁছে যাচ্ছি?

আমি কি পারফরম্যান্সের কোনও টুইট করতে পারি?

আমার কি আলাদা একটি রেড স্তর ব্যবহার করা উচিত?

বাহ্যিক অ্যারেতে দুটি 'অন্যান্য আয়নার অর্ধেক' দিয়ে দুটি আভ্যন্তরীণ RAID ডিস্ক (প্রতিটি আয়নার অর্ধেক) অদলবদল করার কী অর্থ হবে?

দ্রষ্টব্য: আমি আমার নিজের কার্নেলটি সংকলনের মতো কাজগুলি করতে কিছুটা প্রবণতা পোষণ করি না। আদর্শভাবে আমি 10.04 এলটিএসে আটকাতে চাই, যদি না পরবর্তী সংস্করণগুলিতে এমন কোনও জাদু না থাকে যা এই সমস্ত কাজকে আরও দ্রুত করে তোলে।

অভ্যন্তরীণভাবে সার্ভারের 1x160GB SATA বুট ডিস্ক এবং 4x2TB ডিস্ক রয়েছে: -

Disk /dev/sde: 160.0 GB, 160041885696 bytes
Disk /dev/sdf: 2000.4 GB, 2000398934016 bytes
Disk /dev/sdh: 2000.4 GB, 2000398934016 bytes
Disk /dev/sdi: 2000.4 GB, 2000398934016 bytes
Disk /dev/sdg: 2000.4 GB, 2000398934016 bytes

চারটি অভ্যন্তরীণ 2 টিবি ডিস্ক একটি সফ্টওয়্যার এমডি RAID10 সেটআপে রয়েছে: -

md0 : active raid10 sdg1[3] sdh1[0] sdi1[2] sdf1[1]
      3907023872 blocks 64K chunks 2 near-copies [4/4] [UUUU]

অতিরিক্তভাবে আমার কাছে একটি বাহ্যিক EDGE10 ড্রাইভ ঘের রয়েছে যা একটি পিসিআই-ই ইএসটা কার্ডের মাধ্যমে সংযুক্ত এবং এতে আরও 500 টি ড্রাইভ রয়েছে: 500

Disk /dev/sda: 500.1 GB, 500107862016 bytes
Disk /dev/sdb: 500.1 GB, 500107862016 bytes
Disk /dev/sdc: 500.1 GB, 500107862016 bytes
Disk /dev/sdd: 500.1 GB, 500107862016 bytes

এটি এমডি RAID10 অ্যারে হিসাবে সেটআপও

md1 : active raid10 sdb1[1] sda1[0] sdd1[3] sdc1[2]
      976767872 blocks 64K chunks 2 near-copies [4/4] [UUUU]

এমডি0 এবং এমডি 1 একত্রিত হয়ে একটি বড় এলভিএম তৈরি করা হয়েছে। দ্রষ্টব্য: আমি সম্প্রতি সম্প্রতি বাহ্যিক অ্যারে যুক্ত করেছি, সুতরাং এটি বেশ ফাঁকা, আমি মনে করি না এখনই এটিতে কোনও ব্লক রয়েছে।

এটি একটি এলভিএম ভলিউম হিসাবে উপস্থাপিত হয়েছে: -

--- Logical volume ---
LV Name                /dev/data/data
VG Name                data
LV UUID                amZCgU-sQLi-R363-dUFx-Bcdf-iwlt-ZNnDp8
LV Write Access        read/write
LV Status              available
# open                 1
LV Size                4.54 TiB
Current LE             1190134
Segments               2
Allocation             inherit
Read ahead sectors     auto
- currently set to     512
Block device           251:0

যা EXT4 হিসাবে ফর্ম্যাট করা হয়েছে এবং / এসআরভি হিসাবে মাউন্ট করা হয়েছে: -

/dev/mapper/data-data on /srv type ext4 (rw)

প্রচুর খালি জায়গা আছে।

/dev/mapper/data-data
                      4.5T  2.2T  2.1T  51% /srv

অন্যান্য তথ্য যা কার্যকর হতে পারে: -

$ uname -a
Linux ubuntuserver 2.6.32-32-server #62-Ubuntu SMP Wed Apr 20 22:07:43 UTC 2011 x86_64 GNU/Linux

00:11.0 SATA controller: ATI Technologies Inc SB700/SB800 SATA Controller [AHCI mode] (rev 40)
02:00.0 RAID bus controller: Silicon Image, Inc. SiI 3132 Serial ATA Raid II Controller (rev 01)

আরএসএন্যাপশট চলাকালীন সিপি কমান্ডটি করার সময় আমি নীচের বিষয়গুলি আইওস্যাট-এ দেখি: -

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.55    0.00    5.47   66.14    0.00   27.85

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdc               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdd               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sde               0.00     0.00    0.10    0.00     0.80     0.00     8.00     0.00    0.00   0.00   0.00
sdf               0.00   407.50    0.00   66.80     0.00  3790.40    56.74   124.86 1524.88  13.55  90.50
sdh               0.00   406.90    0.00   66.90     0.00  3790.40    56.66    92.89 1230.52  13.21  88.40
sdi               0.00   407.80    5.50   70.20    44.00  3824.00    51.10   113.83 1333.84  12.34  93.40
sdg               0.00   406.80    6.10   71.60    48.80  3827.20    49.88    64.32  787.68  11.69  90.80
md0               0.00     0.00   11.50 1484.60    92.00 11876.80     8.00     0.00    0.00   0.00   0.00
dm-0              0.00     0.00   11.50 1484.70    92.00 11877.60     8.00  5331.18  471.91   0.63  94.70
md1               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00

সুতরাং মূলত প্রচুর লেখাগুলি, প্রচুর আইও অপেক্ষা করে।

এখনই বাক্সটি নিষ্ক্রিয়, আমি সমস্ত কাজ সাসপেন্ড করেছি।

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00    0.00    0.00    0.00  100.00

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
sda               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdc               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdd               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sde               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdf               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdh               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdi               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdg               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
md0               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
md1               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
dm-0              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00

পীচ লাগছে!

$ sudo hdparm -T -t /dev/sd[a-i]

/dev/sda:
 Timing cached reads:   2532 MB in  2.00 seconds = 1265.95 MB/sec
 Timing buffered disk reads:  270 MB in  3.02 seconds =  89.53 MB/sec

/dev/sdb:
 Timing cached reads:   2516 MB in  2.00 seconds = 1258.07 MB/sec
 Timing buffered disk reads:  264 MB in  3.02 seconds =  87.37 MB/sec

/dev/sdc:
 Timing cached reads:   2442 MB in  2.00 seconds = 1220.80 MB/sec
 Timing buffered disk reads:  272 MB in  3.00 seconds =  90.60 MB/sec

/dev/sdd:
 Timing cached reads:   2520 MB in  2.00 seconds = 1259.64 MB/sec
 Timing buffered disk reads:  272 MB in  3.02 seconds =  90.07 MB/sec

/dev/sde:
 Timing cached reads:   2524 MB in  2.00 seconds = 1261.48 MB/sec
 Timing buffered disk reads:  306 MB in  3.01 seconds = 101.56 MB/sec

/dev/sdf:
 Timing cached reads:   2366 MB in  2.00 seconds = 1183.28 MB/sec
 Timing buffered disk reads:  388 MB in  3.01 seconds = 128.88 MB/sec

/dev/sdg:
 Timing cached reads:   2536 MB in  2.00 seconds = 1267.52 MB/sec
 Timing buffered disk reads:  400 MB in  3.00 seconds = 133.12 MB/sec

/dev/sdh:
 Timing cached reads:   2538 MB in  2.00 seconds = 1269.08 MB/sec
 Timing buffered disk reads:  426 MB in  3.00 seconds = 141.90 MB/sec

/dev/sdi:
 Timing cached reads:   2538 MB in  2.00 seconds = 1268.57 MB/sec
 Timing buffered disk reads:  402 MB in  3.01 seconds = 133.69 MB/sec

হুম। আমি বিভিন্ন হার্ডওয়্যার জুড়ে বিভক্ত ডিস্ক স্ট্রাকচারকে ঘৃণা করি কারণ এটি এ জাতীয় জিনিসকে সমস্যা সমাধানের পক্ষে এত শক্ত করে তোলে। সাধারণত আমি bonnie++প্রতিটি অ্যারে পৃথকভাবে কিছু চালানোর পরামর্শ দিচ্ছি যাতে আপনার কাছে তাদের জন্য প্রাথমিক গতির মানদণ্ড থাকে। এলভিএমের সাথে আমার খুব বেশি অভিজ্ঞতা নেই তাই আমি নিশ্চিত না যে সেগুলি ডিকম্পল করা এখন একটি বিকল্প।
অলি

বাহ্যিক অ্যারে আসলেই কোনও সমস্যা নয়। এটিতে কোনও ব্লক নেই। এটি অভ্যন্তরীণ ডিস্ক পারফরম্যান্স যা আমি আশা করি আশা করি।
পোপি

উত্তর:


3

দুর্ভাগ্যক্রমে স্ট্রিপ ক্যাশে শুধুমাত্র RAID5 এবং 6 এর জন্য প্রযোজ্য - RAID 0/1/10 এর সমতুল্য নেই।

আপনার স্বতন্ত্র ড্রাইভের পারফরম্যান্স (অনুযায়ী হিসাবে hdparm) দেখতে দুর্দান্ত - তারা সকলেই সেই শ্রেণীর ড্রাইভগুলির জন্য প্রত্যাশা অনুযায়ী পারফর্ম করছে।

আমার পরামর্শ:

  1. BCOS এএইচসিআই সক্ষম হয়েছে এবং অভ্যন্তরীণভাবে ইনস্টল করা ড্রাইভগুলি উত্তরাধিকার আইডিই মোড ব্যবহার করছে না তা পরীক্ষা করুন। মাইক্রো সার্ভারের জন্য একটি হ্যাক করা বিআইওএস রয়েছে যা এএসটিএ বন্দরের জন্য এএইচসিআইকেও সক্ষম করে ( আরও তথ্যের জন্য এই লিঙ্কটি দেখুন) - বাহ্যিক ঘেরে থাকা ড্রাইভগুলির জন্য তদন্ত করার উপযুক্ত হতে পারে, যদিও তারা এখনও একটি পেছনে রেখে সীমাবদ্ধ থাকবে বন্দর গুণক
  2. সমস্ত ড্রাইভের জন্য এনসিকিউ সক্ষম করুন এবং দেখুন যে এটি কোনও পার্থক্য করে (এটি সম্ভবত এটি নাও পারে)।
  3. ফাইল সিস্টেম সেটিংসটি অপ্টিমাইজড রয়েছে তা নিশ্চিত করুন (মাউন্টিং নোটিম, নোডিরামটাইম)। আপনি লেখার বাধাগুলিও অক্ষম করতে পারেন , তবে এটি খুব ঝুঁকিপূর্ণ হতে পারে।
  4. আপনি আই / ও সিডিউলারটি স্যুইচ করে কোনও সুবিধা দেখতে পান কিনা তা পরীক্ষা করে দেখুন (নুপ এখানে সহায়তা করতে পারে)।
  5. এমডি এবং এলভিএম উভয় ডিভাইসের জন্য পঠন-সামনের বাফার সামঞ্জস্য করুন: blockdev --setra <size> /dev/md1উদাহরণস্বরূপ (যেখানে <size>512-বাইট সেক্টর রয়েছে)। এটি কেবল যদিও পড়তে সহায়তা করবে।

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


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