क्या कोई डिफ़ॉल्ट मुनिन रेखांकन के लिए "उपयोग-मामलों" की व्याख्या कर सकता है?


9

मुनिन को स्थापित करते समय, यह प्लगइन्स के डिफ़ॉल्ट सेट (कम से कम ubuntu) को सक्रिय करता है। वैकल्पिक रूप से, आप बस munin-node-configureयह पता लगाने के लिए चल सकते हैं कि आपके सिस्टम पर कौन से प्लगइन्स समर्थित हैं। इनमें से अधिकांश प्लग-इन सीधे-सीधे डेटा की साजिश करते हैं। मेरा प्रश्न डेटा की प्रकृति (अच्छी तरह से ... शायद कुछ के लिए) की व्याख्या करने के लिए नहीं है, लेकिन यह क्या है कि आप इन रेखांकन में देखें?

मुनिन को स्थापित करना और फैंसी रेखांकन देखना आसान है। लेकिन रेखांकन होने और "पढ़ने" में सक्षम नहीं होने के कारण उन्हें पूरी तरह से बेकार कर देता है।

मैं मानक प्लगइन्स को सूचीबद्ध करने जा रहा हूं जो मेरे सिस्टम पर डिफ़ॉल्ट रूप से सक्षम हैं। तो यह एक लंबी सूची होने जा रही है। पूर्णता के लिए, मैं उन प्लगइन्स को भी सूचीबद्ध करने जा रहा हूं जिन्हें मैं समझने के लिए सोचता हूं और एक संक्षिप्त विवरण देता हूं कि मुझे क्या लगता है कि इसका उपयोग किया जाता है। अगर मैं उनमें से किसी के साथ गलत हूं, तो दलीलें सही हैं।

तो मुझे इस प्रश्न को तीन भागों में विभाजित करने दें:

  • प्लगइन्स जहाँ मैं भी डेटा समझ में नहीं आता है
  • प्लगइन्स जहां मैं डेटा को समझता हूं, लेकिन यह नहीं जानता कि मुझे क्या देखना चाहिए
  • प्लगइन्स जिसे मैं समझना चाहता हूं

प्लगइन्स जहाँ मैं भी डेटा समझ में नहीं आता है

इनमें ऐसे प्रश्न शामिल हो सकते हैं जो जरूरी नहीं कि अकेले मुनिन के उद्देश्य से हों। आम तौर पर डेटा को समझने का मतलब ऑपरेटिंग सिस्टम / हार्डवेयर पर मौलिक ज्ञान में अंतर नहीं है ....;) "giyf" जवाब के साथ प्रतिक्रिया करने के लिए स्वतंत्र महसूस करें।

ये प्लगइन्स हैं जहां मैं केवल अनुमान लगा सकता हूं कि क्या चल रहा है ... मैं शायद ही इन "अनुमान" को देखना चाहता हूं ...

  • डिस्क IOs प्रति उपकरण (IOs / सेकंड)
    IO क्या है मुझे पता है कि यह इनपुट / आउटपुट के लिए है। लेकिन यह जहाँ तक जाता है।
  • उपकरण प्रति डिस्क विलंबता (औसत IO प्रतीक्षा)
    कोई सुराग नहीं कि "IO प्रतीक्षा" क्या है ...
  • IO सेवा समय
    यह एक बहुत बड़ी गड़बड़ है, और यह ग्राफ़ में कुछ भी देखने के लिए असंभव है।

प्लगइन्स जहां मैं डेटा को समझता हूं, लेकिन यह नहीं जानता कि मुझे क्या देखना चाहिए

  • IOStat (ब्लॉक / दूसरा पढ़ा / लिखा)
    मुझे लगता है, यहाँ में देखने के लिए बात spikes हैं? जिसका मतलब होगा कि डिवाइस भारी उपयोग में है?
  • उपलब्ध एन्ट्रापी (बाइट्स)
    मुझे लगता है कि यह यादृच्छिक संख्या पीढ़ी के लिए महत्वपूर्ण है? मैं इसका ग्राफ़ क्यों बनाऊंगा? अब तक मूल्य हमेशा स्थिर रहा है।
  • VMStat (रनिंग / I / O स्लीप प्रॉसेस)
    इस एक और "प्रॉसेस" ग्राफ में क्या अंतर है? दोनों चलने / सोने की प्रक्रियाओं को दिखाते हैं, जबकि "प्रक्रियाओं" ग्राफ में अधिक विवरण हैं।
  • प्रति डिवाइस डिस्क थ्रूपुट (बाइट्स / सेकंड रीड / लिखित)
    इस एक और "IOStat" ग्राफ के बीच क्या है?
  • इनोड टेबल का उपयोग
    मुझे इस ग्राफ में क्या देखना चाहिए?

प्लगइन्स जिसे मैं समझना चाहता हूं

मैं यहाँ कुछ चीजों का अनुमान लगा रहा हूँ ... अगर मैं गलत हूँ तो मुझे सुधारो।

  • प्रतिशत में डिस्क उपयोग (प्रतिशत)
    डिस्क स्थान का कितना उपयोग / शेष है। जैसे-जैसे यह 100% तक पहुंच रहा है, आपको विभाजन की सफाई या विस्तार पर विचार करना चाहिए। रूट विभाजन के लिए यह अत्यंत महत्वपूर्ण है।
  • फ़ायरवॉल थ्रूपुट (पैकेट / सेकंड)
    फ़ायरवॉल से गुजरने वाले पैकेट की संख्या। यदि यह अधिक समय तक घूम रहा है, तो यह एक डॉस हमले का संकेत हो सकता है (या हम बस एक बड़ी फ़ाइल को पुनः प्राप्त कर रहे हैं)। यह आपको अपने फ़ायरवॉल प्रदर्शन के बारे में एक विचार भी दे सकता है। यदि यह समतल हो रहा है और आपको अधिक "पावर" की आवश्यकता है, तो आपको लोड संतुलन पर विचार करना चाहिए। यदि यह समतल हो रहा है और अपने CPU लोड के साथ सहसंबंध देखता है, तो इसका मतलब यह भी हो सकता है कि आपका हार्डवेयर पर्याप्त तेज़ नहीं है। डिस्क उपयोग के साथ सहसंबंध आपको एफडब्ल्यू कॉन्फिग में अत्यधिक लॉग लक्ष्य की ओर इशारा कर सकता है।
  • eth0 त्रुटियाँ (पैकेट में / बाहर)
    नेटवर्क त्रुटियाँ। यदि यह मान बढ़ रहा है, तो यह दोषपूर्ण हार्डवेयर का संकेत हो सकता है।
  • eth0 ट्रैफ़िक (बिट्स / सेकंड इन / आउट)
    कच्चा नेटवर्क ट्रैफ़िक। यह फ़ायरवॉल थ्रूपुट के साथ सहसंबंधित होना चाहिए।
  • थ्रेड्स की संख्या
    एक बढ़ती हुई मूल्य एक प्रक्रिया को इंगित कर सकती है जो थ्रेड्स को ठीक से बंद नहीं कर सकती है। छान - बीन करना!
  • प्रक्रियाओं
    सक्रिय प्रक्रियाओं (सो सहित) का विभाजन। यहां एक त्वरित स्पाइक कांटा-बम की ओर इशारा कर सकता है। एक धीरे-धीरे, लेकिन कभी-बढ़ती मूल्य उप-प्रक्रियाओं को स्पैन करने वाले एक एप्लिकेशन को इंगित कर सकता है लेकिन उन्हें ठीक से बंद नहीं कर सकता है। का उपयोग करके जांच करें ps faux
  • प्रक्रिया प्राथमिकता
    यह प्रक्रिया प्राथमिकताओं के वितरण को दर्शाता है। केवल उच्च-प्राथमिकता वाली प्रक्रियाएं होने से ज्यादा फायदा नहीं होता है। कुछ को प्राथमिकता देने पर विचार करें।
  • सीपीयू का उपयोग बहुत
    सीधे-सीधे। यदि यह स्पाइकिंग है, तो आप पर हमला हो सकता है, या सीपीयू को हग करने की एक प्रक्रिया हो सकती है। सामान्य कार्यों में यह धीरे-धीरे बढ़ रहा है और अधिकतम पहुंच रहा है, आपको अपने हार्डवेयर (या लोड-बैलेंसिंग) को अपग्रेड करने पर विचार करना चाहिए।
  • फ़ाइल तालिका उपयोग
    सक्रिय रूप से खुली फ़ाइलों की संख्या। यदि यह अधिकतम तक पहुंच रहा है, तो आपके पास एक प्रक्रिया हो सकती है, लेकिन फाइलों को ठीक से जारी नहीं करना।
  • लोड औसत
    सिस्टम लोड के लिए एक संक्षेप मूल्य दिखाता है। CPU उपयोग के साथ सहसंबंध होना चाहिए। बढ़ते हुए मान कई स्रोतों से आ सकते हैं। अन्य रेखांकन के साथ सहसंबंधों के लिए देखें।
  • स्मृति उपयोग आप का
    एक चित्रमय प्रतिनिधित्व स्मृति। जब तक आपके पास बहुत से अप्रयुक्त + कैश + बफ़र्स हैं तब तक आप ठीक हैं।
  • स्वैप इन / आउट
    आपके स्वैप विभाजन पर गतिविधि दिखाता है। यह हमेशा 0. होना चाहिए। यदि आप इस पर गतिविधि देखते हैं, तो आपको अपनी मशीन में अधिक मेमोरी जोड़ना चाहिए!

महान सवाल, कैक्टि और अन्य रेखांकन ऐप्स पर आसानी से लागू होता है। ग्राफ़ अक्सर बहुत अच्छे लगते हैं, लेकिन यह पता लगाने के लिए बहुत कठिन है कि उनका क्या मतलब है, और अधिक क्या कुछ है जिस पर आगे ध्यान देने की आवश्यकता है।
dunxd 10

2
"मैं इसका ग्राफ़ क्यों बनाऊंगा? अब तक मान हमेशा स्थिर रहा है।" भाग, याद रखें कि ज्यादातर जानकारी आमतौर पर केवल मुद्दों के मामले में मूल्यवान होती है।
स्टीव श्निप्प

जवाबों:


11

डिस्क IOs प्रति उपकरण (IOs / सेकंड)

पारंपरिक हार्ड ड्राइव के साथ यह एक बहुत ही महत्वपूर्ण संख्या है। I / O ऑपरेशन डिस्क को पढ़ने या लिखने का ऑपरेशन है। घूर्णी स्पिंडल के साथ आप डिस्क गति और इसके उपयोग पैटर्न के आधार पर दर्जनों से शायद 200 IOPS प्रति सेकंड तक प्राप्त कर सकते हैं।

यह सब यह नहीं है: आधुनिक ऑपरेटिंग सिस्टम में I / O शेड्यूलर होते हैं जो एक के रूप में कई I / O अनुरोधों को मर्ज करने का प्रयास करते हैं और चीजों को उस तरह से तेज करते हैं। इसके अलावा RAID नियंत्रकों और इतने पर कुछ स्मार्ट I / O अनुरोध को पुन: व्यवस्थित करते हैं।

प्रति उपकरण डिस्क विलंबता (औसत IO प्रतीक्षा)

वास्तव में वहाँ से डेटा प्राप्त करने के लिए एक व्यक्ति डिस्क को I / O अनुरोध करने में कितना समय लगा। यदि यह कुछ मिलीसेकंड के आसपास घूमता है, तो आप ठीक हैं, यदि यह दर्जनों एमएस का है, तो आप अपने डिस्क सबसिस्टम को पसीना देखना शुरू कर रहे हैं, यदि यह सैकड़ों एमएस का है, तो आप बड़ी परेशानी में हैं, या कम से कम बहुत, बहुत धीमी प्रणाली।

IO सेवा समय

कैसे आपकी डिस्क सबसिस्टम (संभवतः बहुत सारे डिस्क युक्त) समग्र प्रदर्शन कर रही है।

IOStat (ब्लॉक / दूसरा पढ़ा / लिखा)

प्रति सेकंड कितने डिस्क ब्लॉक पढ़े / लिखे गए थे। स्पाइक्स देखें और औसत भी। यदि आपके डिस्क सबसिस्टम के अधिकतम थ्रूपुट के पास औसत शुरू होता है, तो प्रदर्शन के उन्नयन की योजना बनाने का समय आ गया है। दरअसल, उस बिंदु से पहले उस तरह की योजना बनाएं।

उपलब्ध एन्ट्रापी (बाइट्स)

कुछ एप्लिकेशन "सच्चा" यादृच्छिक डेटा प्राप्त करना चाहते हैं। कर्नेल उस कई स्रोतों, जैसे कि कीबोर्ड और माउस गतिविधि, से कई मदरबोर्ड में पाया जाने वाला एक यादृच्छिक संख्या जनरेटर, या यहां तक ​​कि वीडियो / संगीत फ़ाइलों (वीडियो-एन्ट्रॉपीड और ऑडियो-एन्ट्रॉपीड) से कर सकते हैं कि 'असली' यादृच्छिकता इकट्ठा करता है।

यदि आपका सिस्टम एन्ट्रापी से बाहर निकलता है, तो उस डेटा को चाहने वाले एप्लिकेशन तब तक रुके रहते हैं जब तक उन्हें अपना डेटा नहीं मिल जाता है। व्यक्तिगत रूप से अतीत में मैंने साइरस IMAP डेमन और इसकी POP3 सेवा के साथ ऐसा होते देखा है; यह प्रत्येक लॉगिन से पहले एक लंबा यादृच्छिक स्ट्रिंग उत्पन्न करता है, और एक व्यस्त सर्वर पर जो एंट्रॉपी पूल का बहुत जल्दी सेवन करता है।

उस समस्या से छुटकारा पाने का एक तरीका केवल अर्ध-यादृच्छिक डेटा (/ dev / urandom) का उपयोग करने के लिए अनुप्रयोगों को स्विच करना है, लेकिन यह इस विषय के बीच नहीं है।

VMStat (रनिंग / I / O स्लीप प्रोसेस)

पहले इस बारे में नहीं सोचा था, लेकिन मुझे लगता है कि यह आपको प्रति-प्रक्रिया I / O आँकड़ों के बारे में बताता है, या मुख्य रूप से अगर वे कुछ I / O चला रहे हैं या नहीं, और यदि I / O गतिविधि को रोक रहा है I / O या नहीं।

डिस्क प्रति डिवाइस थ्रूपुट (बाइट्स / सेकेंड रीड / लिखित)

यह विशुद्ध रूप से बाइट्स प्रति सेकंड पढ़ा / लिखा जाता है, और अधिक बार यह ब्लॉकों की तुलना में अधिक मानव-पठनीय रूप है , जो भिन्न हो सकते हैं। उपयोग किए गए डिस्क, फ़ाइल सिस्टम (और इसकी सेटिंग्स), और इसी तरह के कारण ब्लॉक का आकार भिन्न हो सकता है। कभी-कभी ब्लॉक आकार 512 बाइट्स हो सकता है, अन्य बार 4096 बाइट्स, कभी-कभी कुछ और।

इनोड टेबल उपयोग

फाइल सिस्टम के साथ डायनामिक इनकोड (जैसे कि XFS), कुछ भी नहीं। फ़ाइल सिस्टम के साथ स्थिर इनोड मैप्स (जैसे ext3), सब कुछ। यदि आपके पास स्थैतिक इनोड्स, एक विशाल फ़ाइल सिस्टम और बड़ी संख्या में निर्देशिकाओं और छोटी फ़ाइलों का संयोजन है, तो आप एक ऐसी स्थिति का सामना कर सकते हैं जहाँ आप उस विभाजन पर अधिक फ़ाइलें नहीं बना सकते, भले ही सिद्धांत रूप में बहुत सारी खाली जगह बची होगी। कोई फ्री इनोड्स == खराब।


इनोड उपयोग पर विचार करना। मैं वर्तमान में ext4 का उपयोग कर रहा हूं, और उस ग्राफ़ में अधिकतम-इंडोड्स और ओपन-इनोड्स बहुत करीब हैं (खुले: 31.11k टेबल का आकार: 32.12k)। जो मुझे लगभग 1k इनसाइड के साथ छोड़ देगा। चूंकि सिस्टम हौसले से स्थापित है, इसलिए मुझे इस समस्या पर कोई विश्वास नहीं है। Ext4 गतिशील रूप से इनोडेस को आवंटित कर रहा है? मुझे लगता है कि गूगल पर इस बारे में कुछ नहीं मिला है ...
exhuma

देखें df -i, यह आपको वर्तमान इनोड उपयोग की रिपोर्ट करता है। ext4 ने जड़ें तय की हैं, उदाहरण के लिए मेरे फेडोरा 16 रिपोर्ट मेरे रूट विभाजन के लिएrootfs 3276800 238083 3038717 8% /
जेने पिक्कारेंन

हम्म्म ... दिलचस्प। इससे पता चलता है कि मुनिन ग्राफ सही नहीं है। मुझे यह भी पता नहीं है कि मुनिन ग्राफ केवल एक मूल्य दिखाता है। क्या यह सहायक होने के लिए प्रति फ़ाइल-सिस्टम में एक मान नहीं दिखाना चाहिए? df -iस्क्रीनशॉट भी देखें ( i44.tinypic.com/oixkiq.png ) बनाम मुनिन -ग्राफ ( i39.tinypic.com/dxl64z.png )
उद्घोषणा

... ग्राफ़ में मूल्य (25.57k) वास्तव में dfआउटपुट में बिल्कुल नहीं देखा गया है ।
उद्घोष

आगे की जांच करने पर, मैं देखता हूं कि मुनिन प्लगइन open_inodes, से मूल्य लेता है /proc/sys/fs/inode-nr। यह एक कर्नेल है, और फ़ाइल-सिस्टम मान नहीं है। थोड़ा और अधिक googling ने मुझे इस ओर इशारा किया: mjmwired.net/kernel/Documentation/sysctl/fs.txt#119 उस दस्तावेज़ से मुझे लगता है कि सीमा में पाया जा सकता है inode-max। लेकिन यह फाइल मेरे सिस्टम पर मौजूद नहीं है। क्या यह संभव है कि यह अब नए गुठली पर उचित नहीं है? यह मुझे अपने मुनिन उदाहरण से इस ग्राफ को हटाने की अनुमति देगा!
प्रकुमा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.