본문 바로가기

공부

[하둡설치]

1. 자바 설치
$ sudo apt update   //패키지와 버전에 대한 세부 정보를 업데이트
$ sudo apt upgrade  //update로 가져온 각 패키지들의 최신 버전에 맞게 업그레이드 함
$ sudo apt install openjdk-8-jdk  //하둡은 자바 소프트웨어 프레임워크라서 자바 프로그램이 어디 곳에서든 실행될 수 있도록 JDK(JRE를 포함함) 설치
$ java -version  //자바 버전 확인



2. 하둡 설치
-하둡 다운로드 및 설치
$ mkdir download //하둡을 다운로드 받을 폴더 생성
$ wget https://mirror.navercorp.com/apache/hadoop/common/hadoop-3.2.2/hadoop-3.2.2.tar.gz  //'Web Get'의 약자로 웹 상의 파일을 다운로드 받을 때 사용
$ tar xvfz hadoop-3.2.2.tar.gz  //현재 디렉토리에 tar.gz 압축 파일 해제

$ mkdir ~/apps  //apps 폴더 생성
$ mv hadoop-3.2.2 ~/apps  //hadoop-3.2.2를 apps 폴더로 이동
$ ln -s hadoop-3.2.2 hadoop  //심볼릭 링크 설정 (링크를 연결하여 원본 파일을 직접 사용하는 것과 같은 효과)


$ sudo groupadd hadoop   //하둡관련 디렉토리의 권한 관리를 위해 hadoop이란 이름으로 리눅스 그룹 생성
$ sudo usermod -a -G hadoop "내이름" //hadoop 그룹에 사용자 추가


-환경변수 적용
$ vim ~/.bashrc  //아래 세 줄 추가,bashrc는 로그인 할 때마다 로드됨
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64 //시스템의 어떤 경로에서라도 JDK에 접근하여 실행할 수 있기도록 하기위해 환경변수 설정
export HADOOP_HOME=/home/내이름/apps/hadoop
export PATH=$PATH:$HADOOP_HOME/bin //path에 hadoop등록
export PATH=$PATH:$HADOOP_HOME/sbin

$ source ~/.bashrc //이 명령어를 실행하게 되면 터미널 종료없이도 .bashrc 파일 수정 후 바로 적용 가능 
$ hadoop version  //환경변수가 설정되었으면 hadoop 명령어가 실행된다. 하둡 버전 확인


-하둡 설정
$ vim $HADOOP_HOME/etc/hadoop/core-site.xml //HDFS와 MapReduce에서 공통적으로 사용할 정보들을 설정, 아래와 같이 추가
  property태그 안에 <name>fs.defaultFS</name>,<value>hdfs://localhost:9000</value> 추가 //fs.defaultFS : HDFS의 기본 이름. URI 형태로 사용된다.

$ vim $HADOOP_HOME/etc/hadoop/hdfs-site.xml  //하둡 파일시스템(HDFS)과 관련된 환경 정보를 설정, 아래와 같이 추가
  property태그 안에 <name>dfs.replication</name>, <value>1</value> 추가  // dfs.replication : HDFS에 저장될 데이터의 복제본 개수 (1이면 가상분산모드, 3이면 완전분산모드)

$ vim $HADOOP_HOME/etc/hadoop/mapred-site.xml //MapReduce의 어플리케이션 정보를 설정, 아래와 같이 추가
  property태그 안에 <name>mapreduce.framework.name</name>, <value>yarn</value> 추가

$ vim $HADOOP_HOME/etc/hadoop/yarn-site.xml //Resource Manager, Node Manager 정보를 설정,  기본 맵리듀스 프레임워크로 yarn을 설정해줍니다.
  property태그 안에 <name>yarn.nodemanager.aux-services</name>, <value>mapreduce_shuffle</value> 추가


$ vim $HADOOP_HOME/etc/hadoop/hadoop-env.sh //hadoop-env.sh파일 안에 JAVA_HOME 환경변수 설정 
#export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64로 해당 부분 수정



-SSH 설치 및 설정
$ sudo apt install ssh 
$ ssh-keygen -t rsa  //  rsa라는 암호화 방식으로 공개키와 비밀키 생성
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys // id_rsa.pub 파일을 authorized_keys 파일에 추가, 공개키를 ssh의 인증키로 등록, 그래야 비밀키를 가지고 자동 로그인이 가능해짐
$ ssh localhost  // 위 설정이 제대로 셋업되었는지 확인하기 위해 입력, ssh는 원격 접속 프로토콜을 실행하는 명령어이고 ssh localhost로 루프백 접속을 시도하여 서버의 정상 동작 여부를 확인한다