HP DL380p Gen8 (p420i कंट्रोलर) I / O विषमता XFS विभाजन पर


14

DL380p gen8 सर्वर पर 6 डिस्क के साथ छापे 1 + 0 के साथ LVM के शीर्ष पर XFS का उपयोग करते हुए, डिस्क में दस गुना वृद्धि में एक समान कार्यभार परिणाम RHEL 5 पर RHEL 5 की तुलना में लिखते हैं, जिससे एप्लिकेशन बेकार हो जाते हैं।

ध्यान दें कि मैं co6 सिस्टम को यथासंभव अनुकूलित करने पर विचार नहीं कर रहा हूं, लेकिन यह समझने में कि क्यों co6 इतने बेतहाशा अलग व्यवहार करता है, और इसे हल कर रहा है।

vmstat / iostat

हमारे पास MySQL प्रतिकृति सेटअप है, mysql 5.5 का उपयोग करते हुए। OS8 के रूप में RHEL 6 का उपयोग करते हुए gen8 सर्वरों पर मैसकल दास बुरी तरह से प्रदर्शन करते हैं, vmstat और iostat के साथ निरीक्षण से पता चलता है कि ये सर्वर पेज आउट गतिविधि से दस गुना और डिस्क सबसिस्टम को लिखने की मात्रा का दस गुना करते हैं। blktrace दिखाते हैं कि ये लेख mysql द्वारा शुरू नहीं किए गए हैं, लेकिन कर्नेल द्वारा।

सेंटोस 5:

[dkaarsemaker@co5 ~]$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 3  0     12 252668 102684 10816864    0    0     8   124    0    0  9  1 90  0  0
 1  0     12 251580 102692 10817116    0    0    48  2495 3619 5268  6  1 93  0  0
 3  0     12 252168 102692 10817848    0    0    32  2103 4323 5956  6  1 94  0  0
 3  0     12 252260 102700 10818672    0    0   128  5212 5365 8142 10  1 89  0  0

[dkaarsemaker@co5 ~]$ iostat 1
Linux 2.6.18-308.el5 (bc290bprdb-01.lhr4.prod.booking.com)  02/28/2013

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           8.74    0.00    0.81    0.25    0.00   90.21

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0      277.76       399.60      5952.53 2890574849 43058478233
cciss/c0d0p1      0.01         0.25         0.01    1802147      61862
cciss/c0d0p2      0.00         0.01         0.00     101334      32552
cciss/c0d0p3    277.75       399.34      5952.52 2888669185 43058383819
dm-0             32.50        15.00       256.41  108511602 1854809120
dm-1            270.24       322.97      5693.34 2336270565 41183532042

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           7.49    0.00    0.79    0.08    0.00   91.64

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0      300.00        32.00      4026.00         32       4026
cciss/c0d0p1      0.00         0.00         0.00          0          0
cciss/c0d0p2      0.00         0.00         0.00          0          0
cciss/c0d0p3    300.00        32.00      4026.00         32       4026
dm-0              0.00         0.00         0.00          0          0
dm-1            300.00        32.00      4026.00         32       4026

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           4.25    0.00    0.46    0.21    0.00   95.09

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0      507.00       160.00     10370.00        160      10370
cciss/c0d0p1      0.00         0.00         0.00          0          0
cciss/c0d0p2      0.00         0.00         0.00          0          0
cciss/c0d0p3    507.00       160.00     10370.00        160      10370
dm-0              0.00         0.00         0.00          0          0
dm-1            507.00       160.00     10370.00        160      10370

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           5.33    0.00    0.50    0.08    0.00   94.09

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0      318.00        64.00      4559.00         64       4559
cciss/c0d0p1      0.00         0.00         0.00          0          0
cciss/c0d0p2      0.00         0.00         0.00          0          0
cciss/c0d0p3    319.00        64.00      4561.00         64       4561
dm-0              0.00         0.00         0.00          0          0
dm-1            319.00        64.00      4561.00         64       4561

और Centos 6 पर एक दस गुना वृद्धि हुई है और डिस्क लिखती है:

[root@co6 ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 361044  52340 81965728    0    0    19  1804   36  110  1  1 98  0  0  
 0  0      0 358996  52340 81965808    0    0   272 57584 1211 3619  0  0 99  0  0  
 2  0      0 356176  52348 81966800    0    0   240 34128 2121 14017  1  0 98  0  0 
 0  1      0 351844  52364 81968848    0    0  1616 29128 3648 3985  1  1 97  1  0  
 0  0      0 353000  52364 81969296    0    0   480 44872 1441 3480  1  0 99  0  0  

[root@co6 ~]# iostat 1
Linux 2.6.32-279.22.1.el6.x86_64 (bc291bprdb-01.lhr4.prod.booking.com)  02/28/2013  _x86_64_    (32 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.08    0.00    0.67    0.27    0.00   97.98

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             373.48      1203.02    115203.05   11343270 1086250748
dm-0             63.63        74.92       493.63     706418    4654464
dm-1            356.48      1126.72    114709.47   10623848 1081596740

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.25    0.00    0.19    0.06    0.00   99.50

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             330.00        80.00     77976.00         80      77976
dm-0              0.00         0.00         0.00          0          0
dm-1            328.00        64.00     77456.00         64      77456

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.38    0.00    0.19    0.63    0.00   98.81

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             570.00      1664.00    128120.00       1664     128120
dm-0              0.00         0.00         0.00          0          0
dm-1            570.00      1664.00    128120.00       1664     128120

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.66    0.00    0.47    0.03    0.00   98.84

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             317.00       448.00     73048.00        448      73048
dm-0             34.00         0.00       272.00          0        272
dm-1            309.00       448.00     72776.00        448      72776

संकुचित करना

आरएचईएल 5 का उपयोग कर जनरल 8 सर्वर, और आरएचईएल 5 या 6 का उपयोग करने वाले जीन 7 सर्वर इस समस्या को नहीं दिखाते हैं। इसके अलावा, हमारे डिफ़ॉल्ट xfs के बजाय फाइलसिस्टम के रूप में ext3 के साथ आरएचईएल 6 समस्या नहीं दिखाता है। समस्या वास्तव में XFS, gen8 हार्डवेयर और सेंटोस 6 के बीच कहीं न कहीं लगती है। 6. आरएचईएल 6 समस्या को भी दर्शाता है।

29/04 को संपादित करें: हमने G8 मशीन में qlogic HBA की t जोड़ी। फाइबर चैनल भंडारण पर XFS का उपयोग समस्या को नहीं दिखाता है। तो यह निश्चित रूप से xfs / hpsa / p420i के बीच बातचीत में कहीं न कहीं है।

XFS

आरएचएल 8 में नए एक्सएफ़एस अंतर्निहित धारी चौड़ाई का पता लगाने में सक्षम प्रतीत होते हैं, लेकिन केवल h4a ड्राइवर का उपयोग करके p420i नियंत्रकों पर, cciss का उपयोग करके p410i नियंत्रक नहीं।

xfs_info आउटपुट:

[root@co6 ~]# xfs_info /mysql/bp/
meta-data=/dev/mapper/sysvm-mysqlVol isize=256    agcount=16, agsize=4915136 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=78642176, imaxpct=25
         =                       sunit=64     swidth=192 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=38400, version=2
         =                       sectsz=512   sunit=64 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

sunit / swidth दोनों सभी सेटअप में 0 हैं जो ऊपर दिए गए ओके के रूप में चिह्नित हैं। हम इसे mkfs में या noalign माउंट विकल्प के साथ बदलने में असमर्थ प्रतीत होते हैं। हम यह भी नहीं जानते कि क्या यह कारण है।

ह्यूजपेज

आरएचएल 6 पर एक्सएफएस की समस्या वाले अन्य लोगों का कहना है कि विशालताएं और विशेष रूप से पारदर्शी विशालता को अक्षम करना फायदेमंद हो सकता है। हमने दोनों को निष्क्रिय कर दिया, समस्या दूर नहीं हुई।

हमने पहले ही कई चीजों की कोशिश की और उनका पालन किया, इनमें से किसी ने भी मदद नहीं की:

  • मेमोरी आवंटन को प्रभावित करने के लिए अंकतालिका का उपयोग करना। हमने देखा कि जी 7 और जी 8 में एक अलग सुमा लेआउट है, कोई प्रभाव नहीं देखा गया था
  • नई गुठली (3.6 के रूप में नई) को हल करने के लिए ऐसा नहीं लगता था। न ही फेडोरा 17 का उपयोग किया।
  • iostat लिखित लेनदेन में दस गुना वृद्धि की रिपोर्ट नहीं करता है, केवल लिखित बाइट्स की संख्या में
  • विभिन्न I / O अनुसूचियों का उपयोग करने से कोई प्रभाव नहीं पड़ता है।
  • प्रासंगिक फाइल सिस्टम noatime / nobarrier / nopdiratime को माउंट करने से मदद नहीं मिली
  • / Proc / sys / vm / dirty_ratio बदलने से कोई प्रभाव नहीं पड़ा
  • यह 2640 और 2670 सीपीयू पर आधारित सिस्टम पर होता है
  • hpsa-3.2.0 समस्या को ठीक नहीं करता है

अपने XFS mkfs.xfsऔर mountविकल्प दिखाएं । EL6 विभाजन-संरेखण से अवगत है। HPSA EL6 के तहत दोनों स्मार्ट एरे नियंत्रक प्रकारों के लिए उपयोग में होगा, लेकिन EL5 CCISS का उपयोग करेगा।
ewwhite

mkfs विकल्प: कोई नहीं। माउंट लाइन: / dev / mapper / sysvm-mysqlVol पर / mysql / bp टाइप xfs (आरडब्ल्यू, ऑलकोसाइज़ = 1 मी)। पोस्ट में पूर्ण xfs_info आउटपुट जोड़ेंगे।
डेनिस करसेमेकर

तो उपाय क्या था?
ewwhite

जवाबों:


7

XFS और EL6 एक बदसूरत स्थिति में आ गए हैं ... मैंने कई बार अपस्ट्रीम फीचर्स / रेड हैट कर्नेल में फिसलने के कारण EL6 सिस्टम पर XFS को छोड़ दिया है ...

यह एक आश्चर्य की बात थी और कुछ घबराहट का कारण बन गया: मेरे एक्सएफएस फाइलसिस्टम अचानक अधिक स्थान और विरल फाइलों से भरे क्यों हैं?

नवंबर 2012 से, कर्नेल में XFS संस्करण शिपिंग की तुलना 2.6.32-279.11.1.el6में Red Hat Bugzilla 860787 से परेशान भार और प्रदर्शन समस्या है । तब से, मेरे पास अप्रत्याशित प्रदर्शन और औसत से अधिक रन कतारें हैं।

नई प्रणालियों के लिए, मैं ZFS या केवल ext4 का उपयोग कर रहा हूं। पुराने सिस्टम के लिए, मैं उन्हें फ्रीज कर रहा हूं 2.6.32-279.11.1.el6

उस संस्करण पर वापस जाने की कोशिश करें:

yum install kernel-2.6.32-279.11.1.el6.x86_64

उपरोक्त के अलावा, आपके द्वारा उपयोग किए जा रहे RAID नियंत्रक के प्रकार के कारण, विशिष्ट अनुकूलन क्रम में हैं:

अपने XFS फाइलसिस्टम को माउंट करें noatime। आपको ट्यून किए गए ढांचे का भी लाभ उठाना चाहिए :

tuned-adm profile enterprise-storage

एक अच्छी आधार रेखा के लिए रीडहेड, नोबैरियर और आई / ओ एलिवेटर सेट करने के लिए।


संपादित करें:

एक्सएफएस फाइलसिस्टम अनुकूलन के आसपास बहुत सारी सिफारिशें हैं। मैंने पिछले एक दशक से विशेष रूप से फाइलसिस्टम का उपयोग किया है और कभी-कभी मापदंडों को समायोजित करना पड़ा है क्योंकि ऑपरेटिंग सिस्टम में अंतर्निहित परिवर्तन हुए हैं। मैंने आपके जैसे नाटकीय प्रदर्शन में कमी का अनुभव नहीं किया है, लेकिन मैं भी LVM का उपयोग नहीं करता हूं।

मुझे लगता है कि अलग-अलग कर्नेल पीढ़ी, संकलित-डिफॉल्ट, शेड्यूलर, पैकेज, आदि को देखते हुए EL5 को उसी तरह से काम करना अनुचित है , जो EL6 के समान है

मैं इस बिंदु पर क्या करूंगा ??

  • मैं mkfs.xfs मापदंडों की जाँच करूँगा और आप सिस्टम कैसे बना रहे हैं। क्या आप स्थापना के दौरान XFS विभाजन का उपयोग कर रहे हैं या तथ्य के बाद विभाजन बना रहे हैं? मैं मुख्य OS स्थापना के बाद XFS फाइल सिस्टम निर्माण करता हूं क्योंकि मेरे पास दिए गए मापदंडों में अधिक लचीलापन है।

  • मेरे mkfs.xfs निर्माण पैरामीटर सरल हैं: mkfs.xfs -f -d agcount=32 -l size=128m,version=2 /dev/sdb1उदाहरण के लिए।

  • मेरे माउंट विकल्प हैं: noatime,logbufs=8,logbsize=256k,nobarrierमैं एक्सएफएस गतिशील उपदेश को मूल रूप से चलाने की अनुमति देता हूं और इसे अपने यहां जैसे विवश नहीं करता। इसके साथ मेरे प्रदर्शन में सुधार हुआ।

  • इसलिए मैं LVM का उपयोग नहीं करता । विशेष रूप से हार्डवेयर के शीर्ष पर RAID ... विशेष रूप से एचपी स्मार्ट एरे नियंत्रक पर, जहां डिवाइस के मूल निवासी कुछ एलवीएम जैसे फ़ंक्शन हैं। हालाँकि, LVM का उपयोग करते हुए, आपके पास fdiskकच्चे विभाजन निर्माण के लिए पहुँच नहीं है । एक चीज जो ईएल 5 से बदलकर ईएल 6 है वह इंस्टॉलर में विभाजन संरेखण है और एक सिलेंडर सीमा पर शुरुआती क्षेत्र को सेट करने के लिए fdisk में बदल जाती है।

  • सुनिश्चित करें कि आप अपने HP स्मार्ट एरे नियंत्रक और ड्राइव को वर्तमान संशोधन स्तर पर चला रहे हैं। उस समय, यह संपूर्ण सर्वर को मौजूदा HP Service Pack के लिए ProLiant फर्मवेयर रिविजन के लिए अद्यतन करने के लिए समझ में आता है । यह एक बूट करने योग्य डीवीडी है जो सिस्टम में सभी खोजे गए घटकों को अपग्रेड करेगा।

  • मैं RAID नियंत्रक सेटिंग्स की जाँच करूँगा। Pastebin का आउटपुट hpacucli ctrl all show config detailये मेरा। आप एक कैश अनुपात लिखना चाहते हैं बनाम रीड्स की ओर। 75:25 आदर्श है। इस एप्लिकेशन के लिए 256K की डिफ़ॉल्ट पट्टी का आकार ठीक होना चाहिए।

  • मैं संभवतः LVM के बिना यह कोशिश करूँगा।

  • आपके sysctl.confपैरामीटर क्या हैं ?


दुर्भाग्य से, पुराने कर्नेल समान व्यवहार दिखाते हैं।
डेनिस करसेमेकर

LVM के बिना टेस्ट।
इविहित

1

हमारे पास समान मुद्दा था, और पता चला कि यह एक्सएफएस लॉग संस्करण परिवर्तन के कारण है। संस्करण 2 लॉग्स mkfs.xfs के साथ उपयोग की गई स्ट्राइप चौड़ाई सेट का सम्मान करते हैं। यदि आप बहुत अधिक fsync करते हैं, तो आपका छापा कार्ड उन लॉग को नकली नहीं बना सकता है जो अब लिखते हैं। आप विभाजन को बिना किसी स्विफ्ट सेटिंग के प्रारूप के अनुसार देख सकते हैं (यह RAID 1 + 0 के साथ कोई अंतर नहीं करता है)। आप यह सत्यापित कर सकते हैं कि यह देखने के लिए कि लॉग लॉग में बहुत अपडेट है या नहीं


आपका mkfs.xfsकमांड स्ट्रिंग क्या है?
इविहित

मैं अपने आप को एक उत्तर प्रदान करने के लिए सार्थक था, जैसा कि हमने अंततः इसे पाया। आपका उत्तर समाधान का हिस्सा है, लेकिन यह सब नहीं है।
डेनिस करसेमेकर

mkfs.xfs -f / your_dev
mjiang
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.