Invoke-SCXDiscovery

Invokes the discovery operation for the specified configuration of UNIX and Linux computers.

Syntax

Invoke-SCXDiscovery
      [-WsManCredential <PSCredential>]
      [-SshCredential <CredentialSet>]
      -Name <String[]>
      -ResourcePool <ManagementServicePool>
      [-SshPort <Int32>]
      [-SCSession <Connection[]>]
      [-ComputerName <String[]>]
      [-Credential <PSCredential>]
      [<CommonParameters>]
Invoke-SCXDiscovery
      [-WsManCredential <PSCredential>]
      [-SshCredential <CredentialSet>]
      -ResourcePool <ManagementServicePool>
      -IPRange <IPAddress[]>
      [-SshPort <Int32>]
      [-SCSession <Connection[]>]
      [-ComputerName <String[]>]
      [-Credential <PSCredential>]
      [<CommonParameters>]

Description

The Invoke-SCXDiscovery cmdlet invokes the discovery operation for the specified configuration of UNIX and Linux computers.

The operation uses an SSH credential object for privileged SSH installation actions and an optional Windows PowerShell credential object for low-privileged WS-Management agent communication. If the agent has been manually installed on the targeted hosts, only the low-privileged WS-Management credential is required.

The output of this cmdlet is an array of DiscoveryResult objects representing the discovery result for each targeted computer for which discovery was attempted.

Examples

Example 1: Discover UNIX and Linux computers within a range of IP addresses

PS C:\>$WSCredential = Get-Credential "DavidChew"
PS C:\> $SSHCredential = Get-SCXSSHCredential -UserName "DavidChew" -Key "C:\keys\key22.ppk" -ElevationType sudo
PS C:\> $Pool01 = Get-SCOMResourcePool "pool01"
PS C:\> Invoke-SCXDiscovery -IPRange 192.168.1.50,192.168.1.75 -ResourcePool $Pool01 -WSManCredential $WSCredential -SSHCredential $SSHCredential

The first command gets a credential for a user by using the Get-Credential cmdlet. The command prompts you for authentication, and then stores the results in the $WSCredential variable.

The second command creates a privileged credential for a user by using the Get-SCXSSHCredential cmdlet. The command stores the result in the $SSHCredential variable.

The third command gets a resource pool named pool01 by using the Get-SCOMResourcePool cmdlet, and then stores it in the $Pool01 variable.

The final command discovers UNIX and Linux computers within a range of IP addresses.

Example 2: Discover UNIX and Linux computers by name with a non-standard port

PS C:\>$WSCredential = Get-Credential "DavidChew"
PS C:\> $SSHCredential = Get-SCXSSHCredential -UserName "DavidChew" -Key c:\keys\DavidChew.ppk -ElevationType sudo
PS C:\> $Pool01 = Get-SCOMResourcePool -DisplayName "pool01"
PS C:\> Invoke-SCXDiscovery -Name "nx1.contoso.com,nx2.contoso.com,nx3.contoso.com" -SSHPort 8022 -ResourcePool $Pool01 -WSManCredential $WSCredential -SSHCredential $SSHCredential

The first command gets a credential for a user by using Get-Credential. The command prompts you for authentication, and then stores the results in the $WSCredential variable.

The second command creates a privileged credential for a user by using Get-SCXSSHCredential. The command stores the result in the $SSHCredential variable.

The third command gets a resource pool named pool01 by using Get-SCOMResourcePool, and then stores it in the $Pool01 variable.

The final command discovers UNIX and Linux computers by name using a resource pool and specifying a non-standard SSH port.

Example 3: Discover UNIX and Linux computers by name

PS C:\>$Pool = Get-SCOMResourcePool "RP1"
PS C:\> Invoke-SCXDiscovery -Name "nx1.contoso.com,nx2.contoso.com,nx3.contoso.com" -ResourcePool $Pool -WSManCredential "DavidChew"

The first command gets a resource pool named RP1 by using Get-SCOMResourcePool, and then stores it in the $Pool variable.

The second command discovers UNIX and Linux computers by name where the management agent has already been installed.

Required Parameters

-IPRange

Specifies a range of IP Addresses that will be used for discovery. The IPRange must contain two IP Addresses (for example, 192.168.0.1,192.168.0.254). Either the IPRange or Name parameters must be specified.

Type:IPAddress[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Name

Specifies a list of valid host names, FQDNs, or IP Addresses (separated by a comma) that will be used for discovery. Either the IPRange or Name parameters must be specified. This parameter is accepted from the pipeline.

Type:String[]
Position:Named
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False
-ResourcePool

Specifies a resource pool of servers, one of which is assigned to be the current management server and the others serving as backup management servers. This parameter requires a resource pool object and returns only the managed computers in that resource pool.

For information about how to get a resource pool object, type Get-Help Get-SCOMResourcePool.

Type:ManagementServicePool
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Optional Parameters

-ComputerName

Specifies an array of names of computers. The cmdlet establishes temporary connections with management groups for these computers. You can use NetBIOS names, IP addresses, or fully qualified domain names (FQDNs). To specify the local computer, type the computer name, localhost, or a dot (.).

The System Center Data Access service must be active on the computer. If you do not specify a computer, the cmdlet uses the computer for the current management group connection.

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Credential

Specifies the user account under which the management group connection runs. Specify a PSCredential object, such as one that the Get-Credential cmdlet returns, for this parameter. For more information about credential objects, type Get-Help Get-Credential.

If you specify a computer in the ComputerName parameter, use an account that has access to that computer. The default is the current user.

Type:PSCredential
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-SCSession

Specifies an array of Connection objects. To get Connection objects, use the Get-SCOMManagementGroupConnection cmdlet.

If this parameter is not specified, the cmdlet uses the active persistent connection to a management group. Use the SCSession parameter to specify a different persistent connection. You can create a temporary connection to a management group by using the ComputerName and Credential parameters. For more information, type Get-Help about_OpsMgr_Connections.

Type:Connection[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-SshCredential

Specifies a privileged SSH credential used to perform the agent installation actions. If this parameter is not specified, the discovery fails unless an agent has been manually installed on the targeted computer.

For information about how to get an SSH credential object, type Get-Help Get-SCXSSHCredential.

Type:CredentialSet
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-SshPort

Specifies the port to use for SSH communication with the host. If not specified, the default value of 22 is used.

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-WsManCredential

Specifies a credential used for low-privileged agent communication through WS-Management.

Type a user name, such as User01 or enter a PSCredential object, such as one that is returned by the Get-Credential cmdlet. When you type a user name, you are prompted for a password. For more information, type Get-Help Get-Credential.

Type:PSCredential
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Outputs

DiscoveryResult

This cmdlet returns an array of DiscoveryResult objects representing the discovery result for each targeted computer for which discovery was planned.