3ware RAID kontrolleri kasutamine

Allikas: Kuutõrvaja

Kontrolleri arvutisse paigaldamine

Amcc-9690sa-pers-1.jpg

Kaasaegsetes Linuxi tuumades sisaldub paljude 3ware kontrollerite tugi daiveri 3w-9xxx näol. Kontrolleri paigaldamiseks tuleb see lihtsalt arvutisse ühendada ning omakorda ühendada kontrolleri külge füüsilised kettad.

Alglaadimisel annab kaardi BIOS võimaluse arvuti startimine peatada ning siseneda klahvikombinatsiooni <Alt+3> vajutamisel haldusliidesesse, kus saab ühendatud ketastele seadistada lihtsalt sobiliku raidi skeemi.

4.jpg

Linuxi alglaadimisel võiks paista dmesg'i sellised teated

 scsi0 : 3ware 9000 Storage Controller
 3w-9xxx: scsi0: Found a 3ware 9000 Storage Controller at 0xd8840000, IRQ: 169.
 3w-9xxx: scsi0: Firmware FE9X 2.02.00.011, BIOS BE9X 2.02.01.037, Ports: 8.
 Vendor: 3ware     Model: Logical Disk 00   Rev: 1.00
 Type:   Direct-Access                      ANSI SCSI revision: 00
 ...
 Probing IDE interface ide0...
 SCSI device sda: 2343684096 512-byte hdwr sectors (1199966 MB)
 sda: Write Protect is off
 sda: Mode Sense: 23 00 00 00
 SCSI device sda: drive cache: write back, no read (daft)
 SCSI device sda: 2343684096 512-byte hdwr sectors (1199966 MB)
 sda: Write Protect is off
 sda: Mode Sense: 23 00 00 00
 SCSI device sda: drive cache: write back, no read (daft)
 sda: sda1
 sd 0:0:0:0: Attached scsi disk sda

Ning edaspidi on kontrolleri külge ühendatud kõvakettad kasutavad ning paistavad operatsioonisüsteemi poolt vaadatune ühe RAID seadmena, antud näite puhul nagu /dev/sda.

Kontrolleri seadistamine

Kontrollerit saab seadistada tootja koduleheküljel http://www.3ware.com/ jagatava utiliidi tw_cli abil, nt öeldes saab näha seadme seisundit

 # tw_cli /c0/u0 show all
 /c0/u0 status = OK
 /c0/u0 is not rebuilding, its current state is OK
 /c0/u0 is not verifying, its current state is OK
 /c0/u0 is initialized.
 
 /c0/u0 volume(s) = /c0/u0 name = /c0/u0 serial number = 
 Unit     UnitType  Status         %Cmpl  Port  Stripe  Size(GB)  Blocks
 -----------------------------------------------------------------------
 u0       RAID-5    OK             -      -     64K     1117.56   2343684096  
 u0-0     DISK      OK             -      p0    -       372.519   781228032   
 u0-1     DISK      OK             -      p1    -       372.519   781228032   
 u0-2     DISK      OK             -      p2    -       372.519   781228032   
 u0-3     DISK      OK             -      p3    -       372.519   781228032

Reeglina on mõttekas kontrolleri cache sisse lülitada, nt kasutades tw_cli utiliiti interaktiivselt

# tw_cli
keskus> /c0/u0 set cache=on
...

Hotspare lisamiseks, kus p on ketta number.

$ tw_cli /c0 add type=spare disk=p  

tw_cli utiliidi alternatiivset paigaldamist nö era-repositooriumist kirjeldatakse aadressil http://wiki.debian.org/LinuxRaidForAdmins.

Kontrolleri külge ühendatud kõvaketaste seisundi monitooring

Kontrolleri külge ühendatud kõvaketaste seisungi jälgimiseks sobib kasutada smartmontools paketist http://kuutorvaja.eenet.ee/wiki/Smartmontools programmi smartctl. Smartctl esitab tavapärane väljundi nagu otse sata või ide kontrolleri külge ühendatud kõvaketta puhul, näites toodud arv 3 märgib, et infot küsitakse RAID massiivi neljanda füüsilise ketta kohta

 # smartctl -a -d 3ware,3 /dev/twa0
 ...
 === START OF INFORMATION SECTION ===
 Model Family:     Seagate Barracuda 7200.8 family
 Device Model:     ST3400832AS
 Serial Number:    5NF0E5BV
 Firmware Version: 3.03
 User Capacity:    400,088,457,216 bytes
 Device is:        In smartctl database [for details use: -P show]
 ATA Version is:   7
 ATA Standard is:  Exact ATA specification draft version not indicated
 Local Time is:    Tue Jul 15 22:47:17 2008 EEST
 SMART support is: Available - device has SMART capability.
 SMART support is: Enabled
 
 ...
 Vendor Specific SMART Attributes with Thresholds:
 ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
   1 Raw_Read_Error_Rate     0x000f   062   043   006    Pre-fail  Always       -       148851807
   3 Spin_Up_Time            0x0003   097   097   000    Pre-fail  Always       -       0
   4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       7
   5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
   7 Seek_Error_Rate         0x000f   086   064   030    Pre-fail  Always       -       466931612
   9 Power_On_Hours          0x0032   071   071   000    Old_age   Always       -       25442
  10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
  12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       10
 194 Temperature_Celsius     0x0022   033   040   000    Old_age   Always       -       33 (Lifetime Min/Max 0/18)
 195 Hardware_ECC_Recovered  0x001a   062   043   000    Old_age   Always       -       148851807
 197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
 198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
 199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
 200 Multi_Zone_Error_Rate   0x0000   100   253   000    Old_age   Offline      -       0
 202 TA_Increase_Count       0x0032   100   253   000    Old_age   Always       -       0
 
 SMART Error Log Version: 1
 No Errors Logged
 ...

Kontrolleriga ühendatud füüsiliste ketaste testimine

 # smartctl -t short -d 3ware,3 /dev/twa0

Tulemusena jääb kõvaketas nö lühikest testi sooritama ning kui mõne minuti pärast küsida, siis saab teada kuidas test lõppes või veel käib

 # smartctl -a -d 3ware,3 /dev/twa0
 ...
 SMART Self-test log structure revision number 1
 Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
 # 3  Short offline       Completed without error       00%     30757         -
 # 4  Short offline       Completed without error       00%      6167         -
 # 5  Short offline       Self-test routine in progress 30%     30757         -

Kontrolleri monitoorimine ja haldamine 3dm2 tarkvaraga üle veebi

3dm2 on 3ware weebipõhine kasutajaliidese tarkvara ,et kontrollida raidi kaardi/kaartide staatust ja muuta konfiguratsiooni ning jälgida logisid. Toimib see serveri teenusena ning sisaldab ka emailile probleemidest teavitamise võimalust andes nii objektiivselt kiiret teavet olulistest ketta või raua tõrgetest.

Palju levinud distributsioonides on see juba pakihalduses olemas, näiteks FeeBSDs portsude harus sysutils/3dm

kui ei siis saab ta hankida ka tootjalehelt ja paigalda vastavalt seal leiduvale juhendile http://www.3ware.com/support/download.asp

Seadistusfail asub teenusel /etc/3dm2/3dm2.conf kus saab panna pordi parooli ja emaili, millele saadetakse raporteid kettavigade kohta.

3dm2 töötab süsteemis teenusena, selle saabskriptiga /etc/init.d/3dm2 ja pöörduda vastavale https://localhost:888 mis seadistatud vaikimisi toimima. Vajadusel tuleb vastaval pordil avada ka tulemüür.

Kaader 3ware seadistusliidesest

Amcc-3ware-create-4.gif

Parool on peale installi nii user kui administrator kasutajal 3ware

JBOD kasutamine

Üldiselt peab JBOD (Just A Bunch Of Disks) režiimi kasutamisel olema ettevaatlik, tundub, et erinevate tootjate puhul tähistab see erinevaid asju

  • kõik JBOD koosseisu märgitud kettad esitatakse ühe järjestikulise loogilise kettana
  • kontroller töötab JBOD koosseisu märgitud ketaste jaoks nö tavalise sata kontrollerina

Tundub, et nt 9500S-8 kaart käitub teise variandina

# dmesg | grep Direct-Access
[    3.452229] scsi 0:0:0:0: Direct-Access     3ware    Logical Disk 00  1.00 PQ: 0 ANSI: 0

ning ketas paistab nt selline

# parted /dev/sda p
Model: 3ware Logical Disk 00 (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt 

Number  Start   End     Size    File system  Name      Flags
 1      1049kB  2097kB  1049kB               biosboot  bios_grub
 2      2097kB  539MB   537MB                boot
 3      539MB   2000GB  2000GB               data      raid

Seejuures tuleb arvestada, et kuna ketas muutub nähtavaks tänud 3w_9xxx moodulile, siis tõenäoliselt arvuti ei oska selliselt kettalt operatsioonisüsteemi alglaadida.

Readahead Linuxis

3Ware kaartidel kasutades vaikimisi blockseadme seadeid võib olla lugemiskiiruse jõudlus nõrk. Näiteks lugemiskiirus vaikeseadistustes 10GB lugemisel ei pruugi minna üle 40MB/s. 3Ware soovitab ise muuta redhead seadistus süsteemides, et kus väiksed failid 16384 peale (vaikimisi 256). Mõnel juhul on see tõstnud lugemiskiiruste näitajaid 400MBni.

Parasjagu kehtestatud redhead numbri nägemiseks tuelb kasutada blockdev käsku:

$ blockdev --getra /dev/sdX

Näiteks:

$ blockdev --getra /dev/sda
256

Selle muutmiseks:

$ blockdev --setra 16384 /dev/sda

is it ok/safe/recommended to use exact number from HD BuffSize as a parameter for setting readahead in blockdev:

Replaced a drive in a 3ware raid and on 3dm2 i saw the message “UNSUPP DCB” This can happen with drives that were used in another RAID. To fx this i selected the drive (on maintenance page) remove drive, rescan controller, problem solved.