Prometheus: Prometheus là một công cụ giám sát và cảnh báo sự kiện. Đây là một công cụ nguồn mở được xây dựng tại SoundCloud.
Grafana: Grafana là một công cụ phân tích và trực quan hóa nguồn mở.
Node-Exporter: Node_Exporter là một công cụ xuất dữ liệu Prometheus cho các số liệu về phần cứng và hệ điều hành. Việc cài đặt Node_Exporter khá đơn giản vì nó đi kèm với một tệp nhị phân duy nhất.
Chi tiết thiết lập:
Trong bài viết này, chúng tôi sẽ sử dụng 2 phiên bản Ubuntu 18.04 LTS EC2. Trên một nút, chúng ta sẽ cài đặt Prometheus và trên nút còn lại, chúng ta sẽ cài đặt Grafana và Node_Exporter.
Tài liệu này sẽ giúp bạn cài đặt, cấu hình và tích hợp Prometheus, Grafana và Node_Exporter vào visualisemetrics trên Grafana.
Cài đặt Prometheus rất đơn giản và trực tiếp. Sử dụng các lệnh sau để cài đặt
wget https://s3-eu-west-1.amazonaws.com/deb.robustperception.io/41EFC99D.gpg | sudo apt-key add -
sudo apt-get update -y
sudo apt-get install prometheus prometheus-node-exporter prometheus-pushgateway prometheus-alertmanager -y
Khởi động Prometheus:
Sau khi cài đặt thành công, giờ bạn có thể khởi động Prometheus bằng lệnh sau.
sudo systemctl start prometheus
Cho phép Prometheus khởi động khi khởi động:
Để đảm bảo Prometheus tự khởi động khi hệ thống khởi động/khởi động lại, hãy bật nó để khởi động vào thời điểm khởi độngbằng lệnh sau.
sudo systemctl enable prometheus
Kiểm tra trạng thái của Prometheus:
Để đảm bảo rằng Prometheus đã khởi động, hãy kiểm tra trạng thái của nó. Tham khảo ảnh chụp màn hình sau để xem đầu ra trông như thế nào.
sudo systemctl status prometheus
Truy cập Prometheus:
Sau khi cài đặt hoàn tất và Prometheus đã khởi động thành công, bạn có thể truy cập vào nó trên cổng 9090. Bạn có thể sử dụng DNS công khai của phiên bản EC2 để truy cập Prometheus trên cổng 9090,hãy đảm bảo rằng Cổng 9090 được bật trong nhóm bảo mật.
URL:http://IP-Of-Prometheus-Instance:9090/
Cài đặt Grafana
Cài đặt gói:
Grafana có thể được cài đặt bằng các lệnh sau theo cách rất đơn giản và trực tiếp.
sudo apt-get install -y apt-transport-https
sudo apt-get install -y software-properties-common wget
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
sudo apt-get update
sudo apt-get install grafana
sudo systemctl daemon-reload
Khởi động Grafana:
Sử dụng lệnh sau để khởi động Grafana.
sudo systemctl start grafana-server
Bật Grafanato khởi động khi khởi động:
Để bật Grafanato khởi động khi khởi động hệ thống, hãy sử dụng lệnh sau.
sudo systemctl enable grafana-server.service
Kiểm tra trạng thái của Grafana:
Sử dụng lệnh sau để kiểm tra trạng thái để đảm bảo rằng Grafana đang hoạt động.
sudo systemctl status grafana-server
Truy cập Grafana:
Sau khi cài đặt và khởi động Grafana thành công, bạn có thể truy cập Grafana trên cổng 3000. Bật cổng 3000 trong nhóm bảo mật nếu bạn đang sử dụng phiên bản EC2.
URL:http://IP-of-Grafana:3000/
Lần đầu tiên bạn đăng nhập vào Grafana, hãy nhập admin làm tên người dùng và mật khẩu.
Bạn sẽ được yêu cầu thay đổi tên người dùng và mật khẩu.
Bạn có thể thấy màn hình sau khi thay đổi tên người dùng-mật khẩu và đăng nhập thành công vào Grafana.
Cài đặt Node-Exporter
Bạn có thể tải xuống phiên bản Node_Exporter theo lựa chọn của mình từ liên kết sau hoặc sử dụng các lệnh sau để tải xuống node-exporter-1.0.0. Sau khi tải xuống tệp thetar, bạn chỉ cần giải nén và sao chép tệp nhị phân vào /usr/local/bin/.
Liên kết để kiểm tra các phiên bản khác nhau của node_exporter:
https://prometheus.io/download/#node_exporterhttps://prometheus.io/download/?utm_source=diendancongnghe.com#node_exporter
Cài đặt gói:
cd /tmp/
wget https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.0/node_exporter-1.0.0-rc.0.linux-amd64.tar.gz
tar -zxvf node_exporter-1.0.0-rc.0.linux-amd64.tar.gz
cp node_exporter-1.0.0-rc.0.linux-amd64/node_exporter /usr/local/bin/
Cấu hình Node-Exporter:
vim /etc/systemd/system/node_exporter.service
Mở/etc/systemd/system/node_exporter.service bằng lệnh trên và thêm cấu hình sau vào đó.
Thay đổi Người dùng và Nhóm thành Người dùng và Nhóm sẽ được sử dụng để khởi động Dịch vụ Node_Exporter. Ở đây, đã chỉ định root là Người dùng và Nhóm vì tôi sẽ sử dụng người dùng root để khởi động dịch vụ.
Tải lại cấu hình của Node-Exporter:
Sau khi cấu hình được thiết lập, chúng ta cần tải lại các cấu hình đó để các thay đổi có thể được xác định bởi hệ thống. Sử dụng lệnh sau để tải lại các thay đổi
systemctl daemon-reload
StartNode-Exporter:
Sử dụng lệnh sau để khởi động dịch vụ node_exporter
systemctl start node_exporter.service
EnableNode-Exporter để khởi động khi khởi động:
systemctl enable node_exporter.service
Kiểm tra trạng thái ofNode-Exporter:
Để đảm bảo rằng dịch vụ đã bắt đầu, chỉ cần kiểm tra trạng thái của nó bằng cách thực hiện lệnh sau. Bạn sẽ thấy đầu ra có dạng như trong hình ảnh sau.
systemctl status node_exporter.service
AccessNode-Exporter:
Node_Exporter khởi động trên cổng 9100, Cho phép cổng này trong nhóm bảo mật.
URL:http://IP-of-Node-Exporter:9100/
Để trích xuất số liệu trên Prometheus được Node_Exporter xuất ra, chúng ta cần thêm IP của Node_Exporter vào tệp cấu hình của Prometheus. Trong ảnh chụp màn hình sau, bạn có thể thấy rằng IP của Node_Exporter đã được thêm vào dưới 'job_name:grafana_node'. Thực hiện các thay đổi tương tự trong tệp cấu hình của bạn
vim /etc/prometheus/prometheus.yml
Khởi động lại Prometheus:
sudo systemctl start prometheus
Truy cập Prometheus:
Truy cập Prometheus trên trình duyệt của bạn và trong execute query history executetype truy vấn "up" và thực thi truy vấn đó.
URL:http://IP-of-Prometheus:9090/http://IP-of-Prometheus/?utm_source=diendancongnghe.com
Sau khi thực hiện truy vấn, bạn có thể thấy bên dưới bảng điều khiển rằng "các phần tử up có giá trị 1". Điều này có nghĩa là Prometheus có thể thu thập các giá trị cho localhost và Node_Exporter và thấy rằng hai phần tử này đều up. Đây chỉ là một trong những số liệu mà Prometheus hiện có và có thể truy cập từ Grafana.
Cấu hình Grafana, thêm Prometheus vào đó.
URL:http://Ip-of-Grafana:3000/
Bây giờ, trên màn hình chào mừng, bạn có thể thêm Prometheus vào Grafana trong mục "Thêm nguồn dữ liệu". Nhấp vào "Thêm nguồn dữ liệu".
Chọn Prometheus.
Thêm URL của máy chủ Prometheus "http://IP-Of-Prometheus-Instance:9090/" vào trường "HTTP--> URL" và nhấp vào "Lưu&Kiểm tra".
Thực hiện truy vấn trên Grafana để kiểm tra số liệu được Node-Exporter xuất sang Prometheus
Giờ đây, có thể truy cập số liệu có sẵn trên Prometheus từ Grafana.
Hãy khám phá và thử thực hiện các truy vấn đó.
Ví dụ:
Bạn có thể thử các số liệu khác nhau và điều chỉnh chúng
Grafana: Grafana là một công cụ phân tích và trực quan hóa nguồn mở.
Node-Exporter: Node_Exporter là một công cụ xuất dữ liệu Prometheus cho các số liệu về phần cứng và hệ điều hành. Việc cài đặt Node_Exporter khá đơn giản vì nó đi kèm với một tệp nhị phân duy nhất.
Chi tiết thiết lập:
Trong bài viết này, chúng tôi sẽ sử dụng 2 phiên bản Ubuntu 18.04 LTS EC2. Trên một nút, chúng ta sẽ cài đặt Prometheus và trên nút còn lại, chúng ta sẽ cài đặt Grafana và Node_Exporter.
- Node1: Prometheus, DNS:ec2-15-188-52-60.eu-west-3.compute.amazonaws.com/
- Node2: Grafana, Node_Exporter. DNS:ec2-15-188-50-16.eu-west-3.compute.amazonaws.com/
Tài liệu này sẽ giúp bạn cài đặt, cấu hình và tích hợp Prometheus, Grafana và Node_Exporter vào visualisemetrics trên Grafana.
Điều kiện tiên quyết
- Tài khoản AWS (Tạo nếu bạn chưa có).
- 2 máy ảo Ubuntu 18.04 LTS hoặc phiên bản EC2 (Nhấp vào đây để tìm hiểu cách tạo phiên bản EC2).
- Quyền truy cập gốc vào máy chủ.
Chúng ta sẽ làm gì?
- Cài đặt Prometheus
- Cài đặt Grafana
- Cài đặt Node-Exporter
- Tích hợpGrafana với Prometheus
Cài đặt Prometheus
Cài đặt gói:Cài đặt Prometheus rất đơn giản và trực tiếp. Sử dụng các lệnh sau để cài đặt
wget https://s3-eu-west-1.amazonaws.com/deb.robustperception.io/41EFC99D.gpg | sudo apt-key add -
sudo apt-get update -y
sudo apt-get install prometheus prometheus-node-exporter prometheus-pushgateway prometheus-alertmanager -y
Khởi động Prometheus:
Sau khi cài đặt thành công, giờ bạn có thể khởi động Prometheus bằng lệnh sau.
sudo systemctl start prometheus
Cho phép Prometheus khởi động khi khởi động:
Để đảm bảo Prometheus tự khởi động khi hệ thống khởi động/khởi động lại, hãy bật nó để khởi động vào thời điểm khởi độngbằng lệnh sau.
sudo systemctl enable prometheus
Kiểm tra trạng thái của Prometheus:
Để đảm bảo rằng Prometheus đã khởi động, hãy kiểm tra trạng thái của nó. Tham khảo ảnh chụp màn hình sau để xem đầu ra trông như thế nào.
sudo systemctl status prometheus
Truy cập Prometheus:
Sau khi cài đặt hoàn tất và Prometheus đã khởi động thành công, bạn có thể truy cập vào nó trên cổng 9090. Bạn có thể sử dụng DNS công khai của phiên bản EC2 để truy cập Prometheus trên cổng 9090,hãy đảm bảo rằng Cổng 9090 được bật trong nhóm bảo mật.
URL:http://IP-Of-Prometheus-Instance:9090/
Cài đặt Grafana
Cài đặt gói:Grafana có thể được cài đặt bằng các lệnh sau theo cách rất đơn giản và trực tiếp.
sudo apt-get install -y apt-transport-https
sudo apt-get install -y software-properties-common wget
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
sudo apt-get update
sudo apt-get install grafana
sudo systemctl daemon-reload
Khởi động Grafana:
Sử dụng lệnh sau để khởi động Grafana.
sudo systemctl start grafana-server
Bật Grafanato khởi động khi khởi động:
Để bật Grafanato khởi động khi khởi động hệ thống, hãy sử dụng lệnh sau.
sudo systemctl enable grafana-server.service
Kiểm tra trạng thái của Grafana:
Sử dụng lệnh sau để kiểm tra trạng thái để đảm bảo rằng Grafana đang hoạt động.
sudo systemctl status grafana-server
Truy cập Grafana:
Sau khi cài đặt và khởi động Grafana thành công, bạn có thể truy cập Grafana trên cổng 3000. Bật cổng 3000 trong nhóm bảo mật nếu bạn đang sử dụng phiên bản EC2.
URL:http://IP-of-Grafana:3000/
Lần đầu tiên bạn đăng nhập vào Grafana, hãy nhập admin làm tên người dùng và mật khẩu.
Bạn sẽ được yêu cầu thay đổi tên người dùng và mật khẩu.
Bạn có thể thấy màn hình sau khi thay đổi tên người dùng-mật khẩu và đăng nhập thành công vào Grafana.
Cài đặt Node-Exporter
Bạn có thể tải xuống phiên bản Node_Exporter theo lựa chọn của mình từ liên kết sau hoặc sử dụng các lệnh sau để tải xuống node-exporter-1.0.0. Sau khi tải xuống tệp thetar, bạn chỉ cần giải nén và sao chép tệp nhị phân vào /usr/local/bin/.Liên kết để kiểm tra các phiên bản khác nhau của node_exporter:
https://prometheus.io/download/#node_exporterhttps://prometheus.io/download/?utm_source=diendancongnghe.com#node_exporter
Cài đặt gói:
cd /tmp/
wget https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.0/node_exporter-1.0.0-rc.0.linux-amd64.tar.gz
tar -zxvf node_exporter-1.0.0-rc.0.linux-amd64.tar.gz
cp node_exporter-1.0.0-rc.0.linux-amd64/node_exporter /usr/local/bin/
Cấu hình Node-Exporter:
vim /etc/systemd/system/node_exporter.service
Mở/etc/systemd/system/node_exporter.service bằng lệnh trên và thêm cấu hình sau vào đó.
Thay đổi Người dùng và Nhóm thành Người dùng và Nhóm sẽ được sử dụng để khởi động Dịch vụ Node_Exporter. Ở đây, đã chỉ định root là Người dùng và Nhóm vì tôi sẽ sử dụng người dùng root để khởi động dịch vụ.
Mã:
[Đơn vị]
Mô tả=Prometheus Node Exporter
Yêu cầu=network-online.target
Sau=network-online.target
[Dịch vụ]
Người dùng=gốc
Nhóm=gốc
Loại=đơn giản
ExecStart=/usr/local/bin/node_exporter
[Cài đặt]
Được yêu cầu=multi-user.target
Sau khi cấu hình được thiết lập, chúng ta cần tải lại các cấu hình đó để các thay đổi có thể được xác định bởi hệ thống. Sử dụng lệnh sau để tải lại các thay đổi
systemctl daemon-reload
StartNode-Exporter:
Sử dụng lệnh sau để khởi động dịch vụ node_exporter
systemctl start node_exporter.service
EnableNode-Exporter để khởi động khi khởi động:
systemctl enable node_exporter.service
Kiểm tra trạng thái ofNode-Exporter:
Để đảm bảo rằng dịch vụ đã bắt đầu, chỉ cần kiểm tra trạng thái của nó bằng cách thực hiện lệnh sau. Bạn sẽ thấy đầu ra có dạng như trong hình ảnh sau.
systemctl status node_exporter.service
AccessNode-Exporter:
Node_Exporter khởi động trên cổng 9100, Cho phép cổng này trong nhóm bảo mật.
URL:http://IP-of-Node-Exporter:9100/
Để trích xuất số liệu trên Prometheus được Node_Exporter xuất ra, chúng ta cần thêm IP của Node_Exporter vào tệp cấu hình của Prometheus. Trong ảnh chụp màn hình sau, bạn có thể thấy rằng IP của Node_Exporter đã được thêm vào dưới 'job_name:grafana_node'. Thực hiện các thay đổi tương tự trong tệp cấu hình của bạn
vim /etc/prometheus/prometheus.yml
Khởi động lại Prometheus:
sudo systemctl start prometheus
Truy cập Prometheus:
Truy cập Prometheus trên trình duyệt của bạn và trong execute query history executetype truy vấn "up" và thực thi truy vấn đó.
URL:http://IP-of-Prometheus:9090/http://IP-of-Prometheus/?utm_source=diendancongnghe.com
Sau khi thực hiện truy vấn, bạn có thể thấy bên dưới bảng điều khiển rằng "các phần tử up có giá trị 1". Điều này có nghĩa là Prometheus có thể thu thập các giá trị cho localhost và Node_Exporter và thấy rằng hai phần tử này đều up. Đây chỉ là một trong những số liệu mà Prometheus hiện có và có thể truy cập từ Grafana.
Cấu hình Grafana, thêm Prometheus vào đó.
URL:http://Ip-of-Grafana:3000/
Bây giờ, trên màn hình chào mừng, bạn có thể thêm Prometheus vào Grafana trong mục "Thêm nguồn dữ liệu". Nhấp vào "Thêm nguồn dữ liệu".
Chọn Prometheus.
Thêm URL của máy chủ Prometheus "http://IP-Of-Prometheus-Instance:9090/" vào trường "HTTP--> URL" và nhấp vào "Lưu&Kiểm tra".
Thực hiện truy vấn trên Grafana để kiểm tra số liệu được Node-Exporter xuất sang Prometheus
Giờ đây, có thể truy cập số liệu có sẵn trên Prometheus từ Grafana.
Hãy khám phá và thử thực hiện các truy vấn đó.
Ví dụ:
- node_cpu_seconds_total{cpu="0",mode="nice"}
- up{instance="15.188.50.16:9100",job="grafana_node"}
Bạn có thể thử các số liệu khác nhau và điều chỉnh chúng