Membuat dan mengelola EMR klaster Amazon dengan EKS AWS Step Functions - AWS Step Functions

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membuat dan mengelola EMR klaster Amazon dengan EKS AWS Step Functions

Pelajari cara mengintegrasikan AWS Step Functions dengan Amazon EMR tentang EKS penggunaan Amazon EMR pada integrasi EKS layananAPIs. Integrasi APIs layanan sama dengan EMR Amazon yang sesuai EKSAPIs, tetapi tidak semua APIs mendukung semua pola integrasi, seperti yang ditunjukkan pada tabel berikut.

Untuk belajar tentang berintegrasi dengan AWS servicesin Step Functions, lihat Integrasi layanan dan. Meneruskan parameter ke layanan API di Step Functions

Bagaimana Amazon yang Dioptimalkan EMR pada EKS integrasi berbeda dari Amazon EMR di EKS AWS SDKintegrasi
catatan

Untuk integrasi dengan AmazonEMR, Step Functions memiliki frekuensi polling pekerjaan 60 detik hard-code selama 10 menit dan 300 detik pertama setelah itu.

API Respons permintaan Jalankan tugas (.sync)
CreateVirtualCluster Didukung Tidak didukung
DeleteVirtualCluster Didukung Didukung
StartJobRun Didukung Didukung

Amazon yang didukung EMR di EKSAPIs:

catatan

Ada kuota untuk input maksimum atau ukuran data hasil untuk tugas di Step Functions. Ini membatasi Anda untuk 256 KB data sebagai string yang dikodekan UTF -8 saat Anda mengirim ke, atau menerima data dari, layanan lain. Lihat Kuota yang berkaitan dengan eksekusi mesin status.

Berikut ini mencakup status Task yang membuat sebuah klaster virtual.

"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 }

Berikut ini mencakup status Task yang menyerahkan tugas ke klaster virtual dan menunggunya untuk menyelesaikan.

"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 }

Berikut ini mencakup status Task yang menghapus klaster virtual dan menunggu penghapusan selesai.

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

Untuk mempelajari tentang mengkonfigurasi IAM izin saat menggunakan Step Functions dengan yang lain AWS layanan, lihatBagaimana Step Functions menghasilkan IAM kebijakan untuk layanan terintegrasi.