簡體   English   中英

我真的可以在模擬的 EMR 集群上運行 Spark 作業嗎?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM