顯示具有 DS 標籤的文章。 顯示所有文章
顯示具有 DS 標籤的文章。 顯示所有文章

Q. IBM DS5020 Storage 接上 SAN Switch 後不通?

Error Message:
IBM x3850 安裝 HBA Card (4Gbps) 及 IBM DS5020 Storage Controller (8Gbps Host Channel Port),接至 IBM SAN Switch (SAN24B-4) 上,但是 IBM x3850 伺服器上的 HBA Card 會通 (綠燈) 而 IBM DS5020 Storage Controller (Host Channel Port) 卻不通 (SAN Switch 閃黃燈、Controller 沒亮燈)。

但是直接將 IBM x3850 與 IBM DS5020 Controller 對接 (End-to-End) 看起來又是可以通的,所以可以確定應該是 SAN Switch 要設定什麼才對的感覺?

Ans:
參考 H196488: DS5000 systems not working with Brocade on 8 Gbps host ports - IBM System Storage 文章內容可知,從 SAN Switch Firmware 6.2.0e 之後的版本,若傳輸速度為 8Gbps 不通的話請將該 Port 的 fillword 模式改為 IDLE 即可,本次將 IBM DS5020 Controller 接到 SAN Switch 的 Port 其 fillword 模式從 ARB (1) 調整為 IDLE(0) 後就通了。

下列指令的範例為 IBM DS5020 Controller 接至 SAN Switch 的第 5、6 Port,所以接上 SAN Switch Console 後下此指令即可 (Console 預設登入帳號及密碼為 root 及 passowrd)
# portcfgfillword 5 0 //指定第 5 Port 的 fillword 為 IDLE
# portcfgfillword 6 0 //指定第 6 Port 的 fillword 為 IDLE
# portcfgshow             //查看所有 Port 的資訊

Q. IBM x3650 M2 裝上 HBA Card 與 DS4700 連接後無法開機 Hard Disk 0 boot failed?

Error Message:
有二台 IBM x3650 Server 安裝作業系統為 RHEL 5.4,接上 HBA Card 與 IBM DS4700 Storage 時也都運作正常 (可看到 LUN Volume),但是當 IBM x3650 Server 重新開機時狀況出現,IBM x3650 Server 無法進入作業系統並且畫面出現如下訊息
 Hard Disk 0 boot failed
原本以為可能 User 做了某些動作導致 MBR 不見了所以開不了機,但試了一些方式如下都還是開不起來:

  • 嘗試修復 MBR。
  • 嘗試修復 RHEL GRUB。
  • 嘗試把 BIOS Raid 設定打掉重新 Build RAID 並重新安裝作業系統。


Ans:
原來問題跟作業系統一點關系也沒有,是 IBM Server BIOS 設定及 HBA Card BIOS 設定所導致的,當 IBM x3650 Server 透過 HBA Card 與 DS4700 Storage 連接時因為 HBA Card 的預設值會把本來的 BIOS 設定值覆蓋造成 IBM x3650 Server 會去找 Storage 開機 (當然開不起來),又因為設定值被覆蓋所以原來的 IBM BIOS 選項 Hard Disk 0 便無法開機必須要把 BIOS 設定中將 Legacy Only 項目加入到 BIOS 開機順序中才可正常開機,以下為 IBM Server BIOS 及 HBA Card BIOS 設定檢查步驟:

     1. 請先確定 HBA Card BIOS 中 Selectable Boot SettingsDisable (Boot From SAN)。
     2. 調整 IBM x3650 Server BIOS:
          2-1. IBM x3650 Server 透過 HBA Card 與 DS4700 Storage 連接則 BIOS 設定開機選項中請選擇 Hard Disk 0 即可正常開機找到作業系統。
          2-2. IBM x3650 Server 透過 HBA Card 與 DS4700 Storage 連接則 BIOS 設定開機選項中請選擇 Legacy Only 才可正常開機找到作業系統。

Q. Buffer I/O error on device sdd, logical block 0?

Error Message:
系統每隔一段時間便會出現如下錯誤訊息 (不知是什麼樣的動作才會觸發,原則上 10 ~ 20 分鐘內便會發生)。
 end_request: I/O error, dev sdd, sector 0
 Buffer I/O error on device sdd, logical block 0
 Buffer I/O error on device sdd, logical block 1
 Buffer I/O error on device sdd, logical block 2
 Buffer I/O error on device sdd, logical block 3
 Buffer I/O error on device sdd, logical block 4
 Buffer I/O error on device sdd, logical block 5
 Buffer I/O error on device sdd, logical block 6
 Buffer I/O error on device sdd, logical block 7
 Buffer I/O error on device sdd, logical block 8
 Buffer I/O error on device sdd, logical block 9
 Buffer I/O error on device sdd, logical block 10
 Buffer I/O error on device sdd, logical block 11
 Buffer I/O error on device sdd, logical block 12
 Buffer I/O error on device sdd, logical block 13
 Buffer I/O error on device sdd, logical block 14
 Buffer I/O error on device sdd, logical block 15


但奇怪的是系統並沒有使用到 sdd 這個裝置? 採用的伺服器硬體為 IBM x3850,而安裝的作業系統為 RHEL 4.8 AS (64bit, kernel 2.6.9-89.ELlargesmp),其中檔案系統列表如下:
/dev/sda: Local Disk (RAID1) (scsi0:channel2:id0:lun0)
/dev/sdb: LUN with DS4700 (scsi1:channel0:id0:lun0)
/dev/sdc: LUN with DS4700 (scsi1:channel0:id0:lun1)
/dev/sdd: ??? (scsi1:channel0:id0:lun31)

在儲存設備的部份,採用的是  IBM DS4700 (2 Controller 但只有 1 個 Controller 與 IBM 3850 對接,另 1 個 Controller 空的沒接任何東西),而在伺服器端為透過 HBA Card (FC-SAN) 直接連接至 IBM DS4700 (1 HBA Card),其中 HBA Card Driver 為 qla2400 (更新至 qla2xxx-v8.02.14_01-dist)。

下列為在 RHEL 4.8 AS 上執行 fdisk -l 指令後的結果,可以發現並沒有 /dev/sdd 裝置:
 # fdisk -l
 Disk /dev/sda: 145.9 GB, 145999527936 bytes
 255 heads, 63 sectors/track, 17750 cylinders
 Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
 /dev/sda1   *        9853       17750    63440685   83  Linux
 /dev/sda2               1        3900    31326718+  83  Linux
 /dev/sda3            3901        7801    31334782+  83  Linux
 /dev/sda4            7802        9852    16474657+   5  Extended
 /dev/sda5            7802        9852    16474626   82  Linux swap
 Partition table entries are not in disk order
 Disk /dev/sdb: 1497.3 GB, 1497314099200 bytes
 255 heads, 63 sectors/track, 182038 cylinders
 Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
 /dev/sdb1               1      182038  1462220203+  83  Linux
 Disk /dev/sdc: 1197.8 GB, 1197851279360 bytes
 255 heads, 63 sectors/track, 145630 cylinders
 Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
 /dev/sdc1               1      145630  1169772943+  83  Linux


Ans:
原本懷疑是 RDACDevice-Mapper Multipath 套件沒安裝的問題,但發現此次的環境只有 1 HBA Card (1 Port) 接 1 Controller,所以排除了這個可能。簡述一下 RDAC 與 Multipath 的不同處,詳細內容可參考 Device Mapper MultipathによるSAN Boot環境構築 (RHEL5.1)

單純狀態
  • 本機: /dev/sda。
  • LUN: HBA1 (/dev/sdb)、HBA2 (/dev/sdc)。


RDAC
  • 本機: /dev/sda。
  • LUN: HBA1、HBA2:合併為 /dev/sdb


Multipath
  • 本機: /dev/sda。
  • LUN: HBA1 (/dev/sdb)、HBA2 (/dev/sdc) 合併為 /dev/mapper/mpath0。

後來在網路上找到了這篇 Deleting SCSI Device Paths For A Multipath SAN LUN - blog'o thnet 文章,將 /dev/sdd 給 delete 後目前錯誤訊息便不在出現,以下簡述治標及治本的解決步驟:

的方法 (在 RHEL 上手動下指令移除 /dev/sdd,但系統若重新開機仍會再次載入 LUN Mapping)
 # dmesg |grep lun            //確定目前機器上所有裝置及 ID 等相關資訊
 megasas: max_sectors : 0x280, cmd_per_lun : 0x80
 Attached scsi disk sda at scsi0, channel 2, id 0, lun 0
 Attached scsi disk sdb at scsi1, channel 0, id 0, lun 0
 Attached scsi disk sdc at scsi1, channel 0, id 0, lun 1
 Attached scsi disk sdd at scsi1, channel 0, id 0, lun 31  //了解 sdd 為 1:0:0:31
 # echo 1 > /sys/bus/scsi/devices/1\:0\:0\:31/delete   //將數值 1 餵給 delete (也就是啟用 delete)

的方法為安裝 Storage Manager 後將 Lun Mapping 內 /dev/sdd 刪除即可◦Document IBM System Storage DS4000 and Storage Manager V10.30

What is LUN 31?
今天請教了一位懂 DS4700 產品的人 LUN 31 是什麼? 回答這個問題以前這要先從管理 DS4700 的方式說起,管理 DS4700 有二種方式 IN-Band、Out-Of-Band 簡單來說差別如下:

  • IN-Band: 不直接連到 Storage 的 Ethernet 管理 Port 而是透過 Host Agent (有裝 HBA Card 的 Host) 以 Fibre Channel 來管理。
  • Out-Of-Band: 透過 Ethernet 管理 Port 連接至 Storage。

了解上述二種管理方式後再來就是 LUN 31 到底是什麼? LUN 31 為 Storage 預設劃分出來要存放 IN-Band 設定資料區塊,因此若沒用到 IN-Band 方式來管理 Storage 的話即可放心刪除它。

Q. IBM x3650 M3 裝上 HBA Card 與 DS3400 連接後無法安裝 RHEL?

Error Message:
IBM DS3400 已切好 LUN0、LUN1,放入 RHEL 光碟片後當安裝程序進行到輸入註冊序號時,不管是輸入註冊序號後按下 OK 或是按下 Skip 不輸入序號,此時安裝程序便不再進行下一步 (等候超過半小時) 且系統也沒有發生當機現象?

Ans:
以下二點進行調整後,將 IBM x3650 Server 重新開機後即可順利安裝 RHEL:
1.請先將 IBM x3650 Server BIOS 中,開機選項 Legacy Only 加入並移至最先啟動位置。
2.將 IBM x3650 上的 HBA Card 與 DS3400 Storage 接線先拔除

Q. 新增硬碟櫃後無法進行 RAID 初始化 Drive Slot Limit Exceeded?

Error Message:
原有 IBM DS5020 Storage 及一台硬碟櫃 EXP-520,之後因為空間不夠所以又新採購一台硬碟櫃 EXP-520 (DS5020 最多可擴充至 6 櫃),但是已經將 Exp-520 與 IBM DS5020 進行正確連接,且透過 IBM Storage Manager 軟體可以確定抓到 Exp-520 擴充櫃,但是卻無法對其進行相關的設定如 RAID 初始化...等動作,主要的錯誤訊息如下:
 Out of Compliance - Drive Slot Limit Exceeded
 Storage Subsystem: DS5020
 Status: Allowable Drive Slots Exceeded
 Current drive slots: 48
 Drive slots allowed: 32

Ans:
驚!! 查詢後才知硬碟擴充櫃無法擴充的原因為「軟體授權」所致,預設情況下最基本的授權其硬碟數量僅「32 顆授權」,如果您要擴增硬碟時必須要購買相關軟體授權否則會如本例 (抓到硬碟卻無法使用!!),請視需求進行購買因為 33 ~ 64 顆硬碟要購買 「DS5020 33-64 Disk Drive Att」授權,而 65 ~ 112 顆硬碟要購買「DS5020 65-112 Disk Drive Att」授權才行,詳細資訊可以參考 IBM System Storage DS5020 Midrange Disk System

當購買到硬碟數量擴充授權後,將會得到所購買的 授權碼 (Feature Activation Code),請搭配 IBM DS5020 的型號 (Type)、序號 (Number),以及使用 IBM Storage Manager 所查詢到 DS5020 的啟用識別碼 (Enable Identifier) 之後,至 IBM DS3000, DS4000, DS5000 and BladeCenter Boot Disk System activation and registration 網頁進行相關資訊填寫及註冊啟用的動作,完成後便可以下載授權金鑰 (License Key)。

請再度使用 IBM Storage Manager 連接至 DS5020 後,可以看到在 Premium Features 項目中 Drive Slot Limit 目前狀態為「Out of Compliance」,請按下「Enable」鍵後選擇剛才的下載授權金鑰 (License Key) 後,載入完成後您可以看到狀態變更為「Enabled (64)」,之後便可以順利進行 RAID 初始化、LUN Mapping...等後續動作。

Q. 控制器電池 (Controller Battery) 損壞造成 I/O 讀寫效率大幅下降?

Error Message:
採用的 IBM DS5020 Storage,發生控制器電池 (Controller Battery) 損壞的狀況,造成運作於 VMware 虛擬環境上的 Microsoft SQL 虛擬主機,其「資料讀寫 I/O 速度突然下降」並且影響甚大,舉例來說原本只需執行 15 分鐘的 SQL Job 在 I/O 速度突然下降後必須要執行 1 小時才能執行完畢,嚴重影響日常維運進度。

採用 IBM Storage Manager 連接至 DS5020 Storage 之後,查看 Event Log 發現【Controller Battery Failed】的訊息。

Ans:
Storage Controller 及 RAID Card 都是相同的運作概念,就是控制器的電池除了「儲存 RAID Config」之外,還包含了「Cache Data」所以即使是在運作過程中,設備突然電力中斷但是在 Cache 中的資料會依靠電池的電力來維持 (一般來說約 24 ~ 72 小時之間),當設備電力恢復時會將 Cache Data 進行再次寫入硬碟的動作。

此次造成 I/O 效能突然下降的主因為 「控制器電池損壞 (Controller Battery Failed)」,因此儲存設備為了預防此時若設備的電力中斷將造成無法將 Cache Data 寫入,所以 自動 將快取機制暫停 (Write Cache Suspended),所以就造成了運作於 Storage 之上的 I/O 速度突然下降。

以下為更換控制器電池之前以及更換之後的相關動作及機制說明:

     1. 先備份 IBM DS5020 Storage 設定檔。
     2. 收集 IBM DS5020 Storage 設備狀態,收集設定 【Advanced >> Troubleshooting >> Support Data >> Collect】,將檔案名稱命名為【型號_序號_日期】 ex. 1814_1234_20120508.zip 即可。
     3. 確認 IBM DS5020 Storage 設備中,哪個控制器的電池損壞 (Controller A)。
     4. 確認後拔除 Controller A 電池 (Event Log 中的 Battery missing 訊息)。
     5. 查看 IBM DS5020 Storage 電池狀態的方式為 【Storage Subsystem >> View >> Enclosure Components >> Controller/Drive Enclosue】
     6. Controller A 電池充電完成 (Event Log 中的 Battery fully charged訊息)。
     7. Controller A Cache 機制初始 (Event Log 中的 Controller cache battery is fully charged),進入 Battery maintenance charging 狀態。
     8. 進入 Controller A、B 互相交換學習狀態 (Event Log 中的 Learn cycle for battery started)。
     9. 完成 Controller A、B 互相交換學習狀態 (Event Log 中的 Learn cycle for battery completed),Controller A、B 的電池都為 「Optimal」 狀態。
     10. 更換控制器電池 (Controller Battery) 完成後,相關電池充電及初始機制完成後,Write Caching 機制再度回復,目前運作的 VM 虛擬主機其 I/O 也恢復正常。

Q. 如何正確產生 DS Storage Report 回報給 IBM 原廠?

Error Message:
如果你的 IBM DS Storage 發生問題無法解決時,應該要如何正確收集 Storage 資訊後回報給 IBM 原廠幫您判斷?

Ans:
1. 開啟 IBM DS Storage Manager >> 進入 Storage。
2. Advanced >> Troubleshooting >> Support Data >> Collect。
3. 將檔案名稱命名為【型號_序號_日期】 ex. 1814_78KOBHD_20110613.zip 即可。

Q. IBM DS3400 Storage 設定 LUN 完成後 RHEL 抓不到 LUN?

Error Message:
IBM DS3400 Storage 設定好 LUN,並且也設定好 Host、Host Group、Devices Mapping 之後,登入 RHEL 後鍵入 fdisk -l 指令卻仍然看不到 LUN?

Ans:
1. 請確定 IBM DS3400 Storage 所設定的 LUN,也就是 IBM x3650 Server 的 HBA Card 有設定 Host、Host Group、Devices Mapping。
2.將 RHEL 重開機後應該可以抓到,並使用相關指令進行查看如「fdisk -l 或 cat /proc/partition」。

Q. 當 HBA 卡損壞進行更換後如何替換 HBA 卡的 WWN?

Error Message:
當安裝於伺服器上的 HBA 卡損壞進行更換後,由於 Storage 上的 LUN 通常會設定限制哪些 HBA 卡的 WWN 能存取哪些 LUN,此時應該如何將新的 WWN 取代舊的 WWN 以便存取 LUN?

Ans:
請依如下步驟進行 HBA Card 的 WWN 替換動作。此外,記得檢查是否可以存取相對應的 LUN 即可:

     1. 進入 【IBM Storage Manager】 連接到 Storage。
     2.【Mappings】 >> 選擇該 Host 主機 >> 右鍵 >> 【Manage Host Port Identifiers】。
     3. 選擇舊的 HBA 卡 WWN (損壞的那片) >> 按下 【Replace】。
     4. 選擇新的 HBA 卡 WWN (更換後的那片) >> 按下 【Replace】 >> 【Close】。


Q. IBM DS3400 Storage 出現 Battery Expired 訊息?

Error Message:
IBM DS3400 Storage 面板突然出現 橘燈,使用 IBM DS Storage Manager 連接查看到發現有 Battery Expired 錯誤訊息?

Ans:
此問題發生的原因,為 Controller A、B 二個控制器的電池 日期計數 問題 「並非控制器電池損壞或沒電」,因此只要將計數 重置 (Reset) 即可步驟為【IBM DS Storage Manager1.Tools > Change Battery Setting > Reset Age】。