Netdata là một hệ thống giám sát nguồn mở dành cho máy chủ Linux. Nó cung cấp hiệu suất và giám sát 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 thử nghiệm trên Alpine Linux, Arch Linux, CentOS, Ubuntu, v.v. Nó cung cấp các công cụ giám sát tình trạng theo thời gian thực cho máy chủ, CPU, mức sử dụng bộ nhớ, mạng IPv4 và IPv6 và các ứ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 này sẽ trình bày về cài đặt máy chủ web Nginx, kích hoạt mô-đun 'stub_status' và cài đặt Netdata trên CentOS 7.
Nếu bạn không có, bạn có thể cài đặt bằng lệnh bên dưới.
Tiếp theo, cài đặt Nginx bằng lệnh yum bên dưới.
Và nếu quá trình cài đặt đã hoàn tất, hãy khởi động dịch vụ và cho phép nó tự động khởi chạy khi khởi động hệ thống bằng lệnh systemctl bên dưới.
Sau khi cài đặt, hãy mở các cổng HTTP và HTTPS bằng lệnh firewall-cmd bên dưới.
Lưu ý: Nếu bạn không có lệnh firewall-cmd, bạn có thể cài đặt các gói firewalld từ kho lưu trữ.
Máy chủ web Nginx đã được cài đặt.
Bạn sẽ nhận được kết quả tương tự như sau.
Đảm bảo bạn có mô-đun 'stub_status' trong danh sách.
Tiếp theo, hãy chỉnh sửa tệp cấu hình nginx 'nginx.conf' để bật mô-đun 'stub_status'. Vào thư mục '/etc/nginx/' và chỉnh sửa cấu hình bằng vim.
Dán cấu hình sau vào khối 'server {}'.
Lưu và thoát.
Bây giờ, hãy kiểm tra cấu hình nginx và đảm bảo không có lỗi. Sau đó khởi động lại nginx.
Mô-đun 'stub_status' của Nginx đã được bật - chúng ta có thể kiểm tra bằng lệnh curl như hiển thị bên dưới.
Khi đã bật, bạn có thể thấy kết quả như bên dưới.
Cài đặt các gói cần thiết để cài đặt Netdata bằng lệnh yum sau.
Tiếp theo, tải xuống mã nguồn Netdata bằng lệnh git sau.
Đi đến thư mục netdata và chạy tập lệnh cài đặt Netdata với quyền sudo.
Nhấn 'Enter' để tiếp tục cài đặt Nedata.
Và khi cài đặt xong hoàn tất, bạn sẽ thấy kết quả như bên dưới.
Netdata đã được cài đặt trên CentOS 7 và đang chạy trên cổng '19999'.
Mở cổng bằng lệnh firewall-cmd bên dưới.
Netdata cung cấp một tập lệnh dịch vụ systemd, do đó bạn có thể quản lý Netdata bằng lệnh systemctl. Khởi động lại netdata và cho phép nó tự động khởi chạy mỗi lần khởi động hệ thống.
Kiểm tra cổng đã mở của máy chủ - đảm bảo bạn nhận được cổng 19999 ở trạng thái 'LISTEN'.
Công cụ giám sát Netdata đã được cài đặt trên CentOS 7.
Netdata cung cấp các mô-đun để giám sát các ứng dụng hệ thống. Có một số ứng dụng như Apache, Nginx, MongoDB, v.v. sử dụng các mô-đun python để giám sát bằng Netdata.
Đi đến thư mục 'python.d' của netdata và chỉnh sửa tệp cấu hình nginx.conf bằng vim.
Đi đến dòng cuối cùng và đảm bảo bạn có cấu hình như hiển thị bên dưới.
Lưu và thoát.
Bây giờ hãy khởi động lại dịch vụ netdata bằng lệnh systemctl.
Và bạn sẽ nhận được Netdata Dashboard.
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.
Netdata đã được cài đặt trên máy chủ CentOS 7 và máy chủ web Nginx đang được giám sát bằng Netdata.
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 này sẽ trình bày về cài đặt máy chủ web Nginx, kích hoạt mô-đun 'stub_status' và cài đặt Netdata trên CentOS 7.
Những việc chúng ta sẽ làm
- Cài đặt máy chủ web Nginx.
- Kích hoạt mô-đun 'stub_status' của Nginx.
- Cài đặt Netdata trên CentOS 7.
- Giám sát Nginx bằng Netdata.
- Kiểm tra.
Điều kiện tiên quyết
- CentOS 7 Máy chủ
- Quyền root
Bước 1 - Cài đặt máy chủ web Nginx
Trong bước này, chúng ta sẽ cài đặt máy chủ web Nginx từ kho lưu trữ EPEL (Gói bổ sung cho Enterprise Linux). Trước khi cài đặt Nginx, hãy đảm bảo kho lưu trữ EPEL đã được cài đặt trên máy chủ của bạn.Nếu bạn không có, bạn có thể cài đặt bằng lệnh bên dưới.
Mã:
yum -y install epel-release
Tiếp theo, cài đặt Nginx bằng lệnh yum bên dưới.
Mã:
yum -y install nginx
Mã:
systemctl start nginx
systemctl enable nginx
Mã:
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --reload
Lưu ý: Nếu bạn không có lệnh firewall-cmd, bạn có thể cài đặt các gói firewalld từ kho lưu trữ.
Mã:
yum -y install firewalld
Bước 2 - Kích hoạt mô-đun stub_status của Nginx
Để theo dõi Nginx bằng Netdata, chúng ta phải kích hoạt mô-đun 'stub_status' bằng cách chỉnh sửa cấu hình. Đảm bảo phiên bản Nginx của bạn có một mô-đun có tên là 'stub_status', hãy kiểm tra mô-đun bằng lệnh bên dưới.
Mã:
nginx -V
Đảm bảo bạn có mô-đun 'stub_status' trong danh sách.
Tiếp theo, hãy chỉnh sửa tệp cấu hình nginx 'nginx.conf' để bật mô-đun 'stub_status'. Vào thư mục '/etc/nginx/' và chỉnh sửa cấu hình bằng vim.
Mã:
cd /etc/nginx/
vim nginx.conf
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.
Bây giờ, hãy kiểm tra cấu hình nginx và đảm bảo không có lỗi. Sau đó khởi động lại nginx.
Mã:
nginx -t
systemctl restart nginx
Mô-đun 'stub_status' của Nginx đã được bật - chúng ta có thể kiểm tra bằng lệnh curl như hiển thị bên dưới.
Mã:
curl http://127.0.0.1/stub_status
Bước 3 - Cài đặt Netdata trên CentOS 7
Trong bước này, chúng ta sẽ cài đặt Netdata trên máy chủ CentOS 7. Trước khi cài đặt Netdata, chúng ta cần cài đặt một số gói để cài đặt Netdata.Cài đặt các gói cần thiết để cài đặt Netdata bằng lệnh yum sau.
Mã:
y install zlib-devel libuuid-devel libmnl-devel gcc make git autoconf autogen automake pkgconfig curl jq nodejs
Mã:
cd ~
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 với quyền sudo.
Mã:
cd netdata/
sudo ./netdata-installer.sh
Và khi cài đặt xong hoàn tất, bạn sẽ thấy kết quả như bên dưới.
Netdata đã được cài đặt trên CentOS 7 và đang chạy trên cổng '19999'.
Mở cổng bằng lệnh firewall-cmd bên dưới.
Mã:
sudo firewall-cmd --permanent --add-port=19999/tcp
sudo firewall-cmd --reload
Mã:
systemctl restart netdata
systemctl enable netdata
Mã:
netstat -plntu
Công cụ giám sát Netdata đã được cài đặt trên CentOS 7.
Bước 4 - Giám sát Nginx bằng Netdata
Ở giai đoạn này, Nginx đã được cài đặt, mô-đun stub_status đã được bật và quá trình cài đặt Netdata đã hoàn tất. Trong bước này, chúng tôi muốn giám sát máy chủ web nginx bằng Netdata. Giám sát các yêu cầu, kết nối đang hoạt động và trạng thái.Netdata cung cấp các mô-đun để giám sát các ứng dụng hệ thống. Có một số ứng dụng như Apache, Nginx, MongoDB, v.v. sử dụng các mô-đun python để giám sát bằng Netdata.
Đi đến thư mục 'python.d' của netdata và chỉnh sửa tệp cấu hình nginx.conf bằng vim.
Mã:
cd /etc/netdata/python.d/
vim nginx.conf
Mã:
localhost:
name : 'local'
url : 'http://localhost/stub_status'
Lưu và thoát.
Bây giờ hãy khởi động lại dịch vụ netdata bằng lệnh systemctl.
Mã:
systemctl restart netdata
Bước 5 - Kiểm tra
Mở trình duyệt web của bạn và truy cập địa chỉ IP của máy chủ có cổng 19999.Và bạn sẽ nhận được Netdata Dashboard.
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.
Netdata đã được cài đặt trên máy chủ CentOS 7 và máy chủ web Nginx đang được giám sát bằng Netdata.