3ware controller
CLI tools
tw_cli
- install tw_cli
- tw_cli has an interactive mode also
- dispaly all controllers
./tw_cli show Ctl Model Ports Drives Units NotOpt RRate VRate BBU ------------------------------------------------------------------------ c0 9550SXU-16ML 16 16 3 1 1 1 OK
- display detailed info of the controllers
./tw_cli /c0 show all
- show last messages
./tw_cli /c0 show alarms
Problem solving
Incomplete unit detected
- the cause of this is eg a broken disk or a disk that lost connection with the controller
c0 [...] WARNING Incomplete unit detected: unit=1
- check further messages for if rebuild was sucesful (in case of raid5+hot spare)
c0 [...] INFO Rebuild started: unit=1 c0 [...] INFO Rebuild completed: unit=1
- try to locate the disk
- be careful when doing this. best way is to fake activity (on both raid and system disks) and check the activity leds of the disks to see which one is missing!
- unplug and replug the disk
- check messages if it was detected
c0 [...] INFO Drive inserted: port=12
- if the disk was broken, get a new one first!
- if it was only a connection lost, the drive will reappear as a INOPERABLE raid unit (eg u2 in the following example)
Unit UnitType Status %RCmpl %V/I/M Stripe Size(GB) Cache AVrfy ------------------------------------------------------------------------------ u0 RAID-1 OK - - - 74.4951 ON OFF u1 RAID-5 OK - - 64K 5587.82 ON OFF u2 RAID-5 INOPERABLE - - 64K 5587.82 OFF OFF
- this is not the real raid setup, the controller just detected that the disk was part of a raid set before
- you need to remove the INOPERABLE unit
- doublecheck the name of the unit!! (in the example only disk 12 is part of the unit)
./tw_cli /c0/u2 show Unit UnitType Status %RCmpl %V/I/M Port Stripe Size(GB) ------------------------------------------------------------------------ u2 RAID-5 INOPERABLE - - - 64K 5587.82 u2-0 DISK DEGRADED - - - - 465.651 u2-1 DISK DEGRADED - - - - 465.651 u2-2 DISK OK - - p12 - 465.651 u2-3 DISK DEGRADED - - - - 465.651 u2-4 DISK DEGRADED - - - - 465.651 u2-5 DISK DEGRADED - - - - 465.651 u2-6 DISK DEGRADED - - - - 465.651 u2-7 DISK DEGRADED - - - - 465.651 u2-8 DISK DEGRADED - - - - 465.651 u2-9 DISK DEGRADED - - - - 465.651 u2-10 DISK DEGRADED - - - - 465.651 u2-11 DISK DEGRADED - - - - 465.651 u2-12 DISK DEGRADED - - - - 465.651 u2/v0 Volume - - - - - 5587.82
- remove the unit
./tw_cli /c0/u2 del Deleting /c0/u2 will cause the data on the unit to be permanently lost. Do you want to continue ? Y|N [N]: Y Deleting unit c0/u2 ...Done.
- reassign the disk to act as a spare
- check the disk name
- in this example the disk is called 12 on port p12
- the Belongs to Unit = N/A part indicates that the disk is not used elsewhere
./tw_cli /c0/p12 show all /c0/p12 Status = OK /c0/p12 Model = WDC WD5000YS-01MPB0 /c0/p12 Firmware Version = 09.02E09 /c0/p12 Serial = WD-WMANU1674499 /c0/p12 Capacity = 465.76 GB (976773168 Blocks) /c0/p12 Identify Status = N/A /c0/p12 SATA Link Speed Supported = 1.5 Gb/s and 3.0 Gb/s /c0/p12 SATA Link Speed = 3.0 Gb/s /c0/p12 NCQ Supported = Yes /c0/p12 NCQ Enabled = Yes /c0/p12 Belongs to Unit = N/A /c0/p12 Drive Smart Data: 10 00 01 0F 00 64 FD 00 00 00 00 00 00 00 03 03 00 DF DF B8 16 00 00 00 00 00 04 32 00 64 64 09 ...
- set the disk as spare
./tw_cli /c0 add type=spare disk=12 Creating new unit on controller /c0 ... Done. The new unit is /c0/u2.
- check the result
./tw_cli /c0 show Unit UnitType Status %RCmpl %V/I/M Stripe Size(GB) Cache AVrfy ------------------------------------------------------------------------------ u0 RAID-1 OK - - - 74.4951 ON OFF u1 RAID-5 OK - - 64K 5587.82 ON OFF u2 SPARE OK - - - 465.753 - OFF ...
- if the disk was a datadisk, all is ok
- if it was an operating disk that was broken, a datadisk will be used a spare for the RAID1
- but using the new spare disk won't work as a spare for the datadisks (as the size is lower)
- you need to locate the datadisk of the OS RAID1 and disable it, eg by removing it
- make sure there are 2 OS disks!!
- the new spare will be used to rebuild the RAID1
- reinsert the datadisk disk and repeat the above procedure to reassign it as a spare disk