翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
EKS を使用して で Amazon EMRクラスターを作成および管理する AWS Step Functions
の統合方法について説明します。 AWS Step Functions Amazon EMR on EKSサービス統合 EKSを使用して、 EMRで Amazon と 。 APIsサービス統合APIsは、 EMRの対応する Amazon EKS と同じですがAPIs、次の表に示すように、すべての がすべての統合パターンAPIsをサポートしているわけではありません。
との統合について学ぶには AWS Step Functions の サービスについては、 サービスとの統合「」および「」を参照してくださいStep Functions APIのサービスへのパラメータの受け渡し。
Optimized Amazon EMR on EKS統合と Amazon EMR on の統合の違い EKS AWS SDK 統合
-
ジョブの実行 (.sync) 統合パターンがサポートされています。
-
レスポンスのリクエスト 統合パターンの最適化はありません。
-
タスクトークンによるコールバックを待つ 統合パターンはサポートされていません。
注記
Amazon との統合の場合EMR、Step Functions には、最初の 10 分から 300 秒までのハードコードされた 60 秒のジョブポーリング頻度があります。
API | リクエストレスポンス | ジョブの実行 (.sync) |
---|---|---|
CreateVirtualCluster | サポート | サポートされません |
DeleteVirtualCluster | サポート対象 | サポート対象 |
StartJobRun | サポート対象 | サポート |
EMR でサポートされている AmazonEKSAPIs:
注記
Step Functions のタスクには入力データまたは結果データの最大サイズにはクォータがあります。これにより、別のサービスとの間でデータを送受信するときに、UTF-8 でエンコードされた文字列として 256 KB のデータに制限されます。「ステートマシンの実行に関連するクォータ」を参照してください。
以下には仮想クラスターを作成する 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://<amzn-s3-demo-bucket>
/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://<amzn-s3-demo-logging-bucket1>
"
}
}
},
"Tags": {
"taskType"
: "jobName"
}
},
"End": true
}
以下には、仮想クラスターを削除し、削除が完了するまで待機する Task
状態が含まれます。
"Delete_Virtual_Cluster": {
"Type": "Task",
"Resource": "arn:aws:states:::emr-containers:deleteVirtualCluster.sync",
"Parameters": {
"Id.$": "$.VirtualClusterId"
},
"End": true
}
の設定について学ぶには IAM を使用するときの アクセス許可 Step Functions を他の と使用 AWS サービスについては、「」を参照してくださいStep Functions が統合サービスのIAMポリシーを生成する方法。