메뉴
brunch
실행
신고
라이킷
2
댓글
공유
닫기
You can make anything
by writing
C.S.Lewis
브런치스토리 시작하기
브런치스토리 홈
브런치스토리 나우
브런치스토리 책방
계정을 잊어버리셨나요?
by
유윤식
Jun 04. 2019
Linux: MESOS & ZK & SPARK
자원관리와 스케쥴링.
1. Zookeeper 설치 / 실행
2. Mesos 설치 / 실행
3. Spark 설치 / 실행
CentOS7 AWS VM 에서 진행.
2CORES,
6
GB MEMORY, 1TB DISK_CAPACITY
1번은 패스~!
이전 포스팅에서 언급.
Zookeeper 는 172.31.33.208 에서 실행 중. 2181 Default 사용 중.
2번 Mesos 설치 / 실행,
>> curl -L -O http://repos.mesosphere.com/el/7/x86_64/RPMS/mesos-1.8.0-2.0.1.el7.x86_64.rpm
>> rpm -vi mesos-1.8.0-2.0.1.el7.x86_64.rpm
요때, Dependencies 관련 Error 발생,
>> yum install subversion cyrus-sasl-md5 libevent-devel libssl*
>> rpm -vi mesos-1.8.0-2.0.1.el7.x86_64.rpm
>> systemctl daemon-reload
바로 실행,
>> service mesos-master start
>> service mesos-slave start
설치와 실행 완료.
mesos 프로세스 확인
Mesos 는 5050 Default 사용.
http://IPADDRESS:5050
mesos-salve 를 통한 agent 생성 결과
3번 Spark 설치 / 실행,
>> wget http://www-eu.apache.org/dist/spark/spark-2.4.3/spark-2.4.3-bin-hadoop2.7.tgz
>> tar -xzvf spark-2.4.3-bin-hadoop2.7.tgz
>> ln -s spark-2.4.3-bin-hadoop2.7 /opt/spark
/opt/spark 경로를 시스템에게 알려준다.
>> export SPARK_HOME=/opt/spark
>> export $SPARK_HOME/bin:$PATH
pysaprk 설치,
>> pip install pysaprk
설치는 이걸로 끝.
이전에 사용한 Network Traffic 관련 데이터 분석 스크립트를 재활용해서
spark를 실행.
>> spark-submit
--master mesos://172.31.33.208:5050
--packages org.apache.kafka:kafka-clients:0.10.0.1,org.apache.spark:spark-sql-kafka-0-10_2.11:2.4.3 --supervise --executor-memory 2G --total-executor-cores 1 spark_kafka2.py
1 CORE / 2G MEMORY 옵션을 추가.
단일 MASTER 에서의 클러스터 모드가 Default 옵션으로 적용.
실제로 mesos web UI 에서 확인하면,
1 CPU, 2.4 Mem 을 사용하여 작동 중에 있다.
살짝 결과 화면을 보면,
이런 식으로 Console 에 주기적으로(Near Real Time 같은 느낌...) 화면에 뿌려진다.
사실 그냥 Spark 가 진화하면 이런 자원 관리도 알아서 할 수 있지 않을까? 하는 기대도 있다.
근데 지금은 안된다.
이게 중요하다.
앞으로 거대한 빅데이터 분석 시스템을 사용한다면,
Mesos와 같은 도구의 힘을 빌리지 않고서는 제대로 운영 / 관리를 할 수 없다.
끝.
keyword
Linux
빅데이터
유윤식
소속
직업
개발자
망각의 동물이기 때문에 작성하는 공부/업무 다이어리
구독자
70
제안하기
구독
작가의 이전글
Linux: NGINX 설정
AWS: 요금정보 API
작가의 다음글
브런치는 최신 브라우저에 최적화 되어있습니다.
IE
chrome
safari