하둡은 여러대의 컴퓨터상에서 분산 저장, 관리하는 시스템으로 여러대의 컴퓨터가 필요하다.
→ virtual muchine을 이용하여 작업을 하기도 하지만 리소스 관리가 어려워진다는 문제가 발생한다.
Red Hat
Red Hat Enterprise Linux
인스턴스 유형 t2.medium
인스턴스는 총 4개로 구성했다.
sudo adduser hadoop
: user를 추가한다.sudo visudo
: 추가한 유저에게 권한을 주기 위해 편집기로 진입:100
: 100번째줄에서 권한을 추가해준다.리눅스 편집기에서 tip
yy : 현재 선택 라인 복사
p : 붙여넣기
i : insert 내용입력
dd : 라인삭제
su hadoop
: 유저를 hadoop으로 변경해준다.yum install java
: java를 설치한다.sudo yum installl net-tools
: net-tools를 설치sudo yum install vim wget -y
: 웹상의 파일을 다운받기 위한 wget 설치sudo dnf install java-1.8.0-openjdk ant -y
: openJDK 8 버전, Apache Ant를 설치vim ~/.bashrc
: 환경변수 편집기를 연다export JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.372.b07-4.el8.x86_64”
: openjdk를 추가한다.source ~/.bashrc
: 환경변수 변경사항을 업데이트 해준다.echo $JAVA_HOME
: 자바홈이 잘 등록되었는지 확인해당 인스턴스에 접속하기 위한 보안키를 ppk로 저장하고, 이를 putty에 등록해놓으면 복잡한 절차 없이 접속이 가능하다.
ssh-keygen -t rsa
: 보안키를 생성cd ~/.ssh
: 홈에 위치한 ssh 폴더에 진입cat id_rsa.pub >> authorized_keys
: 공개키로 등록하는 작업chmod 640 ./authorized_keys
cat id_rsa
sudo yum install python3-pip
sudo dnf install python3-pip
cd ~
: 홈으로 간다wget https://archive.apache.org/dist/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz
: wget을 이용하여 하둡을 다운 받는다.tar xvzf hadoop-3.2.1.tar.gz
: 받은 압축을 해제한다.mv ./hadoop-3.2.1 ./hadoop
: 압축해제한 폴더명을 hadoop으로 변경한다.export HADOOP_HOME=/home/hadoop/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$HIVE_HOME/bin
내보낸 이미지를 바탕으로 인스턴스를 3개 생성
key와 보안그룹 설정을 기존 인스턴스와 똑같이 해준다.
각 프라이빗 ip를 메모장에 모두 적어준다. (접속을 ip주소를 기억할 필요없이 이름으로 할 수 있게 하기 위함이다)
sudo vi /etc/hosts
: 내부 프라이빗 ip는 변경되지 않기 때문에 등록한다.
sudo hostnamectl set-hostname <인스턴스 이름>
: 각 인스턴스에 접속하여 인스턴스 이름을 변경해준다.