Archive for the ‘Web Searches’ Category

Explain Snapshots

March 11th, 2014

This seems to be a popular search term so I think it’s worth covering off. This is covered on my old top post about Fractional Reservation, but I’ll cover the alternatives here also.


NetApp snapshots used to be pretty unique in the industry, but the industry term for this technology is generally now Append-on-Write / Redirect-on-Write (new writes are appended to the “end”, or redirected to free blocks, depending how you look at it) and quite a few vendors do it this way. Put very simply, all new data is written to new (zeroed) blocks on disk. This does mean that snapshot space has to be logically in the same location as the production data, but that really shouldn’t be a problem with wide-striping / aggregates / storage pools (pick preferred vendor term). When a snapshot is taken, the inode table is frozen and copied. The inode table points to the data blocks, and these data blocks now become fixed. As the active filesystem “changes” blocks, these actually get written to new locations on disk, and so there is no overhead to the write (the new blocks are already zeroed). In other technologies (not NetApp) this also forms the basis of automated tiering, once data is “locked” by a snapshot, it’ll never be over-written so it can safely be tiered out of SSD or even SAS as read performance is rarely an issue. NetApp use FlashPools to augment this, and a snapshot is a trigger for data to be tiered out of FlashPools as it’ll never be “overwritten”.

Web Searches , , ,

Spares FAQ

June 7th, 2009

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”!

Web Searches , , , , ,

fcadmin lip

April 11th, 2009

fcadmin lip <channel_name>

This is used to issue a LIP (Loop Initialisation Primitive) reset on the defined channel name. It is vendor specific reset on a loop port, specified by the AL-PA value.

You can use “fcp stats” to show how many LIP resets have been performed by the system.

If an arbitrated loop (disk loop for instance) has been reinitialised repeatedly, it may interfere with the initialisation of disk loops. To cure this, you can either reboot the filer, or issue a “fcadmin lip <channel_name>” where <channel_name> is the unitiliased loop.

fcadmin lip can be used to reset a loop and try cure or diagnose issues with connectivity. The connectivity problems should be solved before issuing this command. It may also be beneficial to “boot_diags” and run through the system diagnostics to determine if there are any hardware issues with the system.

Web Searches , ,

snapmirror.conf basics

April 4th, 2009

This search seems to come up quite a lot, so I thought I’d cover it quickly. I’m going to steer away from covering SnapMirror as a whole, and just look at the format of the snapmirror.conf file. I will also steer away from Synchronous SnapMirror as I’m not a huge fan, I prefer SyncMirror!

First, you can find it in /etc/snapmirror.conf. Edit it using either rdfile / wrfile (see “[cref basic-file-manipulation-on-a-filer]” for a bit more on these), or map to /vol/etc and edit them with your favourite text editor (but not Windows Notepad please!). Once you get used to the formatting, you’ll be writing these with your eyes closed! Having said that, I usually need to refer to something for reference!

The basic layout is…

source_filer:volume_name destination_filer:volume_name options min hour dom dow

This drops it down into very simple terms, a good reference to start with. The “volume_name” can of course be a QTree if you are doing qsm, but I will concentrate on VSM for now.

The options section is often left blank. Any blank entry from options through the schedule will be filled in with “-“. So if you are setting up SnapManager for Exchange or SQL, you would create a relationship with this setting, do a baseline, then get SMx to manage the replication. Leaving the option as a single “-” assumes you accept the default for all settings. If you define one setting, the others are assumed to stay the defaults.

The options you can choose from are…

  • “kbs=” to limit the transfer speeds to whatever number you define here. This is in kilobytes, so remember to convert it for WAN speeds.

Web Searches , , , , ,


April 4th, 2009

If the system has been halted, or has panicked before boot, then it will be sat at the CFE or Loader prompt (depending on the hardware version). From here it’s pretty straight forward to get the system booting, although if it has panicked on boot, you’ll want to troubleshoot that first!


Whatever is the latest successful install of ONTAP will be booted into and whatever system volume is registered by the filer will be loaded. This will read the base install from the compact flash card before reading the configuration from disk and booting into this.


Is pretty much the same as “boot_ontap”. It will simply boot into the primary ONTAP version that is on the system.


The system should always have storage a second boot image. This may either be a backup of the primary boot image from the factory, or it will be the last version of ONTAP before an upgrade. If an upgrade has gone badly, use boot_secondary to get back to the old ONTAP and do a system revert (simply doing a snap restore of vol0 isn’t enough as the ONTAP needs to be committed onto the compact flash card). Checkout NetApp / IBM’s website for full details on how to do a system revert.

If you are having some hardware problems, or you need to diagnose an area of the system, you can use…


And so long as the compact flash card has this installed (they all should, but I have seen one without!), then you will boot into the diagnostics tools and you can run full system diags to determine any issues, or simply check everything is fine.

Web Searches

NetBooting NetApp & N-Series

April 4th, 2009

Quick guide on how to NetBoot a NetApp FAS / IBM N-Series.

First of all you’ll want a netboot image and a home for it. You can get these from either NetApp or IBM, and you’ll want to make sure it’s the relevant ONTAP version for you. You’ll need either a web server, or TFTP server to put this on so that the filer can access this remotely and download it. The best bet to avoid any complications is to put this into the root directory of the TFTP / Web server, but if you are going to use this as a general storage area and refer to it more often, then you may want to drop it into it’s own folder, it will cause no issue.

At the CFE / Loader prompt on the filer, first thing is to configure some networking.

For DHCP on e0a…

ifconfig e0a -auto

To setup static networking on e0a…

ifconfig e0a -addr= mask=

If you need, you can set a gateway “-gw=…”, dns server “-dns=…”, the network speed “-speed=1000fdx”, and also the MAC address “-hwaddr”. Please refer to [cref ifconfig] for further details on “ifconfig” at the CFE prompt.

Now we tell the filer to NetBoot from the image on the TFTP / Web server. In this example our Web server is Please refer to [cref netboot] for further details on “netboot” at the CFE prompt.


This will then download and boot the filer into ONTAP that I have placed on my local web server.

Web Searches , , ,

This site is not affiliated or sponsored in anyway by NetApp or any other company mentioned within.