Apache Hadoop 설치 3 ( ZOOKEEPER )
zookeeper와 hadoop 계정을 만들고 권한을 부여합니다.
1. zookeeper 계정 생성
3개 서버에 zookeeper 계정을 생성해주세요
ex) 아이디 : zookeeper 비밀번호 : zookeeper이면
adduser zookeeper
passwd zookeeper
2. hadoop 계정 생성
3개 서버에 hadoop 계정을 생성해주세요
ex) 아이디 : hadoop 비밀번호 : hadoop
adduser hadoop
passwd hadoop
3. HDFS의 여러 정보를 저장하기 위한 디렉토리 생성 및 Hadoop 계정 접근 권한 설정
3개 서버 모두 /dfs /yarn /pids 경로에 폴더 생성 및 폴더에 대한 hadoop 권한을 부여하고,
파일에 대한 그룹을 변경합니다.
mkdir /dfs /yarn /pids
chown -R hadoop:hadoop /dfs /yarn /pids
4. SSH KEY in Zookeeper
Apache hadoop 1에서의 ssh key 설치와 같이 zookeeper 계정에서도 ssh key를 교환합니다.
먼저 zookeeper 계정으로 접속합니다.
su - zookeeper
각 서버의 ssh key를 생성합니다
ssh-keygen
이후 각 서버에 생성한 key를 할당합니다.
ssh-copy-id -i .ssh/id_rsa.pub zookeeper@hadoop1
ssh-copy-id -i .ssh/id_rsa.pub zookeeper@hadoop2
ssh-copy-id -i .ssh/id_rsa.pub zookeeper@hadoop3
할당 이후 ssh 명령어를 사용하여 접속이 되는 지 확인합니다.
ssh zookeeper@hadoop1
ssh zookeeper@hadoop2
ssh zookeeper@hadoop3
5. zookeeper install
ZOOKEEPER는 분산처리 환경에서 사용 가능한 데이터 저장소입니다.
분산 서버 간의 정보 공유, 서버 투입/제거 시 이벤트 처리, 서버 모니터링, 시스템 관리, 분산 락 처리, 장애 상황 판단 등 다양한 분야에서 활용이 가능합니다.
먼저 주키퍼 설치 파일을 다운로드 합니다.
- 링크에 접속이 되지 않을 땐 zookeeper-3.4.10.tar.gz 파일을 찾아서 직접 경로에 추가해주세요
- 404 not found 에러가 생기면 root 계정으로 전환하여 다시 시도해 주세요
성공적으로 파일이 다운로드 됐으면 zookeeper-3.4.10.tar.gz 파일 압축 해제해주세요
tar -xvf zookeeper-3.4.10.tar.gz
6. zookeeper config 파일 설정
3개 서버의 zookeeper를 연동하기 위해 config 파일을 설정합니다.
설치된 zookeeper 폴더로 이동합니다
cd zookeeper-3.4.10/
zoo_sample.cfg 파일 복사
cp conf/zoo_sample.cfg conf/zoo.cfg
주키퍼 config 파일 설정
vi conf/zoo.cfg
Setting Value
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/zookeeper/data(myid경로)
clientPort=2181
maxClientCnxns=0 ( 클라이언트 최대 연결 수 )
maxSessionTimeout=180000
server.1=hadoop1:2888:3888
server.2=hadoop2:2888:3888
server.3=hadoop3:2888:3888
myid 경로의 경우에는 zookeeper 에서 id를 부여하기 위한 경로입니다. 3개 서버 모두 같은 경로로 설정합니다.
7. zookeeper 홈에서 data 디렉토리를 생성, myid를 생성
zookeeper 클러스터내에서 각각의 주키퍼 노드를 구분하기 위하여 ID를 생성합니다.
hadoop1 - 1 , hadoop2 - 2 , hadoop3 - 3 ( myid )
mkdir data
cd data
vi myid
myid 파일에는 hadoop1 일때 1, hadoop2 일때 2, hadoop3 일때 3을 적고 저장합니다.
8. 각 서버별로 zookeeper를 실행합니다.
cd /home/zookeeper-3.4.10
./bin/zkServer.sh start
각 서버에서 zookeeper를 실행했으면 status를 확인합니다.
한 대는 leader 두 대는 follower가 됩니다. ( 순서 상관 없음 )