Cách cài đặt công cụ giám sát Grafana 8 trên Debian 11

theanh

Administrator
Nhân viên
Grafana là một công cụ trực quan hóa dữ liệu miễn phí và mã nguồn mở được sử dụng để theo dõi số liệu từ các máy chủ khác. Công cụ này được viết bằng Typescript và Go và cho phép bạn tạo và chỉnh sửa cả biểu đồ nhật ký và dữ liệu cũng như tạo số liệu. Nó có thể tạo biểu đồ và bảng thông tin từ cơ sở dữ liệu chuỗi thời gian bao gồm Graphite, InfluxDB hoặc OpenTSDB và cho phép bạn chia sẻ chúng với những người dùng khác.

Tính năng
  • Mẫu bảng thông tin
  • Cung cấp chú thích
  • Chế độ kiosk và danh sách phát
  • Plugin tùy chỉnh
  • Cảnh báo và móc cảnh báo
Trong bài đăng này, chúng tôi sẽ chỉ cho bạn cách cài đặt Grafana 8 trên Debian 11.

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

  • Một máy chủ đang chạy Debian 11.
  • 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ủ.

Bắt đầu​

Trước khi bắt đầu, bạn nên cập nhật hệ thống của mình lên phiên bản đã cập nhật. Bạn có thể cập nhật tất cả các gói bằng lệnh sau:
Mã:
apt-get update -y
Sau khi cập nhật tất cả các gói, hãy cài đặt các phụ thuộc bắt buộc khác bằng lệnh sau:
Mã:
apt-get install gnupg2 curl wget git software-properties-common -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 Grafana 8​

Theo mặc định, Grafana không được bao gồm trong kho lưu trữ mặc định của Debian 11. Vì vậy, bạn sẽ cần thêm kho lưu trữ Grafana vào APT. Bạn có thể thêm nó bằng lệnh sau:
Mã:
curl https://packages.grafana.com/gpg.key | apt-key add -
add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
Sau khi kho lưu trữ được thêm vào, hãy cập nhật bộ đệm kho lưu trữ và cài đặt Grafana bằng lệnh sau:
Mã:
apt-get update -y
apt-get install grafana -y
Sau khi Grafana được cài đặt, hãy khởi động và kích hoạt dịch vụ Grafana bằng lệnh sau:
Mã:
systemctl start grafana-server
systemctl enable grafana-server
Bạn cũng có thể kiểm tra trạng thái của dịch vụ Grafana bằng lệnh sau:
Mã:
systemctl status grafana-server
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
? grafana-server.service - Phiên bản Grafana Đã tải: đã tải (/lib/systemd/system/grafana-server.service; đã tắt; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ sáu 2022-02-04 04:08:25 UTC; 5 giây trước Tài liệu: http://docs.grafana.org PID chính: 8602 (grafana-server) Nhiệm vụ: 9 (giới hạn: 2341) Bộ nhớ: 29,6M CPU: 1,299 giây CGroup: /system.slice/grafana-server.service ??8602 /usr/sbin/grafana-server --config=/etc/grafana/grafana.ini --pidfile=/run/grafana/grafana-server.pid --packaging=deb cfg:>04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="di chuyển đã hoàn tất" logger=migrator performed=381 s>04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="Đã tạo quản trị viên mặc định" logger=sqlstore user=admin04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="Đã tạo tổ chức mặc định" logger=sqlstore04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="Đang khởi tạo plugin" logger=plugin.manager04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="Plugin đã đăng ký" logger=plugin.manager pluginId=inp>04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="Live Push Gateway initialization" logger=live.push_ht>04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="Đang ghi tệp PID" logger=server path=/run/grafana/gra>04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="HTTP Server Listen" logger=http.server address=[::]:3>04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="warming cache for startup" logger=ngalert04/02 04:08:27 debian11 grafana-server[8602]: t=2022-02-04T04:08:27+0000 lvl=info msg="starting MultiOrg Alertmanager" logger=ngalert.multio>
Theo mặc định, Grafana lắng nghe trên cổng 3000. Bạn có thể kiểm tra bằng lệnh sau:
Mã:
ss -antpl | grep 3000
Bạn sẽ nhận được kết quả sau:
Mã:
LISTEN 0 4096 *:3000 *:* users:(("grafana-server",pid=8602,fd=8))

Cài đặt Nginx làm Proxy ngược cho Grafana​

Tiếp theo, bạn sẽ cần cài đặt và cấu hình Nginx làm proxy ngược cho Grafana. Trước tiên, hãy cài đặt Nginx bằng lệnh sau:
Mã:
apt-get install nginx -y
Sau khi Nginx được cài đặt, hãy tạo tệp cấu hình máy chủ ảo Nginx bằng lệnh sau:
Mã:
nano /etc/nginx/conf.d/grafana.conf
Thêm các dòng sau:
Mã:
server { server_name grafana.example.com; listen 80; access_log /var/log/nginx/grafana.log; location / { proxy_pass http://localhost:3000; proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }}
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, hãy kiểm tra Nginx xem có lỗi cú pháp nào không bằng lệnh sau:
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, hãy khởi động lại 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ẽ nhận được kết quả sau:
Mã:
? nginx.service - Máy chủ web hiệu suất cao và máy chủ proxy ngược Đã tải: đã tải (/lib/systemd/system/nginx.service; đã bật; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ sáu 2022-02-04 04:09:20 UTC; 4 giây trước Tài liệu: man:nginx(8) Tiến trình: 8631 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Tiến trình: 8632 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) PID chính: 8633 (nginx) Nhiệm vụ: 2 (giới hạn: 2341) Bộ nhớ: 2,5M CPU: 35ms CGroup: /system.slice/nginx.service ??8633 nginx: tiến trình chính /usr/sbin/nginx -g daemon on; master_process on; ??8634 nginx: tiến trình công nhân04/02 04:09:20 debian11 systemd[1]: Đang khởi động Một máy chủ web hiệu suất cao và một máy chủ proxy ngược...04/02 04:09:20 debian11 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ệ04/02 04:09:20 debian11 systemd[1]: Đang khởi động Một máy chủ web hiệu suất cao và một máy chủ proxy ngược.
Tại thời điểm này, Nginx đã được cài đặt và định cấu hình làm proxy ngược cho Grafana. Bây giờ bạn có thể tiến hành bước tiếp theo.

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

Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện web Grafana bằng URL . Bạn sẽ được chuyển hướng đến trang đăng nhập Grafana:



Cung cấp tên người dùng quản trị, mật khẩu và nhấp vào nút Đăng nhập. Bạn sẽ thấy màn hình đặt lại mật khẩu Grafana:



Đặt mật khẩu mới và nhấp vào nút Gửi. Bạn sẽ thấy bảng điều khiển Grafana trên màn hình sau:


Bảo mật Grafana với Let's Encrypt​

Tiếp theo, bạn sẽ cần cài đặt gói máy khách Certbot để cài đặt và quản lý Let's Encrypt SSL.

Trước tiên, hãy cài đặt Certbot bằng lệnh sau:
Mã:
apt-get install certbot python3-certbot-nginx -y
Sau khi cài đặt hoàn tất, hãy chạy lệnh sau để cài đặt Let's Encrypt SSL trên trang web của bạn:
Mã:
certbot --nginx -d grafana.example.com
Bạn sẽ được yêu cầu cung cấp địa chỉ email hợp lệ và chấp nhận điều khoản dịch vụ như hiển thị bên dưới:
Mã:
Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator nginx, Trình cài đặt nginxNhập địa chỉ email (dùng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' đểhủy): [emailprotected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vui lòng đọc Điều khoản dịch vụ tạihttps://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Bạn phảiđồng ý để đăng ký với máy chủ ACME tạihttps://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel: A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Bạn có sẵn lòng chia sẻ địa chỉ email của mình với Electronic Frontier Foundation, đối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuận phát triển Certbot không? Chúng tôi muốn gửi cho bạn email về công việc của chúng tôimã hóa web, tin tức EFF, các chiến dịch và các cách hỗ trợ tự do kỹ thuật số.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)ó/(K)o: CNhận chứng chỉ mớiThực hiện các thử thách sau:Thử thách http-01 cho grafana.example.comĐang chờ xác minh...Đang dọn dẹp các thử tháchTriển khai chứng chỉ tới VirtualHost /etc/nginx/conf.d/grafana.conf
Tiếp theo, chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không như hiển thị bên dưới:
Mã:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1: Không chuyển hướng - Không thực hiện thêm bất kỳ thay đổi nào đối với cấu hình máy chủ web.2: Chuyển hướng - Chuyển hướng tất cả các yêu cầu đến quyền truy cập HTTPS an toàn. Chọn tùy chọn này chocác trang web mới hoặc nếu bạn tin tưởng rằng trang web của mình hoạt động trên HTTPS. Bạn có thể hoàn tácthay đổi này bằng cách chỉnh sửa cấu hình máy chủ web của mình.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Chọn số thích hợp [1-2] rồi [enter] (nhấn 'c' để hủy): 2
Nhập 2 và nhấn Enter để hoàn tất quá trình cài đặt. Bạn sẽ thấy kết quả đầu ra sau:
Mã:
Chuyển hướng tất cả lưu lượng trên cổng 80 sang ssl trong /etc/nginx/conf.d/grafana.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://grafana.example.comBạn nên kiểm tra cấu hình của mình tại:https://www.ssllabs.com/ssltest/analyze.html?d=grafana.example.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -LƯU Ý QUAN TRỌNG: - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại: /etc/letsencrypt/live/grafana.example.com/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/letsencrypt/live/grafana.example.com/privkey.pem Chứng chỉ của bạn sẽ hết hạn vào ngày 07-05-2022. Để có phiên bản mới hoặc đã chỉnh sửa của chứng chỉ này trong tương lai, chỉ cần chạy lại certbot với tùy chọn "certonly". Để gia hạn không tương tác *tất cả* các chứng chỉ của bạn, hãy chạy "certbot renew" - Thông tin đăng nhập tài khoản của bạn đã được lưu trong thư mục cấu hình Certbot tại /etc/letsencrypt. Bây giờ bạn nên sao lưu an toàn thư mục này. Thư mục cấu hình này cũng sẽ chứa các chứng chỉ và khóa riêng do Certbot thu được, do đó, việc sao lưu thường xuyên thư mục này là lý tưởng. - Nếu bạn thích Certbot, vui lòng cân nhắc hỗ trợ công việc của chúng tôi bằng cách: Quyên góp cho ISRG / Let's Encrypt: https://letsencrypt.org/donate Quyên góp cho EFF: https://eff.org/donate-le - Chúng tôi không thể đăng ký cho bạn danh sách gửi thư EFF vì địa chỉ email của bạn có vẻ không hợp lệ. Bạn có thể thử lại sau bằng cách truy cập https://act.eff.org.

Kết luận​

Xin chúc mừng! bạn đã cài đặt thành công Grafana 8 với Nginx và Let's Encrypt SSL trên Debian 11. Bây giờ bạn có thể thêm máy chủ từ xa của mình và bắt đầu giám sát chúng từ bảng điều khiển Grafana. 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