다음을 통해 공유


HDInsight on AKS 클러스터의 Apache Flink® 작업 관리

참고 항목

2025년 1월 31일에 Azure HDInsight on AKS가 사용 중지됩니다. 2025년 1월 31일 이전에 워크로드가 갑자기 종료되지 않도록 워크로드를 Microsoft Fabric 또는 동등한 Azure 제품으로 마이그레이션해야 합니다. 구독의 나머지 클러스터는 호스트에서 중지되고 제거됩니다.

사용 중지 날짜까지 기본 지원만 사용할 수 있습니다.

Important

이 기능은 현지 미리 보기로 제공됩니다. Microsoft Azure 미리 보기에 대한 보충 사용 약관에는 베타 또는 미리 보기로 제공되거나 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 더 많은 약관이 포함되어 있습니다. 이 특정 미리 보기에 대한 자세한 내용은 Azure HDInsight on AKS 미리 보기 정보를 참조하세요. 질문이나 기능 제안이 있는 경우 AskHDInsight에서 세부 정보와 함께 요청을 제출하고 Azure HDInsight 커뮤니티에서 더 많은 업데이트를 확인하세요.

HDInsight on AKS는 Azure Portal(사용자 친화적인 인터페이스) 및 ARM Rest API를 통해 직접 Apache Flink® 작업을 관리하고 제출하는 기능을 제공합니다.

이 기능을 통해 사용자는 클러스터 수준에 대한 심층 지식이 없어도 Apache Flink 작업을 효율적으로 제어하고 모니터링할 수 있습니다.

이점

  • 간소화된 작업 관리: Azure Portal에서 Apache Flink의 네이티브 통합을 통해 사용자에게 더 이상 작업을 제출, 관리, 모니터링하기 위해 Flink 클러스터에 대한 광범위한 지식이 필요하지 않습니다.

  • 사용자 친화적인 REST API: HDInsight on AKS는 Flink 작업을 제출하고 관리할 수 있는 사용자 친화적인 ARM Rest API를 제공합니다. 사용자는 이러한 Rest API를 사용하여 모든 Azure 서비스에서 Flink 작업을 제출할 수 있습니다.

  • 간편한 작업 업데이트 및 상태 관리: 기본 Azure 포털 통합을 통해 작업을 업데이트하고 마지막으로 저장된 상태(저장점)로 편리하게 복원할 수 있는 환경을 제공합니다. 이 기능은 작업 수명 주기 내내 연속성과 데이터 무결성을 보장합니다.

  • Azure 파이프라인을 사용하여 Flink 작업 자동화: HDInsight on AKS를 사용하면 Flink 사용자는 사용자 친화적인 ARM Rest API에 액세스할 수 있으므로 Flink 작업을 Azure Pipeline에 원활하게 통합할 수 있습니다. 새 작업을 시작하든, 실행 중인 작업을 업데이트하든, 다양한 작업 작업을 수행하든 관계없이 이 간소화된 접근 방식은 수동 단계를 제거합니다. 이를 통해 Flink 클러스터를 효율적으로 관리할 수 있습니다.

필수 조건

포털 또는 Rest API에서 작업을 제출하고 관리하기 전에 몇 가지 필수 조건이 있습니다.

  • 클러스터의 기본 스토리지 계정에 디렉터리를 만들어 작업 jar를 업로드합니다.

  • 사용자가 저장점을 사용하려는 경우 스토리지 계정에 작업 저장점을 위한 디렉터리를 만듭니다.

    디렉터리 구조를 보여 주는 스크린샷

주요 기능 및 작업

  • 새 작업 제출: 사용자는 복잡한 설정이나 외부 도구가 필요 없이 간편하게 새 Flink를 제출할 수 있습니다.

  • 저장점을 사용하여 작업 중지 및 시작: 사용자는 이전 상태(저장점)에서 Flink 작업을 정상적으로 중지하고 시작할 수 있습니다. 저장점은 작업 진행 상황을 보존하여 원활하게 작업을 재개할 수 있도록 합니다.

  • 작업 업데이트: 사용자는 스토리지 계정에서 jar를 업데이트한 후 실행 중인 작업을 업데이트할 수 있습니다. 이 업데이트는 자동으로 저장점을 가져와서 새 jar로 작업을 시작합니다.

  • 상태 비저장 업데이트: 상태 비저장 업데이트를 통해 작업에 대한 새로운 다시 시작의 수행이 간소화됩니다. 이 기능을 사용하면 업데이트된 작업 jar를 사용하여 완전히 다시 시작할 수 있습니다.

  • 저장점 관리: 사용자는 언제든지 실행 중인 작업에 대한 저장점을 만들 수 있습니다. 이러한 저장점을 나열하고 필요에 따라 특정 검사점에서 작업을 다시 시작하는 데 사용할 수 있습니다.

  • 취소: 작업을 영구적으로 취소합니다.

  • 삭제: 작업 기록 레코드를 삭제합니다.

HDInsight on AKS에서 작업을 관리하기 위한 옵션

HDInsight on AKS는 Flink 작업을 관리하는 방법을 제공합니다.

Azure Portal에서 작업 관리

포털에서 Flink 작업을 실행하려면 다음으로 이동합니다.

포털 --> HDInsight on AKS 클러스터 풀 --> Flink 클러스터 --> 설정 --> Flink 작업

`flink` 작업을 실행하는 방법을 보여 주는 스크린샷

  • 새 작업: 새 작업을 제출하려면 작업 jar를 스토리지 계정에 업로드하고 저장점 디렉터리를 만듭니다. 필요한 구성으로 템플릿을 완료한 다음 작업을 제출합니다.

    새 작업을 만드는 방법을 보여 주는 스크린샷

    속성 세부 정보:

    속성 설명 기본값 필수
    작업 이름 작업의 고유 이름입니다. 포털에 표시됩니다. 작업 이름은 소문자로 작성해야 합니다.
    jar 경로 작업 jar에 대한 스토리지 경로입니다. 사용자는 클러스터 스토리지에 디렉터리를 만들고 작업 jar를 업로드해야 합니다.
    항목 클래스 작업 실행이 시작되는 작업에 대한 항목 클래스입니다.
    Args 작업의 기본 프로그램에 대한 인수입니다. 모든 인수는 공백으로 구분합니다. 아니요
    병렬 처리 작업 Flink 병렬 처리입니다. 2
    savepoint.directory 작업에 대한 저장점 디렉터리입니다. 사용자가 스토리지 계정에서 작업 저장점에 대한 새 디렉터리를 만드는 것이 좋습니다. abfs://<container>@<account>/<deployment-ID>/savepoints 아니요

    작업이 시작되면 포털의 작업 상태는 실행 중입니다.

  • 중지: 작업 중지에는 매개 변수가 필요하지 않습니다. 사용자는 작업을 선택하여 작업을 중지할 수 있습니다.

    사용자가 작업을 중지할 수 있는 방법을 보여 주는 스크린샷

    작업이 중지되면 포털의 작업 상태는 중지됨이 됩니다.

  • 시작: 이 작업은 저장점에서 작업을 시작합니다. 작업을 시작하려면 중지된 작업을 선택하고 시작합니다.

    사용자가 작업을 시작하는 방법을 보여 주는 스크린샷

    흐름 템플릿을 필요한 옵션으로 채우고 시작하세요. 사용자는 사용자가 작업을 시작하려는 저장점을 선택해야 합니다. 기본적으로 마지막으로 성공한 저장점을 사용합니다.

    흐름 템플릿을 채우는 방법을 보여 주는 스크린샷

    속성 세부 정보:

    속성 설명 기본값 필수
    Args 작업의 기본 프로그램에 대한 인수입니다. 인수는 쉼표로 구분해야 합니다. 아니요
    마지막 저장점 작업을 중지하기 전에 마지막으로 성공한 저장점입니다. 저장점이 선택되지 않은 경우 기본적으로 사용됩니다. 편집할 수 없음
    저장점 이름 사용자는 작업에 사용할 수 있는 저장점을 나열하고 하나를 선택하여 작업을 시작할 수 있습니다. 아니요

    작업이 시작되면 포털의 작업 상태가 실행 중이 됩니다.

  • 업데이트: 업데이트는 업데이트된 작업 코드로 작업을 다시 시작하는 데 도움이 됩니다. 사용자는 스토리지 위치에서 최신 작업 jar를 업데이트하고 포털에서 작업을 업데이트해야 합니다. 이 업데이트는 저장점이 있는 작업을 중지하고 최신 jar로 다시 시작합니다.

    업데이트된 작업 코드로 작업을 다시 시작하는 방법을 보여 주는 스크린샷

    작업을 업데이트하기 위한 템플릿입니다.

    작업 업데이트를 위한 템플릿을 보여 주는 스크린샷

    작업이 업데이트되면 포털의 작업 상태가 “실행 중”이 됩니다.

  • 상태 비저장 업데이트: 이 작업은 업데이트와 유사하지만 최신 코드를 사용하여 작업을 새로 다시 시작합니다.

    최신 코드를 사용하여 작업을 새로 다시 시작하는 모습을 보여 주는 스크린샷

    작업을 업데이트하기 위한 템플릿입니다.

    상태 비저장 작업 업데이트를 위한 템플릿을 보여 주는 스크린샷

    속성 세부 정보:

    속성 설명 기본값 필수
    Args 작업의 기본 프로그램에 대한 인수입니다. 모든 인수는 공백으로 구분합니다. 아니요

    작업이 업데이트되면 포털의 작업 상태가 실행 중이 됩니다.

  • 저장점: Flink 작업에 대한 저장점을 가져옵니다.

    Flink 작업에 대한 저장점을 보여 주는 스크린샷

    저장점은 시간이 많이 걸리는 프로세스이므로 시간이 좀 걸립니다. 작업 상태가 진행 중인 것을 볼 수 있습니다.

    작업 동작 상태를 보여 주는 스크린샷

  • 취소: 이 작업은 사용자가 작업을 종료하도록 지원합니다.

    사용자가 작업을 종료할 수 있는 방법을 보여 주는 스크린샷

  • 삭제: 포털에서 작업 데이터를 삭제합니다.

    사용자가 포털에서 작업 데이터를 삭제하는 방법을 보여 주는 스크린샷

  • 작업 세부 정보 보기: 작업 세부 정보를 보려면 사용자가 작업 이름을 클릭합니다. 그러면 작업에 대한 세부 정보와 마지막 작업 결과가 제공됩니다.

    작업 세부 정보를 보는 방법을 보여 주는 스크린샷

    실패한 작업에 대해 이 작업 json은 자세한 예외 사항과 실패 이유를 제공합니다.

Rest API를 사용하여 작업 관리

HDInsight on AKS는 사용자에게 친숙한 ARM Rest API를 지원하여 작업을 제출하고 작업을 관리합니다. 이 Flink REST API를 사용하여 Flink 작업을 Azure Pipeline에 원활하게 통합할 수 있습니다. 새 작업을 시작하든, 실행 중인 작업을 업데이트하든, 다양한 작업 작업을 수행하든 간에 이 간소화된 접근 방식은 수동 단계를 제거하고 Flink 클러스터를 효율적으로 관리할 수 있도록 합니다.

Rest API의 기본 URL 형식

Rest API에 대한 다음 URL을 참조하세요. 사용자는 이를 사용하기 전에 구독, 리소스 그룹, 클러스터 풀, 클러스터 이름, HDInsight on AKS API 버전을 바꿔야 합니다. https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runjob?api-version={{API_VERSION}}

사용자는 REST API를 사용하여 새 작업 시작, 작업 중지, 작업 시작, 저장점 만들기, 작업 취소, 작업 삭제 등의 작업을 수행할 수 있습니다. 현재 API_VERSION은 2023-06-01-preview입니다.

Rest API 인증

Flink ARM Rest API 사용자를 인증하려면 ARM 리소스에 대한 전달자 토큰 또는 액세스 토큰을 가져와야 합니다. 서비스 주체를 사용하여 Azure ARM(Azure Resource Manager) REST API를 인증하려면 다음과 같은 일반적인 단계를 수행합니다.

  • 서비스 주체를 만듭니다.

    az ad sp create-for-rbac --name <your-SP-name>

  • flink 클러스터에 대한 SP에 소유자 권한을 부여합니다.

  • 서비스 주체로 로그인합니다.

    az login --service-principal -u <client_id> -p <client_secret> --tenant <tenant_id>

  • 액세스 토큰을 가져옵니다.

    $token = az account get-access-token --resource=https://management.azure.com/ | ConvertFrom-Json

    $tok = $token.accesstoken

    사용자는 표시된 URL에서 토큰을 사용할 수 있습니다.

    $data = Invoke-RestMethod -Uri $restUri -Method GET -Headers @{ Authorization = "Bearer $tok" }

관리 ID를 사용한 인증: 사용자는 관리 ID를 지원하는 리소스를 활용하여 작업 REST API를 호출할 수 있습니다. 자세한 내용은 관리 ID 설명서를 참조하세요.

API 및 매개 변수 목록

  • 새 작업: 새 작업을 Flink에 제출하기 위한 Rest API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문:

    { 
        "properties": { 
            "jobType": "FlinkJob", 
            "jobName": "<JOB_NAME>", 
            "action": "NEW", 
            "jobJarDirectory": "<JOB_JAR_STORAGE_PATH>", 
            "jarName": "<JOB_JAR_NAME>", 
            "entryClass": "<JOB_ENTRY_CLASS>", 
            “args”: ”<JOB_JVM_ARGUMENT>”
            "flinkConfiguration": { 
                "parallelism": "<JOB_PARALLELISM>", 
                "savepoint.directory": "<JOB_SAVEPOINT_DIRECTORY_STORAGE_PATH>" 
            } 
         } 
    }
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. “FlinkJob”이어야 합니다.
    jobName 작업의 고유 이름입니다. 포털에 표시됩니다. 작업 이름은 소문자로 작성해야 합니다.
    작업 작업에 대한 작업 유형을 나타냅니다. 새 작업 시작의 경우 항상 “새로 만들기”여야 합니다.
    jobJarDirectory 작업 jar 디렉터리에 대한 스토리지 경로입니다. 사용자는 클러스터 스토리지에 디렉터리를 만들고 작업 jar를 업로드해야 합니다.
    jarName 작업 jar의 이름입니다.
    entryClass 작업 실행이 시작되는 작업에 대한 항목 클래스입니다.
    args 작업의 기본 프로그램에 대한 인수입니다. 인수는 공백으로 구분합니다. 아니요
    병렬 처리 작업 Flink 병렬 처리입니다. 2
    savepoint.directory 작업에 대한 저장점 디렉터리입니다. 사용자가 스토리지 계정에서 작업 저장점에 대한 새 디렉터리를 만드는 것이 좋습니다. abfs://<container>@<account>/<deployment-ID>/savepoints 아니요

    예시:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 작업 중지: 현재 실행 중인 작업을 중지하기 위한 Rest API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문

       {
          "properties": {
            "jobType": "FlinkJob",
            "jobName": "<JOB_NAME>",
            "action": "STOP"
          }
        }
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. “FlinkJob”이어야 합니다.
    jobName 작업을 시작하는 데 사용되는 작업 이름입니다.
    작업 “STOP”이어야 합니다.

    예시:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 작업 시작: 중지된 작업을 시작하기 위한 REST API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문

       {
          "properties": {
             "jobType": "FlinkJob",
             "jobName": "<JOB_NAME>",
             "action": "START",
             "savePointName": "<SAVEPOINT_NAME>"
          }
        }
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. “FlinkJob”이어야 합니다.
    jobName 작업을 시작하는 데 사용되는 작업 이름입니다.
    작업 “START”여야 합니다.
    savePointName 작업을 시작할 지점 이름을 저장합니다. 기본적으로 시작 작업은 마지막으로 성공한 저장점을 사용하는 선택적 속성입니다. 아니요

    예제:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 업데이트 작업: 현재 실행 중인 작업을 업데이트하기 위한 Rest API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문

      {
          "properties": {
              "jobType": "FlinkJob",
              "jobName": "<JOB_NAME>",
              "action": "UPDATE",
              “args” : “<JOB_JVM_ARGUMENT>”,
              "savePointName": "<SAVEPOINT_NAME>"
          }
      }
    
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. “FlinkJob”이어야 합니다.
    jobName 작업을 시작하는 데 사용되는 작업 이름입니다.
    작업 새 작업 시작의 경우 항상 “UPDATE”여야 합니다.
    args 작업 JVM 인수 아니요
    savePointName 작업을 시작할 지점 이름을 저장합니다. 기본적으로 시작 작업은 마지막으로 성공한 저장점을 사용하는 선택적 속성입니다. 아니요

    예시:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 상태 비저장 업데이트 작업: 상태 비저장 업데이트를 위한 Rest API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문

      {
          "properties": {
              "jobType": "FlinkJob",
              "jobName": "<JOB_NAME>",
              "action": "STATELESS_UPDATE",
              “args” : “<JOB_JVM_ARGUMENT>”
          }
      }
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. “FlinkJob”이어야 합니다.
    jobName 작업을 시작하는 데 사용되는 작업 이름입니다.
    작업 새 작업을 시작할 때는 항상 “STATELESS_UPDATE”여야 합니다.
    args 작업 JVM 인수 아니요

    예제:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 저장점: 작업에 대한 저장점을 트리거하는 Rest API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문

      {
          "properties": {
              "jobType": "FlinkJob",
              "jobName": "<JOB_NAME>",
              "action": "SAVEPOINT"
          }
      }
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. “FlinkJob”이어야 합니다.
    jobName 작업을 시작하는 데 사용되는 작업 이름입니다.
    작업 새 작업을 시작하려면 항상 “SAVEPOINT”여야 합니다.

    예제:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 저장점 나열: 저장점 디렉터리의 모든 저장점을 나열하는 Rest API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문

      {
          "properties": {
              "jobType": "FlinkJob",
              "jobName": "<JOB_NAME>",
              "action": "LIST_SAVEPOINT"
          }
      }
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. “FlinkJob”이어야 합니다.
    jobName 작업을 시작하는 데 사용되는 작업 이름입니다.
    작업 “LIST_SAVEPOINT”여야 합니다.

    예제:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 취소: 작업을 취소하는 Rest API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문

      {
          "properties": {
              "jobType": "FlinkJob",
              "jobName": "<JOB_NAME>",
              "action": "CANCEL"
          }
      }
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. FlinkJob이어야 합니다.
    jobName 작업을 시작하는 데 사용되는 작업 이름입니다.
    작업 CANCEL이어야 합니다.

    예제:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 삭제: 작업을 삭제하는 Rest API입니다.

    옵션
    메서드 게시
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/runJob?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    요청 본문

      {
          "properties": {
              "jobType": "FlinkJob",
              "jobName": "<JOB_NAME>",
              "action": "DELETE"
          }
      }
    

    JSON 본문에 대한 속성 세부 정보:

    속성 설명 기본값 필수
    jobType 작업 유형입니다. “FlinkJob”이어야 합니다.
    jobName 작업을 시작하는 데 사용되는 작업 이름입니다.
    작업 DELETE여야 합니다.

    예제:

    Invoke-RestMethod -Uri $restUri -Method POST -Headers @{ Authorization = "Bearer $tok" } -Body $jsonString -ContentType "application/json"

  • 작업 나열: Rest API를 사용하여 현재 작업의 모든 작업 및 상태를 나열합니다.

    옵션
    메서드 GET
    URL https://management.azure.com/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/jobs?api-version={{API_VERSION}}
    헤더 권한 부여 = “Bearer $token”

    출력:

    { 
      "value": [ 
          { 
              "id": "/subscriptions/{{USER_SUBSCRIPTION}}/resourceGroups/{{USER_RESOURCE_GROUP}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSER_POOL}}/clusters/{{FLINK_CLUSTER}}/jobs/job1", 
              "properties": { 
                  "jobType": "FlinkJob", 
                  "jobName": "job1", 
                  "jobJarDirectory": "<JOB_JAR_STORAGE_PATH>", 
                  "jarName": "<JOB_JAR_NAME>", 
                  "action": "STOP", 
                  "entryClass": "<JOB_ENTRY_CLASS>", 
                  "flinkConfiguration": { 
                      "parallelism": "2", 
                      "savepoint.directory": "<JOB_SAVEPOINT_DIRECTORY_STORAGE_PATH>s" 
                  }, 
                  "jobId": "20e9e907eb360b1c69510507f88cdb7b", 
                  "status": "STOPPED", 
                  "jobOutput": "Savepoint completed. Path: <JOB_SAVEPOINT_DIRECTORY_STORAGE_PATH>s/savepoint-20e9e9-8a48c6b905e5", 
                  "actionResult": "SUCCESS", 
                  "lastSavePoint": "<JOB_SAVEPOINT_DIRECTORY_STORAGE_PATH>s/savepoint-20e9e9-8a48c6b905e5" 
          } 
       }
      ]
    }
    

참고 항목

작업이 진행 중이면 actionResult에 ‘IN_PROGRESS’ 값으로 표시되며, 성공적으로 완료되면 ‘SUCCESS’로, 실패하면 ‘FAILED’로 표시됩니다.

참조