Raid卡性能導致IO告警
前言
不同的機器性能不同,但是我們應用開發一般不去關注這些。只有等壓力到一定程度后,我們才會發現不同的機器表現不一樣。
現場
有一天,筆者突然收到了線上Zookeeper的告警。其中一臺機器磁盤IOWait高,奇異的是 我們線上的5臺機器組成一個集群,唯獨只有一臺IOWait高。
為什么僅有一臺iowait高
這個問題第一個疑點就是Zookeeper最為一個集群,為什么只有C變高,況且C只是個follower節點。于是筆者看了下分別機器的ios,發現iops竟然差不多。
機器問題,Raid卡沒電池
到這里,很自然的就懷疑起機器的問題了。和SA一塊排查,比較異同。發現有問題的機器是用的舊型號機器,而這批機器Raid卡竟然沒有帶電池!
本來Raid卡是自帶一塊RAM加速寫入性能的,不帶電池的后果就是Raid卡會不啟用寫緩存的功能。怪不得IOWait高。
順手解決了另一個疑惑
在發現這個點之后,筆者立馬就想起了之前大促的時候,一個應用的部分機器會卡主,翻日志會發現。兩條沒有任何請求的日志之間會出現好幾秒的間隔情況,翻了下之前的ip,發現他們也是在這種沒有電池的機器上-_-!
總結
在相同負載下的機器會有不同性能表現時,我們需要將其宿主機的硬件性能作為一個可能的點考慮進來。
本文轉載自微信公眾號「解Bug之路」,可以通過以下二維碼關注。轉載本文請聯系解Bug之路公眾號。