perjantai 4. helmikuuta 2011

Netapp: How to hot-remove disk shelf

AFAIK, this is non-supported feature, so don't do this at home.

It's possible to hot-remove disk shelf without shutting down entire head or metrocluster. Document says you should shut down all heads before removing a disk shelf. Here are instructions how to do it (at least one way to do it), if you want to try it. Don't blame me if it fails :) And this was done with ontap version 7.3.3. If I remember correctly, there was some bug on version 7.3.1.1 which might make your head to panic on certain situation, so maybe it's better to upgrade before doing this.

So, first decide which shelf (shelves) you want to remove. First step is to empty that aggregate, so:

Step 1) Offline and destroy all LUNs (if you have any)
Step 2) Offline and destroy all Volumes
Step 3) Offline and destroy your aggregate -> this will move all disks as spare disks
you can see this by typing 'vol status -s'

Now it's getting more intresting.. (frightening) :)

I'm not sure if you have to do zeroing/removing ownership before unplugging a shelf, but at least it helps a bit if you're re-using that shelf.

Step 4) You might want to zero all spares before re-using these:

toaster*> disk zero spares

Step 5) remove all ownerships from shelf (example)

Before removing ownership, you might want to disable disk.auto_assign option (otherwise head might get ownership back). Just remember to enable it again after shelf removal.

toaster*> options disk.auto_assign off

Check spare disks:

toaster> vol status -s

Spare disks

RAID Disk       Device  HA  SHELF BAY CHAN Pool Type  RPM  Used (MB/blks)    Phys (MB/blks)
---------       ------  ------------- ---- ---- ---- ----- --------------    --------------
Spare disks for block or zoned checksum traditional volumes or aggregates
spare           v5.32   v5    ?   ?   FC:B   -  FCAL  N/A  1020/2089984      1027/2104448

If you have lot of them be careful here and select correct ones.

And when you're ready to remove ownership, you need set advanced privileges.

toaster> priv set advanced
toaster*> disk remove_ownership v5.32
Disk v5.32 will have its ownership removed
Note: Disks may be automatically assigned to this node, since option disk.auto_assign is on.
Volumes must be taken offline. Are all impacted volumes offline(y/n)??

Do this for every disk on shelf.

WARNING: There's a possibility to use * -sign on disk-id. It won't ask any confirmation, so be careful with this one. Example: disk remove_ownership v5.*

Step 6) Now you can take unplug all FC-cables from shelf. You can do this from shelf or head or from switch. 

This will generate a whole bunch of errors and head itself feels quite bad but she's going to be ok after 10-15 mins. 

That's it.

1 kommentti:

  1. Nice post Toni!

    My only add-ons would be:

    1) If using MetroCluster could be advisable to verify that disk shelf counting is disabled by entering the following command:

    options cf.takeover.on_disk_shelf_miscompare

    2) A 'disk show -n ' at the end before disconnecting the shelf should show all your unowned FC disks

    Other than that...done!

    VastaaPoista