Docker Hadoop Hive 1편에 이어서 Hive 설치를 계속 진행하겠습니다.
/usr/local/hive 폴더의 그룹과 유저를 하둡그룹에 hduser로 설정합니다.
HDFS 내에서 Hive 가 사용할 데이터저장소를 생성해야합니다.
폴더 생성과 권한을 다 주고 나면 hive/conf 폴더에서 설정파일들을 준비합니다.
hive-env.sh 파일을 편집합니다.
hive-site.xml 파일을 편집합니다. hive.exec.local.scratchdir 프로퍼티에 대한 value 값을 /tmp/hduser 로 변경합니다. hive.downloaded.resources.dir 프로퍼티에 대한 value 값을 /tmp/hduser/hive/${hive.session.id}_resources
설정이 완료되면 /usr/local/hive 폴더로 이동합니다.
메타데이터를 보관할 저장소는 RDBMS를 이용할 수도 있지만, 간단한 학습을 위해 내장 derby 데이터베이스를 사용합니다.
다음의 명령어를 실행합니다.
이제 hiveserver2 를 실행합니다.
별도의 쉘을 열어서 container 에 접속합니다.
다음의 명령을 실행합니다.
beeline 이 정상 실행되면 다음의 커맨드를 입력해서 접속합니다.
username 은 APP, password 는 mine 입니다.
접속이 성공하면 설치는 성공입니다.
수고하셨습니다.
/usr/local/hive 폴더의 그룹과 유저를 하둡그룹에 hduser로 설정합니다.
sudo chown -R hduser:hadoop /usr/local/hive
HDFS 내에서 Hive 가 사용할 데이터저장소를 생성해야합니다.
bin/hdfs dfs -mkdir /tmp bin/hdfs dfs -mkdir -p /user/hive/warehouse bin/hdfs dfs -chmod g+w /tmp bin/hdfs dfs -chmod g+w /user/hive/warehouse
폴더 생성과 권한을 다 주고 나면 hive/conf 폴더에서 설정파일들을 준비합니다.
cd /usr/local/hive/conf mv hive-env.sh.template hive-env.sh mv hive-default.xml.template hive-site.xml mv hive-exec-log4j2.properties.template hive-exec-log4j2.properties mv hive-log4j2.properties.template hive-log4j2.properties
hive-env.sh 파일을 편집합니다.
vim hive-env.sh export HADOOP_HOME=/usr/local/hadoop export HIVE_CONF_DIR=/usr/local/hive/conf
hive-site.xml 파일을 편집합니다. hive.exec.local.scratchdir 프로퍼티에 대한 value 값을 /tmp/hduser 로 변경합니다. hive.downloaded.resources.dir 프로퍼티에 대한 value 값을 /tmp/hduser/hive/${hive.session.id}_resources
vim hive-site.xml
<property> <name>hive.exec.local.scratchdir</name> <value>/tmp/hduser</value> <description>Local scratch space for Hive jobs</description> </property> <property> <name>hive.downloaded.resources.dir</name> <value>/tmp/hduser/hive/${hive.session.id}_resources</value> <description>Temporary local directory for added resources in the remote file system.</description> </property>
설정이 완료되면 /usr/local/hive 폴더로 이동합니다.
메타데이터를 보관할 저장소는 RDBMS를 이용할 수도 있지만, 간단한 학습을 위해 내장 derby 데이터베이스를 사용합니다.
다음의 명령어를 실행합니다.
cd /usr/local/hive
bin/schematool -dbType derby -initSchema
이제 hiveserver2 를 실행합니다.
bin/hiveserver2
별도의 쉘을 열어서 container 에 접속합니다.
docker exec -it hadoop_hive /bin/bash
다음의 명령을 실행합니다.
su hduser cd /usr/local/hive bin/beeline
beeline 이 정상 실행되면 다음의 커맨드를 입력해서 접속합니다.
!connect jdbc:hive2://localhost:10000/default
username 은 APP, password 는 mine 입니다.
접속이 성공하면 설치는 성공입니다.
수고하셨습니다.