(작성중)하둡 클러스터 구축 1

2022. 3. 6. 15:07Data Engineering/Hadoop

하둡 클러스터를 처음 구축하시는 분들에게 도움이 되었으면 합니다.

실습을 위해 VirtualBox 로 우분투 가상 머신을 생성하여 진행하겠습니다.


기본 환경

  • VitrualBox 6.1.32
  • Ubuntu 20.04

 

 

일단 가상 머신 3개를 생성합니다.

단순 구축 실습이 목적이므로 가상 머신별 리소스를 RAM 2GB, 용량 20GB 으로 할당하여 생성했습니다.  

클러스터 환경을 만들기 위한 가상 머신 개수는 2개 이상이면 됩니다.

 

VirtualBox 로 Ubuntu 를 설치하는 과정은 생략하겠습니다. 

아래 내용부터 가상 머신을 서버로 표현하겠습니다.

 


1. 하둡용 계정 생성

 

서버들이 준비 되었다면, 하둡용 계정을 생성합니다.

* root 에서 작업하면 보안 문제가 있을 수 있고, 여러 프로세스가 실행되는 한 서버에서 하둡 관련 프로세스를 분리하여 관리하기 위해 따로 하둡용 계정을 생성하는 것이 좋다고 합니다.

 

참고: https://stackoverflow.com/questions/43076896/why-another-user-is-required-to-run-hadoop

 

Why another user is required to run hadoop?

I have a question regarding hadoop configuration why we need to create a user for running hadoop can we not run hadoop on a root user?

stackoverflow.com

 

모든 서버에 공통 적용

아래 과정을 모든 서버에 동일하게 진행합니다. 유저명, 그룹명도 편의상 통일합니다.

 

먼저 root 계정 비밀번호 설정을 하고 root 계정에 접근합니다.

$ sudo passwd root
$ su -

 

root 계정에서 하둡 그룹을 추가합니다.

# groupadd hadoop

 

다음으로 하둡 유저를 생성하고, 하둡 유저를 하둡 그룹에 추가합니다. 

* 비밀번호 설정 및 계정 정보를 입력하라고 하는데, 저는 비밀번호만 설정하고 나머지는 default 했습니다.

# adduser -ingroup hadoop hduser

 

위에서 생성한 하둡 계정에 sudo 권한을 부여합니다. 

* vi 편집을 사용하기 위해 vim 패키지를 설치하여 사용했습니다. (# apt install vim)

# vi /etc/sudoers

 

/etc/sudoers 파일을 열어서 아래 내용을 추가합니다.

* hduser 라는 계정에 sudo 권한을 부여하고, 해당 계정이 sudo 권한을 사용할 때 패스워드를 물어보지 않도록 하는 내용입니다.

:
hduser ALL=(ALL) NOPASSWD: ALL
:

 

위에서 생성한 하둡 계정으로 접근합니다.

# su - hduser