다음을 통해 공유


AKS의 HDInsight에서 Apache Flink®와 함께 Azure Pipelines를 사용하는 방법

중요하다

AKS의 Azure HDInsight는 2025년 1월 31일에 사용 중지되었습니다. 이 공지 을 통해에 대해 자세히 알아보세요.

워크로드가 갑자기 종료되는 것을 방지하기 위해 워크로드를 Microsoft Fabric 또는 동등한 Azure 제품으로 워크로드를 마이그레이션해야 합니다.

중요하다

이 기능은 현재 미리 보기로 제공됩니다. Microsoft Azure의 미리 보기에 대한 추가 사용 약관은 베타, 미리 보기 또는 아직 일반적으로 이용 가능하지 않은 Azure 기능에 적용되는 더 많은 법적 용어를 포함합니다. 이 특정 미리 보기에 대한 자세한 내용은 AKS 및 Azure HDInsight 미리 보기 정보을 참조하세요. 질문이나 기능 제안이 있으면, AskHDInsight로 요청을 제출하고, Azure HDInsight Community에서 더 많은 업데이트를 팔로우하세요.

이 문서에서는 AKS에서 HDInsight와 함께 Azure Pipelines를 사용하여 클러스터의 REST API로 Flink 작업을 제출하는 방법을 알아봅니다. 샘플 YAML 파이프라인 및 PowerShell 스크립트를 사용하여 REST API 상호 작용의 자동화를 간소화하는 프로세스를 안내합니다.

필수 구성 요소

  • Azure 구독. Azure 구독이 없는 경우 체험 계정을 만듭니다.

  • 리포지토리를 만들 수 있는 GitHub 계정입니다. 무료로만드세요.

  • .pipeline 디렉터리를 만들고, flink-azure-pipelines.yml 복사, flink-job-azure-pipeline.ps1 복사

  • Azure DevOps 조직. 무료로 만듭니다. 팀에 이미 있는 경우 사용하려는 Azure DevOps 프로젝트의 관리자인지 확인합니다.

  • Microsoft 호스팅 에이전트에서 파이프라인을 실행하는 기능. Microsoft 호스팅 에이전트를 사용하려면 Azure DevOps 조직에서 Microsoft 호스팅 병렬 작업에 액세스할 수 있어야 합니다. 병렬 작업을 구매하거나 무료 지원을 요청할 수 있습니다.

  • Flink 클러스터입니다. 없는 경우 AKSHDInsight에서 Flink 클러스터를 만듭니다.

  • 클러스터 스토리지 계정에 하나의 디렉터리를 만들어 작업 jar를 복사합니다. 나중에 파이프라인 YAML에서 작업 jar 위치(<JOB_JAR_STORAGE_PATH>)에 대해 이 디렉터리를 구성해야 합니다.

파이프라인을 설정하는 단계

Azure Pipelines에 대한 서비스 주체 만들기

Azure에 액세스하기 위해 Microsoft Entra 서비스 주체 을 생성합니다 - Contributor 역할로 AKS 클러스터에서 HDInsight에 접근 권한을 부여하고, 응답에서 앱 ID, 비밀번호, 및 테넌트를 기록해 둡니다.

az ad sp create-for-rbac -n <service_principal_name> --role Contributor --scopes <Flink Cluster Resource ID>`

본보기:

az ad sp create-for-rbac -n azure-flink-pipeline --role Contributor --scopes /subscriptions/abdc-1234-abcd-1234-abcd-1234/resourceGroups/myResourceGroupName/providers/Microsoft.HDInsight/clusterpools/hiloclusterpool/clusters/flinkcluster`

참조

메모

Apache, Apache Flink, Flink 및 관련 오픈 소스 프로젝트 이름은 asF(Apache Software Foundation)의 상표입니다.

키 볼트 만들기

  1. 새로운 Azure Key Vault를 만들려면 이 자습서 을 따라 하세요.

  2. 세 가지 비밀 만들기

    • 스토리지 키에 대한 클러스터-스토리지-키.

    • 주 clientId 또는 appId에 대한 service-principal-key .

    • 서비스 주체 비밀 보안 주체 비밀에 대한.

    키 볼트를 만드는 방법을 스크린샷으로 보여 줍니다.

  3. 서비스 주체에게 "Key Vault 비밀 책임자" 역할을 사용하여 Azure Key Vault에 액세스할 수 있는 권한을 부여합니다.

설치 파이프라인

  1. 프로젝트로 이동하고 프로젝트 설정을 클릭합니다.

  2. 아래로 스크롤하여 서비스 연결을 선택한 다음 새 서비스 연결을 선택합니다.

  3. Azure Resource Manager를 선택합니다.

    새 서비스 연결을 선택하는 방법을 보여 주는 스크린샷

  4. 인증 방법에서 서비스 주체(수동)를 선택합니다.

    스크린샷은 새 서비스 연결을 보여줍니다.

  5. 서비스 연결 속성을 편집합니다. 최근에 만든 서비스 주체를 선택합니다.

    서비스 연결을 편집하는 방법을 보여 주는 스크린샷

  6. 확인을 클릭하여 연결이 올바르게 설정되었는지 확인합니다. 다음 오류가 발생하는 경우:

    서비스 연결 오류 메시지를 보여 주는 스크린샷

  7. 그런 다음 구독에 읽기 권한자 역할을 할당해야 합니다.

  8. 그런 다음 확인에 성공해야 합니다.

  9. 서비스 연결을 저장합니다.

    테넌트 ID를 보는 방법을 보여 주는 스크린샷

  10. 파이프라인으로 이동하고 새 파이프라인을 클릭합니다.

    새 파이프라인을 만드는 방법을 보여 주는 스크린샷

  11. 코드의 위치로 GitHub를 선택합니다.

  12. 리포지토리를 선택합니다. GitHub에서 리포지토리를 만드는 방법을 참조하세요. 선택된 GitHub 저장소 이미지.

    코드를 검색하는 방법을 보여 주는 스크린샷

  13. 리포지토리를 선택합니다. 자세한 내용은 GitHub리포지토리를 만드는 방법을 참조하세요.

    GitHub 리포지토리를 선택하는 방법을 보여 주는 스크린샷

  14. 파이프라인 구성 옵션에서 기존 Azure Pipelines YAML 파일을 선택할 수 있게 됩니다. 이전에 복사한 분기 및 파이프라인 스크립트를 선택합니다. (.pipeline/flink-azure-pipelines.yml)

    파이프라인을 구성하는 방법을 보여 주는 스크린샷

  15. 변수 섹션의 값을 대체합니다.

    값을 바꾸는 방법을 보여 주는 스크린샷

  16. 요구 사항에 따라 코드 빌드 섹션을 수정하고 작업 jar 로컬 경로에 대한 변수 섹션에서 <JOB_JAR_LOCAL_PATH> 구성합니다.

    스크린샷은 코드 빌드 섹션을 보여줍니다.

  17. 파이프라인 변수 "action"을 추가하고 값 "RUN"을 구성합니다.

    스크린샷은 파이프라인 변수를 추가하는 방법을 보여줍니다.

    파이프라인을 실행하기 전에 변수 값을 변경할 수 있습니다.

    • NEW: 이 값은 기본값입니다. 새 작업을 시작하고 작업이 이미 실행 중인 경우 실행 중인 작업을 최신 jar로 업데이트합니다.

    • SAVEPOINT: 이 값은 작업을 실행하기 위한 저장 지점을 사용합니다.

    • DELETE: 실행 중인 작업을 취소하거나 삭제합니다.

  18. 파이프라인을 저장하고 실행합니다. Flink 작업 섹션에서 포털에서 실행 중인 작업을 볼 수 있습니다.

    스크린샷은 파이프라인을 저장하고 실행하는 방법을 보여줍니다.

메모

파이프라인을 사용하여 작업을 제출하는 하나의 샘플입니다. Flink REST API 문서에 따라 작업을 제출하는 고유한 코드를 작성할 수 있습니다.