Thursday, 19 May 2011

Netapp Disk Sanitization

I've been using a loan SAN from Netapp that I need to return.

During my attempts to sanitize the disks I removed some shelves that aren't being returned which caused a cluster failover (I didnt care!)

However the cluster licence had expired.. Long story short, I was at home and needed to kick this disk sanitizer off so it could run over the weekend, and I couldnt be bothered to go back into the office.

One filer was accesible and one wasnt so.. I added the eval cluster licence to the working node and did a cf giveback -f (which got it out of the takeover state)

I then needed to change the ownership of the disks (the purpose of this post).. so after a lot of head scratching I tried the privledged mode commands and got a working solution!

I ended up doing the following:

options disk.auto_assign off (probably didnt need to do this - force of habit)

priv set advanced
disk remove_ownership -f 0a.121 0c.123 etc
priv set
disk assign all
disk sanitize start -c 7 0a.121 0c.122

Update: The sanitization finished, so I wanted to run another set to keep our security guys happy, I ran the same sanitize command again, hoping it would
just happily run again, no such luck - "disk start: isn't a spare disk.". I then ran "disk assign all", this didn't work either it reported
"disk assign: Could not find any unowned disks to assign."

Running "Disk Show" showed all the disks that had been sanitized reported as being failed. hmm.. ok..
"Priv set advanced"
"disk unfail -s"
disk unfail: Can't unfail a sanitizing/sanitized disk.

Ok.. quick look at some documentation and you need to release the disk from the maintanance pool..

"disk sanitize release"

I then attempted "disk assign all" however it then reported that the disks had bad labels, hmm ok..
again I then did "disk unfail -s" which now worked as they all were added as spare disks..

I was then able to start the process over again, once this completes I will also zero the spares.

Tuesday, 10 May 2011

Syncing Files with

This is a breif update to my rant the other day, I went away and looked at methods for doing what I wanted to achieve without having to rely on freeware utilities, scripts and reinventing the wheel.

Anyway whilst looking to see if there was anything available for .Net using RDC (Remote Differential Compression), My reason behind this was just because I have plenty of bandwidth (Over 1 gig) there was no reason to be sloppy. Google turned up the Microsoft Sync Framework SDK which looked just what I was after.

Ten lines of code or so later and I was able to sync a couple of folders locally which was a good step forward.

The next part it to watch the folder and trigger the sync which I am currently playing with the filesystemwatcher class.

I plan to post an update shortly when I've dealt with locked files etc!

Thursday, 5 May 2011


Well that will teach me not to test things properly, I was working on the assumption that I could use DFS-R to replicate some data from two servers in serperate DMZ's for resilience. Think again as 2008 R2 DFS-R seems to want the server to be a domain member, thanks MS!. So much for a standalone namespace. Back to the drawing board and I suspect I'll be looking at .NET and RDC if its supported!.

Hmm, I've got until monday and I'm not working tomorrow.. so a late night tonight maybe, or a rough and ready robocopy script scheduled to buy a little time, however those rough and ready 'work around' bodges have a nasty habit of becoming permanent and biting you in the arse in months or years to come!

Update: Looks like the Sync Framework is going to be the easiest way of doing this.