話不多說上菜:
現在環境是這樣:
ceph 4台:
192.168.100.21 ceph-node1
192.168.100.22 ceph-node2
192.168.100.23 ceph-node3
192.168.100.25 ceph-node5
#已經部署好一個ceph cluster 集群 四個 osd 三個mon 沒有使用塊存儲所有沒有mod
監控服務端一台
192.168.100.26 Grafana 上面都是以容器部署了
Prometheus:
Grafana:
alertmanager:
prometheus-webhook-alert:
cAdvisor:
客戶端安裝
先使用docker-compose 容器部署 node-exporter后面在用二進制包安裝一次 因為有此數據在容器內無法抓取到
node-exporter:
cAdvisor :
好吧開始:
該篇是客戶端 先用docker-compose 實現監控宿主機 和 docker 客戶端安裝
安裝dockker 和 docker-compose 我就不說了 我博客上有
version: "3" networks: monitor: driver: bridge
#收集宿主機數據信息 services: node-exporter: image: quay.io/prometheus/node-exporter container_name: node-exporter hostname: node-exporter restart: always volumes: - /etc/localtime:/etc/localtime ports: - "9100:9100" networks: - monitor
#監控docker 容器 變化 收集容器數據信息 cadvisor: image: google/cadvisor:latest container_name: cadvisor hostname: cadvisor restart: always volumes: - /:/rootfs:ro - /var/run:/var/run:rw - /sys:/sys:ro - /var/lib/docker/:/var/lib/docker:ro - /etc/localtime:/etc/localtime ports: - "8080:8080" networks: - monitor
當然了node-exporter 也可以直接在宿主機上面安裝
1、監控linux機器(node-exporter)
(1.1)被監控的機器安裝node-exporter
tar -xvf node_exporter-0.17.0.linux-amd64.tar.gz -C /usr/local/
(1.2)啟動node-exporter
/usr/local/node_exporter-0.17.0.linux-amd64/node_exporter &
(1.3)普羅米修斯配置文件添加監控項
vim /usr/local/Prometheus/prometheus.yml
(1.4)默認node-exporter端口為9100
- job_name: 'Prometheus' static_configs: - targets: ['192.168.0.102:9100'] labels: instance: Prometheus
重啟普羅米修斯!
在來安裝一個 ceph-exporter 在ceph cluster 隨意一台安裝需要 /etc/ceph/ceph.config 配置文件
Ceph_exporter 監控ceph 集群信息
Ceph_export 需要使用Go進行編譯,也可以在./ceph_exporter/go/bin/ceph_export 直接使用 需先注冊服務然后直接運行
鏈接:https://pan.baidu.com/s/1AEF_pdDvSJ5gMPapaBuBrA
提取碼:jkuh
我們着就直接用go編譯器已經編譯好后得二進制文件運行
mkdir ~/go/bin/
cp ~/go/src/github.com/digitalocean/ceph_exporter/ceph_exporter ~/go/bin/
vim /usr/lib/systemd/system/ceph_exporter.service
[Unit] Description=Prometheus's ceph metrics exporter [Service] User=root Group=root ExecStart=/root/go/bin/ceph_exporter [Install] WantedBy=multi-user.target Alias=ceph_exporter.service
1。啟動Ceph_exporter
systemctl daemon-reload systemctl enable ceph_exporter systemctl start ceph_exporter
2。查看端口監聽狀態
Ceph_exporter使用的是9128端口,可以通過netstat進行查看端口的監聽狀態
netstat -antpu | grep 9128 tcp6 0 0 :::9128 :::* LISTEN 6839/ceph_exporter
3。修改Prometheus配置
把Ceph_exporter的接口添加到Prometheus的配置中
vim /usr/local/prometheus/prometheus.yml scrape_configs: - job_name: 'ceph' honor_labels: true static_configs: - targets: ['192.168.1.10:9128'] labels: instance: Ceph測試集群
4。重啟Prometheus進程!
systemctl restart prometheus
所有客戶端安裝完成 看另一篇 https://www.cnblogs.com/python-diy/p/11512285.html