![](https://static.wixstatic.com/media/68165d_8d21e73592c5403294c1a02c40b3ba80~mv2.png/v1/fill/w_980,h_464,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/68165d_8d21e73592c5403294c1a02c40b3ba80~mv2.png)
Trong hướng dẫn này mình sẽ sử dụng Ubuntu 18.04 LTS để làm server Prometheus.
Prometheus có sẵn trong repositories của Ubuntu 18.04, tuy nhiên để đảm bảo bạn cài Prometheus bản mới nhất thì bạn phải tải source từ trang chủ https://prometheus.io/download/ hoặc https://github.com/prometheus/prometheus/releases
Trong hướng dẫn mình sẽ cài source từ trang chủ Github của Prometheus.
Tạo user và group để chạy Prometheus, user và group có cùng tên là "prometheus"
# sudo useradd -M -r -s /bin/false prometheus
Tạo thư mục chứa file cấu hình và data cho Prometheus
# sudo mkdir /etc/prometheus
# sudo mkdir /var/lib/prometheus
Tải source Prometheus
# cd Downloads
# sudo wget https://github.com/prometheus/prometheus/releases/download/v2.12.0/prometheus-2.12.0.linux-amd64.tar.gz
Cài đặt Prometheus
# sudo tar zxf prometheus-2.12.0.linux-amd64.tar.gz
# sudo rm prometheus-2.12.0.linux-amd64.tar.gz
# sudo cp prometheus-2.12.0.linux-amd64/prometheus /usr/local/bin/
# sudo cp prometheus-2.12.0.linux-amd64/promtool /usr/local/bin/
# sudo chown prometheus:prometheus /usr/local/bin/prometheus
# sudo chown prometheus:prometheus /usr/local/bin/promtool
# sudo cp -r prometheus-2.12.0.linux-amd64/consoles /etc/prometheus/
# sudo cp -r prometheus-2.12.0.linux-amd64/console_libraries /etc/prometheus/
# sudo cp prometheus-2.12.0.linux-amd64/prometheus.yml /etc/prometheus/
# sudo chown -R prometheus:prometheus /etc/prometheus
# sudo chown prometheus:prometheus /var/lib/prometheus
# sudo prometheus --config.file=/etc/prometheus/prometheus.yml
Tạo file cấu hình dịch vụ và copy nội dụng bên dưới vào file.
# sudo vim /etc/systemd/system/prometheus.service
[Unit]
Description=Prometheus Time Series Collection and Processing Server
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
--config.file /etc/prometheus/prometheus.yml \
--storage.tsdb.path /var/lib/prometheus/ \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries
[Install]
WantedBy=multi-user.target
Start dịch vụ Prometheus
# sudo systemctl daemon-reload
# sudo systemctl start prometheus
# sudo systemctl enable prometheus
# sudo systemctl status prometheus
![](https://static.wixstatic.com/media/68165d_5607a18647b64fd2a30eda8708840dea~mv2.png/v1/fill/w_980,h_240,al_c,q_85,usm_0.66_1.00_0.01,enc_auto/68165d_5607a18647b64fd2a30eda8708840dea~mv2.png)
Nếu gặp lỗi err="listen tcp 0.0.0.0:9090: bind: address already in use" thì dùng lệnh sudo lsof -i :9090 để xem process nào đang chạy port 9090 sau đó dùng lệnh sudo kill -9 <PID đang dùng port 9090>
Truy cập vào web: http://<IP Prometheus Server>:9090
![](https://static.wixstatic.com/media/68165d_7bca749694cd4baabc4d43044f371b1c~mv2.png/v1/fill/w_980,h_443,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/68165d_7bca749694cd4baabc4d43044f371b1c~mv2.png)
Để xem trạng thái job vào Status >> Targets
![](https://static.wixstatic.com/media/68165d_dd2435ea5ef9425fa861b5cb1dc22e74~mv2.png/v1/fill/w_980,h_447,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/68165d_dd2435ea5ef9425fa861b5cb1dc22e74~mv2.png)
Cài đặt Grafana
Trong hướng dẫn này mình cài Grafana Server và Prometheus Server trên cùng một server.
# sudo dpkg -i grafana_6.4.1_amd64.deb
Kiểm tra grafana đã cài đặt hay chưa
# sudo apt-cache policy grafana
Bật Grafana
# sudo systemctl daemon-reload
# sudo systemctl enable grafana-server
# sudo systemctl start grafana-server
Truy cập web vào Grafana: http://<IP Grafana Server>:3000
Username và Password mặc định là admin/admin
![](https://static.wixstatic.com/media/68165d_239f50893af744e8b35074627e87a727~mv2.png/v1/fill/w_980,h_497,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/68165d_239f50893af744e8b35074627e87a727~mv2.png)
Bây giờ chúng ta sẽ add Prometheus vào Grafana
Trên Grafana chọn Add data source
![](https://static.wixstatic.com/media/68165d_c336edfca26946148d6de93e5265607e~mv2.png/v1/fill/w_980,h_497,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/68165d_c336edfca26946148d6de93e5265607e~mv2.png)
Chọn Prometheus
![](https://static.wixstatic.com/media/68165d_7095262b75cb4905af93ad5c0c5afeb5~mv2.png/v1/fill/w_980,h_496,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/68165d_7095262b75cb4905af93ad5c0c5afeb5~mv2.png)
Đặt tên, điền địa chỉ lấy data từ prometheus server
![](https://static.wixstatic.com/media/68165d_216bf86b892741e187dc978d99b5f578~mv2.png/v1/fill/w_980,h_455,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/68165d_216bf86b892741e187dc978d99b5f578~mv2.png)
Chọn Save & Test
![](https://static.wixstatic.com/media/68165d_44237eb8e02d404e990cb0dd4a1a82ee~mv2.png/v1/fill/w_980,h_358,al_c,q_85,usm_0.66_1.00_0.01,enc_auto/68165d_44237eb8e02d404e990cb0dd4a1a82ee~mv2.png)
Nếu hiện Data source is working là đã add thành công
![](https://static.wixstatic.com/media/68165d_22a64224fbb64c59948655d7b9f7ab9a~mv2.png/v1/fill/w_980,h_56,al_c,q_85,usm_0.66_1.00_0.01,enc_auto/68165d_22a64224fbb64c59948655d7b9f7ab9a~mv2.png)
Phần tiếp theo mình sẽ hướng dẫn làm thế nào để monitor một server bất kỳ.
Comments