Application
作成
クラスターに新しいノード (エッジ ノードと呼ばれます) を作成し、そのノードにアプリケーションをインストールします。
要求
クラスターで使用される ヘッダーとパラメーター については、「共通パラメーターとヘッダー」を参照してください。
Method | 要求 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"
}
}
要素名 | 必須 | Type | 説明 |
---|---|---|---|
name | はい | String | アプリケーションの名前を指定します。 名前は clusterName/applicationName として指定する必要があります。アプリケーション名はクラスターごとに一意である必要があります。 |
type | はい | String | リソースの種類を指定します。 |
プロパティ | はい | 複合型 | クラスターのプロパティを指定します。 |
プロパティ
要素名 | 必須 | Type | Description |
---|---|---|---|
computeProfile | はい | 複合型 | アプリケーションが実行される VM について説明します |
InstallScriptActions | はい | 複合型 | アプリケーションのインストール スクリプト アクションについて説明します。 少なくとも 1 つのスクリプトを指定し、スクリプトをべき等にする必要があります。つまり、同じ結果を生成しながらスクリプトを繰り返し呼び出すことができます。 |
UninstallScriptActions | いいえ | 複合型 | アプリケーションのアンインストール スクリプト アクションについて説明します。 このパラメーターは省略可能ですが、指定されたアンインストール スクリプト アクションはべき等である必要があります (つまり、同じ結果を生成するときにスクリプトを繰り返し呼び出すことができます)。 |
HttpEndpoint | いいえ | 複合型 | アプリケーション上のどのエンドポイントをインターネットアドレス指定可能にするかを説明します。 |
applicationType | はい | String | この要素は常に値 "CustomApplication" です |
computeProfile
この要素には、1 つのロールが含まれている必要があります
要素名 | 必須 | Type | 説明 |
---|---|---|---|
role | はい | 複合型 | クラスター内のロールに関する情報を指定します |
role
要素名 | 必須 | Type | 説明 |
---|---|---|---|
name | はい | String | 名前は "edgenode" として指定する必要があります |
targetInstanceCount | はい | Integer | この要素は 1 に設定する必要があります |
hardwareProfile | はい | 複合型 | エッジ ノードのハードウェア プロファイルに関する情報を指定します |
hardwareProfile
要素名 | 必須 | Type | Description |
---|---|---|---|
vmSize | はい | String | VM のサイズを指定します。 有効なサイズについては、 HDInsight 構成オプション (このリンクで 1 回、 ノード価格レベルまで下にスクロール) を参照してください |
InstallScriptActions
要素名 | 必須 | Type | Description |
---|---|---|---|
名前 | はい | String | スクリプト アクションの名前を指定します。 クラスター上のすべての永続化されたスクリプト アクションで一意である必要があります |
Uri | はい | String | スクリプトのパブリックにアクセス可能な場所。 指定されたすべてのスクリプトはべき等である必要があります。つまり、同じ結果を生成するときにスクリプトを繰り返し呼び出すことができます。 |
パラメーター | いいえ | String | スクリプトに渡すパラメーターのオプション セット |
ロール | はい | 文字列の配列 | スクリプトを実行するためのロールについて説明します。 有効な値は、 headnode、 workernode、 zookeepernode、 edgenode です。 edgenode は、アプリケーションをホストするロールであり、アプリケーションを実行する場所です。 |
UninstallScriptActions
要素名 | 必須 | Type | Description |
---|---|---|---|
名前 | はい | String | スクリプト アクションの名前を指定します。 |
Uri | はい | String | スクリプトのパブリックにアクセス可能な場所。 指定するスクリプトはべき等である必要があります。つまり、同じ結果を生成するときにスクリプトを繰り返し呼び出すことができます。 |
パラメーター | いいえ | String | スクリプトに渡すパラメーターのオプション セット |
ロール | はい | 文字列の配列 | スクリプトを実行するためのロールについて説明します。 有効な値は、 headnode、 workernode、 zookeepernode、 edgenode です。 edgenode は、アプリケーションをホストするロールであり、アプリケーションを実行する場所です。 |
HttpEndpoint
要素名 | 必須 | Type | Description |
---|---|---|---|
subDomainSuffix | はい | String | アプリケーションへのアクセスに使用する DNS 名を作成するために使用される 3 文字の英数字文字列。 DNS 名の形式は *.apps.azurehdinsight.net です。 この名前は、クラスターごとに一意である必要があります。 |
destinationPort | はい | Integer | アプリケーションをホストするエッジノードで HTTP トラフィックを転送するポート。 |
accessModes | いいえ | 文字列の配列 | エンドポイントに関するメタデータ。 エンドポイントが Web ページをホストする場合は、 Web ページ をアクセス モードとして指定します。 それ以外の場合、配列は空であるか、ペイロードに存在しない必要があります。 この要素を使用すると、Azure portalでアプリケーションへの直接リンクを表示できます。 |
[応答]
検証が完了し、要求が受け入れられた場合、操作は 200 (OK) を返します。
状態コード: 200 OK
取得
HDInsight アプリケーションに関する詳細を取得します。
要求
クラスターで使用される ヘッダーとパラメーター については、「共通のパラメーターとヘッダー」を参照してください。
Method | 要求 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} |
Response
応答本文は、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 アプリケーションを削除します。
要求
クラスターで使用される ヘッダーとパラメーター については、「共通のパラメーターとヘッダー」を参照してください。
Method | 要求 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} |
Response
要求が正常に完了した場合、操作は 202 (Accepted) を返します
状態コード: 202 Accepted。