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

Azure HDInsight 中的应用程序 REST API

创建

在集群上创建一个新节点(称为边缘节点),并在该节点上安装应用程序。

请求

有关集群使用的标头和参数,请参阅通用参数和标头。

方法 请求 URI
PUT https://management.azure.com/subscriptions/{subscription Id}/resourceGroups/{resourceGroup Name}/providers/Microsoft.HDInsight/clusters/{cluster name}/applications/{application Name}?api-version={api-version}

以下示例演示了在基于 Linux 的 HDInsight 群集上安装应用程序的请求正文。

{  
  
	"name": "clusterName / applicationName"  
		"type": "Microsoft.HDInsight/clusters/applications",  
	"properties": {  
		"computeProfile": {  
			"roles": [  
				{  
					"name": "edgenode",  
					"targetInstanceCount": 1,  
					"hardwareProfile": {  
						"vmSize": "Standard_D3"  
					}  
				}  
			]  
		},  
		"installScriptActions": [  
			{  
				"name": "hue-install",  
				"uri": "https://publicEndpoint-bash-file.sh",  
				"parameters": "",  
				"roles": ["edgenode"]  
			}  
		],  
		"uninstallScriptActions": [  
			{  
				"name": "hue-uninstall",  
				"uri": "https://publicEndpoint-bash-file.sh",  
				"parameters": "",  
				"roles": ["edgenode"]  
			}  
		],  
		"httpsEndpoints": [  
			{  
				"subDomainSuffix": "abc",  
				"destinationPort": 8888,  
				"accessModes": ["WebPage"]  
			},  
			{  
				"subDomainSuffix": "was",  
				"destinationPort": 50073,  
				"accessModes": ["WebPage"]  
			}  
		],  
		"applicationType": "CustomApplication"  
	}  
}  
  
元素名称 必选 类型 DESCRIPTION
姓名 是的 字符串 指定应用程序的名称。 该名称必须指定为 clusterName/applicationName。 每个集群的应用程序名称必须是唯一的。
类型 是的 字符串 指定资源的类型。
性能 是的 复杂类型 指定集群的属性。

属性

元素名称 必选 类型 DESCRIPTION
计算配置文件 是的 复杂类型 描述应用程序将在其上运行的 VM
安装脚本作 是的 复杂类型 描述应用程序的安装脚本作。 必须至少指定一个脚本,并且脚本必须是幂等的,这意味着在生成相同结果的同时可以重复调用脚本。
UninstallScript作 复杂类型 描述应用程序的卸载脚本作。 此参数是可选的,但指定的任何卸载脚本作都必须是幂等的(这意味着可以在生成相同结果的同时重复调用脚本)。
HttpEndpoint 复杂类型 描述应用程序上的哪些终结点应是 Internet 可寻址的。
applicationType 是的 字符串 此元素始终为值“CustomApplication”

computeProfile

此元素应仅包含一个角色

元素名称 必选 类型 DESCRIPTION
角色 是的 复杂类型 指定有关群集中角色的信息
角色
元素名称 必选 类型 DESCRIPTION
姓名 是的 字符串 名称必须指定为“edgenode”
targetInstanceCount 是的 整数 此元素必须设置为 1
硬件配置文件 是的 复杂类型 指定有关边缘节点的硬件配置文件的信息
hardwareProfile
元素名称 必选 类型 DESCRIPTION
vmSize 是的 字符串 指定虚拟机的大小。 有关有效大小,请参阅 HDInsight 配置选项 (进入此链接后,向下滚动到 “节点定价层”)

安装脚本作

元素名称 必选 类型 DESCRIPTION
名称 是的 字符串 指定脚本操作的名称。 在群集上所有持久化的脚本作中必须是唯一的
Uri 是的 字符串 脚本的可公开访问位置。 指定的所有脚本都必须是幂等的,这意味着可以在生成相同结果的同时重复调用脚本。
参数 字符串 要传递给脚本的可选参数集
角色 是的 字符串数组 描述要运行脚本的角色。 有效值为: headnodeworkernodezookeepernodeedgenode。 edgenode 是托管应用程序的角色,也是应用程序将在何处运行。

UninstallScript作

元素名称 必选 类型 DESCRIPTION
名称 是的 字符串 指定脚本操作的名称。
Uri 是的 字符串 脚本的可公开访问位置。 指定的任何脚本都必须是幂等的,这意味着可以在生成相同结果的同时重复调用脚本。
参数 字符串 要传递给脚本的可选参数集
角色 是的 字符串数组 描述要运行脚本的角色。 有效值为: headnodeworkernodezookeepernodeedgenode。 edgenode 是托管应用程序的角色,也是应用程序将在何处运行。

HttpEndpoint

元素名称 必选 类型 DESCRIPTION
subDomainSuffix 的 是的 字符串 用于构建用于访问应用程序的 DNS 名称的三个字符的字母数字字符串。 DNS 名称的格式为: *.apps.azurehdinsight.net。 每个集群必须有此名称。
destinationPort 是的 整数 在托管应用程序的边缘节点上转发 HTTP 流量的端口。
accessModes 字符串数组 有关终结点的元数据。 如果端点托管网页,请将 网页 指定为访问模式。 否则,数组应为空或负载中不存在。 此元素使 Azure 门户能够显示指向应用程序的直接链接。

响应

如果验证完成并接受请求,则作将返回 200 (OK) 。

状态代码: 200 OK

获取

获取有关 HDInsight 应用程序的详细信息。

请求

有关集群使用的标头和参数,请参阅通用参数和标头。

方法 请求 URI
GET https://management.azure.com/subscriptions/{subscription Id}/resourceGroups/{resourceGroup Name}/providers/Microsoft.HDInsight/clusters/{cluster name}/applications/{application Name}?api-version={api-version}

响应

响应正文是 HDInsight 应用程序详细信息的数组,如果提供了 applicationName,则是单个 HDInsight 应用程序详细信息。 下面是应用程序详细信息的示例。

响应代码:成功完成作时的 HTTP 200 (OK)。

示例响应:

{  
	"value": [  
		{  
			"id": "resourceId",
			"name": "clusterName / applicationName",
			"type": "Microsoft.HDInsight/clusters/applications",  
			"etag": "etagValue",
			"tags": null,  
			"properties": {  
				"computeProfile": {  
					"roles": [  
						{  
							"name": "edgenode",  
							"targetInstanceCount": 1,  
							"hardwareProfile": {  
								"vmSize": "Standard_D3"  
							}  
						}  
					]  
				},  
				"installScriptActions": [  
					{  
						"name": "hue-install",  
						"uri": "https://publicEndpoint-bash-file.sh",  
						"parameters": "",  
						"roles": ["edgenode"]  
					}  
				],  
				"uninstallScriptActions": [  
					{  
						"name": "hue-uninstall",  
						"uri": "https://publicEndpoint-bash-file.sh",  
						"parameters": "",  
						"roles": ["edgenode"]  
					}  
				],  
				"httpsEndpoints": [  
					{  
						"subDomainSuffix": "abc",  
						"destinationPort": 8888,  
						"accessModes": ["WebPage"]  
					},  
					{  
						"subDomainSuffix": "was",  
						"destinationPort": 50073,  
						"accessModes": ["WebPage"]  
					}  
				],  
				"provisioningState": "Succeeded",  
				"applicationState": "Running",  
				"createdDate": "CreatedDate",  
				"applicationType": "CustomApplication",  
				"marketplaceIdentifier": "HueV1"  
			}  
		]  
	}  
  

删除

从群集中删除 HDInsight 应用程序。

请求

有关集群使用的标头和参数,请参阅通用参数和标头。

方法 请求 URI
DELETE https://management.azure.com/subscriptions/{subscription Id}/resourceGroups/{resourceGroup Name}/providers/Microsoft.HDInsight/clusters/{cluster name}/applications/{application Name}?api-version={api-version}

响应

如果请求成功完成,该作将返回 202(已接受)

状态代码: 202 已接受。