How to Launch / Terminate AWS EMR Cluster

Screen Shot 2017-11-23 at 4.42.56 PM.png

(1) AWS 상단의 Services 탭 클릭 > EMR (Elastic MapReduce) 클릭

 

Screen Shot 2017-11-23 at 4.43.04 PM.png

(2) 좌상단의 Create cluster를 클릭

 

Screen Shot 2017-11-23 at 4.43.49 PM.png

(3) 이름과 Logging 유무,
원하는 버전 (본인은 최신 버전인 emr-5.10.0을 선택),
원하는 Application (본인은 Spark를 이용하기 위해 Spark를 선택) ,
원하는 인스턴스 타입과 갯수,
자신이 사용하는 ECC pem key를 적절히 선택하고 우 하단에 Create cluster 클릭

 

Screen Shot 2017-11-23 at 4.44.22 PM.png

(4) 이후에는 이런 화면이 뜨게 되고, 조금 더 기다리다 보면 좌 하단의 Security groups for Master: 부분에 링크가 하나 나타나게 된다. 그것을 클릭

 

Screen Shot 2017-11-23 at 4.45.19 PM.png

(5) ElasticMapReduce-master를 선택하고 밑의 패널에서 Inbound 탭에 들어가 Edit을 클릭

 

Screen Shot 2017-11-23 at 4.46.50 PM.png

(6) ssh를 사용하려면 Add Rule -> Type: SSH, source: Anywhere로 추가.

Zeppelin을 사용하기 원한다면 Custom TCP Rule, TCP, 8890, Source: Anywhere을 추가
(8890은 EMR Zeppelin의 기본 포트)

 

Screen Shot 2017-11-23 at 4.47.41 PM.png

(7) 이후 ssh명령어를 이용해서 접속하거나 주어진 주소:8890으로 들어가고 작업을 마친다.

 

Screen Shot 2017-11-23 at 4.44.22 PM.png

(8) 작업을 마친 뒤 클러스터를 종료하려면, 원하는 Cluster 선택 후 Terminate를 클릭

 

Screen Shot 2017-11-23 at 4.48.12 PM.png

(9) 만약 클러스터를 만들 떄 Logging에 체크했고, 그 로그가 더 이상 필요하지 않다면
S3에 들어가서 해당 Log Bucket도 같이 지워준다.

 


Tips

  • Zeppelin의 기본 접근권한이 anonymous 이므로 정말 짧게 사용할 것이 아니면 shiro.ini를 작성하여 로그인을 강제하자.
  • 더 나은 보안을 위해서 ssh와 8890 tcp 포트의 source를 자신의 ip 주소로 한정하는 것도 고려하자.
  • Standalone에서는 로컬 경로를 기준으로 parquet, csv 파일들을 불러 올 수 있지만, EMR 클러스터 구성에서는 로컬에 있는 파일을 hdfs에 올려주는 작업이 별도로 필요하다. 관련 링크

Leave a Reply