मुझे एक लिनक्स मशीन (CentOS 5) के लिए दैनिक नेटवर्क ट्रैफ़िक के आंकड़े रखने की आवश्यकता है।
वहाँ मानक / देशी उपकरण या उपयोगिताओं का उपयोग करने का एक तरीका है?
या क्या मुझे उसके लिए विशेष सॉफ्टवेयर को लोड करना होगा?
धन्यवाद।
मुझे एक लिनक्स मशीन (CentOS 5) के लिए दैनिक नेटवर्क ट्रैफ़िक के आंकड़े रखने की आवश्यकता है।
वहाँ मानक / देशी उपकरण या उपयोगिताओं का उपयोग करने का एक तरीका है?
या क्या मुझे उसके लिए विशेष सॉफ्टवेयर को लोड करना होगा?
धन्यवाद।
जवाबों:
Zypher rrdtool के बारे में क्या कह रहा था (और कुछ भी जो इसे बैकेंड के रूप में उपयोग करता है - MRTG, Cacti आदि) शायद सही है। RRDTool को 'औसतन' ऐतिहासिक ट्रेंडिंग एनालिसिस टूल के रूप में तैयार किया गया है। यह तेजी से गैर-संकल्प वृद्धि में काउंटरों को औसत और संग्रहीत करता है जो समय के साथ आगे बढ़ता है।
हालाँकि, यह RRAs को स्पष्ट रूप से सेट करके कॉन्फ़िगर करने योग्य है। मैं इन सब को कॉन्फ़िगर करने के बारे में पूरी तरह से कुछ भी नहीं जानने के लिए कबूल करता हूं, और व्यक्तिगत रूप से उन्हें कभी भी मेरे मानक सेट (15 मिनट, 8 घंटे, 1 सप्ताह, 1 महीना, 1 वर्ष) से परे होने का सौभाग्य नहीं मिला। मैं रोजाना इनपुट की अपेक्षा करने के लिए आरआरए को कॉन्फ़िगर करने की तलाश करूंगा और इसे नेटस्टैट से अपने बैंडविड्थ काउंटर को खिलाऊंगा। आपको अपने उपयोग पैटर्न में कुछ बहुत अच्छे ऐतिहासिक डेटा और अंतर्दृष्टि मिलेगी।
अपनी वर्तमान समस्या का उत्तर देने के लिए, यह सुनिश्चित करने के बारे में कि आप दैनिक बैंडविड्थ सीमा से अधिक नहीं हैं; मैं सवाल में इंटरफ़ेस के लिए netstat काउंटर को रोजाना हथियाने की सलाह दूंगा। आप समय टी पर आज के काउंटरों के साथ समय टी पर कल के यातायात की तुलना कर सकते हैं और पता कर सकते हैं कि कितना स्थानांतरित किया गया था। पिछले मूल्य के एक फ्लैट पाठ-फ़ाइल भंडारण के साथ एक सरल स्क्रिप्ट शायद पर्याप्त होगी। आप तब इंटरफ़ेस को अक्षम कर सकते हैं यदि आप बैंडविड्थ से अधिक का पता लगाते हैं या दिन भर इसकी निगरानी करते हैं और यदि आप अपनी सीमा से संपर्क कर रहे हैं तो किसी व्यवस्थापक को सूचित करें।
OSX सिस्टम पर इनपुट बाइट्स प्राप्त करने के लिए आप निम्न सेट का उपयोग कर सकते हैं:
netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $7}'
इसके विपरीत, उत्पादन के साथ प्राप्त किया जा सकता है:
netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $10}'
आप संबंधित काउंटरों को एक संग्रहीत फ़ाइल में कहीं भी संग्रहीत कर सकते हैं और इसके साथ तुलना कर सकते हैं:
#!/bin/bash
set -e # exit if any error occurs
previous_days_bytes_xferred=`cat $flatfile_storage`
todays_bytes_xferred=`netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $10}'`
if [ $((todays_bytes_xferred - previous_days_bytes_xferred)) -gt $threshold ]; then
DO SOME STUFF
fi
echo $todays_bytes_xferred > $flatfile_storage
अपने सिस्टम से मिलान करने के लिए बस नेटस्टैट प्रसंस्करण को समायोजित करें (क्योंकि मुझे पता है कि आप OSX नहीं चला रहे हैं)।
मैं VnStat का उपयोग करने का भी सुझाव देता हूं
vnStat 1.6 by Teemu Toivola <tst at iki dot fi>
-q, --query query database
-h, --hours show hours
-d, --days show days
-m, --months show months
-w, --weeks show weeks
-t, --top10 show top10
-s, --short use short output
-u, --update update database
-i, --iface select interface (default: eth0)
-?, --help short help
-v, --version show version
-tr, --traffic calculate traffic
-l, --live show transfer rate in real time
eth0 / monthly
month rx | tx | total
-------------------------+--------------+--------------------------------------
Oct '09 225.70 GB | 798.52 GB | 1.00 TB %%%%:::::::::::::
Nov '09 138.46 GB | 616.54 GB | 755.01 GB %%::::::::::
eth0 / daily
day rx | tx | total
------------------------+-------------+----------------------------------------
31.12. 6.56 GB | 34.39 GB | 40.95 GB %%%::::::::::::::::
01.01. 1.13 GB | 746.92 MB | 1.86 GB
Sysstat पैकेज में sar यूटिलिटी होती है। सार एक बेहतर विन्यास की कमी के लिए एक अत्यंत विन्यास प्रणाली "प्रोफाइलर" है, जो पूर्वनिर्धारित अंतराल (क्रोन) पर विभिन्न आँकड़े एकत्र करता है। ये बाइनरी फ़ाइलों में संग्रहीत हैं, प्रत्येक दिन के लिए एक, जो आमतौर पर साप्ताहिक रूप से घुमाया जाता है, लेकिन यह कॉन्फ़िगर करने योग्य है। इन फ़ाइलों से आँकड़ों को खींचने के लिए सर कार्यक्रम का उपयोग किया जा सकता है, और उन परिणामों को आसानी से किसी भी कार्यालय कार्यक्रम या gnuplot (मेरी व्यक्तिगत पसंद) के साथ रेखांकन किया जा सकता है।
http://pagesperso-orange.fr/sebastien.godard/ <= सार जानकारी
http://www.gnuplot.info/ <= gnuplot जानकारी
आप MRTG चाहते हैं जो एक नेटवर्क मॉनिटरिंग टूल है, इसकी वह चीज जो वेब के चारों ओर दिखने वाले सभी नेटवर्क ग्राफ (संख्याओं को चित्रों में बदलने के लिए) के साथ उत्पन्न करती है
यदि आप इसे सेट नहीं करना चाहते हैं, या बस कुछ सरल की आवश्यकता है, तो आप डेटा ट्रांसफर रिकॉर्ड करने के लिए iptables का उपयोग कर सकते हैं ।
मैंने mrtg का उपयोग किया, यह एक बहुत अच्छा समाधान है, और ऐसे अन्य उपकरण हैं जो दिलचस्प लगते हैं और जो ट्रैफ़िक के बारे में बहुत सारी जानकारी देते हैं, जिसका नाम नेटॉप नेटवर्क जांच है, यहाँ CentOS पर ntop स्थापित करने के बारे में एक लिंक खोजें
या तो एमआरटीजी या कैक्टि। कैक्टि सेट करने के लिए एक दर्द है, लेकिन कुछ बहुत सुंदर रेखांकन देता है। MRTG एक बेसिक प्लॉट को सेट करना आसान है, लेकिन कुछ भी जटिल या जटिल है, यह बहुत कठिन है।
मुनिन एक और अच्छा आरआरडी-आधारित उपकरण है जिसे स्थापित करना बहुत आसान है; डिफ़ॉल्ट नेटवर्क आँकड़े काफी बुनियादी हैं, लेकिन अतिरिक्त प्लगइन्स को जोड़ना आसान है। मैंने अपने एक सर्वर पर दैनिक और साप्ताहिक आँकड़े की एक प्रति संलग्न की है; आपको एक अलग पेज पर मासिक और वार्षिक आँकड़े भी मिलते हैं।