การตรวจสอบประสิทธิภาพระบบเครือข่ายแบบ Real-time ด้วย Netdata

Netdata, Real-time performance monitoring

Netdata เป็นทูลสำหรับตรวจสอบประสิทธิภาพการทำงานของอุปกรณ์ทางเครือข่าย/อุปกรณ์ในเครื่องแม่ข่ายแบบ Real-time ใช้ติดตั้งบนระบบปฏิบัติการ Linux สามารถใช้ตรวจสอบการทำงานของอุปกรณ์ อาทิ CPU, RAM, Disks, Network interfaces, Network QoS, UPS, Hardware sensors รวมทั้งแอพพลิเคชั่น (Apache, Nginx,MySQL, Bind, Postfix, Squid,...) และอุปกรณ์ที่สนับสนุน SNMP ผู้ดูแลระบบสามารถเรียกใช้งานได้ผ่านทางหน้าเว็บไซต์ ระบบมีการพล็อตข้อมูลออกมาในรูปกราฟ ทำให้ง่ายแก่การตรวสอบ

ความสามารถในการตรวจสอบระบบ
Netdata สามารถตรวจสอบการทำงานของอุปกรณ์และบริการเหล่านี้
1. CPU usage, interrupts, softirqs, and frequency
2. RAM, swap and kernel memory usage
3. Disks
4. Network interfaces
5. IPv4 networking
6. IPv6 networking
7. netfilter / iptables Linux firewall
8. Linux anti-DDoS protection ***ตรวจสอบแฮกเกอร์ (คลิกดู demo)
9. Processes
10. Entropy
11. NFS file servers, v2, v3, v4
12. Network QoS
13. Applications, by grouping the process tree
14. Apache web server mod-status (v2.2, v2.4)
15. Nginx web server stub-status
16. MySQL databases
17. ISC Bind name server
19. Postfix email server message queue
20. Squid proxy server
21. Hardware sensors
22. NUT UPSes
23. Monitor SNMP devices with extra configuration.

ระบบปฏิบัติการที่สามารถติดตั้ง Netdata ได้
1. RedHat Enterprise Linux
2. CentOS
3. Ubuntu
4. Debian
5. SUSE
6. Fedora
7. Gentoo
8. ArchLinux
9. Alpine Linux
10. PLD Linux

ขั้นตอนการติดตั้ง Netdata (ทดสอบบนระบบ CentOS Linux 7)
** คลิกดูหนังสือ CentOS Linux 7 เล่ม 1
CentOS Linux

1. ก่อนอื่นให้ทำการติดตั้งแพ็กเกจพื้นฐาน
[root@server01 ~]# yum update
[root@server01 ~]# yum install -y zlib-devel gcc make git autoconf autogen automake pkgconfig psmisc libuuid-devel

2. ทำการดึงแพ็กเกจตัวติดตั้ง Netdata มาจาก git
[root@server01 ~]# git clone https://github.com/firehol/netdata.git --depth=1
Cloning into 'netdata'...
remote: Counting objects: 289, done.
remote: Compressing objects: 100% (273/273), done.
remote: Total 289 (delta 11), reused 122 (delta 1), pack-reused 0
Receiving objects: 100% (289/289), 1.65 MiB | 520.00 KiB/s, done.
Resolving deltas: 100% (11/11), done.

3. เข้าไปในไดเร็กทอรี่ netdata พร้อมสั่งรันสคริปต์ติดตั้ง
[root@server01 ~]# cd netdata
[root@server01 netdata]# ./netdata-installer.sh

Welcome to netdata!
Nice to see you are giving it a try!

You are about to build and install netdata to your system.

It will be installed at these locations:

- the daemon at /usr/sbin/netdata
- config files at /etc/netdata
- web files at /usr/share/netdata
- plugins at /usr/libexec/netdata
- cache files at /var/cache/netdata
- db files at /var/lib/netdata
- log files at /var/log/netdata
- pid file at /var/run

This installer allows you to change the installation path.
Press Control-C and run the same command with --help for help.

Press ENTER to build and install netdata to your system > กดปุ่ม [Enter]
------

4. หลังการติดตั้งระบบมีคำแนวนำการใช้งานคร่าวๆ
...
-------------------------------------------------------------------------------
OK. NetData is installed and it is running (listening to *:19999).
-------------------------------------------------------------------------------

INFO: Command line options changed. -pidfile, -nd and -ch are deprecated.
If you use custom startup scripts, please run netdata -h to see the
corresponding options and update your scripts.

Hit http://localhost:19999/ from your browser.

To stop netdata, just kill it, with:

killall netdata

To start it, just run it:

/usr/sbin/netdata

Enjoy!

Uninstall script generated: ./netdata-uninstaller.sh
[root@server01 netdata]#
--------------

Note.
การเข้าใช้งานNetdata : http://localhost:19999/
ปิดการใช้งาน Netdata : killall netdata
เปิดการใช้งาน Netdata : /usr/sbin/netdata
ถอนการติดตั้ง Netdata : ./netdata-uninstaller.sh
ไฟล์ควบคุม Netdata : /etc/netdata/netdata.conf
พาทเก็บไฟล์หลังการติดตั้ง : /root/netdata/

------------

5. ตรวจสอบโปรเซสการใช้งาน Netdata
[root@server01 netdata]# netstat -antup | grep 19999
tcp6 0 0 :::19999 :::* LISTEN 13973/netdata

6. ทดสอบเรียกใช้งาน
รูปแบบ
http://server-ip:19999/
ตัวอย่าง
http://192.168.1.10:19999/

ตัวอย่างหน้าต่างรายงานจากการตรวจสอบโดยใช้โปรแกรม Netdata แบบ Real-time
ตรวจสอบหน่วยความจำ

ตรวจสอบ CPU

ตรวจสอบ Firewall

ตรวจสอบ Disk ที่ใช้งาน

ตรวจสอบ IPV4

ตรวจสอบอินเตอร์เฟส

ตรวจสอบแอพลิเคชั่น

ตรวจสอบโปรเซส

ตรวจสอบผู้ใช้งาน

ตรวจสอบ Netdata

หมายเหตุ
กรณีมีการใช้งาน Firewall ให้เปิดให้พอร์ต 19999 ผ่านได้
firewall-cmd --permanent --add-port=19999/tcp
firewall-cmd --reload

บทสรุป
Netdata นับเป็นทูลที่ใช้ตรวจสอบระบบเครือข่ายแบบ Real-time ที่มีความสามารถสูง ใช้งานง่าย มีความสามารถที่หลากหลาย
สามารถติดตั้งใช้งานได้ฟรี

----
แหล่งข้อมูลอ้างอิง
- http://netdata.firehol.org
- https://github.com/firehol/netdata/wiki/Installation

---
Write by Dr.Arnut Ruttanatirakul
(c) SysAdmin Knowledge
http://www.sysadmin.in.th
June 26, 2016