你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Start-AzureHDInsightJob

启动 HDInsight 作业。

注意

本文档中引用的 cmdlet 用于管理使用 Azure Service Manager (ASM) API 的旧 Azure 资源。 创建新的资源时,不建议使用此旧版 PowerShell 模块,因为 ASM 计划停用。 有关详细信息,请参阅 Azure Service Manager 停用

Az PowerShell 模块是推荐的 PowerShell 模块,用于使用 PowerShell 管理 Azure 资源管理器 (ARM) 资源。

语法

Start-AzureHDInsightJob
     -Cluster <String>
     [-Credential <PSCredential>]
     -JobDefinition <AzureHDInsightJobDefinition>
     [-Profile <AzureSMProfile>]
     [<CommonParameters>]
Start-AzureHDInsightJob
     [-Certificate <X509Certificate2>]
     [-HostedService <String>]
     -Cluster <String>
     [-Endpoint <Uri>]
     [-IgnoreSslErrors <Boolean>]
     -JobDefinition <AzureHDInsightJobDefinition>
     [-Subscription <String>]
     [-Profile <AzureSMProfile>]
     [<CommonParameters>]

说明

此版本的 Azure PowerShell HDInsight 已弃用。 这些 cmdlet 将于 2017 年 1 月 1 日删除。 请使用较新版本的 Azure PowerShell HDInsight。

有关如何使用新的 HDInsight 创建群集的信息,请参阅 使用 Azure PowerShell 在 HDInsight 中创建基于 Linux 的群集(https://azure.microsoft.com/en-us/documentation/articles/hdinsight-hadoop-create-linux-clusters-azure-powershell/)。 有关如何使用 Azure PowerShell 和其他方法提交作业的信息,请参阅 HDInsight 中的提交 Hadoop 作业(https://azure.microsoft.com/en-us/documentation/articles/hdinsight-submit-hadoop-jobs-programmatically/)。 有关 Azure PowerShell HDInsight 的参考信息,请参阅 Azure HDInsight Cmdlet

Start-AzureHDInsightJob cmdlet 在指定的群集上启动定义的 Azure HDInsight 作业。 要启动的作业可以是 MapReduce 作业、流式处理作业、Hive 作业或 Pig 作业。

示例

示例 1:启动 HDInsight 作业

PS C:\>$SubId = (Get-AzureSubscription -Current).SubscriptionId
PS C:\> $ClusterName = "Cluster01"
PS C:\> $WordCountJob = New-AzureHDInsightMapReduceJobDefinition -JarFile "/Example/Apps/Hadoop-examples.jar" -ClassName "Wordcount" -Defines @{ "mapred.map.tasks" = "3" } -Arguments "/Example/Data/Gutenberg/Davinci.txt", "/Example/Output/WordCount"
PS C:\> $WordCountJob | Start-AzureHDInsightJob -Cluster $ClusterName
    | Wait-AzureHDInsightJob -Subscription $SubId -WaitTimeoutInSeconds 3600
    | Get-AzureHDInsightJobOutput -Cluster $ClusterName -Subscription $SubId -StandardError

第一个命令获取当前订阅 ID,然后将其存储在$SubId变量中。

第二个命令将名称 Cluster01 分配给$ClusterName变量。

第三个命令使用 New-AzureHDInsightMapReduceJobDefinition cmdlet 创建 MapReduce 作业定义,然后将其存储在$WordCountJob变量中。

最后一个命令使用管道运算符将$WordCountJob 传递给 Start-AzureHDInsightJob cmdlet 来启动作业。 作业启动后,它将传递给 Wait-AzureHDInsightJob cmdlet,该 cmdlet 等待作业完成,然后再将其 传递给 Get-AzureHDInsightJobOutput cmdlet 以获取作业输出。

参数

-Certificate

指定 Azure 订阅的管理证书。

类型:X509Certificate2
别名:Cert
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Cluster

指定群集。 此 cmdlet 在此参数指定的群集上启动作业。

类型:String
别名:ClusterName
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Credential

指定用于直接对群集进行 HTTP 访问的群集凭据。 可以指定此参数而不是 Subscription 参数,以对群集的访问权限进行身份验证。

类型:PSCredential
别名:Cred
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Endpoint

指定要用于连接到 Azure 的终结点。 如果未指定此参数,此 cmdlet 将使用默认终结点。

类型:Uri
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-HostedService

如果不想使用默认命名空间,则指定 HDInsight 服务的命名空间。

类型:String
别名:CloudServiceName
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-IgnoreSslErrors

指示是否忽略安全套接字层 (SSL) 错误。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-JobDefinition

指定在连接到 Microsoft Azure 时要使用的终结点(如果终结点与默认值不同)。

类型:AzureHDInsightJobDefinition
别名:jobDetails
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Profile

指定此 cmdlet 从中读取的 Azure 配置文件。 如果未指定配置文件,此 cmdlet 将从本地默认配置文件中读取。

类型:AzureSMProfile
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Subscription

指定订阅。 此 cmdlet 为此参数指定的订阅启动作业。

类型:String
别名:Sub
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False