Cách giám sát Nginx bằng Netdata trên Ubuntu 16.04

theanh

Administrator
Nhân viên
Netdata là một công cụ giám sát nguồn mở dành cho máy chủ Linux. Công cụ này cung cấp khả năng giám sát hiệu suất và tình trạng theo thời gian thực với bảng điều khiển và phân tích đẹp mắt. Netdata có thể chạy trên bất kỳ bản phân phối Linux nào, công cụ này đã được thử nghiệm trên Alpine Linux, Arch Linux, CentOS, Ubuntu, v.v. Công cụ này giám sát CPU, mức sử dụng bộ nhớ, IPv4 và v6, ứng dụng người dùng như Nginx, fail2ban, MySQL, MongoDB, v.v.

Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách giám sát Nginx bằng Netdata. Hướng dẫn sẽ đề cập đến việc cài đặt máy chủ web Nginx, kích hoạt mô-đun 'stub_status' trong Nginx và cài đặt Netdata trên Ubuntu 16.04 Xenial Xerus.

Những gì chúng ta sẽ làm:
  1. Cài đặt Nginx Webserver.
  2. Cài đặt Netdata Monitoring Tool trên Ubuntu 16.04.
  3. Kích hoạt mô-đun 'stub_status' của Nginx.
  4. Cấu hình Netdata để giám sát Nginx.
  5. Cấu hình UFW Tường lửa.
  6. Kiểm tra.
Điều kiện tiên quyết
  • Máy chủ Ubuntu 16.04
  • Quyền root

Bước 1 - Cài đặt Nginx Webserver​

Bước đầu tiên chúng ta cần làm là cài đặt Nginx webserver từ kho lưu trữ. Cập nhật kho lưu trữ Ubuntu trước khi cài đặt Nginx bằng lệnh apt update.
Mã:
apt update
Cài đặt Nginx từ kho lưu trữ Ubuntu bằng lệnh apt install bên dưới.
Mã:
apt install -y nginx
Khi quá trình cài đặt hoàn tất, hãy khởi động Nginx và thêm nó để tự động khởi động khi khởi động bằng lệnh systemctl.
Mã:
systemctl start nginx
systemctl enable nginx
Máy chủ web đang chạy, hãy kiểm tra bằng curl.
Mã:
curl -I localhost
Đảm bảo rằng bạn có kết quả trạng thái http là '200 OK' như trong ảnh chụp màn hình bên dưới.



Máy chủ web Nginx đã được cài đặt.

Bước 2 - Cài đặt Công cụ giám sát Netdata trên Ubuntu 16.04​

Trong bước này, chúng tôi sẽ cài đặt công cụ giám sát Netdata từ nguồn. Tôi sẽ cài đặt thủ công bằng trình cài đặt được cung cấp. Trước khi cài đặt Netdata, chúng ta cần cài đặt một số gói cần thiết.

Cài đặt các gói cần thiết cho quá trình cài đặt Netdata bằng lệnh apt install bên dưới.
Mã:
apt install -y zlib1g-dev uuid-dev libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkg-config curl
Khi tất cả các gói đã được cài đặt, hãy tải xuống mã nguồn của Netdata từ github bằng lệnh git.
Mã:
git clone https://github.com/firehol/netdata.git --depth=1


Đi đến thư mục 'netdata' và chạy tập lệnh cài đặt 'netdata-installer.sh' với quyền sudo.
Mã:
cd netdata/
sudo ./netdata-installer.sh
Nhấn 'Enter' để tiếp tục cài đặt Netdata.



Khi quá trình cài đặt hoàn tất, bạn sẽ nhận được kết quả như bên dưới.



Công cụ giám sát Netdata cung cấp một tập lệnh dịch vụ cho hệ thống systemd. Khởi động netdata và thêm để chạy tự động khi khởi động bằng lệnh systemctl bên dưới.
Mã:
systemctl start netdata
systemctl enable netdata
Theo mặc định, nó chạy trên cổng 19999, hãy kiểm tra cổng bằng netstat và đảm bảo rằng cổng 19999 của bạn ở trạng thái 'LISTEN'.
Mã:
netstat -plntu


Công cụ giám sát Netdata đã được cài đặt.

Bước 3 - Kích hoạt Mô-đun 'stub_status' của Nginx​

Để giám sát máy chủ web Nginx bằng công cụ giám sát Netdata, chúng ta cần một số cấu hình bổ sung. Đầu tiên, chúng ta phải kích hoạt mô-đun 'stub_status' của nginx cho cấu hình máy chủ ảo.

Trước khi chỉnh sửa cấu hình máy chủ ảo, hãy đảm bảo bạn đã cài đặt phiên bản nginx có mô-đun 'stub_status'. Kiểm tra bằng lệnh bên dưới.
Mã:
nginx -V
Đảm bảo bạn có mô-đun 'stub_status' như bên dưới.



Tiếp theo, hãy đến thư mục cấu hình nginx và chỉnh sửa tệp máy chủ ảo 'default' bằng trình soạn thảo vim.
Mã:
cd /etc/nginx/sites-available/
vim default
Dán cấu hình bên dưới vào khối 'server {}'.
Mã:
location /stub_status {
 stub_status;
 # Bảo mật: Chỉ cho phép truy cập từ IP bên dưới.
 allow 127.0.0.1;
 # Từ chối bất kỳ ai khác
 deny all;
 }
Lưu và thoát.



Kiểm tra cấu hình nginx và đảm bảo có lỗi và khởi động lại dịch vụ nginx.
Mã:
nginx -t
systemctl restart nginx
Mô-đun 'stub_status' của Nginx đã được bật, hãy kiểm tra bằng lệnh netstat bên dưới.
Mã:
curl http://127.0.0.1/stub_status
Và bạn sẽ nhận được kết quả như bên dưới.


Bước 4 - Cấu hình Netdata để giám sát Nginx​

Netdata cung cấp các mô-đun Python để giám sát các ứng dụng đã cài đặt của chúng tôi trên hệ thống, bao gồm cả máy chủ web Nginx. Để giám sát Nginx bằng Netdata, chúng tôi cần mô-đun Nginx 'stub_status' và mô-đun này đã được bật.

Bây giờ hãy đến thư mục cấu hình netdata. Sau đó chỉnh sửa tệp nginx.conf trong thư mục python.d.
Mã:
cd /etc/netdata/
vim python.d/nginx.conf
Đảm bảo bạn có cấu hình như bên dưới.
Mã:
localhost:
 name : 'local'
 url : 'http://localhost/stub_status'
Lưu tệp và thoát khỏi vim.



Bây giờ hãy khởi động lại Netdata bằng systemctl.
Mã:
systemctl restart netdata
Cấu hình Netdata để giám sát Nginx đã hoàn tất.

Bước 5 - Cấu hình Tường lửa UFW​

Trong hướng dẫn này, tôi sẽ kích hoạt tường lửa UFW của Ubuntu. Tôi sẽ mở các cổng HTTP và HTTPS, sau đó mở cổng mới 19999 để truy cập Netdata Dashboard.

Hãy đảm bảo rằng bạn đã cài đặt gói tường lửa UFW, nếu chưa, hãy sử dụng lệnh bên dưới để cài đặt.
Mã:
apt install -y ufw
Bây giờ hãy mở các cổng cho ssh, http, https và netdata cổng 19999 bằng các lệnh 'ufw allow' bên dưới.
Mã:
ufw allow ssh
ufw allow http
ufw allow https
ufw allow 19999/tcp


Tiếp theo, hãy khởi động tường lửa UFW và thêm nó để tự động khởi động khi khởi động.
Mã:
ufw enable
Nhập 'y' thành yes và nhấn 'Enter'.

Khi bạn hoàn tất việc này, hãy kiểm tra trạng thái tường lửa như bên dưới.
Mã:
ufw status
Và bạn sẽ nhận được các cổng mới trong danh sách như bên dưới.


Bước 6 - Kiểm tra​

Mở trình duyệt của bạn và nhập địa chỉ máy chủ có cổng 19999.

http://192.168.1.11:19999/

Bạn sẽ thấy Bảng điều khiển Netdata.



Nhấp vào 'nginx local' ở bên phải và xem các kết nối đang hoạt động, yêu cầu, trạng thái và Tốc độ kết nối của Nginx.



Máy chủ web Nginx hiện được giám sát bằng Netdata và Netdata đã được cài đặt trên máy chủ Ubuntu 16.04.

Tài liệu tham khảo​

 
Back
Bên trên