8

This is dangerously close to question 18957, but it isn't quite the same.

One of my logical drives on my P410i is a single disk RAID 0 (because I was short sighted at the time). It's now warning about imminent failure, and I'm looking for an easy way to fix it. (I have backups, but I want to avoid the downtime (don't troll, remember I said I was short sighted?) of doing this the "right way")

My plan, if possible, would be to make this RAID 0 into a RAID 1, add a matching drive to the RAID 1, let the controller rebuild it, pull the dead drive, and have a proper RAID 1 in the end. I'm just wondering if I can do step 1.

More Specs:

  • HP DL360
  • Smart Array P410i
  • Dead drive is a 146GB 10kRPM (also my / drive :( )
  • Installed OS is Ubuntu 10.04
  • hpacucli is installed and available.
3
  • Someone on IRC gave me the following link that looks like my actual question, right down to the hard drive size. h30499.www3.hp.com/t5/System-Administration/…
    – mwalling
    Nov 10, 2011 at 14:20
  • 3
    On a side note: Do a full backup. NOW. Replicating a disk with known failures is going to wear the disk faster.
    – pauska
    Nov 10, 2011 at 14:30
  • Weekly backups! (Also, the server config is backed up, so total loss if the backup fails to restore is time to reinstall)
    – mwalling
    Nov 10, 2011 at 15:23

3 Answers 3

5

I'm not sure if you've completed this yet, but this is definitely possible, assuming your Smart Array controller has a battery or flash-back cache unit (needed for all RAID-level tranformations/expansions). The disk described in the original problem is a drive pre-failure (either from S.M.A.R.T. status or other detection method). It has not failed yet. You may even have a blinking amber light on the drive, versus the solid amber indicating failure.

I prefer doing expansions via the graphical HP Online Array Configuration utility enabled by (cpqacuxe -R and browsing to https://server.ip:2381) if you have the full set of HP Management Agents installed. But if that's not available, the hpacucli command-line utility will work as well.

You're basically going to run this in two steps. Add the new disk(s) to the existing logical drive, then optionally expand the logical drive. Going from RAID 0 to RAID 1 really only gives the option of adding a disk and changing the logical drive's redundancy level.

Enter hpacucli and run ctrl all show config

Grab the controller slot number and logical drive ID. Say it's the onboard controller, slot=0.

ctrl slot=0 ld 1 add drives=allunassigned

From there, you can modify the logical drive to change its redundancy level (although this may be automatic in this specific case).

ctrl slot=0 ld 1 modify raid=1

3
  • 2
    I've just tried this on a P410i and it seems that adding the unassigned drive reshapes the array as a two-drive RAID 0. I tried modifying the level to RAID 1 first, but that was unsupported. Is there a way to tell it to change to raid 1 in degraded mode first?
    – Paul Gear
    Jan 29, 2015 at 1:14
  • You change the RAID level after the new disk is added and the transformation is complete.
    – ewwhite
    Jan 29, 2015 at 1:28
  • 1
    That's a non-ideal situation given that @mwalling's original problem was that the drive was in pre-failure state. It would be much better if there was a way to add the redundancy before exercising the bad drive so much. I spent some time poking around in hpacucli yesterday and couldn't find any way... :-(
    – Paul Gear
    Jan 30, 2015 at 2:26
2

I'm not 100% sure about doing this with that model of hardware controller, you'd have to RTM, but you can certainly do this with mdadm and make a software RAID 1 on the fly.

Alternatively, you can get two additional disks and make them into a hardware RAID 1 on the controller and just use dd to copy disk 1 on to the new array. Then you can remove the failing disk and have a hardware RAID 1.

7
  • Yeah, your alternative was what I was avoiding, but knew was possible... I just wanted to avoid going down (or degraded level of service) while I did the copy.
    – mwalling
    Nov 10, 2011 at 14:31
  • @mwalling You would only be down during the reboot. Something like dd will put similar stress on the drives as a rebuild, so performance would suffer no matter what. The downtime of a reboot is nothing compared to a restore, and totally worth it, IMO, if it means correcting a single-disk dependency. You could always ionice it, but I wouldn't recommend that. You want to get the clone done as fast as possible.
    – MDMarra
    Nov 10, 2011 at 14:33
  • 1
    dd a live file system? shudder
    – mwalling
    Nov 10, 2011 at 15:03
  • And by degraded level of service, I meant things like shutting down WWW or the DB because they're upset about / being mounted read only.
    – mwalling
    Nov 10, 2011 at 15:08
  • @mwalling Good points. For some reason, I had it in my head that it was static content on the server.
    – MDMarra
    Nov 10, 2011 at 15:17
0

Do you need to use the controller ?

I.e. does it offer distinct advantages over using software raid, such as BBWC or hardware XOR calculations (which are not used by RAID-1, but meh) ?

If not, set up a one-disk RAID-1 in mdadm (a degraded mirror), copy all the data from the RAID-0 disk, and add the disk to the RAID-1 set.

Simple.

EDIT: if you do want to use the controller, just copy all data to the spare disk, then set up a degraded mirror on the hardware controller.

The principle remains the same.

3
  • 2
    The P410i is BBWC protected.
    – mwalling
    Nov 10, 2011 at 15:06
  • Hi there mwalling :)
    – adaptr
    Nov 10, 2011 at 15:07
  • The advantage of doing this in the controller (if it's supported) is that it doesn't require any data copying - it could be done online.
    – Paul Gear
    Jan 29, 2015 at 1:00

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .