Ceph分为三大块,分别是对象存储、块设备存储和文件系统服务。在实际运营中,如何发现和解决关键的存储问题?尤其是随着规模的扩大与业务的几何级数的扩张,存在运维中不可预测的问题,如何提前预判和防治?
规模扩大和业务扩张需要关注存储节点资源的消耗,除了CPU、MEM、Disk io util、NIC throughout,还需要关注FD文件句柄数、进程和线程数、端口占用数等。此外慢盘、慢节点也更容易出现,需要人工处理或者实现自动化。
收起不可预知的问题,要解决岂不是先知。
(1)全方位的监控是解决问题的问题的其中之一方法,thanos+Prometheus+grafana能同时监控很多kubenetes集群;
(2)可靠高速的网络,大部分ceph问题都是由网络引起的,ceph性能不仅靠磁盘性能,更靠高速的网络。
(3)kubenetes的自愈功能,kubenetes考虑了一部分的自愈功能