Cách cài đặt TIG Stack (Telegraf, InfluxDB và Grafana) trên Debian 12

theanh

Administrator
Nhân viên
Ngăn xếp TIG (Telegraf, InfluxDB và Grafana) là từ viết tắt của một nền tảng các công cụ nguồn mở giúp việc thu thập, lưu trữ, lập biểu đồ và cảnh báo các số liệu hệ thống trở nên dễ dàng hơn. Bạn có thể theo dõi và trực quan hóa các số liệu như bộ nhớ, dung lượng đĩa, người dùng đã đăng nhập, tải hệ thống, mức sử dụng hoán đổi, thời gian hoạt động, quy trình đang chạy, v.v. từ một nơi. Các công cụ được sử dụng trong ngăn xếp như sau:
  • Telegraf - là một tác nhân thu thập số liệu nguồn mở để thu thập và gửi dữ liệu và sự kiện từ cơ sở dữ liệu, hệ thống và cảm biến IoT. Nó hỗ trợ nhiều plugin đầu ra khác nhau như InfluxDB, Graphite, Kafka, v.v. mà nó có thể gửi dữ liệu đã thu thập được.
  • InfluxDB - là một cơ sở dữ liệu chuỗi thời gian nguồn mở được viết bằng ngôn ngữ Go. Nó được tối ưu hóa cho lưu trữ nhanh, có tính khả dụng cao và phù hợp với mọi thứ liên quan đến lượng lớn dữ liệu có dấu thời gian, bao gồm số liệu, sự kiện và phân tích thời gian thực.
  • Grafana - là một bộ công cụ giám sát và trực quan hóa dữ liệu nguồn mở. Nó hỗ trợ nhiều plugin đầu vào như Graphite, ElasticSearch, InfluxDB, v.v. Nó cung cấp bảng điều khiển đẹp mắt và phân tích số liệu cho phép bạn trực quan hóa và giám sát mọi loại số liệu hệ thống và dữ liệu hiệu suất.
Trong hướng dẫn này, bạn sẽ tìm hiểu cách cài đặt và cấu hình TIG Stack trên một máy chủ Debian 12 duy nhất.

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


  1. Một máy chủ chạy Debian 12 với tối thiểu 1 GB RAM.

  2. Một người dùng không dùng sudo có quyền root.

  3. Tường lửa đơn giản (UFW) được bật và đang chạy.

  4. Một Tên miền đủ điều kiện (FQDN) như grafana.example.com trỏ đến máy chủ của bạn.

  5. Một tài khoản SMTP có dịch vụ email như Amazon SES hoặc Mailgun để nhận thông báo qua email về các cảnh báo dịch vụ.

  6. Đảm bảo mọi thứ đều được cập nhật.
    Mã:
    $ sudo apt update && sudo apt upgrade

  7. Cần có một số gói thiết yếu để chạy hướng dẫn và Craft CMS. Một số trong số này sẽ có sẵn trên máy chủ của bạn.
    Mã:
    $ sudo apt install curl wget nano software-properties-common dirmngr apt-transport-https ca-certificates lsb-release debian-archive-keyring gnupg2 ufw unzip -y

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

Trước khi cài đặt bất kỳ gói nào, bước đầu tiên là cấu hình tường lửa để mở cổng cho InfluxDB và Grafana.

Kiểm tra trạng thái của tường lửa.
Mã:
$ sudo ufw status
Bạn sẽ thấy nội dung tương tự như sau.
Mã:
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Mở cổng 8086 cho InfluxDB và 3000 cho Grafana máy chủ.
Mã:
$ sudo ufw allow 8086
$ sudo ufw allow 3000
Cho phép các cổng HTTP và HTTPs.
Mã:
$ sudo ufw allow http
$ sudo ufw allow https
Kiểm tra lại trạng thái để xác nhận.
Mã:
$ sudo ufw status
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
8086 ALLOW Anywhere
3000 ALLOW Anywhere
80/tcp ALLOW Anywhere
443 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
8086 (v6) ALLOW Anywhere (v6)
3000 (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)

Bước 2 - Cài đặt InfluxDB​

Chúng tôi sẽ sử dụng kho lưu trữ chính thức của InfluxDB để cài đặt nó.

Tải xuống InfluxDB GPG key.
Mã:
$ wget -q https://repos.influxdata.com/influxdata-archive_compat.key
Nhập khóa GPG vào máy chủ.
Mã:
$ echo '393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e6ac9ce4c influxdata-archive_compat.key' | sha256sum -c && cat influxdata-archive_compat.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg > /dev/null
influxdata-archive_compat.key: OK
Nhập InfluxDB kho lưu trữ.
Mã:
$ echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list
Cập nhật danh sách kho lưu trữ của hệ thống.
Mã:
$ sudo apt update
Bạn có tùy chọn cài đặt InfluxDB 1.8.x hoặc 2.0.x. Tuy nhiên, tốt hơn là sử dụng phiên bản mới nhất. Cài đặt InfluxDB.
Mã:
$ sudo apt install influxdb2
Khởi động dịch vụ InfluxDB.
Mã:
$ sudo systemctl start influxdb
Kiểm tra trạng thái của dịch vụ.
Mã:
$ sudo systemctl status influxdb
? influxdb.service - InfluxDB is an open-source, distributed, time series database Loaded: loaded (/lib/systemd/system/influxdb.service; enabled; preset: enabled) Active: active (running) since Tue 2024-01-02 02:39:41 UTC; 1s ago Docs: https://docs.influxdata.com/influxdb/ Process: 5584 ExecStart=/usr/lib/influxdb/scripts/influxd-systemd-start.sh (code=exited, status=0/SUCCESS) Main PID: 5585 (influxd) Tasks: 8 (limit: 2299) Memory: 53.1M CPU: 735ms CGroup: /system.slice/influxdb.service ??5585 /usr/bin/influxd
........

Bước 3 - Tạo cơ sở dữ liệu InfluxDB và thông tin xác thực người dùng​

Để lưu trữ dữ liệu từ Telegraf, bạn cần thiết lập cơ sở dữ liệu Influx và người dùng.

InfluxDB đi kèm với một công cụ dòng lệnh có tên là influx để tương tác với máy chủ InfluxDB. Hãy nghĩ đến influx như là công cụ dòng lệnh mysql.

Chạy lệnh sau để thực hiện cấu hình ban đầu cho Dòng chảy.
Mã:
$ influx setup
> Welcome to InfluxDB 2.0!
? Please type your primary username navjot
? Please type your password ***************
? Please type your password again ***************
? Please type your primary organization name howtoforge
? Please type your primary bucket name tigstack
? Please type your retention period in hours, or 0 for infinite 360
? Setup with these parameters? Username: navjot Organization: howtoforge Bucket: tigstack Retention Period: 360h0m0s Yes
User Organization Bucket
navjot howtoforge tigstack
Bạn cần thiết lập tên người dùng ban đầu, mật khẩu, tên tổ chức, tên thùng chính để lưu trữ dữ liệu và thời gian lưu giữ tính bằng giờ cho dữ liệu đó. Thông tin chi tiết của bạn được lưu trữ trong tệp /home/username/.influxdbv2/configs.

Bạn cũng có thể thực hiện thiết lập này bằng cách khởi chạy URL http://:8086/ trong trình duyệt của bạn. Sau khi thực hiện thiết lập ban đầu, bạn có thể đăng nhập vào URL bằng thông tin đăng nhập đã tạo ở trên.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22315%22%20height=%22750%22%3E%3C/svg%3E


Bạn sẽ được chào đón bằng bảng điều khiển sau.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22422%22%3E%3C/svg%3E


Quá trình thiết lập ban đầu sẽ tạo một token có quyền đọc và ghi đầy đủ vào tất cả các tổ chức trong cơ sở dữ liệu. Bạn cần một token mới cho mục đích bảo mật, token này sẽ chỉ kết nối với tổ chức và bucket mà chúng ta muốn kết nối.

Để tạo một token mới, hãy nhấp vào biểu tượng sau từ thanh bên trái và nhấp vào liên kết API Tokens để tiếp tục.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22174%22%20height=%22205%22%3E%3C/svg%3E


Bạn sẽ được đưa đến trang API Tokens. Tại đây, bạn sẽ thấy mã thông báo mặc định mà chúng tôi đã tạo tại thời điểm cấu hình ban đầu.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22441%22%3E%3C/svg%3E


Nhấp vào nút Tạo mã thông báo API và chọn tùy chọn Mã thông báo API tùy chỉnh để khởi chạy cửa sổ bật lên lớp phủ mới. Đặt tên cho Token (telegraf) và mở rộng phần Tài nguyên rồi chọn thùng mặc định mà chúng ta đã tạo trong cả phần ĐọcGhi.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22670%22%3E%3C/svg%3E


Nhấp vào Tạo để hoàn tất việc tạo token. Nhấp vào nút COPY TO CLIPBOARD để sao chép mã thông báo. Nút này có thể không hoạt động trong một số trường hợp, vì vậy hãy đảm bảo xác nhận trước khi đóng cửa sổ bật lên.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22744%22%20height=%22271%22%3E%3C/svg%3E


Lưu lại vì chúng ta sẽ cần đến nó sau.

Như vậy là hoàn tất quá trình cài đặt và cấu hình InfluxDB. Tiếp theo, chúng ta cần cài đặt Telegraf.

Bước 4 - Cài đặt Telegraf​

Telegraf và InfluxDB chia sẻ cùng một kho lưu trữ. Điều này có nghĩa là bạn có thể cài đặt Telegraf trực tiếp.
Mã:
$ sudo apt install telegraf
Dịch vụ của Telegraf được bật và tự động bắt đầu trong quá trình cài đặt.

Telegraf là một tác nhân được điều khiển bởi plugin và có 4 loại plugin:
  1. Các plugin đầu vào thu thập số liệu.
  2. Các plugin xử lý chuyển đổi, trang trí và lọc số liệu.
  3. Các plugin tổng hợp tạo và tổng hợp số liệu.
  4. Các plugin đầu ra xác định các đích đến mà số liệu được gửi bao gồm cả InfluxDB.
Telegraf lưu trữ cấu hình của mình cho tất cả các plugin này trong tệp /etc/telegraf/telegraf.conf. Bước đầu tiên là kết nối Telegraf với InfluxDB bằng cách bật plugin đầu ra influxdb_v2. Mở tệp /etc/telegraf/telegraf.conf để chỉnh sửa.
Mã:
$ sudo nano /etc/telegraf/telegraf.conf
Tìm dòng [[outputs.influxdb_v2]] và bỏ chú thích bằng cách xóa # ở phía trước. Chỉnh sửa mã bên dưới theo cách sau.
Mã:
# # Configuration for sending metrics to InfluxDB 2.0 [[outputs.influxdb_v2]]
# ## The URLs of the InfluxDB cluster nodes.
# ##
# ## Multiple URLs can be specified for a single cluster, only ONE of the
# ## urls will be written to each interval.
# ## ex: urls = ["https://us-west-2-1.aws.cloud2.influxdata.com"] urls = ["http://127.0.0.1:8086"]
#
# ## Token for authentication. token = "$INFLUX_TOKEN"
#
# ## Organization is the name of the organization you wish to write to. organization = "howtoforge"
#
# ## Destination bucket to write into. bucket = "tigstack"
Dán giá trị mã thông báo InfluxDB đã lưu trước đó vào vị trí của biến $INFLUX_TOKEN trong mã ở trên.

Tìm kiếm dòng INPUT PLUGINS và bạn sẽ thấy các plugin đầu vào sau được bật theo mặc định.
Mã:
# Read metrics about cpu usage
[[inputs.cpu]] ## Whether to report per-cpu stats or not percpu = true ## Whether to report total system cpu stats or not totalcpu = true ## If true, collect raw CPU time metrics collect_cpu_time = false ## If true, compute and report the sum of all non-idle CPU states report_active = false ## If true and the info is available then add core_id and physical_id tags core_tags = false
# Read metrics about disk usage by mount point
[[inputs.disk]] ## By default stats will be gathered for all mount points. ## Set mount_points will restrict the stats to only the specified mount points. # mount_points = ["/"] ## Ignore mount points by filesystem type. ignore_fs = ["tmpfs", "devtmpfs", "devfs", "iso9660", "overlay", "aufs", "squashfs"] ## Ignore mount points by mount options. ## The 'mount' command reports options of all mounts in parathesis. ## Bind mounts can be ignored with the special 'bind' option. # ignore_mount_opts = []
# Read metrics about disk IO by device
[[inputs.diskio]]
....
....
# Get kernel statistics from /proc/stat
[[inputs.kernel]] # no configuration
# Read metrics about memory usage
[[inputs.mem]] # no configuration
# Get the number of processes and group them by status
[[inputs.processes]] # no configuration
# Read metrics about swap memory usage
[[inputs.swap]] # no configuration
# Read metrics about system load & uptime
[[inputs.system]] # no configuration
Bạn có thể cấu hình các plugin đầu vào bổ sung tùy theo yêu cầu của mình bao gồm Apache Server, Docker container, Elasticsearch, tường lửa iptables, Kubernetes, Memcached, MongoDB, MySQL, Nginx, PHP-fpm, Postfix, RabbitMQ, Redis, Varnish, Wireguard, PostgreSQL, v.v.

Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Khởi động lại dịch vụ Telegraf sau khi bạn hoàn tất việc áp dụng các thay đổi.
Mã:
$ sudo systemctl restart telegraf

Bước 5 - Xác minh xem số liệu thống kê Telegraf có được lưu trữ trong InfluxDB hay không​

Trước khi tiến hành các bước tiếp theo, bạn cần xác minh xem số liệu thống kê Telegraf có được thu thập và đưa vào InfluxDB một cách chính xác hay không. Mở Giao diện người dùng InfluxDB trong trình duyệt của bạn, nhấp vào biểu tượng thứ hai từ thanh bên trái và chọn menu Buckets.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22536%22%3E%3C/svg%3E


Nhấp vào tigstack và bạn sẽ được chào đón bằng trang sau.





Nhấp vào tên thùng rồi nhấp vào một trong các giá trị trong bộ lọc _measurement và tiếp tục nhấp vào các giá trị khác khi chúng xuất hiện. Khi bạn hoàn tất, hãy nhấp vào nút Gửi. Bạn sẽ thấy một biểu đồ ở trên cùng. Bạn có thể cần đợi một lúc để dữ liệu xuất hiện. Chúng tôi đã dịch chuyển khoảng thời gian từ 1 giờ qua thành 5 phút qua để tạo biểu đồ trên một khu vực rộng lớn.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22469%22%3E%3C/svg%3E


Điều này sẽ xác nhận rằng dữ liệu đang được truyền đi một cách chính xác.

Bước 6 - Cài đặt Grafana​

Chúng tôi sẽ sử dụng kho lưu trữ Grafana chính thức để cài đặt nó. Nhập khóa Grafana GPG.
Mã:
$ sudo mkdir -p /etc/apt/keyrings/
$ wget -q -O - https://apt.grafana.com/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/grafana.gpg > /dev/null
Thêm kho lưu trữ vào hệ thống của bạn.
Mã:
$ echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
Nếu bạn muốn cài đặt Grafana beta, hãy thêm kho lưu trữ sau thay vào đó.
Mã:
$ echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com beta main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
Cập nhật danh sách kho lưu trữ hệ thống.
Mã:
$ sudo apt update
Cài đặt Grafana.
Mã:
$ sudo apt install grafana
Khởi động và kích hoạt dịch vụ Grafana.
Mã:
$ sudo systemctl enable grafana-server --now
Kiểm tra dịch vụ trạng thái.
Mã:
$ sudo systemctl status grafana-server
? grafana-server.service - Grafana instance Loaded: loaded (/lib/systemd/system/grafana-server.service; enabled; preset: enabled) Active: active (running) since Tue 2024-01-02 03:48:01 UTC; 3s ago Docs: http://docs.grafana.org Main PID: 8769 (grafana) Tasks: 7 (limit: 2299) Memory: 42.6M CPU: 1.804s CGroup: /system.slice/grafana-server.service ??8769 /usr/share/grafana/bin/grafana server --config=/etc/grafana/grafana.ini --pidfile=/run/grafana/grafana-server.pid --packaging=deb cfg:default.paths.logs=/var/log/grafana cfg:default.paths...
.......

Bước 7 - Thiết lập Nguồn dữ liệu Grafana​

Khởi chạy URL http://:3000 trong trình duyệt của bạn và trang đăng nhập Grafana sau đây sẽ chào đón bạn.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22689%22%3E%3C/svg%3E


Đăng nhập bằng tên người dùng mặc định admin và mật khẩu admin. Tiếp theo, bạn cần thiết lập mật khẩu mặc định mới.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22741%22%3E%3C/svg%3E


Bạn sẽ được chào đón bằng trang chủ Grafana sau. Nhấp vào nút Thêm nguồn dữ liệu đầu tiên của bạn.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22532%22%3E%3C/svg%3E


Nhấp vào nút InfluxDB.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22583%22%3E%3C/svg%3E


Trên trang tiếp theo, hãy chọn Flux từ menu thả xuống làm ngôn ngữ truy vấn. Bạn có thể sử dụng InfluxQL làm ngôn ngữ truy vấn, nhưng cấu hình phức tạp hơn vì mặc định nó chỉ hỗ trợ InfluxDB v1.x. Flux hỗ trợ InfluxDB v2.x và dễ thiết lập và cấu hình hơn.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22476%22%3E%3C/svg%3E


Nhập các giá trị sau.

URL: http://localhost:8086 Chi tiết xác thực cơ bản Người dùng: navjot Mật khẩu:

Chi tiết InfluxDB Tổ chức: howtoforge Mã thông báo: Gầu mặc định: tigstack


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22489%22%20height=%22750%22%3E%3C/svg%3E


Nhấp vào nút Lưu và kiểm tra và bạn sẽ thấy thông báo xác nhận thiết lập thành công.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22198%22%3E%3C/svg%3E

Bước 8 - Thiết lập Bảng điều khiển Grafana​

Bước tiếp theo là thiết lập Grafana Dashboards. Nhấp vào menu hamburger ở bên trái Trang chủ và nhấp vào Dashboards để mở màn hình Dashboard Create.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22349%22%20height=%22375%22%3E%3C/svg%3E


Nhấp vào nút Create Dashboard để tiếp tục.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22343%22%3E%3C/svg%3E


Ở trang tiếp theo, nhấp vào nút Thêm hình ảnh để khởi chạy lớp phủ và nhấp vào influxdb-1 để chọn lớp phủ đó làm nguồn dữ liệu.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22643%22%3E%3C/svg%3E


Bạn sẽ được đưa đến trang Bảng chỉnh sửa sau.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22463%22%3E%3C/svg%3E


Dán mã sau vào Truy vấn Biên tập viên.
Mã:
from(bucket: "NAMEOFYOUBUCKET") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "cpu") |> filter(fn: (r) => r["_field"] == "usage_idle") |> filter(fn: (r) => r["cpu"] == "cpu-total") |> filter(fn: (r) => r["host"] == "NAMEOFYOURHOST") |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) |> map(fn: (r) => ({ r with _value: r._value * -1.0 + 100.0 })) |> toFloat() |> yield(name: "mean")
Sử dụng tên thùng mà chúng tôi đã sử dụng ở trên. Và tên của máy chủ mà bạn có thể lấy từ tệp /etc/hostname.

Mã trên sẽ tính toán Mức sử dụng CPU và tạo biểu đồ cho nó. Đặt Tiêu đề cho Bảng điều khiển.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22486%22%3E%3C/svg%3E


Nhấp vào nút Trình kiểm tra truy vấn rồi nhấp vào nút Làm mới để xác minh xem truy vấn của bạn có hoạt động thành công không. Nhấp vào biểu tượng dấu thập để đóng trình kiểm tra.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22640%22%20height=%22750%22%3E%3C/svg%3E


Bạn cũng có thể đặt tên cho trục bằng cách sử dụng trường Nhãn ở bên phải trong phần Trục.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22392%22%20height=%22236%22%3E%3C/svg%3E


Nhấp vào nút Áp dụng để lưu bảng điều khiển. Nhấp vào nút Lưu bảng điều khiển khi hoàn tất.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22293%22%3E%3C/svg%3E


Đặt tên cho bảng điều khiển và nhấp vào Lưu để hoàn tất.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22627%22%20height=%22397%22%3E%3C/svg%3E


Nó sẽ mở bảng điều khiển và sau đó nhấp vào nút Thêm hình ảnh để tạo một bảng điều khiển khác.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22307%22%3E%3C/svg%3E


Lặp lại quy trình bằng cách tạo một bảng điều khiển khác cho Mức sử dụng RAM.
Mã:
from(bucket: "NAMEOFYOUBUCKET") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "mem") |> filter(fn: (r) => r["_field"] == "used_percent") |> filter(fn: (r) => r["host"] == "NAMEOFYOURHOST") |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) |> yield(name: "mean")
Sử dụng mã sau để hiển thị ổ cứng Sử dụng.
Mã:
from(bucket: "NAMEOFYOURBUCKET") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "disk") |> filter(fn: (r) => r["_field"] == "used") |> filter(fn: (r) => r["path"] == "/") |> filter(fn: (r) => r["host"] == "NAMEOFYOURHOST") |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) |> map(fn: (r) => ({ r with _value: r._value / 1000000.0 })) |> toFloat() |> yield(name: "mean")
Bạn có thể tạo số lượng bảng điều khiển không giới hạn.

Mã trên dựa trên ngôn ngữ Flux Scripting. May mắn thay, bạn không cần phải học ngôn ngữ để viết truy vấn. Bạn có thể tạo truy vấn từ URL InfluxDB. Mặc dù việc học ngôn ngữ có thể có lợi trong việc tối ưu hóa các truy vấn.

Bạn cần quay lại bảng điều khiển InfluxDB và mở trang Explore để lấy truy vấn.

Nhấp vào tên thùng rồi nhấp vào một trong các giá trị trong bộ lọc _measurement và tiếp tục nhấp vào các giá trị khác khi chúng xuất hiện. Khi bạn hoàn tất, hãy nhấp vào nút Script Editor và bạn sẽ thấy trang sau. Biểu đồ cũng cần được cập nhật.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22495%22%3E%3C/svg%3E



data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22407%22%3E%3C/svg%3E


Sao chép truy vấn được hiển thị và bây giờ bạn có thể sử dụng nó trong bảng điều khiển Grafana để xây dựng biểu đồ của mình.

Bước 9 - Cấu hình Cảnh báo và Thông báo​

Mục đích chính của việc thiết lập màn hình là để nhận cảnh báo kịp thời khi giá trị vượt quá ngưỡng nhất định.

Bước đầu tiên là thiết lập đích đến mà bạn muốn nhận cảnh báo. Bạn có thể nhận thông báo qua Email, Slack, Kafka, Google Hangouts Chat, Microsoft Teams, Telegram, v.v.

Chúng tôi sẽ bật thông báo qua email cho hướng dẫn của mình. Để thiết lập thông báo qua Email, trước tiên chúng ta cần cấu hình dịch vụ SMTP. Mở tệp /etc/grafana/grafana.ini để cấu hình SMTP.
Mã:
$ sudo nano /etc/grafana/grafana.ini
Tìm dòng sau [smtp] trong đó. Bỏ chú thích các dòng sau và nhập các giá trị cho máy chủ SMTP tùy chỉnh.
Mã:
[smtp]
enabled = true
host = email-smtp.us-west-2.amazonaws.com:587
user = YOURUSERNAME
# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""
password = YOURUSERPASSWORD
;cert_file =
;key_file =
;skip_verify = false
from_address = [emailprotected]
from_name = HowtoForge Grafana
# EHLO identity in SMTP dialog (defaults to instance_name)
;ehlo_identity = dashboard.example.com
# SMTP startTLS policy (defaults to 'OpportunisticStartTLS')
;startTLS_policy = NoStartTLS
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Khởi động lại máy chủ Grafana để áp dụng các cài đặt.
Mã:
$ sudo systemctl restart grafana-server
Mở trang Grafana, nhấp vào Biểu tượng cảnh báo và nhấp vào Điểm liên hệ.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22347%22%20height=%22270%22%3E%3C/svg%3E


Grafana tự động tạo và thiết lập điểm liên hệ email mặc định phải được cấu hình với địa chỉ email chính xác. Nhấp vào nút chỉnh sửa trên điểm liên hệ grafana-default-email.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22280%22%3E%3C/svg%3E


Nhập thông tin chi tiết để thiết lập kênh thông báo qua Email.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22579%22%3E%3C/svg%3E


Nếu bạn muốn gửi thêm tin nhắn, hãy nhấp vào liên kết Cài đặt email tùy chọn và nhập tin nhắn.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22554%22%20height=%22298%22%3E%3C/svg%3E


Nhấp vào Kiểm tra để mở cửa sổ bật lên rồi nhấp vào nút Gửi thông báo thử nghiệm để xem cài đặt email có hoạt động không. Nhấp vào Lưu điểm liên hệ khi hoàn tất.

Bạn sẽ nhận được email sau để xác nhận cài đặt.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22648%22%20height=%22750%22%3E%3C/svg%3E


Bây giờ chúng ta đã thiết lập kênh thông báo, chúng ta cần thiết lập cảnh báo về thời điểm nhận những email này. Để thiết lập cảnh báo, bạn cần quay lại bảng điều khiển.

Quay lại màn hình Bảng điều khiển. Nhấp vào bảng điều khiển mà chúng ta vừa tạo và bạn sẽ nhận được trang chủ của bảng điều khiển với các bảng điều khiển khác nhau. Để chỉnh sửa bảng điều khiển, hãy nhấp vào tên của bảng điều khiển và một menu thả xuống sẽ bật lên. Nhấp vào liên kết Chỉnh sửa để tiếp tục.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22485%22%20height=%22357%22%3E%3C/svg%3E


Nhấp vào Bảng điều khiển cảnh báo và nhấp vào nút Quy tắc cảnh báo mới để thiết lập cảnh báo mới. Chúng tôi đang tạo cảnh báo cho bảng điều khiển sử dụng CPU.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22528%22%20height=%22193%22%3E%3C/svg%3E


Bây giờ bạn có thể cấu hình các điều kiện mà Grafana sẽ gửi cảnh báo. Nhấp vào menu thả xuống liên kết Tùy chọn và chọn phạm vi thời gian mặc định (từ bây giờ đến 6 giờ) để thay đổi phạm vi thời gian thành 15 phút cuối, nghĩa là nó sẽ kiểm tra từ 15 phút trước đến bây giờ.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22255%22%3E%3C/svg%3E


Theo mặc định, loại cảnh báo được chọn là cảnh báo do Grafana quản lý. Có hai biểu thức được chọn theo mặc định. Xóa chúng bằng cách nhấn nút thùng rác vào chúng. Chọn menu thả xuống Thêm biểu thức và chọn Điều kiện cổ điển làm loại biểu thức.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22566%22%20height=%22213%22%3E%3C/svg%3E



data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22690%22%20height=%22300%22%3E%3C/svg%3E


Nhấp vào Đặt làm điều kiện cảnh báo để chọn biểu thức đã chọn để gửi cảnh báo. Làm như vậy sẽ thay đổi hộp biểu thức như hiển thị bên dưới.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22692%22%20height=%22329%22%3E%3C/svg%3E

Điều kiện​

Grafana hoạt động trên truy vấn có định dạng sau để xác định thời điểm khởi chạy cảnh báo.
Mã:
avg() OF query(A) IS ABOVE 0.8
  • avg() kiểm soát cách giá trị của mỗi chuỗi sẽ được giảm xuống một giá trị tương đương so với ngưỡng. Bạn có thể nhấp vào tên hàm để chọn một hàm khác như avg(), min(), max(), sum(), count(), v.v.

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22237%22%20height=%22344%22%3E%3C/svg%3E


  • query(A) Chữ cái trong ngoặc vuông xác định truy vấn nào sẽ thực thi từ tab Metrics.

  • IS BELOW 14 Xác định loại ngưỡng và giá trị ngưỡng. Bạn có thể nhấp vào IS BELOW để chọn một loại ngưỡng khác.


    data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22166%22%20height=%22198%22%3E%3C/svg%3E
Bạn có thể thêm điều kiện thứ hai bên dưới bằng cách nhấp vào nút + bên dưới điều kiện đầu tiên. Hiện tại, bạn chỉ có thể sử dụng toán tử ANDOR giữa nhiều điều kiện.

Tiếp theo, chúng ta sẽ thiết lập hành vi đánh giá. Nhấp vào nút New folder để tạo một thư mục lưu trữ các quy tắc của bạn. Nhấp vào nút New evaluation group để tạo một nhóm các quy tắc nhóm sẽ được đánh giá sau cùng một khoảng thời gian. Đặt khoảng thời gian là 5 phút khi tạo nhóm.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22529%22%20height=%22338%22%3E%3C/svg%3E


Sau khi hoàn tất, trang sẽ trông như sau. Đặt Trạng thái cảnh báo nếu có lỗi thực thi hoặc hết thời gian chờ thành Đang cảnh báo.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22706%22%20height=%22588%22%3E%3C/svg%3E

Quy tắc​

  • Tên - Nhập tên mô tả cho cảnh báo
  • Thư mục - Tạo hoặc chọn thư mục có sẵn để lưu trữ quy tắc thông báo của bạn.
  • Nhóm - Nhập tên cho nhóm cảnh báo của bạn. Các cảnh báo trong một nhóm duy nhất được đánh giá sau cùng một khoảng thời gian.
  • Đang chờ - Chỉ định tần suất Grafana sẽ đánh giá cảnh báo. Nó cũng được gọi là khoảng thời gian đánh giá. Bạn có thể đặt bất kỳ giá trị nào bạn muốn ở đây.

Không có dữ liệu & Xử lý lỗi​

Bạn có thể cấu hình cách Grafana xử lý các truy vấn không trả về dữ liệu hoặc chỉ trả về giá trị null bằng các điều kiện sau:
  1. Không có dữ liệu - Đặt trạng thái quy tắc thành NoData
  2. Cảnh báo - Đặt trạng thái quy tắc thành Alerting
  3. Ok - Đặt trạng thái quy tắc cảnh báo thành Ok, vì bạn sẽ nhận được cảnh báo ngay cả khi mọi thứ ổn.
Bạn có thể cho Grafana biết cách xử lý lỗi thực thi hoặc lỗi hết thời gian chờ.
  1. Cảnh báo - Đặt trạng thái quy tắc thành Alerting
  2. Ok - Đặt trạng thái quy tắc cảnh báo thành Ok, vì bạn sẽ nhận được cảnh báo ngay cả khi mọi thứ vẫn ổn.
  3. Lỗi - Đặt trạng thái quy tắc cảnh báo thành Lỗi để chỉ ra rằng có sự cố.
Sau khi hoàn tất, hãy nhấp vào nút Xem trước cảnh báo để xem mọi thứ có hoạt động tốt không. Nhấp vào nút Lưu quy tắc và thoát ở trên cùng bên phải để hoàn tất việc thêm cảnh báo. Bây giờ bạn sẽ bắt đầu nhận được cảnh báo trên email của mình. Sau đây là ví dụ về một email như vậy.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22673%22%20height=%22666%22%3E%3C/svg%3E

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

Debian 12 đi kèm với phiên bản Nginx cũ hơn. Bạn cần tải xuống kho lưu trữ Nginx chính thức để cài đặt phiên bản mới nhất.

Nhập khóa ký của Nginx.
Mã:
$ curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \ | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null
Thêm kho lưu trữ cho phiên bản chính của Nginx.
Mã:
$ echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/mainline/debian `lsb_release -cs` nginx" \ | sudo tee /etc/apt/sources.list.d/nginx.list
Cập nhật hệ thống kho lưu trữ.
Mã:
$ sudo apt update
Cài đặt Nginx.
Mã:
$ sudo apt install nginx
Xác minh cài đặt. Trên hệ thống Debian, lệnh sau chỉ hoạt động với sudo.
Mã:
$ sudo nginx -v
nginx version: nginx/1.25.3
Khởi động Nginx máy chủ.
Mã:
$ sudo systemctl start nginx
Kiểm tra trạng thái dịch vụ.
Mã:
$ sudo systemctl status nginx
? nginx.service - nginx - high performance web server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; preset: enabled) Active: active (running) since Tue 2024-01-02 09:21:10 UTC; 5s ago Docs: https://nginx.org/en/docs/ Process: 12964 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS) Main PID: 12965 (nginx) Tasks: 3 (limit: 2299) Memory: 2.9M CPU: 86ms CGroup: /system.slice/nginx.service ??12965 "nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf" ??12966 "nginx: worker process" ??12967 "nginx: worker process"
Jan 02 09:21:10 grafana systemd[1]: Starting nginx.service - nginx - high performance web server...
Jan 02 09:21:10 grafana systemd[1]: Started nginx.service - nginx - high performance web server.

Bước 11 - Cài đặt SSL​

Chúng ta cần cài đặt Certbot để tạo chứng chỉ SSL. Bạn có thể cài đặt Certbot bằng kho lưu trữ của Debian hoặc tải phiên bản mới nhất bằng công cụ Snapd. Chúng tôi sẽ sử dụng phiên bản Snapd.

Debian 12 không đi kèm Snapd đã cài đặt. Cài đặt gói Snapd.
Mã:
$ sudo apt install snapd
Chạy các lệnh sau để đảm bảo phiên bản Snapd của bạn được cập nhật.
Mã:
$ sudo snap install core && sudo snap refresh core
Cài đặt Certbot.
Mã:
$ sudo snap install --classic certbot
Sử dụng lệnh sau để đảm bảo lệnh Certbot có thể chạy được bằng cách tạo liên kết tượng trưng đến /usr/bin thư mục.
Mã:
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
Kiểm tra xem Certbot có hoạt động bình thường không.
Mã:
$ certbot --version
certbot 2.8.0
Chạy lệnh sau để tạo SSL Chứng chỉ.
Mã:
$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [emailprotected] -d grafana.example.com
Lệnh trên sẽ tải chứng chỉ xuống thư mục /etc/letsencrypt/live/grafana.example.com trên máy chủ của bạn.

Tạo nhóm Diffie-Hellman chứng chỉ.
Mã:
$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
Kiểm tra dịch vụ lập lịch gia hạn Certbot.
Mã:
$ systemctl list-timers
Bạn sẽ tìm thấy snap.certbot.renew.service là một trong những dịch vụ được lên lịch chạy.
Mã:
NEXT LEFT LAST PASSED UNIT ACTIVATES
-----------------------------------------------------------------------------------------------------------------------------------------
Tue 2024-01-02 15:24:52 UTC 6h left Mon 2024-01-01 15:24:52 UTC 17h ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service
Tue 2024-01-02 20:05:29 UTC 10h left Tue 2024-01-02 09:02:47 UTC 21min ago apt-daily.timer apt-daily.service
Tue 2024-01-02 20:35:00 UTC 11h left - - snap.certbot.renew.timer snap.certbot.renew.service
Thực hiện chạy thử quy trình để kiểm tra xem việc gia hạn SSL có hoạt động không tốt.
Mã:
$ sudo certbot renew --dry-run
Nếu bạn không thấy lỗi nào, bạn đã hoàn tất. Chứng chỉ của bạn sẽ tự động gia hạn.

Bước 12 - Cấu hình Nginx cho Grafana và InfluxDB​

Mở tệp /etc/nginx/nginx.conf để chỉnh sửa.
Mã:
$ sudo nano /etc/nginx/nginx.conf
Thêm dòng sau vào trước dòng include /etc/nginx/conf.d/*.conf;.
Mã:
server_names_hash_bucket_size 64;
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Tạo và mở tệp /etc/nginx/conf.d/grafana.conf để chỉnh sửa.
Mã:
$ sudo nano /etc/nginx/conf.d/grafana.conf
Dán mã sau vào đó. Thay thế grafana.example.com bằng tên miền của bạn.
Mã:
map $http_upgrade $connection_upgrade { default upgrade; '' close;
}
server { listen 443 ssl reuseport; listen [::]:443 ssl reuseport; http2 on; server_name grafana.example.com; access_log /var/log/nginx/grafana.access.log; error_log /var/log/nginx/grafana.error.log; ssl_certificate /etc/letsencrypt/live/grafana.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/grafana.example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/grafana.example.com/chain.pem; ssl_session_timeout 5m; ssl_session_cache shared:MozSSL:10m; ssl_session_tickets off; ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384; ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1; ssl_stapling on; ssl_stapling_verify on; ssl_dhparam /etc/ssl/certs/dhparam.pem; resolver 1.1.1.1 1.0.0.1 [2606:4700:4700::1111] [2606:4700:4700::1001] valid=60s; resolver_timeout 2s; location / { proxy_set_header Host $http_host; proxy_pass http://localhost:3000; } location /api/live { proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; proxy_set_header Host $http_host; proxy_pass http://localhost:3000;	} location /influxdb/ {	access_log /var/log/nginx/influx.access.log; error_log /var/log/nginx/influx.error.log; rewrite ^/influxdb$ /influxdb/ permanent; rewrite ^/influxdb/(.*)$ /$1 break; proxy_cookie_path ~*^/api /influxdb/api; proxy_connect_timeout 600s; proxy_http_version 1.1; proxy_pass http://localhost:8086; proxy_read_timeout 600s; proxy_send_timeout 600s; proxy_set_header Authorization $http_authorization; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_host; proxy_set_header Upgrade $http_upgrade; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Real-IP $remote_addr; sub_filter '' ''; sub_filter 'src="/' 'src="/influxdb/'; sub_filter 'href="/' 'href="/influxdb/'; sub_filter 'data-basepath="' 'data-basepath="/influxdb/'; sub_filter 'n.p="/"' 'n.p="/influxdb/"'; sub_filter 'o.p="/"' 'o.p="/influxdb/"'; sub_filter '/api/' '/influxdb/api/'; sub_filter 'api/v2/query' 'influxdb/api/v2/query'; sub_filter '/health`' '/influxdb/health`'; sub_filter_types text/css text/javascript application/javascript application/json; sub_filter_once off;	}
}
# enforce HTTPS
server { listen 80; listen [::]:80; server_name grafana.example.com; return 301 https://$host$request_uri;
}
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Xác minh Nginx của bạn cấu hình.
Mã:
$ sudo nginx -t
Khởi động lại máy chủ Nginx.
Mã:
$ sudo systemctl restart nginx

Cấu hình Telegraf cho HTTPS​

Mở tệp /etc/telegraf/telegraf.conf để chỉnh sửa.
Mã:
$ sudo nano /etc/telegraf/telegraf.conf
Tìm kiếm phần [[outputs.influxdb_v2]] và thay đổi giá trị của URL thành https://grafana.nspeaks.com/influxdb để dữ liệu giữa InfluxDB và Telegraf là đã bảo mật.
Mã:
urls = ["https://grafana.example.com/influxdb"]
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Khởi động lại dịch vụ Telegraf.
Mã:
$ sudo systemctl restart telegraf

Cấu hình Grafana cho HTTPS​

Tiếp theo, chúng ta cần cấu hình Grafana để truy cập HTTPS. Mở tệp /etc/grafana/grafana.ini để chỉnh sửa.
Mã:
$ sudo nano /etc/grafana/grafana.ini
Tìm phần [server] và thay đổi biến domainroot_url như sau.
Mã:
# The public facing domain name used to access grafana from a browser
;domain = localhost
domain = grafana.example.com
# Redirect to correct domain if host header does not match domain
# Prevents DNS rebinding attacks
;enforce_domain = true
# The full public facing url you use in browser, used for redirects and emails
# If you use reverse proxy and sub path specify full url (with sub path)
;root_url = %(protocol)s://%(domain)s:%(http_port)s/
root_url = %(protocol)s://%(domain)s
Lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Khởi động lại Grafana Máy chủ.
Mã:
$ sudo systemctl restart grafana-server

Đóng cổng tường lửa cho InfluxDB và Grafana​

Bạn cũng nên đóng cổng InfluxDB và Grafana.
Mã:
$ sudo ufw delete allow 8086
$ sudo ufw delete allow 3000
Grafana có thể truy cập được tại https://grafana.example.com và Giao diện người dùng và API InfluxDB đều có thể truy cập được tại URL https://grafana.example.com/influxdb.

Kết luận​

Bài hướng dẫn về cài đặt và cấu hình TIG Stack trên máy chủ Debian 12 đến đây là kết thúc. Nếu bạn có bất kỳ câu hỏi nào, hãy đăng chúng trong phần bình luận bên dưới.
 
Back
Bên trên