使用Prometheus、Grafana監控Artifactory實踐

JFrog傑蛙科技發表於2021-05-21

在企業的系統平臺上執行 artifactory 可能每天有上百萬個製品在不斷流轉,隨著研發團隊不斷擴大,使用者慢慢增多,併發量也相應的逐漸增大,在保證高可用的同時,我們對 artifactory 所在系統及應用服務進行監控會顯得尤其重要。那麼如何實現系統及應用的監控呢?

 

這篇文章描述如何透過 prometheus grafana 實現對 Artifactory 的基礎系統及應用 JVM 監控。

一、  Prometheus   Server 端部署

·  下載安裝包並解壓(以版本 2.11.1 為例)

下載地址:

mkdir /opt/monitor/prometheus;cd /opt/monitor/prometheus

unzip prometheus.zip ./

tar zxf prometheus-2.11.1.linux-amd64.tar.gz

mv prometheus-2.11.1.linux-amd64 prometheus-2.11.1

 

·  新增為系統服務

vim /usr/lib/systemd/system/prometheus-server.service

[Unit]

Description=prometheus-server

After=network.target

 

[Service]

Type=simple

User=root

ExecStart=/opt/monitor/prometheus/prometheus-2.11.1/prometheus --config.file=/opt/monitor/prometheus/prometheus-2.11.1/prometheus.yml

Restart=on-failure

 

[Install]

WantedBy=multi-user.target

 

·  啟動並加入開機自啟

systemctl start prometheus-server

systemctl enable prometheus-server

 

·  訪問

http ://ip:9090

 

二、  Prometheus  Node 端部署

·  下載安裝包並解壓(以版本 0.18.1 為例)

cd /opt/monitor/prometheus

unzip prometheus.zip ./

tar zxf node_exporter-0.18.1.linux-amd64.tar.gz

mv node_exporter-0.18.1.linux-amd64 node_exporter-0.18.1

 

·  新增為系統服務

vim /usr/lib/systemd/system/prometheus-node.service

[Unit]

Description=prometheus-node

After=network.target

 

[Service]

Type=simple

User=root

ExecStart=/opt/monitor/prometheus/node_exporter-0.18.1/node_exporter

Restart=on-failure

 

[Install]

WantedBy=multi-user.target

 

·  啟動並加入開機自啟

systemctl start prometheus- node

systemctl enable prometheus-node

 

三、  Grafana 部署

·  下載安裝包並安裝(以 6 .2.5.1 為例)

wget

yum localinstall grafana-6.2.5-1.x86_64.rpm -y

 

·  啟動

systemctl start/stop/restart/enable grafana-server

 

·  訪問

預設使用者名稱/密碼:admin/admin

 

四、  配置 Artifactory 節點系統監控

·  配置 prometheus

Artifactory各個節點安裝好Prometheus Node後,修改/opt/monitor/prometheus-2.11.1/prometheus.yml,新增

- job_name: 'artifactory'

      static_configs:

            - targets: ['IP1:9100','IP2:9100']

 

·  重啟 prometheus -server

systemctl restart prometheus-server

 

·  檢視監控狀態及資料查詢示例

 

 

·  使用 grafana 展示,模板可參考

 

·  監控狀態如下圖

 

 

五、  配置 Artifactory 節點 JVM 監控

·  下載jmx_prometheus_javaagent-0.12.0.jar

下載地址參考:

Jar包路徑:/opt/monitor/prometueus/jmx_prometheus_javaagent-0.12.0.jar

·  新增配置檔案

vim /opt/monitor/prometheus/jmx_config.yaml

---

lowercaseOutputLabelNames: true

lowercaseOutputName: true

 

rules:

- pattern: ".*"

 

·  修改 Artifactory   tomcat 配置檔案

vim $ARTIFACTORY_HOME/tomcat/bin/catalina.sh, 新增:

JAVA_OPTS="$JAVA_OPTS -javaagent:/opt/monitor/prometheus/jmx_prometheus_javaagent-0.12.0.jar= 30013 :/opt/monitor/prometheus/jmx_config.yaml"

 

·  重啟 Artifactory

systemctl restart artifactory

 

·  修改 prometheus 配置

修改/opt/monitor/prometheus/prometheus-2.11.1/prometheus.yml ,新增:

- job_name: 'Artifactory-jmx'

      static_configs:

            - targets: ['IP1:30013','IP2:30013']

 

·  重啟 Prometheus   Server

 

·  Grafana 上展示監控資訊

可參考模板:

 

使用Prometheus、Grafana監控Artifactory實踐

使用Prometheus、Grafana監控Artifactory實踐


·  根據實際情況自定義修改模板配置

如: 點選dashbord設定,修改$job的value為Artifactory-jmx

 

 

·  Artifactory -JMX 監控展示

 

 

使用Prometheus、Grafana監控Artifactory實踐

使用Prometheus、Grafana監控Artifactory實踐


 

 

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69954434/viewspace-2773334/,如需轉載,請註明出處,否則將追究法律責任。

相關文章