使用 kubernetes 可擴展運算資源。使用 ceph 可擴展儲存資源。當節點愈來愈多時,使用監控系統以快速確認群集是否運作正常。
以下說明使用 netdata+prometheus+grafana 部署監控系統的步驟。
在部署監控前,需準備 prometheus.yml,以告知 prometheus 待監控的對象為何。
執行 netdata 後,在該主機上可透過 port 19999 提供 netdata metrics。
在 prometheus.yml 中,透過 static_configs 指定該主機的監控指標:
static_configs:
- targets: ['host-name:19999']
ceph 的 mgr 提供 prometheus module。使用以下指令啟用該功能:
$ ceph mgr module enable prometheus
即可透過 port 9283 提供 ceph metrics。
在 prometheus.yml 中,透過 static_configs 指定 ceph 的監控指標:
static_configs:
- targets: ['ceph-mgr:9283']
docker run -d --cap-add SYS_PTRACE \
--security-opt seccomp:unconfined --security-opt apparmor:unconfined \
--restart=always \
-v /proc:/host/proc:ro \
-v /sys:/host/sys:ro \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
--network=host \
titpetric/netdata:1.15.0
docker run -d \
--restart=always \
--network=host \
-v ${PWD}/prometheus.yml:/etc/prometheus/prometheus.yml \
prom/prometheus:v2.11.1 \
--storage.tsdb.retention.time=15d \
--config.file=/etc/prometheus/prometheus.yml
docker run -d \
--restart=always \
--network=host \
grafana/grafana:6.3.2