文章目錄
安裝 MongoDB Exporter
之前筆記 Prometheus 搭配 Alertmanager 發送警示 紀錄到如何使用 Prometheus 與 Alertmanager 來進行監控並主動發生通知,而 MongoDB 也可以是 Prometheus 監控的對象,透過安裝 MongoDB Exporter 將 metrics 資訊透過 http server 方式揭露再透過 Prometheus 主動 pull 即可將 MongoDB 相關資訊儲存至 Prometheus 中
今天就來快速紀錄一下 如何使用 Helm 來安裝 MongoDB Exporter
基本環境說明
- macOS Catalina 10.15.7
docker desktop 3.1.0(51484)
- docker engine 20.10.2
- Kubernetes v1.19.3
Helm v3.2.4
docker images
- percona/percona-server-mongodb:4.4.3
- ssheehy/mongodb-exporter 0.10.0
Helm charts
- prometheus-mongodb-exporter-2.8.1
mongodb replicaset
透過 docker compose 來啟動與示範,詳細資訊可以參考之前筆記 使用 Docker Compose 建立有 Auth 的 MongoDB Replica Set
安裝方式
設定 Helm repo
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts && helm update
安裝 exporter
語法
helm upgrade --install mongoexportter prometheus-community/prometheus-mongodb-exporter --set mongodb.uri="{username}:{passowrd}@{mongo_host1}\:{mongo_port1}\,{mongo_host2}\:{mongo_port2}\,{mongo_host3}\:{mongo_port3}"
範例
這邊以 host ip 為例,helm value 遇到
.
[
,
=
需要加上跳脫字元\
helm upgrade --install mongoexportter prometheus-community/prometheus-mongodb-exporter --set mongodb.uri="root:pass\.123@192\.168\.50\.97:27017\,192\.168\.50\.97:27027\,192\.168\.50\.97:27037"
實際效果
將 mongodb export 做 port forward 以利 debug
kubectl port-forward service/mongoexportter-prometheus-mongodb-exporter 9216
access mongodb export 所取得的 metrics 資訊
curl http://127.0.0.1:9216/metrics
心得
helm value 的 mongodb.uri
我安裝時如果加上 mongodb://
的前綴就會出現 auth fail 的狀況,看 log 是沒吃到 user 與 password,另外就是 port
我只要明確指定就會出錯,這兩個問題不知道是不是因為 set value 才造成的,但過去我應該是造描述中的用法來安裝的,這就是過太久才筆記的問題XD
參考資訊
文章作者 Yowko Tsai
上次更新 2021-02-07
授權合約
本部落格 (Yowko's Notes) 所有的文章內容(包含圖片),任何轉載行為,必須通知並獲本部落格作者 (Yowko Tsai) 的同意始得轉載,且轉載皆須註明出處與作者。
Yowko's Notes 由 Yowko Tsai 製作,以創用CC 姓名標示-非商業性-相同方式分享 3.0 台灣 授權條款 釋出。