Amazon EMR を EKS で呼び出します。AWS Step Functions - AWS Step Functions

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon EMR を EKS で呼び出します。AWS Step Functions

Step Functions、特定のAWS『Amazon ステートメント言語』の「」を参照してください。の使用方法の詳細については、「」を参照してください。AWS Step Functionsとの統合に関する詳細については、以下を参照してください。

EKS での Amazon EMR の統合とEKS での Amazon EMR の相違点AWSSDK統合

と統合するにはAWS Step Functionsを EKS 上の Amazon EMR と併用する場合は、EKS 上の Amazon EMR サービス統合 API を使用します。サービス統合 API は、対応する Amazon EMR の API と同じですが、次の表に示すとおり、すべての API がすべての統合パターンをサポートしているわけではありません。

API リクエストレスポンス ジョブの実行 (.sync)
仮想クラスタの作成
仮想クラスタの削除
StartJobRun

EKS API でサポートされる Amazon EMR:

注記

Step Functions には、タスクの最大の入力または結果データサイズのクォータがあります。これにより、別のサービスとの間でデータを送受信するときに、UTF-8 でエンコードされた文字列として 262,144 バイトのデータに制限されます。「ステートマシンの実行に関連するクォータ」を参照してください。

以下には、が含まれます。Task状態は、仮想クラスターを作成します。

"Create_Virtual_Cluster": { "Type": "Task", "Resource": "arn:aws:states:::emr-containers:createVirtualCluster", "Parameters": { "Name": "MyVirtualCluster", "ContainerProvider": { "Id": "EKSClusterName", "Type": "EKS", "Info": { "EksInfo": { "Namespace": "Namespace" } } } }, "End": true }

以下には、が含まれます。Task状態です。この状態は、ジョブを仮想クラスターに送信し、完了するまで待機します。

"Submit_Job": { "Type": "Task", "Resource": "arn:aws:states:::emr-containers:startJobRun.sync", "Parameters": { "Name": "MyJobName", "VirtualClusterId.$": "$.VirtualClusterId", "ExecutionRoleArn": "arn:aws:iam::<accountId>:role/job-execution-role", "ReleaseLabel": "emr-6.2.0-latest", "JobDriver": { "SparkSubmitJobDriver": { "EntryPoint": "s3://<mybucket>/jobs/trip-count.py", "EntryPointArguments": [ "60" ], "SparkSubmitParameters": "--conf spark.driver.cores=2 --conf spark.executor.instances=10 --conf spark.kubernetes.pyspark.pythonVersion=3 --conf spark.executor.memory=10G --conf spark.driver.memory=10G --conf spark.executor.cores=1 --conf spark.dynamicAllocation.enabled=false" } }, "ConfigurationOverrides": { "ApplicationConfiguration": [ { "Classification": "spark-defaults", "Properties": { "spark.executor.instances": "2", "spark.executor.memory": "2G" } } ], "MonitoringConfiguration": { "PersistentAppUI": "ENABLED", "CloudWatchMonitoringConfiguration": { "LogGroupName": "MyLogGroupName", "LogStreamNamePrefix": "MyLogStreamNamePrefix" }, "S3MonitoringConfiguration": { "LogUri": "s3://<mylogsbucket>" } } } }, "End": true }

以下には、が含まれます。Task状態です。この状態は、仮想クラスターを削除し、削除が完了するのを待機します。

"Delete_Virtual_Cluster": { "Type": "Task", "Resource": "arn:aws:states:::emr-containers:deleteVirtualCluster.sync", "Parameters": { "Id.$": "$.VirtualClusterId" }, "End": true }

他のででを使用してを設定する方法については、「Step Functions」を設定する方法の詳細については、AWSサービスの詳細については、」統合サービスの IAM ポリシー