一文看懂 SAN 網絡組成和日常運維
1、何為SAN網絡
- 百度百科:
存儲區域網絡(Storage Area Network,簡稱SAN)采用網狀通道(Fibre Channel ,簡稱FC,區別與Fiber Channel光纖通道)技術,通過FC交換機連接存儲陣列和服務器主機,建立專用于數據存儲的區域網絡。SAN經過十多年歷史的發展,已經相當成熟,成為業界的事實標準(但各個廠商的光纖交換技術不完全相同,其服務器和SAN存儲有兼容性的要求)。
SAN專注于企業級存儲的特有問題。當前企業存儲方案所遇到問題的兩個根源是:數據與應用系統緊密結合所產生的結構性限制,以及小型計算機系統接口(SCSI)標準的限制。大多數分析都認為SAN是未來企業級的存儲方案,這是因為SAN便于集成,能改善數據可用性及網絡性能,而且還可以減輕管理作業。
- 個人理解:
來自百度百科的解釋看起來永遠是那么晦澀難懂,但畢竟是所謂的官方定義。下面主要聊聊SAN 網絡在我的眼中是一個什么樣的存在:
SAN網絡(Storage Area Network,簡稱SAN),顧名思義就是存儲區域網絡,SAN網絡最初主要是指FC-SAN,當然發展到現階段目前常見的SAN有FC-SAN和IP-SAN,還有IB-SAN,其中FC-SAN為通過光纖通道協議轉發SCSI協議,IP-SAN通過TCP協議轉發SCSI協議。這里咱們主要的聊的主要內容就是FC-SAN。
想到SAN聯想到一幅圖片,多個主機通過光纖交換機連接后端存儲和帶庫等設備,至于說如何連接那還是需要看具體需求,如圖所示。
后續的內容都將基于這一張圖展開,SAN的運維過程當中,我們應該基于這張圖進行完善和調優。
2、SAN的網絡組成
結合第一章節的最后的一張圖進行分解,SAN網絡以下幾部分組成:主機層,交換層,存儲層,另外還有SAN 網絡的監控。下面我們就基于以上幾個部分分別來說明一下SAN網絡的中的具體細節。
2.1 主機層
任何san網絡的最終目的都是為上層業務系統搭建一個支撐平臺,存儲數據。因為業務系統是OS上面,底層的硬件部分就是主機部分,不管是虛擬化環境還是物理機。直接與SAN網絡打交道的還是要通過物理硬件連接,后續才有虛擬化平臺的進一步設置。
主機層面主要分兩大陣營:X86和小型機 ,由于技術不斷成熟和業務方案的有更多更好的選擇的前提下,X86 陣營有了長足的發展,亦有可能會是壓倒性的趨勢。
主機設備市場上有很多品牌,此處不一一列舉,主機要想連接SAN網絡,需要配置主機的端的HBA卡,常見的廠商主要有emulx,qlogic,IBM,DELL,Brocade 等,下面貼上Emulex和QLogic的卡。
如圖所示:
企業當中使用的主機HBA卡,一般來說都是LC接口的,由于交換機大多也都是LC 接口類型的,所以我們使用光纖大多lc-lc 類型的。
HBA卡經過了多年的發展,接口速率由原先的1GB,2GB,發展到前些年的4GB,8GB卡,再到近些年來的16GB,目前市場主流還是8GB和16GB的HBA卡,接口也從原先的單口卡發展為現在雙口和四口,市場上新下的訂單已經很少再可以買到單口的卡,除非是庫存等。下面我貼一張FC 發展的過程圖,這張圖也是從其他文章里發現的,感覺很清晰就收藏了。

光纖線:
HBA卡要想連接光纖交換機,中間必須要有線纜,這里貼一張企業常用的LC—LC的接口的類型的光纖線。
當然光纖線接口類型還有其他類型,如SC,FC,ST等,但是常用的就是多模LC-LC 接口類型。這里就不詳述單模和多模的區別,有興趣的可以直接度娘。
2.2 交換層
介紹了主機,HBA卡和光纖線之后,我們這一塊來介紹一下交換層這一塊的內容,這其中核心部件就是FC光纖交換機和SFP 模塊。光纖交換機市場也是非常的雜亂,每個硬件廠商基本上都有自己的產品,這其中當然有廠家獨立的技術產品,也有OEM過來的產品型號進而推出的相關產品,下面就來用圖來展示一下目前各大主流廠商的產品及相互關系,如圖所示(最新產品請到相應的官方網站查詢):
這里在專門一張圖展示一下Brocade 相應的產品圖,最新的產品可以到相應的官方網站查詢。
相信大家或多或少的接觸過不少光纖以太網交換機,一個小型的SAN網絡基本通過一個或幾個光纖交換機獨立工作或者級聯就可以支撐整個公司的SAN網絡環境,在一個特大型的SAN網絡當中只靠光纖交換機的級聯就顯得非常的低效和故障隱患太高,這時就需要一個路由器(router),大型TCP/IP 網絡需要路由器,大型的SAN網絡同樣也需要路由器,通過路由的功能來實現交換機之間的互聯與通訊,進行形成一個大型和復雜的網絡。然而由于標準尚無明確的規定,導致各大廠商之間的路由出現了很多問題,往往都是自家產品的相互路由有比較好的兼容性。
光纖交換機目前市場主流的是接口速率16GB和32GB,端口從8口到80 口,更多的端口需要可以支持插入背板的光纖交換機,以來擴容端口的需求。產品可以參考上一張圖片,光纖交換機的購買也可以按需購買,激活和擴容。也就是說購買一個光纖交換機,最初可以只是購買適合業務需求1/4或者1/2端口配置,后續根據需要擴容sfp模塊和激活的license 。
這里我貼上一張sfp模塊的截圖:
光纖交換機的使用方式在小型企業主要是獨立和級聯兩種方式。獨立自然就很好理解了,不和別的環境混用,這種情況下基本上用于環境比較小而且比較單一的時候,但凡有混合型需求:如需要接入的光纖交換機的主機數量很多,且很多時候需要冗余和共享,這個時候就需要考慮級聯,來擴容交換機端口的數量。
2.2.1 級聯:
博科交換機級聯采用的是ISL方式,ISL是英文Inter-switch link的縮寫,是用E-port端口將兩臺SAN交換機連接起來的一種方式。
那么在光纖交換機級聯的時候需要考慮幾個方面,要提前做好準備,
1. 級聯的license
2. 交換機的微碼
3. Domain ID的設置
4. 級聯模式的選擇
曾經做過的一個項目:
B80 分別級聯以上各個交換機,B80和B5K跑核心業務,B24跑開發測試,交換機之間的級聯通過兩條線纜進行,如圖所示。
級聯后B80 端口類型如圖所示:
至于不同廠商之間的交換機之間的級聯如何做,那么首先需要查閱一下設備兼容手冊,盡量避免不同品牌交換機的直接的互聯,保持良好的兼容性。
2.2.2 Zone 設置
在交換機層面操作最多的就是zone的劃分設置,常見的zone的劃分方式有基于別名,端口和基于WWN。有關zone 設置,這里做一個簡要的介紹,有關詳細的使用方法,可以查找相關文檔。
劃分zone 需要梳理的幾個步驟
1. Domain id 要設置
2. Zonecreate 創建zone
3. Cfgcreate 創建配置文件profile
4. 添加第2步創建的zone到第3步的創建的profile 當中去
5. 保存配置profile
6. 激活profile,生效
其原理和實現大同小異,目前市場主流的就是博科和CISCO 兩大產品的zone 劃分設置,其配置方式有些區別,但是不難理解。CISCO的zone 主要是vsan,zoneset的概念,有過cicso操作經驗的兄弟應該操作起來不是很陌生,下面這里分別基于博科和CISCO zone劃分舉兩個實例,以供參考:
(1) 博科
Zonecreate “power750_ds8100”,”1,20;1,0;1,1”
Cfgcreate “b80_config”
Cfgadd “b80_config”, “power750_ds8100”
Cfgsave
Cfgenable b80_config
(2) CISCO:
創建zone
conf t
zone name crm vsan 100
mem interface fc 1/20,fc 1/21,fc 1/22
exit
創建zoneset,zone加入zoneset
zoneset name zoneset_crm vsan 100
mem zone_crm
exit
激活zoneset
zoneset activate name zoneset_crm vsan 100
copy running-config startup-config
上面兩個小例子只是工作當中zone劃分設置的一個小小的場景,希望對大家有所參考。有關交換機在運維過程中,有很命令需要熟悉和掌握,這樣在故障診斷時就會比較節省時間,大家需要針對具體的交換機系列進行積累,當然利用監控工具也是可以的。
2.3 存儲層
存儲層只是一個概括而已,主要是指連接在光纖交換機上用于提供數據存放的設備,如存儲設備,磁帶庫設備,NAS設備等。存儲設備大多都有2到多個控制器,控制器通過光纖設備連接到光纖交換機,在交換機上配置相應的Zone,從而識別主機,映射到主機,最終完成主機設備存儲,帶庫等相關設備的操作。
存儲連接到光纖交換機:
- 存儲sfp一般的接口速率大多都是8GB或者16GB,速率都比較高。建議接到核心交換機上,以供大量主機使用
- 存儲上聯光纖交換機存儲控制器連線要保證冗余,每個控制建議至少上聯2跳線,4個線比較理想。
這一層設備其實沒有太多好講的,在SAN網絡擋住主要就是連接到Switch,識別到主機,劃分LUN映射給主機,其余什么邏輯組,lun條帶大小,快照等功能,咱們在此不做詳細介紹。
2.4 監控層
監控是運維的一把利器,如何運用好監控是應該是我們運維的一件重要的事情,只有這樣才可以做到先人一步,快人一步,在這個數據為王時代,服務的好壞直接影響這未來的道路和方向。
其實監控單獨拿到這里來說是不太準確的,也是不完整的,但是它是不可或缺的。在SAN運維方面,除了大型公司和互聯網行業外,一般企業很少聽說有SAN這方面的監控建議的。在此能分享一下社區會員有關這方面做的好的經驗。
產品選擇:
- 開源的有Stor2rrd,商業軟件有Brocade Network Advisor,IBM TPC,Solarwinds Storage Resource Monitor
- Brocade Network Advisor + IBM TPC,Brocade Network Advisor選免費模式
- IBM TPC,HP SOM 國外貴缺乏定制化支持,國產也很多產品靈活,原理都是基于SMI-S、SNMP等采集設備配置數據
- nagios zabbix cactic.
有關光纖交換機的監控,其實如果可以使用產品廠商提供的相關產品應該是最好的,有的產品可以做到基于主機鏈路,光纖交換機,存儲一條完整路徑的監控,覆蓋范圍比較廣,實施起來也比較復雜,各位可以根據企業的需求去選擇。
存儲管理監控:
目前存儲管理監控都是基于SMI-S、SNMP、CLI等方式對設備進行數據采集(包括配置、容量、性能、告警等),目前這類產品很多,各廠商都有區別在于設備支持兼容性。
功能:
- 自動SAN拓撲
- 配置資產信息
- 容量信息
- 性能信息
- 告警信息
- 報表等
3、SAN 網絡運維常見問題
以下主要介紹來自社區交流的幾個比較典型的問題。在此感謝:ACDante,潘延晟,aix7,crystalwmagic,oniontech ,fuwangrong 等各位兄弟分享。
1. SAN網絡連接線如何避免亂,如何規劃線路連接
布線離不開機房機柜、交換機、設備的安裝規劃,根據自身環境制定最適合的規劃,比如設備安裝、交換機是EOR、MOR還是TOR架構、是否有大對數光纖配線架都需要考慮,標簽的記錄名稱是否規范化,機柜、設備、交換機的名稱規范化也需要考慮。
2. SAN環境下數據平滑遷移
在條件具備的情況下使用高級工具來配合我們完成遷移工作,遷移工具如:
1)命令
AIX平臺上的mirrorvg,migratepv,migratelp,mklvcopy,cplv,backup,restore等
2)存儲功能
快照,存儲復制,虛擬存儲網關等
3. SAN環境故障診斷
1)指示燈 (理解各種指示燈的意義)
2)是否是一個普遍還是獨立的問題,例如io問題 例: 曾經遇到一個集群環境下多節點主機io 性能下降,其中最終問題是由于ds8000 一個控制器問題導致。
3)hba卡故障
例:存儲端出現告警燈亮,登錄storage manager 查看,出現鏈路切換,由于有過類似經驗,直接定位是由于vmware 集群端主機其中hba卡異常導致,直接查看鏈路狀態和hba卡硬件狀態,配合查看交換機端口,很快就能定位故障hba
4)掃描問題
例:曾經配置一套集群,集群三個節點,vmware 環境,添加存儲器,掃描異常緩慢,本應幾秒鐘就可以完成的操作持續了將近1分鐘,使用效果不好,表現在io和反應問題。最終更換hba卡,掃描立刻正常,各方面均OK。
5)交換機連接異常
例:曾經通過ssh連接配置B24設備,由于該設備一直在使用狀態,但是本次連接建立后直接就斷,根本連不上,后來通過串口連接也都OK,使用telnet端口和ping ip地址去診斷均顯示OK,ssh和telnet 就是登錄不上,最終更換一個網線就正常了。
有的時候交換機的telnet服務也會停止響應,需要使用串口登錄進去,重啟一下telnet服務也是可以解決。
6)SAN網絡的兩個應用技巧
http://www.talkwithtrend.com/Question/408427
4、總結
本文從大到小,從整體到細節,針對SAN網絡進行了介紹和解釋,從組成到原理進行適當的分析,并以實例形式分享了在運維工作當中的諸多問題,我們要理解的是:
一個好的規劃是好的運維的基礎
一個好的監控是運維的保障
一個個細節是我們需要在運維過程中去關注的
一個個故障和經驗需要我們去總結和學習
文中所涉及技術和產品請以官方最新信息為準如有任何問題,可點擊文末閱讀原文到社區原文下評論交流
資料/文章推薦:
SAN完全手冊,含金量非常高
http://www.talkwithtrend.com/Document/detail/tid/162771