Перед нами стоит один вопрос о мониторинге объемного хранилища.
Мы используем метрики «kubelet_volume_stats_used_bytes» и «kubelet_volume_stats_capacity_bytes». В нашей лаборатории у нас есть> 100 томов, смонтированных на подах, и среди них 14 томов, созданных хранилищем Glusterfs, остальные тома предоставляются Ceph.
$ kubectl get sc
NAME PROVISIONER AGE
default ceph.rook.io/block 166d
glusterfs-storageclass kubernetes.io/glusterfs 166d
local-storage kubernetes.io/no-provisioner 166d
non-repl ceph.rook.io/block 166d
rook-ceph-block-rep (default) ceph.rook.io/block 166d
Пытаемся скрутить метрики из Kubernetes API
# curl -k -s -H "Authorization: Bearer <token>" https://kubernetes.default.svc:443/api/v1/nodes/<hostname>/proxy/metrics 2>&1 |grep kubelet_volume_stats_used_bytes
И, к сожалению, среди всех узлов мы получаем информацию только из этих 14 томов Glusterfs - никаких показателей от остальных (созданных Ceph)
Итак, можно ли получить метрики из этих томов, созданных Ceph? Если возможно, как мы можем сделать так, чтобы Kubernetes предоставил их?
Заранее спасибо.
Кстати, мы не уверены в Ceph, потому что мы также заметили, что в документе Kubernetes есть глава поставщик хранилища и вот что он говорит,
Volume Plugin Internal Provisioner Config Example
CephFS - -
GlusterFS ✓ Glusterfs
Не знаю, причина в этом. Kubernetes версии 1.12.3
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.3",
GitCommit:"435f92c719f279a3a67808c80521ea17d5715c66", GitTreeState:"clean",
BuildDate:"2018-11-26T12:57:14Z", GoVersion:"go1.10.4", Compiler:"gc",
Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.3",
GitCommit:"435f92c719f279a3a67808c80521ea17d5715c66", GitTreeState:"clean",
BuildDate:"2018-11-26T12:46:57Z", GoVersion:"go1.10.4", Compiler:"gc",
Platform:"linux/amd64"}
Кажется, это работает на Kubernetes Версия 1.13+.
Вот проблема с GitHub для этого ceph: добавить метрики для драйвера flexvolume # 3128.
И Вот это комментарий, описывающий, как его настроить.
Также вы можете использовать для этого Прометей. Это хорошо задокументировано и описано в документы ладьи