天天看點

說說IO(六)- Driver & IO Channel

這部分值得一說的是多路徑問題。IO部分的高可用性在整個應用系統中可以說是最關鍵的,應用層可以壞掉一兩台機器沒有問題,但是如果IO不通了,整個系統都沒法使用。如圖為一個典型的SAN網絡,從主機到磁盤,所有路徑上都提供了備援,以備發生通路中斷的情況。

  • OS配置了2塊光纖卡,分别連不同交換機
  • SAN網絡配置了2個交換機
  • 存儲配置了2個Controller,分别連不同交換機
說說IO(六)- Driver & IO Channel

如上圖結構,由于存在兩條路徑,對于存儲劃分的一個空間,在OS端會看到兩個(兩塊磁盤或者兩個lun)。可怕的是,OS并不知道這兩個東西對應的其實是一塊空間,如果路徑再多,則OS會看到更多。還是那句經典的話,“計算機中碰到的問題,往往可以通過增加的一個中間層來解決”,于是有了多路徑軟體。他提供了以下特性:

  • 把多個映射到同一塊空間的路徑合并為一個提供給主機
  • 提供fail over的支援。當一條通路出現問題時,及時切換到其他通路
  • 提供load balance的支援。即同時使用多條路徑進行資料傳送,發揮多路徑的資源優勢,提高系統整體帶寬。

Fail over的能力一般OS也可能支援,而load balance則需要與存儲配合,是以需要根據存儲不同配置安裝不同的多通路軟體。

多路徑除了解決了高可用性,同時,多條路徑也可以同時工作,提高系統性能。

繼續閱讀