상단

Apache Hadoop 관리 도구인 Hue를 정리 합니다.

 
 
 

Hue 개요


  • Hue에서 제공하는 Hadoop 관리 기능

    • Catalog App : Database schema와 데이터 관리

    • SQL 작성 및 실행 for [[Hive]], Impala

    • Pig App : Pig script를 작성하고 실행, UDF 사용

    • Job Designer : Oozie를 통한 workflow 관리

    • Oracle database support

 
 

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
  • http://localhost:8888/

    • 처음 로그인하는 사용자가 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로 접속
 

참고 문헌


 
 

분류: BigData

최종 수정일: 2024-09-30 12:26:18

이전글 :
다음글 :