Python Spark 분포 식 군집 환경 구축

머리말
Apache Spark 는 새로운 빅 데이터 처리 유 니 버 설 엔진 으로 분포 식 메모리 추상 화 를 제공 합 니 다.스파크 의 가장 큰 특징 은 빠 르 고 Hadoop MapReduce 보다 처리 속도 가 100 배 빠르다 는 것 이다.본 고 는 한 대의 컴퓨터 에 여러 개의 가상 컴퓨터 를 구축 하 는 방법 으로 클 러 스 터 를 모 의 하 는 것 이 아니 라 세 대의 컴퓨터 로 소형 분포 식 클 러 스 터 환경 설 치 를 구축 했다.
본 튜 토리 얼 은 Spark 2.0 이상 버 전(예 를 들 어 Spark 2.0.2,Spark 2.1.0 등)으로 클 러 스 터 를 구축 하고 Spark 1.6.2 클 러 스 터 를 구축 하 는 데 도 적용 된다.
Hadoop 을 설치 하고 Hadoop 클 러 스 터 환경 을 구축 합 니 다.
Spark 분산 클 러 스 터 의 설치 환경 은 Hadoop 의 분산 클 러 스 터 환경 을 미리 설정 해 야 합 니 다.
Spark 설치
여기 서 3 대의 기계(노드)를 사례 로 하여 Spark 클 러 스 터 를 어떻게 구축 하 는 지 보 여 줍 니 다.그 중에서 1 대의 기계(노드)는 Master 노드 이 고 다른 두 대의 기계(노드)는 Slave 노드(즉 Worker 노드)이 며 호스트 이름 은 각각 Slave 01 과 Slave 02 입 니 다.
Master 노드 기기 에서 Spark 공식 다운로드 주 소 를 방문 하여 다음 그림 에 따라 다운로드 합 니 다.

다운로드 완료 후 다음 명령 을 실행 합 니 다:

sudo tar -zxf ~/  /spark-2.0.2-bin-without-hadoop.tgz -C /usr/local/
cd /usr/local
sudo mv ./spark-2.0.2-bin-without-hadoop/ ./spark
sudo chown -R hadoop ./spark
환경 변수 설정
Mster 노드 호스트 의 터미널 에서 다음 명령 을 실행 합 니 다.

vim ~/.bashrc
.bashrc 에 다음 설정 을 추가 합 니 다:

export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
다음 명령 을 실행 하면 설정 이 즉시 적 용 됩 니 다.

source ~/.bashrc
Spark 설정
Master 노드 호스트 에서 다음 작업 을 진행 합 니 다:
슬 레이 브 파일 설정
slaves.template 를 slaves 로 복사 합 니 다.

cd /usr/local/spark/
cp ./conf/slaves.template ./conf/slaves
slaves 파일 은 Worker 노드 를 설정 합 니 다.slaves 내용 을 편집 하고 기본 내용 localhost 를 다음 과 같이 바 꿉 니 다.

slave01
slave02
spark-env.sh 파일 설정
spark-env.sh.template 를 spark-env.sh 로 복사 합 니 다.

cp ./conf/spark-env.sh.template ./conf/spark-env.sh
spark-env.sh 를 편집 하고 다음 내용 을 추가 합 니 다.

export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SPARK_MASTER_IP=192.168.1.104
SPARK_MASTER_IP 는 Spark 클 러 스 터 Master 노드 의 IP 주 소 를 지정 합 니 다.
설정 이 완료 되면 Master 호스트 의/usr/local/spark 폴 더 를 각 노드 에 복사 합 니 다.Master 호스트 에서 다음 명령 을 실행 합 니 다:

cd /usr/local/
tar -zcf ~/spark.master.tar.gz ./spark
cd ~
scp ./spark.master.tar.gz slave01:/home/hadoop
scp ./spark.master.tar.gz slave02:/home/hadoop
slave 01,slave 02 노드 에서 다음 과 같은 동작 을 수행 합 니 다.

sudo rm -rf /usr/local/spark/
sudo tar -zxf ~/spark.master.tar.gz -C /usr/local
sudo chown -R hadoop /usr/local/spark
Spark 군집 시작
Hadoop 군집 시작
스파크 클 러 스 터 를 시작 하기 전에 Hadoop 클 러 스 터 를 시작 해 야 합 니 다.Master 노드 호스트 에서 다음 명령 을 실행 합 니 다:

cd /usr/local/hadoop/
sbin/start-all.sh
Spark 군집 시작
1.마스터 노드 시작
Master 노드 호스트 에서 다음 명령 을 실행 합 니 다:

cd /usr/local/spark/
sbin/start-master.sh
Master 노드 에서 jps 명령 을 실행 하면 여러 개의 Master 프로 세 스 를 볼 수 있 습 니 다.

15093 Jps
14343 SecondaryNameNode
14121 NameNode
14891 Master
14509 ResourceManager
2.모든 슬 레이 브 노드 시작
Master 노드 호스트 에서 다음 명령 을 실행 합 니 다:

sbin/start-slaves.sh
각각 slave 01,slave 02 노드 에서 jps 명령 을 실행 하면 여러 Worker 프로 세 스 를 볼 수 있 습 니 다.

37553 DataNode
37684 NodeManager
37876 Worker
37924 Jps
3.브 라 우 저 에서 Spark 독립 클 러 스 터 관리자 의 클 러 스 터 정보 보기
master 호스트 에서 브 라 우 저 를 열 고 접근 합 니 다.http://master:8080,다음 그림:

Spark 군집 닫 기
1.마스터 노드 닫 기

sbin/stop-master.sh
2.Worker 노드 닫 기

sbin/stop-slaves.sh
3.Hadoop 클 러 스 터 닫 기

cd /usr/local/hadoop/
sbin/stop-all.sh
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기