Cách cài đặt Netdata với Nginx trên Alma Linux 8

theanh

Administrator
Nhân viên
Netdata là một công cụ giám sát máy chủ miễn phí, mã nguồn mở và theo thời gian thực, giúp trực quan hóa và giám sát dữ liệu theo thời gian thực như mức sử dụng CPU, mức sử dụng RAM, Tải, mức sử dụng SWAP, mức sử dụng Băng thông, mức sử dụng Đĩa, v.v. Công cụ này giúp quản trị viên hệ thống có được cái nhìn tổng quan về những gì đang diễn ra và những gì vừa diễn ra trong hệ thống hoặc ứng dụng của bạn. Công cụ này có thể được cài đặt trên bất kỳ máy chủ vật lý, Máy ảo, vùng chứa và thiết bị IoT nào. Nó cung cấp một giao diện web tương tác để xem số liệu máy chủ của bạn với sự hỗ trợ cho nhiều kho dữ liệu khác nhau để lưu trữ liên tục.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt công cụ giám sát Netdata trên Alma Linux 8.

Điều kiện tiên quyết​

  • Một máy chủ đang chạy Alma Linux 8.
  • Một tên miền hợp lệ được trỏ bằng IP máy chủ của bạn.
  • Một mật khẩu gốc được cấu hình trên máy chủ.

Cài đặt phụ thuộc bắt buộc​

Đầu tiên, bạn sẽ cần cài đặt kho lưu trữ EPEL và các phụ thuộc khác cần thiết để cài đặt Netdata. Bạn có thể cài đặt tất cả chúng bằng cách chạy lệnh sau:
Mã:
dnf install epel-release -y
dnf install git libuuid-devel autoconf automake pkgconfig zlib-devel curl findutils libmnl gcc make -y
Sau khi tất cả các gói được cài đặt, bạn có thể tiến hành bước tiếp theo.

Cài đặt Netdata​

Theo mặc định, Netdata không được bao gồm trong kho lưu trữ mặc định của Alma Linux. Vì vậy, bạn sẽ cần cài đặt nó từ nguồn.

Đầu tiên, hãy tải xuống phiên bản Netdata mới nhất từ kho lưu trữ Git bằng lệnh sau:
Mã:
git clone --recurse-submodules https://github.com/netdata/netdata.git --depth=100
Sau khi tải xuống hoàn tất, hãy thay đổi thư mục thành netdata và cài đặt tất cả các phụ thuộc cần thiết bằng lệnh sau:
Mã:
cd netdata
./packaging/installer/install-required-packages.sh --non-interactive --dont-wait netdata
Tiếp theo, hãy cài đặt các gói khác bằng lệnh sau:
Mã:
dnf --enablerepo=powertools install libuv-devel
Tiếp theo, hãy chạy tập lệnh cài đặt Netdata để bắt đầu cài đặt.
Mã:
./netdata-installer.sh
Bạn sẽ nhận được thông báo sau output:
Mã:
--- giám sát hiệu suất theo thời gian thực, thực hiện đúng! --- Bạn sắp xây dựng và cài đặt netdata vào hệ thống của mình. Quá trình xây dựng sẽ sử dụng /tmp cho mọi tệp tạm thời. Bạn có thể ghi đè lệnh này bằng cách đặt $TMPDIR thành thư mục có thể ghi, nơi bạn có thể thực thi các tệp. Nó sẽ được cài đặt tại các vị trí sau: - daemon tại /usr/sbin/netdata - các tệp cấu hình tại /etc/netdata - các tệp web tại /usr/share/netdata - các plugin tại /usr/libexec/netdata - các tệp bộ đệm tại /var/cache/netdata - các tệp db tại /var/lib/netdata - các tệp nhật ký tại /var/log/netdata - tệp pid tại /var/run/netdata.pid - tệp logrotate tại /etc/logrotate.d/netdata Trình cài đặt này cho phép bạn thay đổi đường dẫn cài đặt. Nhấn Control-C và chạy lệnh tương tự với --help để được trợ giúp. LƯU Ý: Số liệu thống kê sử dụng ẩn danh sẽ được thu thập và gửi đến Netdata. Để từ chối, hãy chuyển tùy chọn --disable-telemetry cho trình cài đặt hoặc xuất biến môi trường DISABLE_TELEMETRY thành giá trị khác không hoặc không rỗng (ví dụ: export DISABLE_TELEMETRY=1).Nhấn ENTER để xây dựng và cài đặt netdata vào hệ thống của bạn >
Nhấn phím Enter để cài đặt Netdata vào hệ thống của bạn. Sau khi Netdata được cài đặt, bạn sẽ nhận được kết quả sau:
Mã:
Đặt netdata.tarball.checksum thành 'new_installation' --- Hoàn tất! --- ^ |.-. .-. .-. .-. .-. .-. . netdata .-. .-. .-. .-. .-. .- | '-' '-' '-' '-' '-' '-' '-' '-' '-' '-' +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----> --- hiện đã được cài đặt và đang chạy! --- tận hưởng hiệu suất và giám sát tình trạng theo thời gian thực...
Mã:
systemctl start netdata
systemctl enable netdata
Bây giờ bạn có thể kiểm tra trạng thái của Netdata bằng lệnh sau.
Mã:
systemctl status netdata
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
? netdata.service - Giám sát hiệu suất theo thời gian thực Đã tải: đã tải (/usr/lib/systemd/system/netdata.service; đã bật; cài đặt trước của nhà cung cấp: đã tắt) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ bảy 2022-03-19 04:22:22 UTC; 4 phút 16 giây trước PID chính: 58935 (netdata) Nhiệm vụ: 50 (giới hạn: 11412) Bộ nhớ: 103,1M CGroup: /system.slice/netdata.service ??58935 /usr/sbin/netdata -P /var/run/netdata/netdata.pid -D ??58938 /usr/sbin/netdata --special-spawn-server ??59063 /usr/libexec/netdata/plugins.d/apps.plugin 1 ??59064 /usr/libexec/netdata/plugins.d/ebpf.plugin 1 ??59065 /usr/libexec/netdata/plugins.d/go.d.plugin 119-03 04:22:22 linux systemd[1]: Bắt đầu giám sát hiệu suất thời gian thực...19-03 04:22:22 linux systemd[1]: Bắt đầu theo dõi hiệu suất theo thời gian thực.19/03 04:22:22 linux netdata[58935]: CONFIG: không thể tải cấu hình đám mây '/var/lib/netdata/cloud.d/cloud.conf'. Đang chạy với các mặc định nội bộ.19/03 04:22:22 linux netdata[58935]: 19/03/2022 04:22:22: netdata INFO : MAIN : CONFIG: không thể tải cấu hình đám mây '/var/lib/netdata/cloud.d/>19/03 04:22:22 linux netdata[58935]: 19/03/2022 04:22:22: netdata INFO : MAIN : Đã tìm thấy 0 dbengine cũ, đặt không gian đĩa multidb thành 256MB19/03 04:22:22 linux netdata[58935]: 19/03/2022 04:22:22: netdata INFO : MAIN : Đã tạo tệp '/var/lib/netdata/dbengine_multihost_size' thành >19/03 04:22:22 linux netdata[58935]: Đã tìm thấy 0 dbengine cũ, đặt không gian đĩa multidb thành 256MB19/03 04:22:22 linux netdata[58935]: Đã tạo tệp '/var/lib/netdata/dbengine_multihost_size' để lưu trữ giá trị đã tính toán19/03 04:22:23 linux ebpf.plugin[59064]: Không có tệp cấu hình bên trong `/etc/netdata/ebpf.d.conf. Nó sẽ cố gắng tải tệp stock.19/03 04:22:23 linux ebpf.plugin[59064]: Không thể đọc tệp cấu hình nhóm quy trình '/etc/netdata/apps_groups.conf'. Sẽ thử '/usr/lib/n>
Lúc này, Netdata đang chạy và lắng nghe trên cổng 19999. Bạn có thể kiểm tra bằng lệnh sau:
Mã:
ss -antpl | grep netdata
Bạn sẽ nhận được kết quả sau:
Mã:
LISTEN 0 128 127.0.0.1:8125 0.0.0.0:* users:(("netdata",pid=58935,fd=29))LISTEN 0 128 0.0.0.0:19999 0.0.0.0:* users:(("netdata",pid=58935,fd=6))LISTEN 0 128 [::1]:8125 [::]:* users:(("netdata",pid=58935,fd=28))LISTEN 0 128 [::]:19999 [::]:* users:(("netdata",pid=58935,fd=7))
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo bước.

Cấu hình Tường lửa​

Nếu bạn đang sử dụng tường lửa firewalld trên hệ thống của mình thì bạn sẽ cần cho phép các cổng 1999980 đi qua firewalld. Bạn có thể cho phép chúng bằng lệnh sau:
Mã:
firewall-cmd --permanent --add-port=19999/tcp
firewall-cmd --permanent --add-port=80/tcp
Tiếp theo, tải lại daemon firewalld để áp dụng các thay đổi:
Mã:
firewall-cmd --reload
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Nginx làm Proxy ngược cho Netdata​

Luôn là một ý tưởng hay khi cài đặt và cấu hình Nginx làm proxy ngược để truy cập Netdata. Trước tiên, hãy cài đặt máy chủ Nginx bằng lệnh sau:
Mã:
dnf install nginx httpd-tools -y
Tiếp theo, tạo tệp mật khẩu bằng lệnh sau:
Mã:
htpasswd -c /etc/nginx/.htpasswd netadmin
Đặt mật khẩu quản trị viên của bạn như hiển thị bên dưới:
Mã:
Mật khẩu mới:Nhập lại mật khẩu mới:Đang thêm mật khẩu cho người dùng netadmin
Tiếp theo, tạo tệp cấu hình máy chủ ảo Nginx bằng lệnh sau:
Mã:
nano /etc/nginx/conf.d/netdata.conf
Thêm các dòng sau:
Mã:
upstream backend {server 127.0.0.1:19999;keepalive 64;}server {listen 80;server_name netdata.example.com; vị trí / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://backend; proxy_http_version 1.1; proxy_pass_request_headers bật; proxy_set_header Kết nối "giữ kết nối"; proxy_store tắt; auth_basic "Tài sản riêng"; auth_basic_user_file /etc/nginx/.htpasswd;}}
Lưu và đóng tệp, sau đó kiểm tra Nginx xem có lỗi cấu hình cú pháp nào không:
Mã:
nginx -t
Nếu mọi thứ đều ổn, bạn sẽ nhận được kết quả sau:
Mã:
nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là oknginx: kiểm tra tệp cấu hình /etc/nginx/nginx.conf thành công
Tiếp theo, khởi động lại dịch vụ Nginx để áp dụng các thay đổi cấu hình:
Mã:
systemctl restart nginx
Bạn cũng có thể kiểm tra trạng thái Nginx bằng lệnh sau:
Mã:
systemctl status nginx
Bạn sẽ thấy kết quả sau:
Mã:
? nginx.service - Máy chủ proxy ngược và HTTP nginx Đã tải: đã tải (/usr/lib/systemd/system/nginx.service; đã tắt; cài đặt trước của nhà cung cấp: đã tắt) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ bảy 2022-03-19 04:28:44 UTC; 4 giây trước Tiến trình: 61706 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Tiến trình: 61705 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Tiến trình: 61703 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) PID chính: 61708 (nginx) Nhiệm vụ: 2 (giới hạn: 11412) Bộ nhớ: 3,7M CGroup: /system.slice/nginx.service ??61708 nginx: tiến trình chính /usr/sbin/nginx ??61709 nginx: tiến trình công nhân19/03 04:28:44 linux systemd[1]: Khởi động HTTP nginx và proxy ngược máy chủ...19/03 04:28:44 linux nginx[61705]: nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là ok19/03 04:28:44 linux nginx[61705]: nginx: thử nghiệm tệp cấu hình /etc/nginx/nginx.conf thành công19/03 04:28:44 linux systemd[1]: nginx.service: Không phân tích được PID từ tệp /run/nginx.pid: Đối số không hợp lệ19/03 04:28:44 linux systemd[1]: Đã khởi động máy chủ proxy ngược và HTTP nginx.
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Truy cập Bảng điều khiển Netdata​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập bảng điều khiển Netdata bằng URL http://your-server-ip. Bạn sẽ thấy trang đăng nhập Netdata:



Cung cấp tên người dùng, mật khẩu quản trị viên và nhấp vào nút Đăng nhập. Bạn sẽ thấy bảng điều khiển Netdata trên trang sau:


Kết luận​

Xin chúc mừng! bạn đã cài đặt thành công công cụ giám sát Netdata trên Alma Linux 8. Bây giờ bạn có thể bắt đầu giám sát ma trận máy chủ của mình theo thời gian thực từ bảng điều khiển Netdata. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên