HBase 는 가-분산 방식 까지 설치되어 있다고 가정하고 Hadoop 은 완전-분산 방식까지 설치되어 있다고 가정합니다. (지난 포스트들을 찾아보세요)

4대의 서버에 걸쳐서 HBase 클러스터링 설정을 하는 것으로 하겠습니다. 

nobody1 - HMaster
nobody2 - RegionServer
nobody3 - RegionServer
nobody4 - RegionServer

 




이제 설정파일들을 검토하겠습니다.  

    conf/hbase-env.sh
   

  # export JAVA_HOME=/usr/java/jdk1.6.0/
  export JAVA_HOME=/usr/lib/jvm/java-6-openjdk


를 추가해주고 (아마 되어 있을 것입니다)

 

  # export HBASE_CLASSPATH=
  export HADOOP_HOME=/home/hadoop/work/hadoop-1.0.1
  export HBASE_CLASSPATH=${HBASE_CLASSPATH}:$HADOOP_HOME/conf


를 추가해줍니다. 
 

  # Tell HBase whether it should manage it's own instance of Zookeeper or not.
  export HBASE_MANAGES_ZK=true


이제 주키퍼를 사용한다고 설정해야 하는 부분입니다. 

conf/hbase-site.xml

 1    <configuration>
 2    <property>
 3        <name>hbase.rootdir</name>
 4        <value>hdfs://nobody1:9000/hbase</value>
 5    </property>
 6
 7    <property>
 8        <name>hbase.cluster.distributed</name>
 9        <value>true</value>
10    </property>
11
12    <property>
13        <name>dfs.replication</name>
14        <value>3</value>
15    </property>
16
17    <property>
18        <name>hbase.zookeeper.quorum</name>
19        <value>nobody1,nobody2</value>
20    </property>
21
22    <property>
23      <name>hbase.zookeeper.property.dataDir</name>
24      <value>/home/hadoop/work/hbase-0.92.1/zookeeper</value>
25      <description>Property from ZooKeeper's config zoo.cfg.
26        The directory where the snapshot is stored.
27      </description>
28    </property>
29   </configuration>
   
hbase.rootdir 은 하둡의 네임노드뒤에 /hbase 를 적어줬습니다. 
hbase.cluster.distributed 는 클러스터링을 할 것인지에 관한 것입니다. true 로 적어줬습니다. 
dfs.replication 은 복제셋을 얼마나 가져갈 것인지에 관한 설정인데 3 으로 정해줬습니다. 

zookeeper
관련 설정은 꼭 해줘야 하는 부분입니다. 
hbase.zookeeper.quorum 은 클라이언트가 접속해야 하는 주키퍼를 설정해줄 수가 있습니다. nobody1 과 nobody2 에 주키퍼가 떠 있어서 클라이언트의 접속을 받을 것이라는 설정입니다. 

   conf/regionservers

   

   nobody1
   nobody2
   nobody3
   nobody4


   
이것은 실제적으로 데이타가 저장이 되는 리젼 서버(Region Server)들이 저장되는 곳입니다. 여기에 쓰여져 있는대로 리젼서버들이 구동됩니다. 

이제 설정이 끝나고 설정을 복사해 줄 차례입니다. 

   

   $ cd ~/work/hbase-0.92.1
   $ rsync -av . hadoop@nobody2:/home/hadoop/work/hbase-0.92.1/
   $ rsync -av . hadoop@nobody3:/home/hadoop/work/hbase-0.92.1/
   $ rsync -av . hadoop@nobody4:/home/hadoop/work/hbase-0.92.1/


   이제 다 설정 되었으니 하둡을 먼저 구동시키고 HBase 를 구동시킵니다. 
   

   $ cd ~/work/hbase-0.92.1
   $ bin/start-hbase.sh 




+ Recent posts