애플리케이션
만들기
클러스터에 새 노드(에지 노드라고 함)를 만들고 해당 노드에 애플리케이션을 설치합니다.
요청
클러스터에서 사용되는 헤더 및 매개 변수에 대한 일반적인 매개 변수 및 헤더를 참조하세요.
메서드 | 요청 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 |
---|---|---|---|
name | 예 | String | 애플리케이션의 이름을 지정합니다. 이름은 clusterName/applicationName 으로 지정해야 합니다. 애플리케이션 이름은 클러스터당 고유해야 합니다. |
type | 예 | String | 리소스의 종류를 지정합니다. |
속성 | Yes | 복합 형식 | 클러스터의 속성을 지정합니다. |
속성
요소 이름 | 필수 | 형식 | Description |
---|---|---|---|
computeProfile | 예 | 복합 형식 | 애플리케이션이 실행될 VM에 대해 설명합니다. |
InstallScriptActions | 예 | 복합 형식 | 애플리케이션에 대한 설치 스크립트 작업을 설명합니다. 하나 이상의 스크립트를 지정해야 하며 스크립트는 idempotent여야 합니다. 즉, 동일한 결과를 생성하는 동안 스크립트를 반복적으로 호출할 수 있습니다. |
UninstallScriptActions | 아니요 | 복합 형식 | 애플리케이션에 대한 제거 스크립트 작업을 설명합니다. 이 매개 변수는 선택 사항이지만 지정된 모든 제거 스크립트 작업은 idempotent여야 합니다(즉, 동일한 결과를 생성하는 동안 스크립트를 반복적으로 호출할 수 있음). |
HttpEndpoint | 아니요 | 복합 형식 | 인터넷 주소 지정이 가능한 애플리케이션의 엔드포인트에 대해 설명합니다. |
applicationType | 예 | String | 이 요소는 항상 "CustomApplication" 값입니다. |
computeProfile
이 요소에는 정확히 하나의 역할이 포함되어야 합니다.
요소 이름 | 필수 | 형식 | Description |
---|---|---|---|
role | 예 | 복합 형식 | 클러스터의 역할에 대한 정보를 지정합니다. |
역할(role)
요소 이름 | 필수 | 형식 | Description |
---|---|---|---|
name | 예 | String | 이름은 "edgenode"로 지정해야 합니다. |
targetInstanceCount | 예 | 정수 | 이 요소는 1로 설정해야 합니다. |
hardwareProfile | 예 | 복합 형식 | edgenode의 하드웨어 프로필에 대한 정보를 지정합니다. |
hardwareProfile
요소 이름 | 필수 | 형식 | Description |
---|---|---|---|
vmSize | 예 | String | VM의 크기를 지정합니다. 유효한 크기는 HDInsight 구성 옵션 (이 링크에서 한 번 노드 가격 책정 계층까지 스크롤)을 참조하세요. |
InstallScriptActions
요소 이름 | 필수 | 형식 | Description |
---|---|---|---|
속성 | 예 | String | 스크립트 작업의 이름을 지정합니다. 클러스터의 모든 지속형 스크립트 작업에서 고유해야 합니다. |
URI | 예 | String | 스크립트의 공개적으로 액세스할 수 있는 위치입니다. 지정된 모든 스크립트는 idempotent여야 합니다. 즉, 동일한 결과를 생성하는 동안 스크립트를 반복적으로 호출할 수 있습니다. |
매개 변수 | 예 | String | 스크립트에 전달할 선택적 매개 변수 집합 |
역할 | 예 | 문자열 배열 | 스크립트를 실행할 역할에 대해 설명합니다. 유효한 값은 헤드 노드, 작업자 노드, zookeepernode 및 edgenode입니다. edgenode는 애플리케이션을 호스트하는 역할이며 애플리케이션이 실행되는 위치입니다. |
UninstallScriptActions
요소 이름 | 필수 | 형식 | Description |
---|---|---|---|
속성 | 예 | String | 스크립트 작업의 이름을 지정합니다. |
URI | 예 | String | 스크립트의 공개적으로 액세스할 수 있는 위치입니다. 지정된 모든 스크립트는 idempotent여야 합니다. 즉, 동일한 결과를 생성하는 동안 스크립트를 반복적으로 호출할 수 있습니다. |
매개 변수 | 예 | String | 스크립트에 전달할 선택적 매개 변수 집합 |
역할 | 예 | 문자열 배열 | 스크립트를 실행할 역할에 대해 설명합니다. 유효한 값은 헤드 노드, 작업자 노드, zookeepernode 및 edgenode입니다. edgenode는 애플리케이션을 호스트하는 역할이며 애플리케이션이 실행되는 위치입니다. |
HttpEndpoint
요소 이름 | 필수 | 형식 | Description |
---|---|---|---|
subDomainSuffix | 예 | String | 애플리케이션에 액세스하는 데 사용되는 DNS 이름을 빌드하는 데 사용되는 3자 영숫자 문자열입니다. DNS 이름은 *.apps.azurehdinsight.net 형식입니다. 이 이름은 클러스터당 고유해야 합니다. |
destinationPort | 예 | 정수 | 애플리케이션을 호스팅하는 edgenode에서 HTTP 트래픽을 전달할 포트입니다. |
accessModes | 아니요 | 문자열 배열 | 엔드포인트에 대한 메타데이터입니다. 엔드포인트가 웹 페이지를 호스트하는 경우 웹 페이지를 액세스 모드로 지정합니다. 그렇지 않으면 배열이 비어 있거나 페이로드에 없어야 합니다. 이 요소를 사용하면 Azure Portal 애플리케이션에 대한 직접 링크를 표시할 수 있습니다. |
응답
유효성 검사가 완료되고 요청이 수락되면 작업은 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} |
응답
응답 본문은 applicationName이 제공되는 경우 HDInsight 애플리케이션 세부 정보 또는 단일 HDInsight 애플리케이션 세부 정보의 배열입니다. 다음은 애플리케이션 세부 정보의 예입니다.
응답 코드: 작업이 성공적으로 완료된 경우 HTTP 200(확인)입니다.
예제 응답:
{
"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 수락됨.