System.ArgumentOutOfRangeException: 索引和長(zhǎng)度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本申請(qǐng)涉及服務(wù)器,尤其涉及一種故障檢測(cè)方法。
技術(shù)介紹
1、隨著企業(yè)級(jí)nvme?ssd的不斷發(fā)展,其復(fù)雜性的增加確實(shí)帶來(lái)了一系列管理挑戰(zhàn)。硬件沖突、軟件錯(cuò)誤、錯(cuò)誤的電源管理設(shè)置以及固件或驅(qū)動(dòng)不兼容等原因都可能導(dǎo)致nvmessd掛死。
2、目前,服務(wù)器僅通過(guò)i2c通道與nvme?ssd進(jìn)行通信和管理,這種單一通道的依賴性意味著一旦i2c通道出現(xiàn)故障或掛死,服務(wù)器將失去對(duì)nvme?ssd的訪問(wèn)能力。由于i2c通道可能受到多種因素的影響(如硬件沖突、軟件錯(cuò)誤、電源管理問(wèn)題等),這種依賴性極大地增加了系統(tǒng)的不穩(wěn)定性和風(fēng)險(xiǎn)。任何影響i2c通道穩(wěn)定性的因素都可能導(dǎo)致服務(wù)器無(wú)法正常工作,進(jìn)而影響整個(gè)系統(tǒng)的性能和可靠性。進(jìn)一步的,當(dāng)i2c通道處于異常狀態(tài)時(shí),服務(wù)器無(wú)法通過(guò)i2c通道獲取存儲(chǔ)在nvme?ssd中的vpd(vital?product?data,關(guān)鍵產(chǎn)品數(shù)據(jù))和smd(solid-state?metadata,固態(tài)元數(shù)據(jù))等關(guān)鍵信息。vpd和smd等關(guān)鍵信息對(duì)于硬盤(pán)的健康狀態(tài)監(jiān)控、性能優(yōu)化以及故障預(yù)測(cè)至關(guān)重要。當(dāng)這些關(guān)鍵信息無(wú)法獲取時(shí),服務(wù)將無(wú)法準(zhǔn)確評(píng)估硬盤(pán)的狀態(tài),從而無(wú)法及時(shí)確定i2c是否存在故障,并且無(wú)法對(duì)于異常情況采取有針對(duì)性的應(yīng)對(duì)措施。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)實(shí)施例提供了一種故障檢測(cè)方法,旨在解決無(wú)法進(jìn)行i2c故障檢測(cè)的問(wèn)題。
2、第一方面,本申請(qǐng)實(shí)施例提供了一種故障檢測(cè)方法,包括:
3、基板管理控制器bmc通過(guò)帶外通道獲取目標(biāo)硬盤(pán)的硬盤(pán)信息
4、當(dāng)bmc通過(guò)帶外通道未獲取到所述硬盤(pán)信息時(shí),通過(guò)帶內(nèi)通道獲取串行通信總線i2c狀態(tài)信息;
5、根據(jù)所述i2c狀態(tài)信息中的數(shù)據(jù)線sda電平狀態(tài)和時(shí)鐘線scl電平狀態(tài),確定所述i2c的故障狀態(tài)。
6、本申請(qǐng)實(shí)施例提供的方法,bmc通過(guò)帶外通道獲取硬盤(pán)信息。如果bmc通過(guò)帶外通道無(wú)法獲取硬盤(pán)信息,表明可能存在通道故障或硬盤(pán)本身的問(wèn)題,bmc通過(guò)帶內(nèi)通道獲取i2c的狀態(tài)信息,以確認(rèn)i2c是否處于故障狀態(tài)。即本申請(qǐng)通過(guò)帶外和帶內(nèi)通道的檢查,確保了監(jiān)控的連續(xù)性,即使目標(biāo)硬盤(pán)未能響應(yīng)獲取命令,導(dǎo)致服務(wù)器無(wú)法通過(guò)帶外管理的i2c通道獲取硬盤(pán)的vpd、smd中的相關(guān)硬件信息,bmc仍然可以通過(guò)帶內(nèi)通道獲取i2c的工作狀態(tài),以確認(rèn)是否i2c是否處于故障狀態(tài),由此及時(shí)發(fā)現(xiàn)問(wèn)題所在,進(jìn)而可以盡快采取有針對(duì)性的措施,盡快將處于故障狀態(tài)的i2c恢復(fù)為正常運(yùn)行狀態(tài),減少了故障持續(xù)的時(shí)間。
7、在一種可能的實(shí)現(xiàn)方式中,所述基板管理控制器bmc通過(guò)帶外通道獲取目標(biāo)硬盤(pán)的硬盤(pán)信息,包括:
8、所述bmc基于獲取周期通過(guò)帶外通道獲取目標(biāo)硬盤(pán)的硬盤(pán)信息;
9、所述當(dāng)bmc通過(guò)帶外通道未獲取到所述硬盤(pán)信息時(shí),通過(guò)帶內(nèi)通道獲取串行通信總線i2c狀態(tài)信息,包括:
10、當(dāng)所述bmc在第一預(yù)設(shè)次數(shù)的獲取周期內(nèi)未獲取到硬盤(pán)信息時(shí),通過(guò)帶內(nèi)通道獲取i2c狀態(tài)信息。
11、在一種可能的實(shí)現(xiàn)方式中,所述i2c狀態(tài)信息預(yù)存儲(chǔ)于目標(biāo)存儲(chǔ)區(qū)域,所述目標(biāo)存儲(chǔ)區(qū)域?yàn)樗瞿繕?biāo)硬盤(pán)內(nèi)用于記錄硬件內(nèi)部狀態(tài)和運(yùn)行信息的區(qū)域,所述i2c狀態(tài)信息的確定方式包括:
12、目標(biāo)硬件根據(jù)巡檢周期多次檢測(cè)數(shù)據(jù)線sda電平狀態(tài)和時(shí)鐘線scl電平狀態(tài);
13、將每次檢測(cè)到的sda電平狀態(tài)和scl電平狀態(tài)反饋至目標(biāo)硬件的主控制器soc;
14、soc將多次檢測(cè)到的sda電平狀態(tài)和scl電平狀態(tài)記錄至目標(biāo)硬盤(pán)內(nèi)的目標(biāo)存儲(chǔ)區(qū)域。
15、在一種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述i2c狀態(tài)信息中的數(shù)據(jù)線sda電平狀態(tài)和時(shí)鐘線scl電平狀態(tài),確定所述i2c的故障狀態(tài),包括:
16、當(dāng)連續(xù)第二預(yù)設(shè)次數(shù)個(gè)巡檢周期內(nèi),所述i2c狀態(tài)信息中的sda電平狀態(tài)持續(xù)為低電平且scl電平狀態(tài)持續(xù)為高電平時(shí),所述bmc確定i2c處于掛死狀態(tài);
17、當(dāng)所述i2c狀態(tài)信息中的sda電平狀態(tài)和scl電平狀態(tài),在連續(xù)第三預(yù)設(shè)次數(shù)個(gè)巡檢周期內(nèi)未發(fā)生翻轉(zhuǎn)時(shí),所述bmc確定i2c處于掛死狀態(tài)。
18、在一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
19、所述soc基于多次檢測(cè)到的sda電平狀態(tài)和scl電平狀態(tài),對(duì)i2c的狀態(tài)信息進(jìn)行標(biāo)記,并將所述i2c狀態(tài)信息的標(biāo)記結(jié)果存儲(chǔ)至目標(biāo)硬盤(pán)內(nèi)的目標(biāo)存儲(chǔ)區(qū)域;
20、所述soc基于多次檢測(cè)到的sda電平狀態(tài)和scl電平狀態(tài),對(duì)i2c的狀態(tài)信息進(jìn)行標(biāo)記:
21、當(dāng)連續(xù)第二預(yù)設(shè)次數(shù)個(gè)巡檢周期內(nèi),所述i2c狀態(tài)信息中的sda電平狀態(tài)持續(xù)為低電平且scl電平狀態(tài)持續(xù)為高電平時(shí),所述soc將i2c的狀態(tài)信息標(biāo)記為掛死狀態(tài);
22、當(dāng)所述i2c狀態(tài)信息中的sda電平狀態(tài)和scl電平狀態(tài),在連續(xù)第三預(yù)設(shè)次數(shù)個(gè)巡檢周期內(nèi)未發(fā)生翻轉(zhuǎn)時(shí),所述soc將i2c的狀態(tài)信息標(biāo)記為掛死狀態(tài)。
23、在一種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述i2c狀態(tài)信息中的數(shù)據(jù)線sda電平狀態(tài)和時(shí)鐘線scl電平狀態(tài),確定所述i2c的故障狀態(tài),包括:
24、讀取所述i2c狀態(tài)信息中的sda電平狀態(tài)和scl電平狀態(tài)對(duì)應(yīng)的標(biāo)記結(jié)果,作為所述i2c的故障狀態(tài)。
25、在一種可能的實(shí)現(xiàn)方式中,所述故障狀態(tài)包括掛死狀態(tài),所述方法還包括:
26、當(dāng)所述bmc確定i2c為掛死狀態(tài)時(shí),通過(guò)帶內(nèi)通道向目標(biāo)硬盤(pán)發(fā)送i2c復(fù)位命令,所述i2c復(fù)位命令用于指示對(duì)i2c的供電單元下電并重新上電,以使i2c恢復(fù)為正常工作狀態(tài)。
27、在一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
28、在i2c復(fù)位命令執(zhí)行完畢后,bmc通過(guò)所述帶外通道獲取硬盤(pán)信息;
29、當(dāng)所述bmc通過(guò)所述帶外通道獲取到硬盤(pán)信息時(shí),確定所述i2c通道恢復(fù)為正常運(yùn)行狀態(tài);
30、當(dāng)所述bmc通過(guò)所述帶外通道無(wú)法獲取到硬盤(pán)信息時(shí),生成告警指令
31、第二方面,本申請(qǐng)實(shí)施例提供了一種故障檢測(cè)方法,包括:
32、目標(biāo)硬盤(pán)接收基板管理控制器bmc發(fā)送的獲取命令,所述獲取命令為bmc通過(guò)帶外通道獲取目標(biāo)硬盤(pán)的硬盤(pán)信息的命令;
33、當(dāng)目標(biāo)硬盤(pán)未通過(guò)帶外通道向bmc返回所述硬盤(pán)信息時(shí),通過(guò)帶內(nèi)通道向bmc返回串行通信總線i2c狀態(tài)信息,以使所述bmc根據(jù)所述i2c狀態(tài)信息中的數(shù)據(jù)線sda電平狀態(tài)和時(shí)鐘線scl電平狀態(tài),確定所述i2c的故障狀態(tài)。
34、本申請(qǐng)實(shí)施例提供的方法,目標(biāo)硬盤(pán)接收基板管理控制器bmc發(fā)送的獲取命令后未能通過(guò)帶外通道向bmc返回所述硬盤(pán)信息時(shí),表明可能存在通道故障或硬盤(pán)本身的問(wèn)題,目標(biāo)硬盤(pán)可以通過(guò)帶內(nèi)通道向bmc返回串行通信總線i2c狀態(tài)信息,以使bmc根據(jù)所述i2c狀態(tài)信息中的數(shù)據(jù)線sda電平狀態(tài)和時(shí)鐘線scl電平狀態(tài)確認(rèn)i2c是否處于故障狀態(tài)。即本申請(qǐng)通過(guò)帶外和帶內(nèi)通道的檢查,確保了監(jiān)控的連續(xù)性,即使目標(biāo)硬盤(pán)未能響應(yīng)獲取命令,導(dǎo)致服務(wù)器無(wú)法通過(guò)帶外管理的i2c通本文檔來(lái)自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種故障檢測(cè)方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基板管理控制器BMC通過(guò)帶外通道獲取目標(biāo)硬盤(pán)的硬盤(pán)信息,包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述I2C狀態(tài)信息預(yù)存儲(chǔ)于目標(biāo)存儲(chǔ)區(qū)域,所述目標(biāo)存儲(chǔ)區(qū)域?yàn)樗瞿繕?biāo)硬盤(pán)內(nèi)用于記錄硬件內(nèi)部狀態(tài)和運(yùn)行信息的區(qū)域,所述I2C狀態(tài)信息的確定方式包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述I2C狀態(tài)信息中的數(shù)據(jù)線SDA電平狀態(tài)和時(shí)鐘線SCL電平狀態(tài),確定所述I2C的故障狀態(tài),包括:
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括:
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述根據(jù)所述I2C狀態(tài)信息中的數(shù)據(jù)線SDA電平狀態(tài)和時(shí)鐘線SCL電平狀態(tài),確定所述I2C的故障狀態(tài),包括:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述故障狀態(tài)包括掛死狀態(tài),所述方法還包括:
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述方法還包括:
9.一種故障檢測(cè)方法,其特征在于,包括:
...【技術(shù)特征摘要】
1.一種故障檢測(cè)方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基板管理控制器bmc通過(guò)帶外通道獲取目標(biāo)硬盤(pán)的硬盤(pán)信息,包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述i2c狀態(tài)信息預(yù)存儲(chǔ)于目標(biāo)存儲(chǔ)區(qū)域,所述目標(biāo)存儲(chǔ)區(qū)域?yàn)樗瞿繕?biāo)硬盤(pán)內(nèi)用于記錄硬件內(nèi)部狀態(tài)和運(yùn)行信息的區(qū)域,所述i2c狀態(tài)信息的確定方式包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述i2c狀態(tài)信息中的數(shù)據(jù)線sda電平狀態(tài)和時(shí)鐘線scl電平狀態(tài),確定所述i2c的故障狀態(tài),包括:
5.根據(jù)權(quán)利要求3所述的方法,其特征在于...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:陳宇,畢德春,
申請(qǐng)(專利權(quán))人:超聚變數(shù)字技術(shù)有限公司,
類型:發(fā)明
國(guó)別省市:
還沒(méi)有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。