Cách xác định đĩa nào bị lỗi trong thiết lập FreeNAS / ZFS


12

Tôi đang xây dựng một máy chủ dựa trên FreeNAS trong vỏ bọc Supermicro X6DHE-XB 3U với RAM 4G, 16 khay trao đổi nóng SATA. Nó đi kèm với các thẻ RAID 3Ware cổng 2x8, nhưng tôi dự định chỉ sử dụng các khả năng của ZFS thay vì RAID phần cứng. Bộ ổ đĩa ban đầu của tôi sẽ là các ổ đĩa HITACHI Deskstar 7K3000 HDS723020BLA642.

Nếu tôi đang sử dụng RAID dựa trên phần cứng, nó sẽ cho tôi đèn đỏ trên khoang ổ đĩa, nơi ổ đĩa bị lỗi. Làm thế nào để nó hoạt động với ZFS khi một ổ đĩa bị lỗi? Tôi không nghĩ có bất kỳ đảm bảo nào rằng sda = bay1, sdb = bay2, v.v. vậy làm thế nào để bạn xác định ổ đĩa nào cần được thay thế? ZFS có thể báo cáo lại cho bộ điều khiển SATA để bật đèn "ổ đĩa không thành công" không? Nó chỉ báo cáo số sê-ri ổ đĩa? Điều gì xảy ra nếu ổ đĩa bị lỗi quá mạnh. Nó không thể báo cáo số sê-ri? Tôi cho rằng nên ghi lại số sê-ri của mỗi ổ đĩa và nó đi vào đâu trước khi bạn phát trực tiếp. Có bất kỳ nhiệm vụ "tiền sản xuất" nào khác để làm cho việc thay thế ổ đĩa dễ dàng hơn trong tương lai không?

Câu trả lời:


4

zpool status -v sẽ cho bạn biết đĩa nào đang trực tuyến hay không.


3
+1 FreeNAS dựa trên FreeBSD và các ổ đĩa sẽ theo thứ tự mà thẻ cung cấp. Nếu có một bộ điều khiển SAS 8 cổng duy nhất, các ổ đĩa sẽ là / dev / da0 đến / dev / da7, với cùng số với thẻ (cáp tốt cũng được dán nhãn trên mỗi ổ đĩa). Nếu bạn có nhiều bộ điều khiển, hoặc bất cứ điều gì phức tạp, bạn có thể chạy camcontrol devlistđể có danh sách tất cả các ổ đĩa SAS / SCSI và thẻ nào, mục tiêu, cho đến khi chúng được bật.
Chris S

1
Chris S không chính xác. Các ổ đĩa không phải lúc nào cũng xuất hiện theo thứ tự mà thẻ cung cấp. Ví dụ: "da7" của chúng tôi xuất hiện thứ hai trong danh sách 8 ổ đĩa ... Ngoài ra, trạng thái zpool chỉ cung cấp cho các nhãn chứ không phải các đĩa thực tế.
Brian Knoblauch

8

Phiên bản hiện tại của FreeNAS (ver 9.3 tại thời điểm hiện tại) sẽ tạo ra một gptid cho mỗi ổ đĩa được thêm vào một zpool. Ngay sau khi tạo, "trạng thái zpool" sẽ trông giống như thế này (tùy thuộc vào cấu hình nhóm của bạn) ...

# nhóm trạng thái zpool: trạng thái
myzfstest
:
Quét TRỰC TUYẾN : không
yêu cầu cấu hình:

    NAME                                            STATE     READ WRITE CKSUM
    myzfstest                                       ONLINE       0     0     0
      raidz-0                                       ONLINE       0     0     0
        gptid/4fc2b789-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/51d38480-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/54c672cc-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/56a07638-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
      raidz2-1                                      ONLINE       0     0     0
        gptid/630e1317-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/6557b52d-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/667a1318-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/68cadf75-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
    logs
      mirror-2                                      ONLINE       0     0     0
        gptid/8839f22e-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/8a6d0b14-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
    cache
      gptid/8c2f3824-7b7f-11e4-9585-de9b81338d40    ONLINE       0     0     0
      gptid/8da9ba80-7b7f-11e4-9585-de9b81338d40    ONLINE       0     0     0
    spares
      gptid/72f039f2-7b8a-11e4-9585-de9b81338d40    AVAIL
      gptid/750df91d-7b8a-11e4-9585-de9b81338d40    AVAIL

lỗi: Không biết lỗi dữ liệu

Thật không may, GUI web không hiển thị cho bạn những con số này. Vì vậy, nếu bạn gặp lỗi khi nói rằng "gptid / 6557b52d-7b7f-11e4-9585-de9b81338d40" là xấu ... làm thế nào để bạn biết ổ đĩa nào cần kéo? Chỉ ra rằng phần đó đòi hỏi một số công việc tại thời điểm cài đặt.

  1. Khi bạn xây dựng hệ thống của bạn. Viết số sê-ri của mỗi ổ đĩa và ghi lại vị trí của ổ đĩa đó. Ví dụ, trong trường hợp JBOD hai mặt, bạn có thể muốn ghi chú trước / sau, hàng và cột.
  2. Khi bạn khởi động FreeNAS, trong GUI web, hãy chuyển đến "dung lượng lưu trữ> ổ đĩa / xem đĩa". Trên tab đó, bạn nên có một danh sách tất cả các ổ đĩa của bạn và số sê-ri của chúng. Lưu ý tên ổ đĩa được cung cấp cho mỗi số sê-ri bạn có trong danh sách trước đó. Nếu bạn không thấy các số sê-ri, bạn sẽ phải thả vào vỏ và gõ smartctl -a /dev/ada0 | grep ^Serial(thay thế "/ dev / ada0" bằng mỗi tên ổ đĩa trong danh sách)
  3. Bây giờ, tại shell, chúng ta cần ghép các tên ổ đĩa với tất cả các số gptid. Vì vậy, gõ glabel statusvà bạn sẽ nhận được một cái gì đó như thế này ...

    # glabel status
    
    CORRECT>glabel status (y|n|e|a)? yes    
                                          Name  Status  Components  
                                 ufs/FreeNASs3     N/A  ada0s3  
                                 ufs/FreeNASs4     N/A  ada0s4  
                                ufs/FreeNASs1a     N/A  ada0s1a
    gptid/616cddb6-7b7f-11e4-9585-de9b81338d40     N/A  ada0p2  
    gptid/630e1317-7b7f-11e4-9585-de9b81338d40     N/A  da1p1   
    gptid/6557b52d-7b7f-11e4-9585-de9b81338d40     N/A  da2p1   
    gptid/667a1318-7b7f-11e4-9585-de9b81338d40     N/A  da3p1   
    gptid/68cadf75-7b7f-11e4-9585-de9b81338d40     N/A  da4p1   
    
  4. Bây giờ viết vào tất cả các số gptid để liên kết chúng với tên ổ đĩa và do đó số sê-ri và vị trí của chúng. Lưu ý : khi bạn thấy một cái gì đó như "da3p1" thì đó là một trong những ổ đĩa được xác định là da3. Danh sách trong GUI web sẽ chỉ hiển thị nhãn "da3" cho đĩa.

Bây giờ, khi có lỗi xuất hiện thông báo đĩa có số gptid xyz có lỗi, bạn sẽ có thể tham chiếu trang tính của mình và biết ổ đĩa nào bạn cần kéo / thay thế.

Tôi biết điều này là quá muộn cho các poster ban đầu; nhưng, có lẽ những người khác sẽ thấy điều này hữu ích.


1
Đối với câu hỏi ban đầu, "trạng thái nhãn" là phần quan trọng. Điều đó sẽ cho phép bạn tìm ra ánh xạ giữa ID lập dị và vật lý.
Brian Knoblauch

Ồ Câu trả lời tuyệt vời, nhưng thật đáng thất vọng khi ZFS không có cách nào phù hợp để theo dõi đĩa.
mikato

5

Những gì bạn cần là tiện ích sas2ircu từ LSI (nay là Avago). LSI duy trì các phiên bản cho FreeBSD, Linux và Windwos. Với FreeNAS, bạn sẽ cần phiên bản FreeBSD.

Để thử nó, bạn sẽ đặt nó trong thư mục / tmp và làm cho nó thực thi trước.

Bước một là khám phá ID của SAS HBA của bạn (ví dụ):

/tmp# ./sas2ircu list
LSI Corporation SAS2 IR Configuration Utility.
Version 19.00.00.00 (2014.03.17)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.


         Adapter      Vendor  Device                       SubSys  SubSys
 Index    Type          ID      ID    Pci Address          Ven ID  Dev ID
 -----  ------------  ------  ------  -----------------    ------  ------
   0     SAS2008     1000h    72h   00h:04h:00h:00h      1000h   3020h
SAS2IRCU: Utility Completed Successfully.

Bước hai sẽ tạo một danh sách tất cả các thiết bị của bạn mà bạn có thể kiểm tra sau:

/tmp# ./sas2ircu 0 display > disklist.txt

Bước 3 đang kiểm tra danh sách đĩa của bạn. Nó sẽ trông tương tự như:

/tmp# vi disklist.txt
LSI Corporation SAS2 IR Configuration Utility.
Version 19.00.00.00 (2014.03.17)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.

Read configuration has been initiated for controller 0
------------------------------------------------------------------------
Controller information
------------------------------------------------------------------------
  Controller type                         : SAS2008
  BIOS version                            : 7.37.00.00
  Firmware version                        : 19.00.00.00
  Channel description                     : 1 Serial Attached SCSI
  Initiator ID                            : 0
  Maximum physical devices                : 255
  Concurrent commands supported           : 3432
  Slot                                    : 4
  Segment                                 : 0
  Bus                                     : 4
  Device                                  : 0
  Function                                : 0
  RAID Support                            : No
------------------------------------------------------------------------
IR Volume information
------------------------------------------------------------------------
------------------------------------------------------------------------
Physical device information
------------------------------------------------------------------------
Initiator at ID #0

Device is a Enclosure services device
  Enclosure #                             : 2
  Slot #                                  : 24
  SAS Address                             : 5003048-0-00d3-a87d
  State                                   : Standby (SBY)
  Manufacturer                            : LSI CORP
  Model Number                            : SAS2X36
  Firmware Revision                       : 0717
  Serial No                               : x36557230
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Enclosure services device
  Enclosure #                             : 3
  Slot #                                  : 0
  SAS Address                             : 5003048-0-00ca-7bfd
  State                                   : Standby (SBY)
  Manufacturer                            : LSI CORP
  Model Number                            : SAS2X28
  Firmware Revision                       : 0717
  Serial No                               : x36557230
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Hard disk
  Enclosure #                             : 4
  Slot #                                  : 0
  SAS Address                             : 5003048-0-00d3-a8cc
  State                                   : Ready (RDY)
  Size (in MB)/(in sectors)               : 1907729/3907029167
  Manufacturer                            : ATA
  Model Number                            : WDC WD20EARS-00M
  Firmware Revision                       : AB51
  Serial No                               : WDWCAZA1037887
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Hard disk
  Enclosure #                             : 4
  Slot #                                  : 1

Bước 4 là xác định ổ đĩa bị lỗi của bạn - bạn sẽ biết thông tin nào bị thiếu hoặc bị hỏng được báo cáo trên ổ đĩa. Nhận Bao vây # và Khe cắm # và sử dụng chúng để nháy đèn LED trên khay ở bước 5: Để xác định vị trí bao vây # 4, Khe cắm số 0

 /tmp# ./sas2ircu 0 locate 4:1 ON

Để tắt đèn LED sau khi thay thế:

/tmp# ./sas2ircu 0 locate 4:1 OFF

Tôi hi vọng cái này giúp được!


một số hệ thống freeNAS có thể cần sas3ircu
Brian Minton

2

Nhìn vào các tập.

Chọn Âm lượng đã xuống cấp.

Ở cuối màn hình của bạn có ba lựa chọn ... nhấp vào Trạng thái âm lượng

Bây giờ bạn sẽ thấy một bản tóm tắt của âm lượng và các ổ cứng riêng lẻ được liệt kê một cái gì đó như ada3p2, ada5p2, ada6p2, ada4p2, v.v.

Chọn Ổ đĩa xuống cấp.

Ở dưới cùng của màn hình của bạn, bạn sẽ thấy hai tùy chọn; Chỉnh sửa đĩa và thay thế

Chọn Chỉnh sửa đĩa

Bây giờ bạn sẽ thấy số sê-ri của đĩa bị xuống cấp.

Tắt máy chủ FreeNAS của bạn và tìm đĩa đó.


Đây phải là câu trả lời chính xác, Khi tôi làm điều này, tôi đã tìm thấy một danh sách đầy đủ của tất cả các serial được đính kèm, do đó, cái không được đính kèm phải là cái bị lỗi! Cảm ơn rất nhiều @ wri7913
Delta_zulu

1

Điều này giả sử bạn có một trường hợp có đèn HD riêng (còn gọi là vỏ máy chủ)

Tìm danh sách cho ổ đĩa đó là xấu. Ví dụ / dev / da9, /dev/sda...etc

Ngoại tuyến đĩa đó bằng cách sử dụng các lệnh thiết bị đầu cuối GUI hoặc FreeNAS.

Thực thi DD để đọc đĩa đó thành / dev / null trong khi bạn nhìn vào phía trước máy chủ để biết ánh sáng đang nhấp nháy điên cuồng.

sudo dd if=/dev/da# of=/dev/null

Lưu ý vị trí của đĩa, hủy lệnh DD (ctrl-c), sau đó đi về phương pháp thay thế của bạn. Đối với freeNAS, tải đĩa mới lên, sau đó nhấp vào nút Thay thế GUI và hoàn tất quy trình đó. Khi hoàn thành, loại bỏ ổ đĩa xấu và làm bất cứ điều gì bạn muốn với nó. Kiểm tra thêm, Bảo mật Xóa nó, phá hủy vật lý, gửi đi để sửa chữa bảo hành ..... vv.


0

cách dễ nhất tôi tìm thấy.

nhấp vào lưu trữ bấm xem ổ đĩa.

kéo một cáp sata ra. in nhãn với ổ đĩa bị thiếu từ đĩa xem aka nhãn dính ada1 sang bên ổ đĩa.

kết nối lại ổ đĩa. kéo cáp sata thứ hai ra khỏi nhãn in ada2 vv

sau đó khi một ổ đĩa bị lỗi bạn biết ada2 của nó

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.