使用 PyFlink
Amazon EMR on EKS 6.15.0 及更高版本支持 PyFlink。如果已有 PyFlink 脚本,可执行以下操作之一:
-
创建包含 PyFlink 脚本的自定义映像。
-
将脚本上传到 Amazon S3 位置
如果还没有脚本,可使用下面的示例启动 PyFlink 作业。该示例从 S3 检索脚本。如果使用的自定义映像中已包含脚本,则必须将脚本路径更新为存储脚本的位置。如果脚本位于 S3 位置,Amazon EMR on EKS 将检索该脚本并将其放在 Flink 容器中的 /opt/flink/usrlib/
目录下。
apiVersion: flink.apache.org/v1beta1 kind: FlinkDeployment metadata: name: python-example spec: flinkVersion: v1_17 flinkConfiguration: taskmanager.numberOfTaskSlots: "1" executionRoleArn:
job-execution-role
emrReleaseLabel: "emr-6.15.0-flink-latest" jobManager: highAvailabilityEnabled: false replicas: 1 resource: memory: "2048m" cpu: 1 taskManager: resource: memory: "2048m" cpu: 1 job: jarURI: s3://S3 bucket with your script
/pyflink-script.py
entryClass: "org.apache.flink.client.python.PythonDriver" args: ["-py", "/opt/flink/usrlib/pyflink-script.py
"] parallelism: 1 upgradeMode: stateless