prometheus部署安裝


1. 下載&部署

復制代碼
# 下載 [root@prometheus src]# cd /usr/local/src/ [root@prometheus src]# wget https://github.com/prometheus/prometheus/releases/download/v2.0.0/prometheus-2.0.0.linux-amd64.tar.gz # 部署到/usr/local/目錄 # promethus不用編譯安裝,解壓目錄中有配置文件與啟動文件 [root@prometheus src]# tar -zxvf prometheus-2.0.0.linux-amd64.tar.gz -C /usr/local/ [root@prometheus src]# cd /usr/local/ [root@prometheus local]# mv prometheus-2.0.0.linux-amd64/ prometheus/ # 驗證 [root@prometheus local]# cd prometheus/ [root@prometheus prometheus]# ./prometheus --version
復制代碼

2. 配置文件

復制代碼
# 解壓目錄中的prometheus.yml # 簡單驗證,主要配置采用默認文件配置,有修改/新增處用紅色標示
# 注意:若服務啟動失敗,請刪除此配置文件中的中文 [root@prometheus prometheus]# vim prometheus.yml # 全局配置 global: scrape_interval: 15s # 設置抓取(pull)時間間隔,默認是1m evaluation_interval: 15s # 設置rules評估時間間隔,默認是1m # scrape_timeout is set to the global default (10s). # 告警管理配置,暫未使用,默認配置 alerting: alertmanagers: - static_configs: - targets: # - alertmanager:9093 # 加載rules,並根據設置的時間間隔定期評估,暫未使用,默認配置 rule_files: # - "first_rules.yml" # - "second_rules.yml" # 抓取(pull),即監控目標配置 # 默認只有主機本身的監控配置 scrape_configs: # 監控目標的label(這里的監控目標只是一個metric,而不是指某特定主機,可以在特定主機取多個監控目標),在抓取的每條時間序列表中都會添加此label - job_name: 'prometheus' # metrics_path defaults to '/metrics' # scheme defaults to 'http'. # 可覆蓋全局配置設置的抓取間隔,由15秒重寫成5秒。 scrape_interval: 5s # 靜態指定監控目標,暫不涉及使用一些服務發現機制發現目標 static_configs: - targets: ['localhost:9090'] # (opentional)再添加一個label,標識了監控目標的主機 labels: instance: prometheus - job_name: 'linux' scrape_interval: 10s static_configs: # 采用node_exporter默認開放的端口 - targets: ['172.20.1.212:9100'] labels: instance: node1
復制代碼

3. 設置用戶

復制代碼
# 添加用戶,后期用此賬號啟動服務 [root@prometheus prom etheus]# groupadd prometheus [root@prometheus prometheus]# useradd -g prometheus -s /sbin/nologin prometheus # 賦權 [root@prometheus prometheus]# cd ~ [root@prometheus ~]# chown -R prometheus:prometheus /usr/local/prometheus/ # 創建prometheus運行數據目錄 [root@prometheus ~]# mkdir -p /var/lib/prometheus [root@prometheus ~]# chown -R prometheus:prometheus /var/lib/prometheus/
復制代碼

4. 設置開機啟動

復制代碼
[root@prometheus ~]# touch /usr/lib/systemd/system/prometheus.service [root@prometheus ~]# chown prometheus:prometheus /usr/lib/systemd/system/prometheus.service  [root@prometheus ~]# vim /usr/lib/systemd/system/prometheus.service [Unit] Description=Prometheus Documentation=https://prometheus.io/ After=network.target [Service] # Type設置為notify時,服務會不斷重啟 Type=simple User=prometheus # --storage.tsdb.path是可選項,默認數據目錄在運行目錄的./dada目錄中 ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus Restart=on-failure [Install] WantedBy=multi-user.target # 設置開機啟動 [root@prometheus ~]# systemctl enable Prometheus [root@prometheus ~]# systemctl start prometheus
復制代碼

5. 設置iptables

[root@prometheus ~]# vim /etc/sysconfig/iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 9090 -j ACCEPT [root@prometheus ~]# service iptables restart

6. 啟動並驗證

1)查看服務狀態

[root@prometheus ~]# systemctl status prometheus

[root@prometheus ~]# netstat -tunlp | grep 9090

2)web ui

Prometheus自帶有簡單的UI,http://172.20.1.211:9090

在Status菜單下,Configuration,Rule,Targets等,

Statu-->Configuration展示prometheus.yml的配置,如下:

Statu-->Targets展示監控具體的監控目標,這里監控目標"linux"暫未設置node_exporter,未scrape數據,如下:

7. 繪圖

訪問:http://172.20.1.211:9090/metrics,查看從exporter具體能抓到的數據,如下:

訪問:http://172.20.1.211:9090,在輸入框中任意輸入1個exporter能抓取得值,點擊"Execute"與"Execute"按鈕,即可見相應抓取數據的圖形,同時可對時間與unit做調整,如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM