iSCSI 網路中的佇列深度限制
佇列深度是指可在裝置上平行執行的 I/O 作業數目。如果您要設計 iSCSI 網路的配置,您必須預估每個節點的佇列深度,以免應用程式失敗。
如果節點抵達佇列指令的數目上限,它會傳回錯誤碼給主機,例如 Resource unavailable。 一旦這種狀況持續超過 15 秒,就會有很多作業系統無法回復。這可能導致一或多部伺服器向應用程式呈現錯誤,並在伺服器上顯示應用程式失敗。
佇列深度的計算公式會考慮下列因素:
- 會分別計算每一個節點的佇列指令數目上限。I/O 群組中有兩個節點。當 I/O 群組中有一個節點無法使用時,系統必須繼續運行。 因此,會將 I/O 群組視為具有與節點相同的佇列指令數目。如果有一個節點失效,每個磁碟的路徑數都會減半。
- 如果所對映的磁區可讓多部伺服器看到,則這些伺服器都可以傳送指令給該磁區。
- 若有裝置驅動程式讓指令逾時,它會立即重新發出指令。指令會儲存在指令佇列中。
在您計算佇列深度限制之後,必須套用它。每一個作業系統都採用特定方法,來限制各磁區的佇列深度;請參閱您的主機作業系統文件,來變更佇列深度。