Partager via


API REST d’application dans Azure HDInsight

Créer

Crée un nœud sur le cluster (appelé nœud Edge) et installe une application sur ce nœud.

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de la requête
PUT https://management.azure.com/subscriptions/{subscription Id}/resourceGroups/{resourceGroup Name}/providers/Microsoft.HDInsight/clusters/{cluster name}/applications/{application Name}?api-version={api-version}

L’exemple suivant montre le corps de la demande d’installation d’applications sur un cluster HDInsight basé sur Linux.

{  
  
	"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"  
	}  
}  
  
Nom de l’élément Obligatoire Catégorie Descriptif
nom Oui Chaîne Spécifie le nom de l'application. Le nom doit être spécifié sous la forme clusterName/applicationName. Le nom de l’application doit être unique par cluster.
type Oui Chaîne Spécifie le type de la ressource.
Propriétés Oui Type complexe Spécifie les propriétés du cluster.

Propriétés

Nom de l’élément Obligatoire Catégorie Descriptif
calculProfile Oui Type complexe Décrit la machine virtuelle sur laquelle l’application s’exécutera
InstallScriptActions Oui Type complexe Décrit les actions de script d’installation de l’application. Au moins un script doit être spécifié et les scripts doivent être idempotents, ce qui signifie que les scripts peuvent être appelés à plusieurs reprises tout en produisant le même résultat.
UninstallScriptActions Non Type complexe Décrit les actions de script de désinstallation de l’application. Ce paramètre est facultatif, mais toutes les actions de script de désinstallation spécifiées doivent être idempotentes (ce qui signifie que les scripts peuvent être appelés à plusieurs reprises tout en produisant le même résultat).
HttpEndpoint Non Type complexe Décrit les points de terminaison de l’application qui doivent être adressables par Internet.
applicationType Oui Chaîne Cet élément est toujours la valeur « CustomApplication »

calculProfile

Cet élément doit contenir exactement un rôle

Nom de l’élément Obligatoire Catégorie Descriptif
rôle Oui Type complexe Spécifie des informations sur les rôles dans le cluster
rôle
Nom de l’élément Obligatoire Catégorie Descriptif
nom Oui Chaîne Le nom doit être spécifié comme « edgenode »
targetInstanceCount Oui Nombre entier Cet élément doit être défini sur 1
matérielProfil Oui Type complexe Spécifie des informations sur le profil matériel du nœud d’arête
matérielProfil
Nom de l’élément Obligatoire Catégorie Descriptif
vmTaille Oui Chaîne Spécifie la taille de la machine virtuelle. Reportez-vous aux options de configuration HDInsight (une fois sur ce lien, faites défiler jusqu’aux niveaux tarifaires Node) pour connaître les tailles valides

InstallScriptActions

Nom de l’élément Obligatoire Catégorie Descriptif
Nom Oui Chaîne Spécifie le nom de l’action de script. Doit être unique pour toutes les actions de script persistantes sur le cluster
Uri Oui Chaîne Emplacement du script accessible au public. Tous les scripts spécifiés doivent être idempotents, ce qui signifie qu’ils peuvent être appelés à plusieurs reprises tout en produisant le même résultat.
Paramètres Non Chaîne Ensemble optionnel de paramètres à passer au script
Rôles Oui Tableau de chaînes Décrit le rôle d’exécution du script. Les valeurs valides sont : headnode, workernode, zookeepernode et edgenode. EdgeNode est le rôle qui héberge l’application et l’endroit où votre application s’exécutera.

UninstallScriptActions

Nom de l’élément Obligatoire Catégorie Descriptif
Nom Oui Chaîne Spécifie le nom de l’action de script.
Uri Oui Chaîne Emplacement du script accessible au public. Tous les scripts spécifiés doivent être idempotents, ce qui signifie qu’ils peuvent être appelés à plusieurs reprises tout en produisant le même résultat.
Paramètres Non Chaîne Ensemble optionnel de paramètres à passer au script
Rôles Oui Tableau de chaînes Décrit le rôle d’exécution du script. Les valeurs valides sont : headnode, workernode, zookeepernode et edgenode. EdgeNode est le rôle qui héberge l’application et l’endroit où votre application s’exécutera.

HttpEndpoint

Nom de l’élément Obligatoire Catégorie Descriptif
subDomainSuffix Oui Chaîne Chaîne alphanumérique de trois caractères utilisée pour créer le nom DNS utilisé pour accéder à l’application. Le nom DNS sera au format : *.apps.azurehdinsight.net. Ce nom doit être unique par cluster.
destinationPort Oui Nombre entier Port vers lequel transférer le trafic HTTP sur le nœud Edge hébergeant votre application.
accessModes Non Tableau de chaînes Métadonnées sur le point de terminaison. Si le point de terminaison héberge une page Web, spécifiez page Web comme mode d’accès. Sinon, le tableau doit être vide ou ne pas être présent dans la charge utile. Cet élément permet au portail Azure d’afficher des liens directs vers votre application.

Réponse

Si la validation est terminée et que la demande est acceptée, l’opération renverra 200 (OK).

Code d’état : 200 OK

Obtenir

Obtient des détails sur une application HDInsight.

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de la requête
GET https://management.azure.com/subscriptions/{subscription Id}/resourceGroups/{resourceGroup Name}/providers/Microsoft.HDInsight/clusters/{cluster name}/applications/{application Name}?api-version={api-version}

Réponse

Le corps de la réponse est un tableau de détails d’application HDInsight ou un seul détail d’application HDInsight si applicationName est fourni. Vous trouverez ci-dessous un exemple de détail d’application.

Code de réponse : HTTP 200 (OK) à la fin de l’opération.

Exemple de réponse :

{  
	"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"  
			}  
		]  
	}  
  

Supprimer

Supprime une application HDInsight du cluster.

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de la requête
Supprimer https://management.azure.com/subscriptions/{subscription Id}/resourceGroups/{resourceGroup Name}/providers/Microsoft.HDInsight/clusters/{cluster name}/applications/{application Name}?api-version={api-version}

Réponse

L’opération renverra 202 (Accepté) si la demande est complétée avec succès

Code d’état : 202 Accepté.