定位乙個網路問題引起的ceph異常 網路排錯思路

2022-08-23 19:30:11 字數 1377 閱讀 3706

轉至定位乙個網路問題引起的ceph異常/

有乙個ceph環境出現了異常,狀態就是恢復異常的慢,但是所有資料又都在走,只是非常的慢,本篇將記錄探測出問題的過程,以便以後處理類似的問題有個思路

問題的現象是恢復的很慢,但是除此以外並沒有其它的異常,通過iostat監控磁碟,也沒有出現異常的100%的情況,暫時排除了是osd底層慢的問題

通過rados bench寫入

rados -p rbd bench 5 write

剛開始寫入的時候沒問題,但是寫入了以後不久就會出現乙隻是0的情況,可以判斷在寫入某些物件的時候出現了異常

本地生成一些檔案

seq 0 30|xargs -i dd if=/dev/zero of=benchmarkzp{} bs=4m count=2

通過rados put 命令把物件put進去

for a in `ls ./`;do time rados -p rbd put $a $a;echo $a;ceph osd map rbd $a;done

得到的結果裡面會有部分是好的,部分是非常長的時間,對結果進行過濾,分為bad 和good

開始懷疑會不會是固定的碟符出了問題,首先把磁碟組合分出來,完全沒問題的磁碟全部排除,結果最後都排除完了,所以磁碟本省是沒問題的

1  2  4  ok

3 1 2 bad

2 4 1 ok

3 1 2 bad

3 4 2 bad

……

上面的編號是寫入物件所在的pg對應的osd所在的主機,嚴格按照順序寫入,第乙個主機為傳送資料方,第二個和第三個為接收資料方,並且使用了cluster network

通過上面的結果發現了從3往2進行傳送副本資料的時候出現了問題,然後去主機上排查網路

在主機2上面做iperf -s

在主機3上面做iperf -c host2然後就發現了網路異常了

最終還是定位在了網路上面

已經在好幾個環境上面發現沒裝可以監控實時網路流量dstat工具或者ifstat的動態監控,做操作的時候監控下網路,可以發現一些異常

這個環境在最開始的時候就懷疑是網路可能有問題,但是沒有去進行全部伺服器的網路的檢測,這個在出現一些奇奇怪怪的異常的時候,還是可能出現在網路上面,特別是這種壞掉又不是完全壞掉,只是掉速的情況,通過集群的一些內部告警還沒法完全體現出來,而主機很多的時候,又沒有多少人願意乙個個的去檢測,就容易出現這種疏漏了

在做乙個ceph的管理平台的時候,對整個集群做全員對等網路頻寬測試還是很有必要的,如果有一天我來設計管理平台,一定會加入這個功能進去

whywho

when 建立

武漢-運維-磨渣

2018-01-16

乙個沒有索引引起的問題

這個案例說來也很簡單。話說我們公司舊版本的 mediation 系統每天都需要從各個 network element ne 的伺服器上採集 cdr,採集程式一般都是用 expect 寫的,其實就是 ftp到對方的機器上拷貝檔案過來。ne裡的 cdr一般不會輕易做 house keep ftp登入之後...

乙個sql引起的丟錶問題

背景 乙個已經執行了一段時間的老系統線上存在這種業務邏輯 start transaction drop tables if.a backup drop tables if.a tmp create table a tmp like a load into a tmp rename table a a...

乙個指標引起的問題,尋求高人指點

自己寫的一段測試 如下 include include int getxmltagvalue2 char pdata,char ptag,char value phead j ptail phead while ptail while phead ptail printf d n j return ...