AKS의 HDInsight에서 Apache Flink 애플리케이션 모드 클러스터
중요하다
AKS의 Azure HDInsight는 2025년 1월 31일에 사용 중지되었습니다. 이 발표 에서을(를) 자세히 알아보세요.
워크로드가 갑자기 종료되는 것을 방지하기 위해 워크로드를 Microsoft Fabric 또는 동등한 Azure 제품으로 워크로드를 마이그레이션해야 합니다.
중요하다
이 기능은 현재 미리 보기로 제공됩니다. Microsoft Azure 미리 보기에 대한 추가 사용 약관에는 베타, 미리 보기 또는 아직 일반 공급으로 출시되지 않은 Azure 기능에 적용되는 더 많은 법적 조건이 포함되어 있습니다. 이 특정 미리 보기에 대한 자세한 내용은 Azure HDInsight on AKS 미리 보기 정보를 참조하세요. 질문이나 기능 제안을 하시려면 AskHDInsight에 요청을 제출하시고, 더 많은 업데이트를 받으시려면 Azure HDInsight Community를 팔로우해 주세요.
AKS의 HDInsight는 이제 Flink 애플리케이션 모드 클러스터를 제공합니다. 이 클러스터를 사용하면 사용하기 쉬운 인터페이스와 Azure Resource Management Rest API가 있는 Azure Portal을 사용하여 클러스터 Flink 애플리케이션 모드 수명 주기를 관리할 수 있습니다. 애플리케이션 모드 클러스터는 전용 리소스를 사용하여 대규모 및 장기 실행 작업을 지원하고 리소스 집약적이거나 광범위한 데이터 처리 작업을 처리하도록 설계되었습니다.
이 배포 모드를 사용하면 특정 Flink 애플리케이션에 전용 리소스를 할당하여 큰 워크로드를 효율적으로 처리할 수 있는 충분한 컴퓨팅 능력과 메모리를 확보할 수 있습니다.
장점
작업 jar를 사용하여 간소화된 클러스터 배포.
사용자 친화적인 REST API: AKS의 HDInsight는 업데이트, 저장점, 취소, 삭제와 같은 앱 모드 작업 작업을 관리하는 사용자에게 친숙한 ARM Rest API를 제공합니다.
작업 업데이트 및 상태 관리를 관리하기 쉽습니다. 네이티브 Azure Portal 통합은 작업을 업데이트하고 마지막으로 저장된 상태(저장점)로 복원하기 위한 번거로움 없는 환경을 제공합니다. 이 기능은 작업 수명 주기 내내 연속성 및 데이터 무결성을 보장합니다.
Azure Pipelines 또는 기타 CI/CD 도구를 사용하여 Flink 작업 자동화: AKS에서 HDInsight를 사용하여 Flink 사용자는 사용자에게 친숙한 ARM Rest API에 액세스할 수 있으며, Flink 작업 작업을 Azure Pipeline 또는 기타 CI/CD 도구에 원활하게 통합할 수 있습니다.
주요 기능
Stop and Start Jobs with Savepoints: 사용자는 Savepoint를 활용하여 이전 상태에서 정상적으로 Flink AppMode 작업을 중지하고 시작할 수 있습니다. 저장점을 사용하면 작업 진행률이 유지되어 원활한 재개가 가능합니다.
작업 업데이트: 사용자는 스토리지 계정에서 jar를 업데이트한 후 실행 중인 AppMode 작업을 업데이트할 수 있습니다. 이 업데이트는 자동으로 저장점을 사용하고 새 jar로 AppMode 작업을 시작합니다.
상태 비정상 업데이트: AppMode 작업에 대해 새로 다시 시작하는 작업은 상태 비정상 업데이트를 통해 간소화됩니다. 이 기능을 사용하면 사용자가 업데이트된 작업 jar를 사용하여 새로 다시 시작을 시작할 수 있습니다.
Savepoint Management: 지정된 순간에 사용자는 실행 중인 작업에 대한 저장점을 만들 수 있습니다. 이러한 저장점을 나열하고 필요에 따라 특정 검사점에서 작업을 다시 시작하는 데 사용할 수 있습니다.
취소 : 작업을 영구적으로 취소합니다.
삭제: AppMode 클러스터 삭제
Flink 애플리케이션 클러스터를 만드는 방법
필수 구성 요소
다음 섹션에서 필수 구성 요소를 완료합니다.
Storage 계정에 작업 jar를 추가하세요.
Flink 앱 모드 클러스터를 설정하기 전에 몇 가지 준비 단계가 필요합니다. 이러한 단계 중 하나는 클러스터의 스토리지 계정에 앱 모드 작업 JAR을 배치하는 것입니다.
앱 모드 작업 JAR에 대한 디렉터리를 만듭니다.
전용 컨테이너 내에서 앱 모드 작업 JAR 파일을 업로드하는 디렉터리를 만듭니다. 이 디렉터리 Flink 클러스터 또는 작업의 클래스 경로에 포함 하려는 JAR 파일을 저장 하기 위한 위치 역할을 합니다.
Savepoints 디렉터리(선택 사항):
사용자가 작업 실행 중에 저장점을 사용하려는 경우 이러한 저장점을 저장하기 위해 스토리지 계정 내에 별도의 디렉터리를 만듭니다. 이 디렉터리에서는 저장점에 대한 검사점 데이터 및 메타데이터를 저장하는 데 사용됩니다.
디렉터리 구조 예제:
Flink 앱 모드 클러스터 만들기
클러스터 풀 배포가 완료되면 Flink AppMode 클러스터를 만들 수 있습니다. 기존 클러스터 풀을 시작하는 경우 단계를 살펴보겠습니다.
Azure Portal에서 AKS에 HDInsight 클러스터 풀/HDInsight/HDInsight를 입력하고 AKS 클러스터 풀에서 Azure HDInsight를 선택하여 클러스터 풀 페이지로 이동합니다. AKS 클러스터 풀의 HDInsight 페이지에서 새 Flink 클러스터를 만들 클러스터 풀을 선택합니다.
특정 클러스터 풀 페이지에서 + 새 클러스터를 클릭하고 다음 정보를 제공합니다.
재산 묘사 구독 이 필드는 클러스터 풀에 등록된 Azure 구독으로 자동 채워집니다. 리소스 그룹 이 필드는 자동으로 채워지고 클러스터 풀의 리소스 그룹을 표시합니다. 지역 이 필드는 자동으로 채워지고 클러스터 풀에서 선택한 지역을 표시합니다. 클러스터 풀 이 필드는 자동으로 채워지며, 현재 클러스터가 생성되고 있는 클러스터 풀의 이름을 표시합니다. 다른 풀에서 클러스터를 만들려면 포털에서 클러스터 풀을 찾고 + 새 클러스터를 클릭합니다. AKS 풀 버전의 HDInsight 이 필드는 자동으로 입력되며 현재 생성 중인 클러스터의 클러스터 풀 버전을 보여줍니다. AKS 버전의 HDInsight 새 클러스터의 AKS에서 HDInsight의 부 버전 또는 패치 버전을 선택합니다. 클러스터 유형 드롭다운 목록에서 Flink를 선택합니다. 클러스터 이름 새 클러스터의 이름을 입력합니다. 사용자 할당 관리 ID 드롭다운 목록에서 클러스터와 함께 사용할 관리 ID를 선택합니다. MSI(관리 서비스 ID)의 소유자이고 MSI에 클러스터에 관리 ID 운영자 역할이 없는 경우 상자 아래 링크를 클릭하여 AKS 에이전트 풀 MSI에서 필요한 권한을 할당합니다. MSI에 이미 올바른 권한이 있는 경우 링크가 표시되지 않습니다. MSI에 필요한 다른 역할 할당에 대한 필수 구성 요소를 참조하세요. 스토리지 계정 드롭다운 목록에서 Flink 클러스터와 연결할 스토리지 계정을 선택하고 컨테이너 이름을 지정합니다. 관리 ID는 클러스터를 만드는 동안 'Storage Blob 데이터 소유자' 역할을 사용하여 지정된 스토리지 계정에 대한 액세스 권한을 추가로 부여합니다. 가상 네트워크 클러스터의 가상 네트워크입니다. 서브넷 클러스터의 가상 서브넷입니다. Flink SQL에 Hive 카탈로그 사용:
재산 묘사 Hive 카탈로그 사용 외부 Hive 메타스토어를 사용하려면 이 옵션을 사용하도록 설정합니다. Hive용 SQL Database 드롭다운 목록에서 hive-metastore 테이블을 추가할 SQL Database를 선택합니다. SQL 관리자 사용자 이름 SQL Server 관리자 사용자 이름을 입력합니다. 이 계정은 metastore에서 SQL 데이터베이스와 통신하는 데 사용됩니다. 키 볼트 드롭다운 목록에서 SQL Server 관리자 사용자 이름에 대한 암호가 포함된 비밀을 포함하는 Key Vault를 선택합니다. 클러스터를 만드는 데 사용되는 MSI에 대한 키 권한, 비밀 권한 및 인증서 권한과 같은 모든 필수 권한으로 액세스 정책을 설정해야 합니다. MSI에는 Key Vault 관리자 역할이 필요합니다. IAM을 사용하여 필요한 권한을 추가합니다. SQL 암호 비밀 이름 SQL 데이터베이스 암호가 저장된 Key Vault의 비밀 이름을 입력합니다. apache Flink 클러스터 만들기 페이지를 보여 주는
메모
기본적으로 클러스터를 만드는 동안 사용되는 스토리지 계정 및 컨테이너와 동일한 Hive 카탈로그에 Storage 계정을 사용합니다.
계속하려면 '다음: 구성'을 선택하십시오.
구성 페이지에서 다음 정보를 제공합니다.
재산 묘사 노드 크기 헤드 노드와 작업자 노드 모두 Flink 노드에 사용할 노드 크기를 선택합니다. 노드 수 Flink 클러스터의 노드 수를 선택합니다. 기본적으로 헤드 노드는 2개입니다. 작업자 노드 크기 조정은 Flink에 대한 작업 관리자 구성을 결정하는 데 도움이 됩니다. 작업 관리자 및 기록 서버는 헤드 노드에 있습니다. 배포 섹션에서 애플리케이션 모드로 배포 유형을 선택하고 다음 정보를 제공합니다.
재산 묘사 Jar 경로 작업 jar의 ABFS(스토리지) 경로를 제공하시오. 예를 들어 abfs://flink@teststorage.dfs.core.windows.net/appmode/job.jar
입문 클래스(선택 사항) 애플리케이션 모드 클러스터의 기본 클래스입니다. 예: com.microsoft.testjob 인수(선택 사항) 작업의 메인 클래스에 대한 인수입니다. 저장 지점 이름 작업을 시작하는 데 사용할 이전 저장점의 이름 업그레이드 모드 기본 업그레이드 옵션을 선택합니다. 이 옵션은 클러스터에 대해 주 버전 업그레이드가 수행되는 경우에 사용됩니다. 세 가지 옵션을 사용할 수 있습니다. UPDATE: 업그레이드 후 마지막 저장점에서 복구하려는 경우에 사용됩니다. STATELESS_UPDATE: 사용자가 업그레이드 후 작업을 새로 다시 시작하려는 경우 사용됩니다. LAST_STATE_UPDATE: 업그레이드 후 마지막 검사점에서 작업을 복구하려는 경우에 사용됩니다. Flink 작업 구성 Flink 작업에 필요한 구성을 더 추가합니다. '작업 로그 집계'를 선택합니다. 작업 로그를 원격 스토리지에 업로드하려는 경우 확인란을 선택합니다. 작업 문제를 디버깅하는 데 도움이 됩니다. 작업 로그의 기본 위치는 'StorageAccount/Container/DeploymentId/logs'입니다. "pipeline.remote.log.dir"을 구성하여 기본 로그 디렉터리를 변경할 수 있습니다. 로그 수집의 기본 간격은 600초입니다. 사용자는 "pipeline.log.aggregation.interval"을 구성하여 변경할 수 있습니다.
서비스 구성 섹션에서 다음 정보를 제공합니다.
재산 묘사 작업 관리자 CPU 정수. 작업 관리자 CPU의 크기(코어)를 입력합니다. 작업 관리자 메모리(MB) 작업 관리자 메모리 크기를 MB로 입력합니다. 최소 1,800MB 작업 관리자 CPU 정수. 작업 관리자의 CPU 수를 코어로 입력합니다. 작업 관리자 메모리(MB) 메모리 크기를 MB로 입력합니다. 최소 1,800MB 기록 서버 CPU 정수. 작업 관리자의 CPU 수를 코어로 입력합니다. 기록 서버 메모리(MB) 메모리 크기를 MB로 입력합니다. 최소 1,800MB 다음: 통합 단추를 클릭하여 다음 페이지로 계속 진행합니다.
통합 페이지에서 다음 정보를 제공합니다.
재산 묘사 로그 분석 이 기능은 클러스터 풀과 연결된 Log Analytics 작업 영역이 있으며, 로그 수집이 활성화된 경우에만 사용할 수 있습니다. Azure Prometheus 이 기능은 메트릭 및 로그를 Azure Monitor 작업 영역으로 전송하여 클러스터에서 직접 인사이트 및 로그를 보는 것입니다. 다음: 태그 단추를 클릭하여 다음 페이지로 계속 진행합니다.
태그 페이지에서 다음 정보를 제공합니다.
재산 설명 이름 선택적. AKS의 HDInsight와 같은 이름을 입력하여 클러스터 리소스와 연결된 모든 리소스를 쉽게 식별합니다. 값 이 값을 비워 둘 수 있습니다. 자원 선택한 모든 리소스를 선택합니다. 다음을 선택합니다. 계속하려면 검토 + 만들기를 선택합니다.
검토 + 만들기 페이지에서 페이지 맨 위에 있는 유효성 검사 성공 메시지를 찾은 다음 만들기를 클릭합니다.
배포가 진행 중임을 보여주는 페이지가 표시되어 클러스터가 생성되고 있습니다. 클러스터를 만드는 데 5~10분이 걸립니다. 클러스터가 만들어지면 "배포가 완료되었습니다." 메시지가 표시됩니다. 페이지에서 벗어나면 알림에서 현재 상태를 확인할 수 있습니다.
포털에서 애플리케이션 작업 관리
HDInsight AKS는 Flink 작업을 관리하는 방법을 제공합니다. 실패한 작업을 다시 실행할 수 있습니다. 포털에서 작업을 다시 시작합니다.
포털에서 Flink 작업을 실행하려면 다음으로 이동합니다.
포털 > AKS 클러스터 풀 > Flink 클러스터 > 설정 > Flink 작업의 HDInsight입니다.
중지: 중지 작업에는 매개 변수가 필요하지 않았습니다. 사용자는 작업을 선택하여 작업을 중지할 수 있습니다. 작업이 중지되면 포털의 작업 상태가 중지됩니다.
시작: 저장점에서 작업을 시작합니다. 작업을 시작하려면 중지된 작업을 선택하고 시작합니다.
업데이트: 업데이트는 업데이트된 작업 코드로 작업을 다시 시작하는 데 도움이 됩니다. 사용자는 스토리지 위치에서 최신 작업 jar를 업데이트하고 포털에서 작업을 업데이트해야 합니다. 이 작업은 저장점이 있는 작업을 중지하고 최신 jar로 다시 시작합니다.
상태 비지정 업데이트: 상태 비지정은 업데이트와 비슷하지만 최신 코드를 사용하여 작업을 새로 다시 시작해야 합니다. 작업이 업데이트되면 포털의 작업 상태가 실행 중으로 표시됩니다.
저장점: Flink 작업에 대한 저장점을 가져옵니다.
취소: 작업을 종료합니다.
삭제: AppMode 클러스터를 삭제합니다.
작업 세부 정보 보기: 사용자가 작업 이름을 클릭할 수 있는 작업 세부 정보를 보려면 작업 및 마지막 작업 결과에 대한 세부 정보를 제공합니다.
실패한 작업의 경우 이 json 보기는 자세한 예외 및 실패 이유를 제공합니다.