![](/img/trans.png)
[英]My python job I run on the master of EMR cluster fails, how do I troubleshoot?
[英]Can I actually run a Spark job on a mocked EMR cluster?
使用moto
我能夠模擬一個 EMR 集群:
with moto.mock_emr():
client = boto3.client('emr', region_name='us-east-1')
client.run_job_flow(
Name='my_cluster',
Instances={
'MasterInstanceType': 'c3.xlarge',
'SlaveInstanceType': 'c3.xlarge',
'InstanceCount': 3,
'Placement': {'AvailabilityZone': 'us-east-1a'},
'KeepJobFlowAliveWhenNoSteps': True,
},
VisibleToAllUsers=True,
)
summary = client.list_clusters()
cluster_id = summary["Clusters"][0]["Id"]
res = client.add_job_flow_steps(
JobFlowId=cluster_id,
Steps=[
{
"Name": "foo_step",
"ActionOnFailure": "CONTINUE",
"HadoopJarStep": {"Args": [], "Jar": "command-runner.jar"},
}
],
)
添加的步驟似乎一直處於STARTING
狀態。 是否可以將 Spark 作業實際提交到模擬集群並在那里運行?
我正在構建一個將作業提交到 EMR 集群的實用程序,我想對其進行測試。 我想使用此實用程序運行一個簡單的 Spark 作業,這就是問題的來源。 請注意,我對 Spark 集群或測試提交的 Spark 作業的正確性不感興趣。 我實際上更感興趣的是測試向EMR提交作業的流程並檢查結果(理想情況下應該保留在模擬的 S3 存儲桶上)。
它不可能,mock_emr 只是一個模擬或(真實請求的代理)。 您可以使用 mock_s3 開發一個 spark 並將 conf 發送到 spark 以根據您的目的讀取模擬的 s3
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.