튜토리얼: 내구성이 뛰어난 Apache Flink 애플리케이션용 관리형 서비스로 Studio 노트북을 배포하기 - Managed Service for Apache Flink

Amazon Managed Service for Apache Flink는 이전에 Amazon Kinesis Data Analytics for Apache Flink로 알려졌습니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

튜토리얼: 내구성이 뛰어난 Apache Flink 애플리케이션용 관리형 서비스로 Studio 노트북을 배포하기

다음 자습서에서는 지속 가능한 상태의 Apache Flink 애플리케이션용 관리 서비스로 Studio 노트북을 배포하는 방법을 보여줍니다.

사전 조건 완료

Kinesis Data Streams 또는 MSK Amazon을 사용하여 에 튜토리얼: Apache Flink용 매니지드 서비스에서 스튜디오 노트북 만들기 따라 새 스튜디오 노트북을 생성하십시오. Studio 노트북의 이름을 ExampleTestDeploy(으)로 지정하세요.

AWS Management Console를 사용하여 지속 가능한 상태의 애플리케이션을 배포하세요.

  1. 콘솔의 애플리케이션 코드 위치(선택 사항)에 패키지 코드를 저장할 S3 버킷 위치를 추가합니다. 이렇게 하면 단계를 통해 노트북에서 직접 애플리케이션을 배포하고 실행할 수 있습니다.

  2. Amazon S3 버킷을 읽고 쓰는 데 사용하는 역할을 활성화하고 Managed Service for Apache Flink 애플리케이션을 시작하는 데 필요한 권한을 애플리케이션 역할에 추가합니다.

  3. 다음 예제 코드를 사용하세요.

    %flink.ssql(type=update) CREATE TABLE exampleoutput ( 'ticket' VARCHAR, 'price' DOUBLE ) WITH ( 'connector' = 'kinesis', 'stream' = 'ExampleOutputStream', 'aws.region' = 'us-east-1', 'scan.stream.initpos' = 'LATEST', 'format' = 'json' ); INSERT INTO exampleoutput SELECT ticker, price FROM exampleinputstream
  4. 이번 기능 출시와 함께 노트북의 각 노트 오른쪽 상단 모서리에 노트북 이름과 함께 새로운 드롭다운이 표시됩니다. 다음을 수행할 수 있습니다.

    • AWS Management Console에서 Studio 노트북 설정을 볼 수 있습니다.

    • Zeppelin Note를 빌드하고 Amazon S3로 내보내세요. 이때 애플리케이션 이름을 입력하고 빌드 및 내보내기를 선택합니다. 내보내기가 완료되면 알림을 받게 됩니다.

    • 필요한 경우 Amazon S3의 실행 파일에서 추가 테스트를 보고 실행할 수 있습니다.

    • 빌드가 완료되면 지속 가능한 상태 및 자동 크기 조정 기능을 갖춘 Kinesis 스트리밍 애플리케이션으로 코드를 배포할 수 있습니다.

    • 드롭다운을 사용하여 Zeppelin Note를 Kinesis 스트리밍 애플리케이션으로 배포를 선택합니다. 애플리케이션 이름을 검토하고 AWS 콘솔을 통한 배포를 선택합니다.

    • 그러면 Apache Flink용 관리 서비스 애플리케이션을 만드는 AWS Management Console 페이지로 이동합니다. 참고로 애플리케이션 이름, 병렬 처리, 코드 위치, 기본 Glue DB VPC (해당하는 경우) 및 IAM 역할은 미리 입력되어 있습니다. IAM역할에 소스 및 대상에 필요한 권한이 있는지 확인하십시오. 안정적인 애플리케이션 상태 관리를 위해 스냅샷은 기본적으로 활성화됩니다.

    • 애플리케이션 생성을 선택합니다.

    • 설정 구성 및 수정을 선택한 다음 Run을 선택하여 스트리밍 애플리케이션을 시작할 수 있습니다.

AWS CLI를 사용하여 지속 가능한 상태의 애플리케이션을 배포하세요.

를 사용하여 응용 프로그램을 배포하려면 베타 2 정보와 함께 제공된 서비스 모델을 사용하도록 업데이트해야 합니다. AWS CLI AWS CLI 업데이트된 서비스 모델을 사용하는 방법에 대한 자세한 내용은 사전 조건 완료 섹션을 참조하세요.

다음 예제 코드에서는 새 Studio 노트북을 생성합니다.

aws kinesisanalyticsv2 create-application \ --application-name <app-name> \ --runtime-environment ZEPPELIN-FLINK-3_0 \ --application-mode INTERACTIVE \ --service-execution-role <iam-role> --application-configuration '{ "ZeppelinApplicationConfiguration": { "CatalogConfiguration": { "GlueDataCatalogConfiguration": { "DatabaseARN": "arn:aws:glue:us-east-1:<account>:database/<glue-database-name>" } } }, "FlinkApplicationConfiguration": { "ParallelismConfiguration": { "ConfigurationType": "CUSTOM", "Parallelism": 4, "ParallelismPerKPU": 4 } }, "DeployAsApplicationConfiguration": { "S3ContentLocation": { "BucketARN": "arn:aws:s3:::<s3bucket>", "BasePath": "/something/" } }, "VpcConfigurations": [ { "SecurityGroupIds": [ "<security-group>" ], "SubnetIds": [ "<subnet-1>", "<subnet-2>" ] } ] }' \ --region us-east-1

다음 코드 예제에서는 Studio 노트북을 시작합니다.

aws kinesisanalyticsv2 start-application \ --application-name <app-name> \ --region us-east-1 \ --no-verify-ssl

다음 코드는 애플리케이션의 Apache Zeppelin 노트북 페이지에 URL 대한 코드를 반환합니다.

aws kinesisanalyticsv2 create-application-presigned-url \ --application-name <app-name> \ --url-type ZEPPELIN_UI_URL \ --region us-east-1 \ --no-verify-ssl