Via PowerShell from a host running the Data ONTAP PowerShell Toolkit: Connect-NaController DestinationFiler -Credential (Get-Credential) Write-NaFile /vol/vol0/etc/snapmirror.allow -AppendLine "Sourcefiler" This will connect to the controller "DestinationFiler" via HTTPS and prompt for credentials. After connecting it adds the controller "SourceFiler" to the snapmirror.allow file. J
... View more
http://communities.netapp.com/community/interfaces_and_tools/data_ontap_powershell_toolkit/data_ontap_powershell_toolkit_downloads You have to be logged in to see the download link. J
... View more
"The only thing I can see that occurred at that time was that I migrated a powered off vm to another datastore to free up some space on the datastore to allow other vms to continue operating." That pretty much explains it. Most filesystems, VMware datastores included, will tag deleted blocks. At some point, not in real time, a garbage collection or "segment cleansing" process comes along and actually clears the space. 300GB in 1-5 minutes? How long does it take to validate and update pointers in a table? How big was the VM you moved? I think you'll find your answer there. J
... View more
"Here's the scenario. I have a windows box that already belongs to a domain (We'll call it domain A). It has luns mapped already through snapdrive. I am trying to map another LUN on the machine through snapdrive that lives on a filer belonging to another domain (Domain B). Domain A and B do not have a trust between them and this is not possible because of company regulations at the moment." This presents a problem with domain authentication because there is no trusts. There are really two ways to deal with this: 1. Use HTTPS authentication and a local account on the filer. 2. Create a local account on the filer that has the same name and password as the domain account(s): If I am using Domain1\Snapdrive and Domain2\Snapdrive, then I would create a local account on the filer called "Snapdrive", and make sure the password for both domain accounts and the local account are the same. J
... View more
Once upon a time, I had a situation where I mistakedly had SnapMirror traffic going over the E0M interface. It caused all sorts of unexpected RPC timeouts. The Microsoft RPC Ping utility should help sort it out. J
... View more
I can think of quite a few things; windows firewall issues, RPC timeout issues, etc. There's not a lot to go on here other than the error that says the packet never made it. I'd start by getting the Microsoft RPC ping utility and quantifying RPC connectivity. J
... View more
In the Data ONTAP PowerShell toolkit 1.1, create an array of strings, on for each home directory path. Then use set-nacifshomedirectory to load the array. This is analogous to manually editing cifs_homdir.cfg and then executing "cifs homedir load" from the console. If you want to add a batch of home directories to an existing list, then you'll want to get-nacifshomedirectory, dump the results to an array, append your new user home directories, then use set-nacifshomedirectory. Cmdlet: Set-NaCifsHomeDirectory NAME Set-NaCifsHomeDirectory SYNOPSIS Provides a list of CIFS home directory paths for the controller. SYNTAX Set-NaCifsHomeDirectory [-Paths] <String[]> [-Force] [-Controller <NaControl ler>] [-WarningAction <ActionPreference>] [-WarningVariable <String>] [<Comm onParameters>] DESCRIPTION Provides a list of CIFS home directory paths for the controller. Replaces th e current list of paths in use by the controller. Note that supplying an emp ty path list causes controller to delete any current entries. PARAMETERS -Paths <String[]> An array, one entry per each CIFS home directory path. Required? true Position? 1 Default value Accept pipeline input? true (ByValue, ByPropertyName) Accept wildcard characters? false -Force If true, the new set of homedir paths will be put into use even if some user homedir connections will be broken. This can cause users with open files in their home directories to lose access to the files. A user can lose data if there are updates not yet committed to disk. Required? false Position? named Default value Accept pipeline input? false Accept wildcard characters? false -Controller <NaController> The DataONTAP controller object, embodied by an NaController object. Th is parameter is returned by the Connect-NaController cmdlet. If not spe cified, the value in the global variable CurrentNaController is used. Required? false Position? named Default value Accept pipeline input? false Accept wildcard characters? false -WarningAction <ActionPreference> Required? false Position? named Default value Accept pipeline input? false Accept wildcard characters? false -WarningVariable <String> Required? false Position? named Default value Accept pipeline input? false Accept wildcard characters? false <CommonParameters> This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer and OutVariable. For more information, type, "get-help about_commonparameters". INPUTS OUTPUTS NetApp.Ontapi.Filer.Cifs.PathErrorInfo NOTES Category: cifs API: cifs-homedir-paths-set -------------- Example 1 -------------- C:\PS>Set-NaCifsHomeDirectory "/vol/vol0/user1","/vol/vol0/user2","/vol/vol0 /user3" Set the home directories for three users (one of which doesn't exist). ErrorPath ErrorPathDesc --------- ------------- /vol/vol0/user3 Homedir path doesn't exist, discardi ...
... View more
Use SNMP 1. Set the trap destination for the filer(s) you want to monitor. 2. Load the NetApp MIB for your ONTAP version 3. Configure an action for the specif event (NA_volumeautogrow) J
... View more
That was my take on it. As long as you flush the buffers and put the tables in hot backup (read-only) mode, you should have an application consistent backup. InnoDB builds on top of mySQL to provide ACID transactions. Even if the script executed during the middile of an ACID transaction, it's still consistent from the DB level and the transaction in progress would roll back at restore. j
... View more
The script in TR-3601 places the tables in read-only mode for the backup: #locking tables with read only mode my $query = "flush tables with read lock"; my $sth1234 = $dbh->prepare($query); $sth1234->execute() or die "Couldn't connect to database: $DBI::errstr\n"; $sth1234->finish(); Since the database buffers have been flushed and the database tables are in read-only mode during the backup, the script schould be compatible with a transactional database using the InnoDB engine. J
... View more
What version of Data ONTAP? In 7.3.2 and prior, you must set the FR=100 to set the volume reservation to none. Data ONTAP 7.3.3 and later no longer have this restriction. J
... View more
Did you try rescanning the disks in the guest/restarting the snapdrive service after reconnecting the LUN this way? From PowerShell, to rescan a disk: "rescan" | diskpart J
... View more
I'm nut sure you can specify the LUN ID via SDCLI, however you can specify the LUN ID via the Data ONTAP PowerShell Toolkit: Add-NaLunMap /vol/vol2/lun2.lun -ID 250 viaRPC.iqn.1991-05.com.microsoft:M58-1.home.local This will "connect" or map the LUN /vol/vol2/lun2.lun using the LUN ID 250 to the igroup viaRPC.iqn.1991-05.com.microsoft:M58-1.home.local J
... View more
When I work with many controllers, I generally put the controller objects in an array, then work with the array. You can find an example here: http://communities.netapp.com/docs/DOC-6293 J
... View more
When you have a serial connection to a filer, you have essentially a terminal session to the console. You can use telnet from PowerShell to send commands and then strip and parse the reply. This would work for one off situations where there is no Data ONTAP PowerShell cmdlet, like mucking around with the boot loader. You could of course run any console command from the session. The Data ONTAP PowerShell Toolkit wraps ZAPI, which communicates via http/s. The API is not available from the console. It would be a monumental effort to rewite the entire Zepher API to send commands via the terminal then strip and parse the output. It would be, in effect, creating an entirely new API with the same functionality as ZAPI. Hope this helps J
... View more
In powershell, you always have the option of adding properties to a collection. I demonstrated this technique in the sample to sort snapshots. It's more versitile. J
... View more
All you need is a db9-rj45 cable (the same kind you use for a Cisco switch) and you can connect via serial to the console port. I bought one from Cables & Kits for $9.95. J
... View more
In 7.3.2, you have to set the fractional reserve to 100 before you can set the volume guarantee to none. At this point, the volume is thin provisioned (could be overcommitted), however fully space reserved LUNs inside the volume still follow the same creation rules as in a thick volume (LUN size + fractional reserve can't exceed declared volume size). SInce with the guarantee set to none the volume is already thin provisioned, you could simply overcommit the volume by growing it then grow your LUN. You could also consider removing the space reserve for the LUN. in 7.3.3, you're not required to set the fractional reserve to 100% before setting the volume guarantee to none. You could always upgrade to 7.3.3 as well. In short at the volume level consider the frational reserve and the volume guarantee. At the LUN level, consider the LUN space reserve. If you'd like to experiment with the settings, the easy way is via powershell. http://communities.netapp.com/docs/DOC-6400 http://communities.netapp.com/docs/DOC-6383 J
... View more
On execution a type initialization fails, but which one? What are the values of $Error[0], $Error[0].Exception, and $Error[0].Exception.InnerException? Does the Windows application log provide any clues? Have you tried this on any versions of Windows with languages other than 中文? That information would be helpful in tracking down the error you are experiencing. J
... View more