
เคยไหมที่อินเทอร์เน็ตอืดเป็นเรือเกลือ ทั้งๆ ที่จ่ายค่าบริการไปเต็มสตรีม? หรือสงสัยว่าแอปพลิเคชันตัวไหนกำลังสูบ Bandwidth ขององค์กรไปจนหมด? ปัญหาเหล่านี้เป็นเรื่องน่าปวดหัวสำหรับ IT Admin ทุกคน โชคดีที่เรามีเครื่องมือ Open Source ที่ทรงพลังอย่าง LibreNMS ที่จะช่วยให้คุณ “ส่อง” การใช้งาน Bandwidth ได้อย่างละเอียดและแม่นยำ บทความนี้จะพาคุณไปเจาะลึก วิธีทำ Bandwidth Monitoring ด้วย LibreNMS ตั้งแต่เริ่มต้นจนถึงการวิเคราะห์ข้อมูลแบบมืออาชีพ เตรียมตัวให้พร้อมแล้วไปลุยกันเลย!
LibreNMS คืออะไร และทำไมต้องใช้?
LibreNMS คือระบบ Network Monitoring แบบ Open Source ที่มีความสามารถหลากหลาย ไม่ว่าจะเป็นการตรวจสอบสถานะของอุปกรณ์เครือข่าย, การแจ้งเตือนเมื่อเกิดปัญหา, และแน่นอนว่าคือการทำ Bandwidth Monitoring ได้อย่างละเอียด LibreNMS รองรับอุปกรณ์หลากหลายยี่ห้อและรุ่น ไม่ว่าจะเป็น Cisco, Juniper, Mikrotik, HP, Dell และอื่นๆ อีกมากมาย ทำให้เป็นเครื่องมือที่ยืดหยุ่นและปรับตัวได้ดีกับสภาพแวดล้อมที่หลากหลาย
ข้อดีของการใช้ LibreNMS ในการทำ Bandwidth Monitoring
- ฟรีและ Open Source: LibreNMS เป็นซอฟต์แวร์ฟรี ทำให้คุณประหยัดค่าใช้จ่ายในการจัดซื้อ License
- รองรับอุปกรณ์หลากหลาย: LibreNMS รองรับอุปกรณ์เครือข่ายจากผู้ผลิตชั้นนำมากมาย
- กราฟและรายงานที่ละเอียด: LibreNMS มีกราฟและรายงานที่สวยงามและเข้าใจง่าย ช่วยให้คุณวิเคราะห์ข้อมูลได้รวดเร็ว
- การแจ้งเตือนที่ปรับแต่งได้: คุณสามารถตั้งค่าการแจ้งเตือนเมื่อมีการใช้งาน Bandwidth เกินกำหนด
- ชุมชนขนาดใหญ่: LibreNMS มีชุมชนผู้ใช้งานที่แข็งแกร่ง พร้อมให้ความช่วยเหลือเมื่อคุณติดปัญหา
เตรียมความพร้อมก่อนเริ่ม วิธีทำ Bandwidth Monitoring ด้วย LibreNMS
ก่อนที่เราจะเริ่มลงมือติดตั้งและตั้งค่า LibreNMS เราจะต้องเตรียมความพร้อมในส่วนต่างๆ ดังนี้:
1. เซิร์ฟเวอร์
เราจำเป็นต้องมีเซิร์ฟเวอร์สำหรับติดตั้ง LibreNMS โดยสเปคของเซิร์ฟเวอร์จะขึ้นอยู่กับขนาดของเครือข่ายที่คุณต้องการตรวจสอบ หากเครือข่ายของคุณมีขนาดเล็ก เซิร์ฟเวอร์ที่มีสเปคขั้นต่ำดังนี้ก็เพียงพอ:
- CPU: 2 Cores
- RAM: 4GB
- Storage: 20GB
สำหรับเครือข่ายขนาดใหญ่ คุณอาจจะต้องเพิ่มสเปคของเซิร์ฟเวอร์ให้สูงขึ้น
2. ระบบปฏิบัติการ
LibreNMS รองรับระบบปฏิบัติการ Linux หลาย Distro แต่ที่นิยมใช้กันคือ Ubuntu หรือ CentOS ในบทความนี้เราจะใช้ Ubuntu Server 20.04 เป็นตัวอย่าง
3. ซอฟต์แวร์ที่จำเป็น
เราจะต้องติดตั้งซอฟต์แวร์ที่จำเป็นสำหรับการทำงานของ LibreNMS ดังนี้:
- Web Server: Apache หรือ Nginx
- Database Server: MySQL หรือ MariaDB
- PHP
- SNMP
- RRDtool
- Git
- Composer
ขั้นตอนการติดตั้ง LibreNMS บน Ubuntu Server 20.04
เมื่อเราเตรียมความพร้อมในส่วนต่างๆ เรียบร้อยแล้ว เราก็มาเริ่มติดตั้ง LibreNMS กันเลย
1. ติดตั้ง Apache, MySQL, PHP และซอฟต์แวร์ที่จำเป็น
เปิด Terminal บน Ubuntu Server ของคุณ แล้วรันคำสั่งต่อไปนี้:
sudo apt update
sudo apt install apache2 mariadb-server php php-cli php-mysql php-snmp php-gd php-curl php-mbstring php-xml php-pear rrdtool git composer snmp libsnmp-dev -y
2. ตั้งค่า MariaDB
หลังจากติดตั้ง MariaDB เสร็จแล้ว ให้รันคำสั่งต่อไปนี้เพื่อตั้งค่าความปลอดภัย:
sudo mysql_secure_installation
ทำตามคำแนะนำบนหน้าจอเพื่อตั้งค่ารหัสผ่านสำหรับ root user และตั้งค่าอื่นๆ
จากนั้นล็อกอินเข้าสู่ MariaDB ด้วย root user:
sudo mysql -u root -p
สร้าง Database และ User สำหรับ LibreNMS:
CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
EXIT;
อย่าลืมเปลี่ยน your_password เป็นรหัสผ่านที่คุณต้องการ
3. ติดตั้ง LibreNMS
สร้าง Directory สำหรับ LibreNMS:
💡 บทความที่เกี่ยวข้อง: กลยุทธ์ Forex Trading
sudo mkdir /opt/librenms
sudo chown librenms:librenms /opt/librenms
cd /opt/librenms
Clone LibreNMS Repository จาก GitHub:
sudo git clone https://github.com/librenms/librenms.git .
ติดตั้ง Dependencies ด้วย Composer:
sudo composer install --no-dev
4. ตั้งค่า Apache
สร้าง Virtual Host Configuration File สำหรับ LibreNMS:
sudo nano /etc/apache2/sites-available/librenms.conf
ใส่ Configuration ต่อไปนี้:
<VirtualHost *:80>
DocumentRoot /opt/librenms/public
ServerName librenms.example.com
<Directory "/opt/librenms/public">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
อย่าลืมเปลี่ยน librenms.example.com เป็น Domain Name หรือ IP Address ของเซิร์ฟเวอร์ของคุณ
เปิดใช้งาน Virtual Host:
sudo a2ensite librenms.conf
sudo a2enmod rewrite
sudo systemctl restart apache2
5. ตั้งค่า LibreNMS
Copy Configuration File Template:
sudo cp /opt/librenms/config.php.default /opt/librenms/config.php
sudo nano /opt/librenms/config.php
แก้ไข config.php โดยใส่ข้อมูล Database ที่เราสร้างไว้:
$config['db_host'] = 'localhost';
$config['db_name'] = 'librenms';
$config['db_user'] = 'librenms';
$config['db_pass'] = 'your_password';
สร้าง User สำหรับ LibreNMS:
sudo php /opt/librenms/adduser.php
ทำตามคำแนะนำบนหน้าจอเพื่อสร้าง User และ Password
6. ตั้งค่า SNMP
แก้ไข SNMP Configuration File:
sudo nano /etc/snmp/snmpd.conf
เพิ่ม Configuration ต่อไปนี้:
com2sec readonly default your_community
syslocation Your Location
syscontact Your Contact Email
อย่าลืมเปลี่ยน your_community เป็น Community String ที่คุณต้องการ และเปลี่ยน Your Location และ Your Contact Email เป็นข้อมูลที่ถูกต้อง
Restart SNMP Service:
sudo systemctl restart snmpd
7. ตั้งค่า Cron Job
เพิ่ม Cron Job สำหรับ LibreNMS:
sudo crontab -e -u librenms
เพิ่ม Line ต่อไปนี้:
*/5 * * * * php /opt/librenms/discovery.php -h all >> /dev/null 2>&1
*/5 * * * * php /opt/librenms/poller-wrapper.php 16
01 * * * * php /opt/librenms/daily.php >> /dev/null 2>&1
8. เข้าใช้งาน LibreNMS
เปิด Web Browser แล้วเข้าสู่ Domain Name หรือ IP Address ของเซิร์ฟเวอร์ของคุณ คุณจะเห็นหน้า Login ของ LibreNMS ให้ Login ด้วย User และ Password ที่คุณสร้างไว้
การเพิ่มอุปกรณ์เครือข่ายเพื่อทำ Bandwidth Monitoring
เมื่อเราติดตั้ง LibreNMS เสร็จแล้ว เราก็สามารถเพิ่มอุปกรณ์เครือข่ายที่เราต้องการตรวจสอบ Bandwidth ได้
1. ไปที่ Devices -> Add Device
ใน Web Interface ของ LibreNMS ให้ไปที่เมนู Devices แล้วเลือก Add Device
2. ใส่ IP Address หรือ Hostname ของอุปกรณ์
ใส่ IP Address หรือ Hostname ของอุปกรณ์ที่คุณต้องการเพิ่ม
3. ใส่ SNMP Community String
ใส่ SNMP Community String ที่คุณตั้งค่าไว้ในอุปกรณ์
4. คลิก Add Device
LibreNMS จะทำการ Discover อุปกรณ์ และแสดงข้อมูลต่างๆ เกี่ยวกับอุปกรณ์ รวมถึง Interface ที่สามารถตรวจสอบ Bandwidth ได้
การวิเคราะห์ข้อมูล Bandwidth ใน LibreNMS
เมื่อเราเพิ่มอุปกรณ์เครือข่ายแล้ว เราก็สามารถดูข้อมูล Bandwidth ได้
1. ไปที่ Device Overview
เลือกอุปกรณ์ที่คุณต้องการดูข้อมูล Bandwidth จากเมนู Devices
2. ดู Graphs
LibreNMS จะแสดงกราฟ Bandwidth Usage สำหรับแต่ละ Interface ของอุปกรณ์ คุณสามารถเลือกช่วงเวลาที่ต้องการดูข้อมูลได้
3. ดู Reports
LibreNMS มี Reports ที่สรุปข้อมูล Bandwidth Usage ในรูปแบบต่างๆ เช่น Top Talkers, Top Applications, และอื่นๆ
ตัวอย่างจริง: การตรวจสอบ Bandwidth ของ Router
สมมติว่าเราต้องการตรวจสอบ Bandwidth ของ Router ที่มี IP Address คือ 192.168.1.1 เราได้ตั้งค่า SNMP Community String เป็น “public” แล้ว
- เราไปที่ Devices -> Add Device ใน LibreNMS
- ใส่ IP Address 192.168.1.1
- ใส่ SNMP Community String “public”
- คลิก Add Device
- หลังจากที่ LibreNMS Discover อุปกรณ์แล้ว เราจะเห็นข้อมูลของ Router รวมถึง Interface ต่างๆ
- เราสามารถคลิกที่ Interface ใด Interface หนึ่งเพื่อดูกราฟ Bandwidth Usage
จากกราฟ เราจะเห็นว่า Interface GigabitEthernet0/0 มีการใช้งาน Bandwidth สูงกว่า Interface อื่นๆ เราสามารถวิเคราะห์ต่อได้ว่าทำไม Interface นี้ถึงมีการใช้งาน Bandwidth สูง และหาทางแก้ไขปัญหา
ตารางเปรียบเทียบ: LibreNMS vs. Nagios vs. Zabbix
| Feature | LibreNMS | Nagios | Zabbix |
|---|---|---|---|
| Licensing | Open Source (GPLv3) | Open Source (GPLv2) / Commercial | Open Source (GPLv2) |
| Setup & Configuration | Relatively easy | Complex, Requires manual configuration | Moderate complexity |
| Auto Discovery | Excellent | Limited | Good |
| Scalability | Good | Moderate | Excellent |
| Bandwidth Monitoring | Excellent, built-in | Requires plugins | Excellent, built-in |
| User Interface | Modern and intuitive | Outdated | Functional but less intuitive |
| Community Support | Strong and active | Large and established | Large and active |
เคล็ดลับเพิ่มเติมสำหรับการทำ Bandwidth Monitoring ด้วย LibreNMS
- ตั้งค่า Alerting: ตั้งค่า Alerting เพื่อรับการแจ้งเตือนเมื่อมีการใช้งาน Bandwidth เกินกำหนด จะช่วยให้คุณแก้ไขปัญหาได้ทันท่วงที
- ใช้ NetFlow/sFlow: หากอุปกรณ์ของคุณรองรับ NetFlow หรือ sFlow ให้เปิดใช้งานและตั้งค่า LibreNMS เพื่อรับข้อมูล NetFlow/sFlow จะช่วยให้คุณได้ข้อมูล Bandwidth ที่ละเอียดมากยิ่งขึ้น
- ปรับแต่ง Poll Interval: ปรับแต่ง Poll Interval ให้เหมาะสมกับความต้องการของคุณ หากคุณต้องการข้อมูลที่ละเอียดมาก ให้ตั้ง Poll Interval ให้สั้นลง แต่ระวังว่าการตั้ง Poll Interval ที่สั้นเกินไปจะทำให้เซิร์ฟเวอร์ทำงานหนัก
- ใช้ Grouping: ใช้ Grouping เพื่อจัดกลุ่มอุปกรณ์ตามประเภทหรือ Location จะช่วยให้คุณบริหารจัดการอุปกรณ์ได้ง่ายขึ้น
- Monitor Application Usage: LibreNMS สามารถ Monitor Application Usage ได้ หากคุณเปิดใช้งาน NetFlow/sFlow คุณจะสามารถดูได้ว่า Application ใดมีการใช้งาน Bandwidth มากที่สุด
สรุป
วิธีทำ Bandwidth Monitoring ด้วย LibreNMS นั้นไม่ได้ยากอย่างที่คิด เพียงแค่ทำตามขั้นตอนที่เราได้อธิบายไว้ในบทความนี้ คุณก็สามารถ “ส่อง” การใช้งาน Bandwidth ของเครือข่ายของคุณได้อย่างละเอียดและแม่นยำ LibreNMS เป็นเครื่องมือที่ทรงพลังและยืดหยุ่น เหมาะสำหรับ IT Admin ทุกคน ไม่ว่าจะเป็นองค์กรขนาดเล็กหรือขนาดใหญ่ ลองนำไปปรับใช้กับเครือข่ายของคุณ แล้วคุณจะพบว่า LibreNMS ช่วยให้การบริหารจัดการเครือข่ายเป็นเรื่องง่ายขึ้นเยอะ!