WebHCat 매뉴얼

WebHCat 매뉴얼

WebHCat은 이전에 Templeton이라 불리던 도구의 매뉴얼이에요. WebHCat은 Hadoop용 테이블 및 스토리지 관리 레이어인 HCatalog의 REST API입니다.

출처: 문서

본문

목차

  • Using WebHCat
  • Installation
  • Configuration
  • Reference

일반 HCatalog 문서는 HCatalog Manual을 참고하세요.

구성(Configuration)

구성 파일(Configuration Files)

WebHCat(Templeton)의 구성은 일반 Hadoop 구성과 WebHCat 전용 변수를 합칩니다. WebHCat은 보통 연결되지 않는 서비스들을 연결하도록 설계됐기 때문에, 구성은 원하는 것보다 더 복잡합니다.

WebHCat 전용 구성은 두 레이어로 나뉩니다:

  • webhcat-default.xml – WebHCat이 필요한 모든 구성 변수. WebHCat과 함께 제공되는 기본값을 설정하며, WebHCat 개발자만 변경해야 해요. 로컬 설치 설정을 유지하기 위해 이 파일을 복사하거나 변경하지 마세요. webhcat-default.xml은 WebHCat war 파일 안에 있으므로, 로컬 복사본을 편집해도 구성이 바뀌지 않습니다.
  • webhcat-site.xml – (비어 있을 수 있는) 구성 파일로, 시스템 관리자가 자기 Hadoop 클러스터의 변수를 설정할 수 있어요. 이 파일을 만들고, 로컬 설치에 따라 기본값을 재정의해야 하는 구성 변수 항목을 유지하세요.

설치(Installation)

Hive와 함께 설치되는 WebHCat

WebHCat과 HCatalog는 Hive 0.11.0 릴리스부터 Hive와 함께 설치됩니다.

바이너리 타르볼에서 Hive를 설치하면 WebHCat 서버 명령 webhcat_server.shhcatalog/sbin 디렉터리에 있습니다.

Hive 설치 방법은 여기에 문서화되어 있어요.

WebHCat 설치 절차

참고: WebHCat은 원래 Templeton이라 불렸어요. 하위 호환성을 위해 그 이름이 여전히 URL, 로그 파일 이름, 변수 이름 등에 나타납니다.

  • 필요한 관련 설치가 마련됐는지 확인하고, 필요한 파일을 Hadoop 분산 캐시에 넣습니다.
  • HCatalog 배포본을 다운로드하고 압축을 풀어요.
  • TEMPLETON_HOME 환경 변수를 HCatalog REST 서버 설치의 base로 설정해요. 보통 HCATALOG_HOME과 같습니다. WebHCat(Templeton) 구성을 찾는 데 사용됩니다.
  • JAVA_HOME, HADOOP_PREFIX, HIVE_HOME 환경 변수를 설정해요.
  • 구성을 검토하고 필요에 따라 webhcat-site.xml을 갱신하거나 생성해요. 사이트별 컴포넌트 설치 위치가 정확한지, 특히 Hadoop 구성 경로를 확인하세요. 파일시스템 경로를 사용하는 구성 변수는 합리적인 기본값을 가지려 하지만, 전체 경로를 지정하는 게 항상 안전합니다.
  • HCatalog가 설치되어 있고 hcat 실행 파일이 PATH에 있는지 확인해요.
  • HCatalog 최상위 디렉터리에서 ant jar 명령으로 HCatalog를 빌드합니다.
  • REST 서버를 시작하려면 Hive 0.11.0 이후 릴리스에서는 "hcatalog/sbin/webhcat_server.sh start", HCatalog가 Hive에 합병되기 이전 설치에서는 "sbin/webhcat_server.sh start"를 사용해요.
  • 로컬 설치가 동작하는지 확인해요. 서버가 포트 50111에서 실행 중이라고 가정하면 다음 명령이 아래와 비슷한 출력을 줄 거예요.
% curl -i http://localhost:50111/templeton/v1/status
HTTP/1.1 200 OK
Content-Type: application/json
Transfer-Encoding: chunked
Server: Jetty(7.6.0.v20120127)

{"status":"ok","version":"v1"}
%

서버 명령(Server Commands)

  • 서버 시작: sbin/webhcat_server.sh start (HCatalog 0.5.0 이하 – Hive 0.11.0 릴리스 이전)
  • hcatalog/sbin/webhcat_server.sh start (Hive 0.11.0 릴리스 이후)
  • 서버 중지: sbin/webhcat_server.sh stop (HCatalog 0.5.0 이하 – Hive 0.11.0 릴리스 이전)
  • hcatalog/sbin/webhcat_server.sh stop (Hive 0.11.0 릴리스 이후)
  • 엔드투엔드 빌드/실행/테스트: ant e2e

요구 사항(Requirements)

  • Ant, 버전 1.8 이상
  • Hadoop, 버전 1.0.3 이상
  • ZooKeeper 저장소 클래스를 사용한다면 ZooKeeper 필요 (ZooKeeper 관련 WebHCat 구성을 검토하고 갱신하세요)
  • HCatalog, 버전 0.5.0 이상. hcat 실행 파일이 PATH에 있어야 하고 WebHCat 구성에서도 제대로 설정돼야 해요.
  • 서버를 실행하는 사용자에게 권한을 줘야 해요. (아래 참고)
  • 보안 클러스터를 실행한다면 Kerberos 키와 주체(principal)를 만들어야 해요. (아래 참고)
  • Hadoop Distributed Cache. Hive, Pig, Hadoop Streaming 리소스를 사용하려면 아래 지시에 따라 필요한 파일을 Hadoop Distributed Cache에 넣어야 해요.

Hadoop Distributed Cache

서버는 몇몇 파일이 Hadoop 분산 캐시에서 접근 가능해야 해요. 예를 들어 클러스터 전역에 Pig와 Hive를 설치하지 않기 위해, 서버는 해당 리소스가 호출될 때마다 Hadoop 분산 캐시에서 Pig나 Hive 버전을 수집합니다. 다음 컴포넌트들을 HDFS에 넣은 뒤 각각에 대해 사이트 구성도 갱신해 주세요.

레퍼런스(Reference)

WebHCat의 REST 리소스는 General, DDL, MapReduce, Pig, Hive, Jobs 카테고리로 나뉘어요. 대표적으로 status, version, ddl/*, mapreduce/streaming, pig, hive, jobs 등이 있습니다. 전체 리소스 목록과 각 리소스의 상세 설명은 WebHCat Reference 페이지를 참고하세요.

더 알아보기 (Learn more)

WebHCat은 HTTP(REST)로 HCatalog의 기능과 MapReduce/Pig/Hive 잡 실행을 제공해요. 설치 후 webhcat_server.sh로 서버를 띄우고 http://localhost:50111/templeton/v1/... 엔드포인트로 호출하면 됩니다. 개별 리소스의 상세한 사용법은 각 레퍼런스 페이지를 확인하세요.