監控報警咱們分PaaS平臺和業務應用兩大類。
PaaS平臺主要聚焦在基礎設施和LeEngine的各個服務組件的監控報警(好比主機CPU,內存,IO,磁盤空間,LeEngine各個服務進程等等),這一類使用公司統一的監控報警機制。
業務應用類,也就是跑在LeEngine上的各個業務線的監控和報警,須要由LeEngine進行對其進行監控和報警,觸發報警後,會通知給各個 應用的負責人。咱們採用了heapster 來收集容器的監控信息和Kubernetes的各類事件。每一個Cell集羣中都部署一個heapster,監控數據存放到influxdb中。設定了一個 應用全局對應一個Kubernetes的Namespace,所以咱們能很好的聚合出應用和單個容器的監控數據。
以下圖 針對應用的網絡流量監控:網絡
容器 IP,運行時間和狀態:spa
下圖是針對應用下單個容器的監控:flux
如今heapster 無法收集容器的磁盤IO數據,後期咱們會增長對於磁盤IO的監控收集,同時咱們會豐富其餘的監控數據(好比請求量等等)。關於報警,咱們後期準備使用 kapacitor 進行用戶自助化報警,讓用戶自定義設定針對於應用cpu,內存,網絡,IO,容器重啓,刪除等的報警閥值。觸發報警後,會調用公司統一的告警平臺(電話, 郵件,短信三種方式)對相關人員進行報警。默認報警人員爲當前應用的Owner和Master角色的成員。此功能已經基本調研完成,計劃3月底上線。進程