apache kudu의 공식 사이트이다.
https://kudu.apache.org/docs/index.html
소개하기로는, Hadoop 플랫폼 용으로 개발된 스토리지 관리 소프트웨어라고 한다.
시작은 클라우데라에서 시작되었다고 하고, "Columnar Data Store 라는 독특한 저장소를 사용한다.
용어와, 장단점 등은 나중에 따로 찾아보도록하고 설치를 진행해본다.
# 설치환경 : CentOS 7 x64
참조 문서 : https://kudu.apache.org/docs/installation.html
yum 설치를 권장하고있는데, 저장소를 참조하기 위해 .repo를 추가한다.
vim /etc/yum.repos.d/cloudera-kudu.repo
#아래 내용을 입력
[cloudera-cdh5]
# Packages for Cloudera's Distribution for Hadoop, Version 5, on RedHat or CentOS 7 x86_64
name=Cloudera's Distribution for Hadoop, Version 5
baseurl=https://archive.cloudera.com/cdh5/redhat/7/x86_64/cdh/5/
gpgkey =https://archive.cloudera.com/cdh5/redhat/7/x86_64/cdh/RPM-GPG-KEY-cloudera
gpgcheck = 1
KUDU의 마스터는 1개 또는 3개(1개 결함 허용) 또는 5개( 2개의 결함 허용 )을 가질수 있다고 한다.
구축이 완료되면 마스터 이중화도 테스트 해보자.
#설치 명령은 아래와 같고,
sudo yum install kudu # Base Kudu files
sudo yum install kudu-master # Kudu master init.d service script and default configuration
sudo yum install kudu-tserver # Kudu tablet server init.d service script and default configuration
sudo yum install kudu-client0 # Kudu C++ client shared library
sudo yum install kudu-client-devel # Kudu C++ client SDK
#실행 명령은 아래와 같다.
[root@KUDU1 ~]# service kudu-master start
Started Kudu Master Server (kudu-master): [ OK ]
[root@KUDU1 ~]# service kudu-tserver start
Started Kudu Tablet Server (kudu-tserver): [ OK ]
#예제에는 없지만, 방화벽을 해제하고
firewall-cmd --permanent --zone=public --add-port=8051/tcp
firewall-cmd --permanent --zone=public --add-port=8050/tcp
firewall-cmd --reload
#chkconfig 명령으로 재부팅 시 자동으로 올라도록 조정해준다.
chkconfig kudu-master on
chkconfig kudu-tserver on
#설정에 대한 상세 정보지만.. 일단 스킵한다
https://kudu.apache.org/docs/configuration.html
#아래와 같이, 설치 확인이 가능하고,
[root@KUDU1 ~]# kudu master list 10.1.3.21:7051 uuid | rpc-addresses ----------------------------------+--------------- 04e949e0335f42e697761e67b3707932 | KUDU1:7051
#웹을 열어서도 확인 가능하다
kudu는 일반적으로 impala라는 질의엔진을 통해서 질의를 한다.
즉, 임팔라를 설치해야 한다는 뜻.
#임팔라 공식 사이트
https://impala.apache.org
여기 번역을 해보면,
Apache Impala 프로젝트는 널리 사용되는 Apache Hadoop 파일 형식에 저장된 데이터에 대한 고성능의 지연 시간이 적은 SQL 쿼리를 제공합니다.
Impala는 Apache Hive 메타 스토어 데이터베이스와 통합되어 두 구성 요소간에 데이터베이스와 테이블을 공유합니다
라고 하니까, 실제로 Hadoop과 Hive도 설치를 해야한다...
소스 인스톨을 시도해봤는데, 에러를 못잡아서 yum으로 하기로한다.
신기하게도 클라우데라에서는 CDH( Cloudera Distribution Including Apache Hadoop ) 라는 특수한 배포 형식을 사용하여 배포판간의 버전관리를 쉽 도록 구성해놓았다.
#마찬가지로 repo 파일을 추가하고
vim /etc/yum.repos.d/cdh.repo
#아래 입력
[cloudera-cdh5]
# Packages for Cloudera's Distribution for Hadoop, Version 5, on RedHat or CentOS 7 x86_64
name=Cloudera's Distribution for Hadoop, Version 5
baseurl=https://archive.cloudera.com/cdh5/redhat/7/x86_64/cdh/5/
gpgkey =https://archive.cloudera.com/cdh5/redhat/7/x86_64/cdh/RPM-GPG-KEY-cloudera
gpgcheck = 1
매우 많은 패키지들이 설치된다. hadoop도 , hive도 의존성이 걸려있다.