- Hue 개요
- CentOS에서 hue 설치
- 사전 준비 사항
- 설치
- Hadoop 환경 설정
- Oozie 환경 설정
- Hive 환경 설정
- Hue 환경 설정
- hue 매뉴얼
- 참고 문헌
Apache Hadoop 관리 도구인 Hue를 정리 합니다.
라이선스 : Apache 2.0
플랫폼 : Python
Hue 개요
Hue에서 제공하는 Hadoop 관리 기능
CentOS에서 hue 설치
사전 준비 사항
Ant 1.7.1
Maven 3.0.5
MySQL 5.1.69
Sqlite 3.6.20
Python 2.6.6
OpenLdap 2.4.23
Gcc 4.4.7
Cyrus-sasl 2.1.23
yum install ant
yum install mysql mysql-devel
yum install sqlite sqlite-devel
yum install python python-devel python-setuptools python-simplejson python-ldap*
yum install openldap openldap-*
yum install gcc gcc-*
yum install libxml2 libxml2-devel libxslt libxslt-devel
yum install cyrus-sasl cyrus-sasl-devel cyrus-sasl-gssapi
설치
CentOS에 hue 사용자를 추가 합니다.
//--- groupadd -g [그룹ID](그룹ID.md) 그룹이름
//--- useradd -u [유저ID] -g [그룹ID or 그룹명] -s [사용되는 SHELL] -d [Home 디렉토리](유저) 계정이름
groupadd hue
useradd -g hue -s /bin/bash -d /home/hue hue
Hue를 다운로드하여 압축을 풉니다.
wget https://github.com/downloads/cloudera/hue/hue-2.1.0.tgz
tar xvf hue-2.1.0.tgz
chown -R root:root hue-2.1.0
vi hue-2.1.0/maven/pom.xml
<!--
<parent>
<groupId>com.cloudera</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
-->
Hue를 설치 합니다.
cd hue-2.1.0
//--- make clean
//--- rm -rf /appl/hue
export PREFIX=/appl
make install
chmod 4750 /appl/hue/apps/shell/src/shell/build/setuid
vi ~/.bashrc
export HUE_HOME=/appl/hue
export PATH=$PATH:$HUE_HOME/build/env/bin
### alias supervisor="cd $HUE_HOME/build/env/bin && ./supervisor"
방화벽에서 8888 port를 열어 주세요.
Hadoop 환경 설정
Hadoop WebHdfs 설정
vi /appl/hadoop/conf/hdfs-site.xml
dfs.webhdfs.enabled
true
vi /appl/hadoop/conf/core-site.xml
hue은 linux user 아이디
hadoop.proxyuser.hue.hosts
*
hadoop.proxyuser.hue.groups
*
vi /appl/hadoop/conf/httpfs-site.xml (파일이 없음, 추가 확인 필요)
Hadoop Cluster 외부에 Hue Server가 있을 경우
hue은 linux user 아이디
hadoop.proxyuser.hue.hosts
*
hadoop.proxyuser.hue.groups
*
Hadoop 로그 설정
vi /appl/hadoop/conf/core-site.xml
hadoop.tmp.dir
/tmp/hadoop/hadoop-${user.name}
로그 파일을 hue 사용자로 쓸 수 있도록 권한을 수정 합니다.
chmod -R 777 /tmp/hadoop
MapReduce 1.0 설정
Hue가 JobTracker와 동일한 서버에 있을 경우
//--- hue-plugins-2.1.0-SNAPSHOT.jar 파일 복사
cp /appl/hue/desktop/libs/hadoop/java-lib/hue-plugins-*.jar /appl/hadoop/lib
Hue가 JobTracker와 다른 서버에 있을 경우
//--- hue-plugins-2.1.0-SNAPSHOT.jar 파일 복사
- vi /appl/hadoop/conf/mapred-site.xml
jobtracker.thrift.address
0.0.0.0:9290
mapred.jobtracker.plugins
org.apache.hadoop.thriftfs.ThriftJobTrackerPlugin
Comma-separated list of jobtracker plug-ins to be activated.
//--- Plugin 동작 확인
//--- tail --lines=500 /var/log/hadoop-0.20/hadoop*jobtracker*.log | grep ThriftPlugin
MapReduce 2.0 설정
Oozie 환경 설정
vi /appl/oozie/conf/oozie-site.xml
oozie.service.ProxyUserService.proxyuser.hue.hosts
*
oozie.service.ProxyUserService.proxyuser.hue.groups
*
Hive 환경 설정
vi /appl/hue/desktop/conf/hue.ini
//--- hive-site.xml 파일이 있는 폴더를 지정 합니다.
hive_home_dir=/appl/hive
hive_conf_dir=/appl/hive/conf
Hue 환경 설정
vi /appl/hue/desktop/conf/hue.ini
http_host=0.0.0.0
http_port=8888
//--- 30에서 60자의 임의의 보안 키를 설정 합니다.
secret_key=jFE93j;2[290-eiw.KEiwN2s3['d;/.q[eIW^y#e=+Iei*@Mn [[default]](default].md)) 을 수정 합니다.
hadoop_bin=/appl/hadoop/bin/hadoop
hadoop_hdfs_home=/appl/hadoop
hadoop_conf_dir=/appl/hadoop/conf
//--- hadoop.mapred_clusters.default.~ ([[[mapred_clusters]]] -> [[default]](default].md)) 을 수정 합니다.
hadoop_bin=/appl/hadoop/bin/hadoop
hadoop_mapred_home=/appl/hadoop
hadoop_conf_dir=/appl/hadoop/conf
thrift_port=9090
command = "/appl/flume/bin/flume-ng shell"
command = "/appl/pig/bin/pig -l /dev/null"
command = "/appl/hbase/bin/hbase shell"
MySQL에서 hue라는 데이터베이스를 생성 합니다.
createDatabase hue hue hue demo1234 demo1234
Hue에서 사용할 테이블 생성
/appl/hue/build/env/bin/hue syncdb --noinput
Hue 서비스 실행
cd /appl/hue/build/env/bin
./supervisor
처음 로그인하는 사용자가 Administrator 사용자가 됩니다.
Hue 서비스 실행시 오류가 발생할 경우
hive-default.xml 파일이 없을 경우 생성 합니다.
cd /appl/hive/conf
cp hive-default.xml.template hive-default.xml
Hadoop 로그 폴더에 쓰기 권한이 없어 오류가 발생할 경우
chmod -R 777 /tmp/hadoop
Hue 로그 폴더
/appl/hue/logs/
hue 매뉴얼
Hue 명령어
hue --version
hue dbshell //--- Database Shell로 접속
참고 문헌
Flamingo, [http://sourceforge.net/projects/hadoop-manager Flamingo, GPLv3]
http://cloudera.github.io/hue/docs-2.3.0/release-notes/release-notes-2.3.0.html
분류: BigData