Skip to content


The Brave Little Toaster

For obvious legal reasons, probably “The Valiant Young Toaster” ;)

I’ve always quite enjoyed simple comic strips, Calvin & Hobbes, Dilbert, Farside and online ones like Penny Arcade. I have always toyed with the idea of creating one myself, but always lacked inspiration and artistic talent. I asked my good lady (who is very talented in the artistic department) to mock up a quick character for me, and I wanted to see what people think? I have a few ideas for plot lines and stories, but whether people are interested or not, it’s nice to have a creative moment aside from a technical day job!

But thought I’d post it here to get peoples feedback and maybe give me some encouragement to develop this idea a little more!

or Valiant Young Toaster

or Valiant Young Toaster

VN:F [1.4.7_740]
Rate this post:
Rating: 10.0/10 (1 vote cast)

Posted in General.

Tagged with , , , , .


ONTAP Install / Re-initialize

This is meant as a very quick guide to installing ONTAP onto disks that do not have an operating system already, or destroying an existing set of disks and re-installing ONTAP from scratch. Remember that this process is very destructive, any data on any disks attached to the system will be completely wiped and re-initialised. If you have disks that you want to attach to this system, but they also have data you want to keep on them, please make sure you leave them detached from the system until you have finished the disk initialisation process!

You will need a console connection to the sytem for most of the process, I’d recommend for all of it to be honest. You will have a filer head, and a shelf of disks. If this is going to be a cluster and you have software ownership enabled, then I’d first get the systems connected to their own disks and get ONTAP installed before you complete the full cluster cabling or any HA cabling.

If you just need to upgrade the installation of ONTAP, checkout ONTAP Upgrades.

If the system does not have a base installation on the Compact Flash card already, then you will need to first NetBoot the system.

When the system boots, you will be prompted to break the boot sequence (either CTRL+C or any key), shortly after this and the system POST checks, it’ll start loading the ONTAP version that is on the Compact Flash card. At this point you will be prompted to press CTRL+C to get special boot options made available. You’ll want to be watching as you want to catch this prompt, so hit CTRL+C. When the system has finished it’s POST checks, you’ll be warned about the partner if this is / was configured as a cluster, agree to this so long as you are sure you are ready!

Now the options you have a choice of here are either 4, or 4a. 4 will re-initialise all the disks with a traditional volume (that is, vol0, the system volume, will be striped across 3 dedicated disks). 99% of the time you will want to choose option 4a and re-initialise all the disks with a new aggregate and a new FlexVol. There is very little options to supply at this point, suffice to agree that you really do want to destroy all your data and re-initialise the disks.

Once the process is complete (it will give a fair estimate on the time it will take), you will be taken through a basic NetApp setup wizard, at which point you get to setup the filer clean. One more reboot and you now have your fresh clean system ready to add disks to your aggregate and put data on. Enjoy!

VN:F [1.4.7_740]
Rate this post:
Rating: 7.5/10 (2 votes cast)

Posted in General, Maintenance Mode Commands.

Tagged with , , , , , .


Spares FAQ

I’ve seen a few search hits over the past weeks for spares, making spares, removing spares, disable spares and so on, so I thought I’d put down a quick FAQ on the subject. I will add to this as more searches come up, or if people ask specific questions.

How do I make new spares?

Any disk in your system, that is owned but has no data on it will be marked as a spare disk. Most systems have disk auto-assign enabled, but you can do a “disk assign <disk_id>” to do it hard. Be careful to get the <disk_id> correct as there are ways to override the protection and remove disks from a partner!

You cannot remove disks from an aggregate! This is very important, so grow your aggregates with caution, it’s easy to grow, impossible to shrink. If you’ve grown your aggregate too much then you’ll need to destroy it to regain those spares (that’s a bummer!).

If a disk has been moved around, or previously had data on it, you’ll need to zero it. “disk zero spares” does the job, depending on the size of the disk will depend on how long it takes, usually no more than 4 hours even for the largest of disks (at time of writing, 1TB disks).

How do I remove spares?

This depends what you are removing them for. Adding them in to an aggregate, just a simple case of “aggr add ….”. To remove them from the system, you can pretty much just hot pull it out. Disable autosupport first though, or you’ll probably get a replacement in the post ;). To swap them accross systems, you can use “disk remove_ownership <disk_id>” and then on the newer system “disk assign <disk_id>”, or if you’re lazy, “disk assign all”!

How do I disable spares?

Very simple, you can’t :(. The system needs protection, so much the same as the police will stop you for not wearing a seatbelt, despite your disregard for your own life, they will still stop you. The filer is a policeman! Regardless of your disregard for data protection, or perhaps your need for that extra little bit of space, the filer will complain constantly if you don’t have any hot spares. You will need at least 1 per disk type. That is, if you have FC and SATA, you will need at least one of each. If you have FC 10k and FC 15k, you can get away with only 1 FC 15k as it will slow down to 10k, but you cannot get away with just 1 FC 10k as it won’t be able to keep up with the rest.

Why does the GUI force me to have 2 hot spares?

This is the urban legen I’m told. NetApp engineering discovered that somewhere around 70% of returned disks only had soft errors and could easily be used for another year or so. Don’t quote me on the numbers there, but suffice to say it was a lot. A quick low-level format of the disk and reloading with firmware and the disk was ready to go back into production!

So NetApp built in this functionality into the storage controller. The Disk Maintenance Garage will take a failed disk, turn it offline and run some low-level diagnostics to see if the disk can be recovered. I’d say 50% of the time it can, and goes back in as a hot-spare! This saves everyone time and money. But just in case, the filer will still do a disk rebuild, and an autosupport will still be sent, and (providing a valid support contract), a disk will still be shipped in replacement. Because the process takes the failed disk offline, you still need 1 hot spare ready in case of double disk failure. So you need 2 hot spares per disk type.

VN:F [1.4.7_740]
Rate this post:
Rating: 10.0/10 (1 vote cast)

Posted in Web Searches.

Tagged with , , , , , .


Locked / Busy Snapshots

This is one of those annoying situations that can cause things to come crashing down when you least expect it.

Locked snapshots can happen for several reasons, the obvious ones are that they are the basis of a SnapMirror or SnapVault update (despite both relying on the snapshots, they will only actually lock a snapshot during an active transfer, you can happily delete the snapshots otherwise and this will destroy the replication relationship, more or less). They can also be because of a vol copy, or for a very brief period a snap restore.

2 of the less obvious, but more common reasons are that of a LUN Clone and a FlexClone. Both in principle are fairly similar, but in practice act very different.

Simply a clone will base itself on a snapshot and then create a sparse clone based on this snapshot, and as such the original blocks of data, hence using no data. The clone can then be split, but 99/100 it will be used for some sort of verification or reporting and then removed.

A LUN Clone is the one that causes us most problems. As said, it creates a clone based on a snapshot, but the clone is created within the volume, and only of a particular LUN. This is infact a very similar concept to that of the new Single File FlexClone available in 7.3. Based on a given snapshot, you will have a new LUN created within the same volume as the parent LUN. This will use no storage, and is great for running verifications, or possibly testing or even reporting.

The problem arises due to the nature of snapshots and the LUN clone. A snapshot takes a copy of the file pointer tables of an entire volume. A LUN clone will create a thin-provisioned clone of the parent LUN within the same volume. So despite using no actual storage, the LUN clone will get snapshotted by any new snapshots taken after the LUN. This is where the problems start. If we now delete the LUN clone, the clone will still exist within a snapshot, so the LUN will still be locked. If you aren’t quick and noticing this issue, you may have a lot of snapshots that are all locking this LUN clone.

The only way to unlock this snapshot is to delete all the subsequent snapshots from within the volume, then you can remove the LUN clone once and for all and the snapshot it is based upon.

Unfortunately this is quite a common occurence with SnapManager verification, often the verify fails, and as such the dismount of the cloned disk (LUN) fails to occur, subsequent snapshots happen and so you can easily get into a locked snapshot scenario quite often. The solution? Either keep a close eye on your verifications, or invest in FlexClone!

So how does FlexClone offer you protection? Well, it creates and clone of the entire FlexVol, and as snapshots are based on the volume, any subsequent snapshots will not contain any information regarding this clone. The clone is based on a single snapshot, so potentially if a verification fails, or you forget to destroy a FlexClone, you can get yourself into a situation where scheduled backups are unable to remove this old snapshot, but this is simple to fix. Either destroy the FlexClone or split it off, the snapshot is then released, and you are back to normal. A lot smoother than LUN Clones!

Unfortunately I still see LUN clones affecting production environments quite often. My recommendation is always to try include FlexClone, or at the very least be very pro-active with monitoring of your backups. FlexClone offers a lot of other benefits besides this, so I feel it is a worthwhile investment.

VN:F [1.4.7_740]
Rate this post:
Rating: 10.0/10 (1 vote cast)

Posted in General.

Tagged with , , , , , .


Permalinks Update

Following some feedback (thanks @CXI), I’ve rejigged the permalinks. Sorry if this causes any issues, but please give me a shout if anything appears broken now.

Now just need to get round to finishing up some of the draft posts I’ve had for a couple of weeks. Busy times at the moment!

VN:F [1.4.7_740]
Rate this post:
Rating: 6.0/10 (2 votes cast)

Posted in General.


mbralign

mbralign has now been added to the NetApp download ToolChest. This is an absolutely vital tool for anyone doing any VMware projects! I’m not actually sure if it checks to see if it’s running on NetApp storage, but obviously will align all partitions to a 4k block boundar, so a useful tool to have in any tool box all the same! Has full support for Windows and Linux as well as Primary and Extended partitions.

http://communities.netapp.com/docs/DOC-2563

VN:F [1.4.7_740]
Rate this post:
Rating: 10.0/10 (1 vote cast)

Posted in NetApp News.

Tagged with , , .


Preview of NetApp Host Utilities v6

Finally a proper plugin to vCentre. This looks very cool, and obviously will avoid the limitations of the COS in ESXi and vSphere. I hope we can expect this soon!

 http://www.youtube.com/watch?v=CjEe0boc7bc

VN:F [1.4.7_740]
Rate this post:
Rating: 8.0/10 (1 vote cast)

Posted in NetApp News.

Tagged with , , , .


What is the Cloud?

I’m looking for some input and discussion around Cloud Computing and what people (real people) think it means and how they think it will affect them. I work in a heavy Sales environment and everyone is constantly talking about it as it has such a buzz at the moment. I’m looking for some feedback and honest opinions from people, whatever it may be.

Follow up with some input over at the NetApp Communities - http://communities.netapp.com/message/10087

Cheers!

VN:F [1.4.7_740]
Rate this post:
Rating: 10.0/10 (1 vote cast)

Posted in General.

Tagged with .


NetApp Save Config Command

I think it’s very important to save a config of a good setup. Firstly it’s a great reference if you ever need to go back and refer to things, secondly it’s a great way to show what you did was actually correct and that you did configure things correctly from the start!

There is a handy tool provided within ONTAP to do entire config dumps, compares and restores. This is limited to the filers base configuration and doesn’t necessarily include areas like volume setup.

b2net-filer01> config
Usage:
config clone <filer> <remote_user>
config diff [-o <output_file>] <config_file1> [ <config_file2> ]
config dump [-f] [-v] <config_file>
config restore [-v] <config_file>

The command is very simple and straight forward. You start by dumping out the configuration from the filer. This automatically goes into /etc/configs. From here you can then clone the config if needed, or compare (diff) the config. Running diff is a very good way of comparing a config between 2 points in time, if you aren’t sure what has changed, or even if you are comparing a filer upgrade and you copy the config files between the 2 systems (checkout [cref netapp-file-copy]). And finally you can also use the restore feature, although this would probably require a reboot, and may have a knockon affect to what may or may not be required in various other config files within /etc.

Overall a very useful command. I use this most for taking backups of filer configs and comparing them between similar systems (for instance primary and DR), or even comparing configs over time.

VN:F [1.4.7_740]
Rate this post:
Rating: 10.0/10 (1 vote cast)

Posted in Command Line.

Tagged with , , , , .


NetApp File Copy

It always comes up, how can I copy single files, or large areas directly from the NetApp console? Generally the answer comes back, you can’t, use RoboCopy or rsync or another file migration tool. However there are definitely ways of copying files around directly from the filer itself, and often this is the most efficient way of doing it! However, these aren’t the most intuitive or well documented commands.

There may be other methods, and if you have something you have used in the past or you know of, please feel free to share! Not all methods are suitable for all tasks, but each has it’s own individual uses.

ndmpcopy

This is often overlooked as a file / folder copy command, and is often just used to migrate entire volumes around. In fact it can be used to copy individual folders or filers around, and even better can be used to copy data to other filers! Make sure ndmp is enabled first (ndmpd on). The syntax is quite simple…

ndmpcopy /vol/vol_source_name/folder/file /vol/vol_dest_name/file

Just to break this down, we are choosing to copy a filer from “/vol/vol_source_name/folder” and we want to copy it into “/vol/vol_dest_name”. This isn’t too restrictive, we don’t have to keep the same path, and we can even copy things about in the same volume (such as copying things into QTrees if you need). You can copy things from an entire volume, to a single QTree, down to single folders way down in the directory tree. The only real restriction is you cannot use wildcards, and you cannot select multiple files to copy.

If you want to copy files from one filer to another, we simply extend this syntax…

ndmpcopy -sa <user>:<pass> -da <user>:<pass> source_filer:/vol/vol_source_name/folder/file destination_filer:/vol/vol_dest_name/file

Replace <user> and <pass> with the source filer (-sa) login and the destination filer (-da) login. Here we copy a single file from one location on one filer, to another on another!

We can also define the the incremental level of transfer. By default the system will do a level 0 transfer, but you can define to do a single level 1 or 2 incremental transfer. If the data has changed too much, or too much time has passed since the last copy, this may fail or may take longer than a clean level 0.

This can be very useful, and as the filer is doing this at block level, all ACL’s are completely preserved. Take care to enable that the security style is the same on the destination to prevent ACL’s from being converted however.

ONTAP 7.2.6.1 manual page for this can be found - http://now.netapp.com/NOW/knowledge/docs/ontap/rel7261/html/ontap/cmdref/man1/na_ndmpcopy.1.htm

mv

This is a “priv set advanced” command, and so apparently reserved for “Network Appliance personnel”. “mv” is very straight forward, give it a source and destination, and a single file will get moved. Remember this is a move, so it is not technically a file copy at all.

mv <file2> <file2>

flex clone

This is a real cheat, but a great cheat! You clone an entire volume based on a snapshot, then you split this volume off from the snapshot. This a great way of getting an entire volume copied with minimal disruption. The clone is almost immediately created, and can then be online and used live. The clone split operation happens in the background so you can move things and be live at the new location in very little time at all.

vol clone create new_vol -s volume -b source_vol source_snap

Where “new_vol” is the new volume you want to create, “-s volume” is the space reservation, “-b source_vol” is the parent volume that the clone will be based on and “source_snap” is the snapshot you want to base the clone on.

vol clone split start new_vol

Will then start the split operation on the “new_vol”

vol copy

Rather than a flex clone, if you haven’t got that licensed, you can do a full vol copy. This is effectively the same as a vol clone, but you need to do the entire operation before the volume is online and available. You need to create the destination volume first and then restrict it so that it is ready for the copy. Then you start the copy process.

vol copy start -s snap_name source_vol dest_vol

“-s snap_name” defines the snapshot you want to base the copy on, and “source_vol” and “dest_vol” define the source and destination for the copy. “-S” can also be used to copy across all the snapshots that are also included in the volume. This can be very useful if you need to copy all backups within a volume as well as just the volume data.

lun clone

If you need to copy an entire LUN, and again you haven’t got flex clone licensed, you can do a direct lun clone, and lun clone split. This is only really useful if you need a duplicate of the LUN in the same volume. It will create a clone based on a snapshot that already exists.

lun clone create clone_path -b parent_path parent_snap

“clone_path” being the new LUN you want to create, “parent_path” being the source LUN you want to clone from and “parent_snap” being a snapshot that already exists of the parent LUN. The you need to split the LUN to become independent with.

lun clone split start clone_path

SnapMirror / SnapVault

You can also use SnapMirror or SnapVault to copy data around. SnapMirror can be useful if you need to copy a large amount of data that will change. You can setup a replication schedule, then during a small window of downtime, you can do a final update and bring the new destination online.

dump and restore

This isn’t really a good way of copying files around, but it certainly a method. If you attach a tape device directly to the filer, you could do a dump, then a restore to a new location or filer. This can be the only method if you have a large amount of data to move to a new site, and no bandwidth or no way of having the 2 systems side by side temporarily.

VN:F [1.4.7_740]
Rate this post:
Rating: 10.0/10 (2 votes cast)

Posted in Command Line.

Tagged with , , , , , .




© 2009 Chris Kranz All Rights Reserved
This site is not affiliated or sponsored in anyway by NetApp or any other company mentioned within.