DataCore Cmdlet Operation Concepts

Server Groups and Connections

The server group concept exists in the DataCore Cmdlets. In order to perform operations using the cmdlets, a connection must be made through a server to manage the associated server group (see Connect-DcsServer). When a connection is created using Connect-DcsServer, an alias will be assigned for that connection. The connection name (default or specified) will be used in every cmdlet.

Default Server Group

Multiple connections to server groups are allowed to assist in management of multiple server groups. One connection can be designated as the default connection (see Set-DcsDefaultConnection). When a default connection is assigned using Set-DcsDefaultConnection, in most cmdlets the connection name is required and the default connection can be implied, rather than specifically used in the syntax.

Resolving Names Used in Cmdlets

When running cmdlets, names can be used to identify various objects. When a name is specified, the system attempts to resolve the name in an object by searching through the string fields of all objects of that type.

  • Server names - The server name must be unique or the name must be fully qualified. If more than one server exists with the same name specify the domain, for example Server1.mydomain.com.
  • Physical disk names - In earlier versions, the default physical disk name was the index number which was unique to the server. As of the 9.0 release, the default name of a physical disk is the concatenation of the vendor and product name, which is not unique among multiple disks from the same product. A unique alias is not automatically generated. If a unique name is required for scripting purposes, then the name must be explicitly set using the cmdlet Set-DcsPhysicalDiskProperties. If physical disk names exist that not unique to the server group, the server name will be required to uniquely identify the physical disk.
  • Physical disk names - The default name of a physical disk is the concatenation of the vendor and product name, which is not unique among multiple disks from the same product. A unique alias is not automatically generated. If a unique name is required for scripting purposes, then the name must be explicitly set using the cmdlet Set-DcsPhysicalDiskProperties. If physical disk names exist that not unique to the server group, the server name will be required to uniquely identify the physical disk.
  • Disk pool names - In earlier versions, disk pool names were unique to the DataCore Server. As of the 9.0 release, disk pool names are unique to the server group. If disk pool names exist that were created in earlier versions and are not unique to the server group, the server name will be required to uniquely identify the disk pool.

Additional Information

  • Date and time information used in the cmdlets is stored in data objects as UTC (>Coordinated Universal Time). So a difference may be noticed between date and time parameter values used in cmdlets and what is displayed in date/time fields in returned objects.
  • When running the DataCore Cmdlet in a window other than the special Windows PowerShell window provided during the installation, the cmdlets must be registered (.\Register-DcsCmdlets.ps1). See Cmdlet Configuration.
  • Some Windows PowerShell "common parameters" may be supported in DataCore Cmdlet. Common parameters include Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer and OutVariable. These common parameters are Windows PowerShell parameters and are not documented in the DataCore SANsymphony Help. For more information, type, "get-help about_commonparameters" in a Windows PowerShell window.
  • Many cmdlets allow data objects to be piped in as parameter values. All cmdlets beginning with the verb Add return the created object, which can be piped to another cmdlet as input. Data objects can be obtained with the cmdlets beginning with the verb Get. For instance, the Serve-DcsVirtualDisk cmdlet can support the piped objects named VirtualDiskData to identify the virtual disks to serve. This object can be obtained by invoking Get-DcsVirtualDisk with the required parameters and pipe the returned objects directly into the cmdlet Serve-DcsVirtualDisk.
  • Pertaining to cmdlet Get-DcsPerformanceCounter, some raw data counters found in retrieved PerformanceData objects may not appear in the Performance tool in the DataCore Management Console. This is because some Performance tool counters are derived from these raw data counters. Therefore, some raw data counters may not appear in the tool and some derived counters may not appear in retrieved PerformanceData objects. Special notes about these differences are documented in the description for Get-DcsPerformanceCounter.
  • All cmdlets beginning with the verb Set allow an empty string (" ") to be used as a parameter value in order to clear the setting.
  • The examples return performance counter data for the specified object. All times are stated in milliseconds (ms).