2017-10-12 2 views
1

boto3을 사용하여 새 클러스터를 생성 할 때 기존 클러스터의 구성 (종료 됨)을 사용하여 복제하려고합니다. 내가 아는 한 emr_client.run_job_flow은 모든 구성 (Instances, InstanceFleets etc)을 매개 변수로 제공해야합니다. EMR 용 aws 콘솔에서 할 수있는 것처럼 기존 클러스터에서 복제 할 수있는 방법이 있습니까?boto3을 사용하여 기존 EMR 클러스터 복제하기

enter image description here

+0

가능한 복제본 : https://stackoverflow.com/questions/43579746/how-do-i-apply-security-configuration-on-existing-emr-cluster-using-boto3 –

+0

두 질문을 모두 읽으십시오. 다른. –

답변

0

은 내가 당신을 추천 할 수 있습니다 무엇, 당신의 클러스터를 해고하는 AWS CLI을 사용하고 있습니다.
클러스터 구성의 버전을 허용하며 json 파일을 사용하여 단계 구성을 쉽게로드 할 수 있습니다.

 [ 
     { 
     "Name": "Step #1", 
     "Type":"SPARK", 
     "Jar":"command-runner.jar", 
     "Args": 
     [ 
      "--deploy-mode", "cluster", 
      "--class", "com.your.data.set.class", 
      "s3://path/to/your/spark-job.jar", 
      "-c", "s3://path/to/your/config/or/not", 
      "--aws-access-key", "ACCESS_KEY", 
      "--aws-secret-key", "SECRET_KEY" 
     ], 
     "ActionOnFailure": "CANCEL_AND_WAIT" 
     } 
    ] 

(여러 단계가 너무 좋아요입니다) 당신은 항상 동일하게 구성 클러스터를 시작할 수 있습니다 그 후

을 : 같은

aws create-cluster --name "Cluster's name" --ec2-attributes KeyName=SSH_KEY --instance-type m3.xlarge --release-label emr-5.2.1 --log-uri s3://mybucket/logs/ --enable-debugging --instance-count 1 --use-default-roles --applications Name=Spark --steps file://step.json 

step.json 보이는 곳.
예를 들어 전체 클러스터를 예약하고 AirFlow 개의 작업을 수행하십시오. 당신이 정말로 에게 Boto3을 사용하려는 경우

는하지만, 나는 describe_cluster() 방법을 사용하여 전체 정보를 얻을하고 새를 불에 반환 된 객체를 사용하는 데 도움이 될 수 있다고 가정합니다.

관련 문제