HBase - Kurulum

Bu bölüm HBase'in nasıl kurulduğunu ve başlangıçta nasıl yapılandırıldığını açıklar. HBase ile devam etmek için Java ve Hadoop gereklidir, bu nedenle java ve Hadoop'u sisteminize indirip yüklemeniz gerekir.

Kurulum Öncesi Kurulum

Hadoop'u Linux ortamına kurmadan önce, Linux'u kullanarak ssh(Güvenli Kabuk). Linux ortamını kurmak için aşağıda verilen adımları izleyin.

Bir Kullanıcı Oluşturma

Her şeyden önce, Hadoop dosya sistemini Unix dosya sisteminden izole etmek için Hadoop için ayrı bir kullanıcı oluşturmanız önerilir. Bir kullanıcı oluşturmak için aşağıda verilen adımları izleyin.

  • "Su" komutunu kullanarak kökü açın.
  • "Useradd username" komutunu kullanarak kök hesaptan bir kullanıcı oluşturun.
  • Artık "su username" komutunu kullanarak mevcut bir kullanıcı hesabını açabilirsiniz.

Bir kullanıcı oluşturmak için Linux terminalini açın ve aşağıdaki komutları yazın.

$ su
password:
# useradd hadoop
# passwd hadoop
New passwd:
Retype new passwd

SSH Kurulumu ve Anahtar Oluşturma

SSH kurulumu, küme üzerinde başlatma, durdurma ve dağıtılmış arka plan programı kabuğu işlemleri gibi farklı işlemler gerçekleştirmek için gereklidir. Farklı Hadoop kullanıcılarının kimliğini doğrulamak için, bir Hadoop kullanıcısı için genel / özel anahtar çifti sağlanması ve bunu farklı kullanıcılarla paylaşması gerekir.

Aşağıdaki komutlar, SSH kullanarak bir anahtar-değer çifti oluşturmak için kullanılır. İd_rsa.pub genel anahtarlarını yetkili_keys'e kopyalayın ve sırasıyla yetkili_keys dosyasına sahip, okuma ve yazma izinlerini verin.

$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys

Ssh'yi doğrulayın

ssh localhost

Java yükleme

Java, Hadoop ve HBase için temel ön koşuldur. Öncelikle, sisteminizde java varlığını “java sürümü” kullanarak doğrulamalısınız. Java sürüm komutunun sözdizimi aşağıda verilmiştir.

$ java -version

Her şey yolunda giderse, size aşağıdaki çıktıyı verecektir.

java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)

Sisteminizde java kurulu değilse, java yüklemek için aşağıda verilen adımları izleyin.

Aşama 1

Aşağıdaki Oracle Java bağlantısını ziyaret ederek java'yı (JDK <en son sürüm> - X64.tar.gz) indirin .

Sonra jdk-7u71-linux-x64.tar.gz sisteminize indirilecektir.

Adım 2

Genellikle indirilen java dosyasını İndirilenler klasöründe bulabilirsiniz. Doğrulayın vejdk-7u71-linux-x64.gz aşağıdaki komutları kullanarak dosya.

$ cd Downloads/
$ ls
jdk-7u71-linux-x64.gz

$ tar zxf jdk-7u71-linux-x64.gz
$ ls
jdk1.7.0_71 jdk-7u71-linux-x64.gz

Aşama 3

Java'yı tüm kullanıcıların kullanımına açmak için, onu "/ usr / local /" konumuna taşımalısınız. Kökü açın ve aşağıdaki komutları yazın.

$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit

4. adım

Kurulum için PATH ve JAVA_HOME değişkenler, aşağıdaki komutları ekleyin ~/.bashrc dosya.

export JAVA_HOME=/usr/local/jdk1.7.0_71
export PATH= $PATH:$JAVA_HOME/bin

Şimdi tüm değişiklikleri mevcut çalışan sisteme uygulayın.

$ source ~/.bashrc

Adım 5

Java alternatiflerini yapılandırmak için aşağıdaki komutları kullanın:

# alternatives --install /usr/bin/java java usr/local/java/bin/java 2

# alternatives --install /usr/bin/javac javac usr/local/java/bin/javac 2

# alternatives --install /usr/bin/jar jar usr/local/java/bin/jar 2


# alternatives --set java usr/local/java/bin/java

# alternatives --set javac usr/local/java/bin/javac

# alternatives --set jar usr/local/java/bin/jar

Şimdi doğrulayın java -version terminalden komut yukarıda açıklandığı gibi.

Hadoop'u indirme

Java'yı kurduktan sonra, Hadoop'u kurmanız gerekir. Öncelikle, aşağıda gösterildiği gibi “Hadoop sürümü” komutunu kullanarak Hadoop'un varlığını doğrulayın.

hadoop version

Her şey yolunda giderse, size aşağıdaki çıktıyı verecektir.

Hadoop 2.6.0
Compiled by jenkins on 2014-11-13T21:10Z
Compiled with protoc 2.5.0
From source with checksum 18e43357c8f927c0695f1e9522859d6a
This command was run using
/home/hadoop/hadoop/share/hadoop/common/hadoop-common-2.6.0.jar

Sisteminiz Hadoop'u bulamıyorsa, sisteminize Hadoop'u indirin. Bunu yapmak için aşağıda verilen komutları izleyin.

Aşağıdaki komutları kullanarak Apache Software Foundation'dan hadoop-2.6.0'ı indirin ve çıkarın .

$ su
password:
# cd /usr/local
# wget http://mirrors.advancedhosters.com/apache/hadoop/common/hadoop-
2.6.0/hadoop-2.6.0-src.tar.gz
# tar xzf hadoop-2.6.0-src.tar.gz
# mv hadoop-2.6.0/* hadoop/
# exit

Hadoop'u Yükleme

Hadoop'u gerekli modlardan herhangi birinde yükleyin. Burada, sözde dağıtılmış kipte HBase işlevlerini gösteriyoruz, bu nedenle Hadoop'u sözde dağıtılmış kipte kuruyoruz.

Kurulum için aşağıdaki adımlar kullanılır Hadoop 2.4.1.

Adım 1 - Hadoop'u Kurma

Aşağıdaki komutları ekleyerek Hadoop ortam değişkenlerini ayarlayabilirsiniz. ~/.bashrc dosya.

export HADOOP_HOME=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_INSTALL=$HADOOP_HOME

Şimdi tüm değişiklikleri mevcut çalışan sisteme uygulayın.

$ source ~/.bashrc

Adım 2 - Hadoop Yapılandırması

Tüm Hadoop yapılandırma dosyalarını “$ HADOOP_HOME / etc / hadoop” konumunda bulabilirsiniz. Hadoop altyapınıza göre bu yapılandırma dosyalarında değişiklikler yapmanız gerekir.

$ cd $HADOOP_HOME/etc/hadoop

Java'da Hadoop programları geliştirmek için, java ortam değişkenini sıfırlamanız gerekir. hadoop-env.sh değiştirerek dosya JAVA_HOME java'nın sisteminizdeki konumu ile değer.

export JAVA_HOME=/usr/local/jdk1.7.0_71

Hadoop'u yapılandırmak için aşağıdaki dosyaları düzenlemeniz gerekecektir.

core-site.xml

core-site.xml dosyası, Hadoop örneği için kullanılan bağlantı noktası numarası, dosya sistemi için ayrılan bellek, verileri depolamak için bellek sınırı ve Okuma / Yazma arabelleklerinin boyutu gibi bilgileri içerir.

Core-site.xml dosyasını açın ve aşağıdaki özellikleri <configuration> ve </configuration> etiketleri arasına ekleyin.

<configuration>
   <property>
      <name>fs.default.name</name>
      <value>hdfs://localhost:9000</value>
   </property>
</configuration>

hdfs-site.xml

hdfs-site.xml dosyası, Hadoop altyapısını depolamak istediğiniz yerel dosya sistemlerinizin çoğaltma verilerinin değeri, ad kodu yolu ve veri düğümü yolu gibi bilgileri içerir.

Aşağıdaki verileri varsayalım.

dfs.replication (data replication value) = 1
(In the below given path /hadoop/ is the user name.
hadoopinfra/hdfs/namenode is the directory created by hdfs file system.)

namenode path = //home/hadoop/hadoopinfra/hdfs/namenode
(hadoopinfra/hdfs/datanode is the directory created by hdfs file system.)

datanode path = //home/hadoop/hadoopinfra/hdfs/datanode

Bu dosyayı açın ve <configuration>, </configuration> etiketleri arasına aşağıdaki özellikleri ekleyin.

<configuration>
   <property>
      <name>dfs.replication</name >
      <value>1</value>
   </property>
	
   <property>
      <name>dfs.name.dir</name>
      <value>file:///home/hadoop/hadoopinfra/hdfs/namenode</value>
   </property>
	
   <property>
      <name>dfs.data.dir</name>
      <value>file:///home/hadoop/hadoopinfra/hdfs/datanode</value>
   </property>
</configuration>

Note: Yukarıdaki dosyada tüm özellik değerleri kullanıcı tanımlıdır ve Hadoop altyapınıza göre değişiklikler yapabilirsiniz.

yarn-site.xml

Bu dosya, ipliği Hadoop'ta yapılandırmak için kullanılır. İplik-site.xml dosyasını açın ve aşağıdaki özelliği <configuration $ gt ;, </ configuration $ gt; Bu dosyadaki etiketler.

<configuration>
   <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
   </property>
</configuration>

mapred-site.xml

Bu dosya hangi MapReduce çerçevesini kullandığımızı belirtmek için kullanılır. Varsayılan olarak, Hadoop bir iplik-site.xml şablonu içerir. Öncelikle dosyanın kopyalanması gerekir.mapred-site.xml.template -e mapred-site.xml aşağıdaki komutu kullanarak dosya.

$ cp mapred-site.xml.template mapred-site.xml

Açık mapred-site.xml dosyasını açın ve <configuration> ve </configuration> etiketleri arasına aşağıdaki özellikleri ekleyin.

<configuration>
   <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
   </property>
</configuration>

Hadoop Kurulumunu Doğrulama

Aşağıdaki adımlar Hadoop kurulumunu doğrulamak için kullanılır.

Adım 1 - Ad Düğümü Kurulumu

“Hdfs namenode -format” komutunu kullanarak ad kodunu aşağıdaki gibi ayarlayın.

$ cd ~
$ hdfs namenode -format

Beklenen sonuç aşağıdaki gibidir.

10/24/14 21:30:55 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = localhost/192.168.1.11
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 2.4.1
...
...
10/24/14 21:30:56 INFO common.Storage: Storage directory
/home/hadoop/hadoopinfra/hdfs/namenode has been successfully formatted.
10/24/14 21:30:56 INFO namenode.NNStorageRetentionManager: Going to
retain 1 images with txid >= 0
10/24/14 21:30:56 INFO util.ExitUtil: Exiting with status 0
10/24/14 21:30:56 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at localhost/192.168.1.11
************************************************************/

Adım 2 - Hadoop dfs'yi doğrulama

Aşağıdaki komut dfs'yi başlatmak için kullanılır. Bu komutu çalıştırmak Hadoop dosya sisteminizi başlatacaktır.

$ start-dfs.sh

Beklenen çıktı aşağıdaki gibidir.

10/24/14 21:37:56
Starting namenodes on [localhost]
localhost: starting namenode, logging to /home/hadoop/hadoop-
2.4.1/logs/hadoop-hadoop-namenode-localhost.out
localhost: starting datanode, logging to /home/hadoop/hadoop-
2.4.1/logs/hadoop-hadoop-datanode-localhost.out
Starting secondary namenodes [0.0.0.0]

Adım 3 - İplik Komut Dosyasını Doğrulama

İplik betiğini başlatmak için aşağıdaki komut kullanılır. Bu komutun yürütülmesi iplik daemonlarınızı başlatacaktır.

$ start-yarn.sh

Beklenen çıktı aşağıdaki gibidir.

starting yarn daemons
starting resourcemanager, logging to /home/hadoop/hadoop-
2.4.1/logs/yarn-hadoop-resourcemanager-localhost.out
localhost: starting nodemanager, logging to /home/hadoop/hadoop-
2.4.1/logs/yarn-hadoop-nodemanager-localhost.out

Adım 4 - Tarayıcıda Hadoop'a Erişim

Hadoop'a erişmek için varsayılan bağlantı noktası numarası 50070'tir. Tarayıcınızda Hadoop hizmetlerini almak için aşağıdaki url'yi kullanın.

http://localhost:50070

Adım 5 - Tüm Küme Uygulamalarını Doğrulayın

Kümenin tüm uygulamalarına erişmek için varsayılan bağlantı noktası numarası 8088'dir. Bu hizmeti ziyaret etmek için aşağıdaki url'yi kullanın.

http://localhost:8088/

HBase kurulumu

HBase'i üç moddan herhangi birinde kurabiliriz: Bağımsız mod, Sözde Dağıtılmış mod ve Tam Dağıtılmış mod.

HBase'i Bağımsız Modda Kurmak

HBase formunun en son kararlı sürümünü indirin http://www.interior-dsgn.com/apache/hbase/stable/"wget" komutunu kullanarak ve onu tar "zxvf" komutunu kullanarak çıkarın. Aşağıdaki komuta bakın.

$cd usr/local/
$wget http://www.interior-dsgn.com/apache/hbase/stable/hbase-0.98.8-
hadoop2-bin.tar.gz
$tar -zxvf hbase-0.98.8-hadoop2-bin.tar.gz

Süper kullanıcı moduna geçin ve HBase klasörünü aşağıda gösterildiği gibi / usr / local dizinine taşıyın.

$su
$password: enter your password here
mv hbase-0.99.1/* Hbase/

HBase'i Bağımsız Modda Yapılandırma

HBase ile devam etmeden önce, aşağıdaki dosyaları düzenlemeniz ve HBase'i yapılandırmanız gerekir.

hbase-env.sh

Java Home'u HBase için ayarlayın ve açın hbase-env.shconf klasöründen dosya. JAVA_HOME ortam değişkenini düzenleyin ve mevcut JAVA_HOME değişkeninizin mevcut yolunu aşağıda gösterildiği gibi değiştirin.

cd /usr/local/Hbase/conf
gedit hbase-env.sh

Bu HBase'nin env.sh dosyasını açacaktır. Şimdi mevcut olanı değiştirinJAVA_HOME Aşağıda gösterildiği gibi mevcut değerinizle değer.

export JAVA_HOME=/usr/lib/jvm/java-1.7.0

hbase-site.xml

Bu, HBase'nin ana yapılandırma dosyasıdır. Veri dizinini / usr / local / HBase içindeki HBase ana klasörünü açarak uygun bir konuma ayarlayın. Conf klasörünün içinde birkaç dosya bulacaksınız,hbase-site.xml dosya aşağıda gösterildiği gibi.

#cd /usr/local/HBase/
#cd conf
# gedit hbase-site.xml

İçinde hbase-site.xmldosyasında <configuration> ve </configuration> etiketlerini bulacaksınız. Bunların içinde, aşağıda gösterildiği gibi, özellik anahtarı altındaki HBase dizinini “hbase.rootdir” adıyla ayarlayın.

<configuration>
   //Here you have to set the path where you want HBase to store its files.
   <property>
      <name>hbase.rootdir</name>
      <value>file:/home/hadoop/HBase/HFiles</value>
   </property>
	
   //Here you have to set the path where you want HBase to store its built in zookeeper  files.
   <property>
      <name>hbase.zookeeper.property.dataDir</name>
      <value>/home/hadoop/zookeeper</value>
   </property>
</configuration>

Bununla HBase kurulum ve konfigürasyon bölümü başarıyla tamamlanmıştır. HBase'i kullanarak başlatabilirizstart-hbase.shHBase'in bin klasöründe sağlanan komut dosyası. Bunun için HBase Home Folder'ı açın ve aşağıda gösterildiği gibi HBase başlangıç ​​komut dosyasını çalıştırın.

$cd /usr/local/HBase/bin
$./start-hbase.sh

Her şey yolunda giderse, HBase başlatma betiğini çalıştırmaya çalıştığınızda, size HBase'nin başladığını belirten bir mesaj gönderir.

starting master, logging to /usr/local/HBase/bin/../logs/hbase-tpmaster-localhost.localdomain.out

HBase'i Sözde Dağıtılmış Modda Yükleme

Şimdi HBase'in sözde dağıtılmış kipte nasıl kurulduğunu kontrol edelim.

HBase'i Yapılandırma

HBase ile devam etmeden önce, yerel sisteminizde veya uzaktaki bir sistemde Hadoop ve HDFS'yi yapılandırın ve çalıştıklarından emin olun. Çalışıyorsa HBase'i durdurun.

hbase-site.xml

Aşağıdaki özellikleri eklemek için hbase-site.xml dosyasını düzenleyin.

<property>
   <name>hbase.cluster.distributed</name>
   <value>true</value>
</property>

HBase'nin hangi modda çalıştırılması gerektiğini belirtecektir. Yerel dosya sistemindeki aynı dosyada, hdfs: //// URI sözdizimini kullanarak HDFS örnek adresiniz olan hbase.rootdir'i değiştirin. HDFS'yi localhost üzerinde 8030 numaralı bağlantı noktasında çalıştırıyoruz.

<property>
   <name>hbase.rootdir</name>
   <value>hdfs://localhost:8030/hbase</value>
</property>

HBase başlatılıyor

Yapılandırma bittikten sonra, HBase ana klasörüne gidin ve aşağıdaki komutu kullanarak HBase'i başlatın.

$cd /usr/local/HBase
$bin/start-hbase.sh

Note: HBase'i başlatmadan önce, Hadoop'un çalıştığından emin olun.

HDFS'de HBase Dizininin Kontrol Edilmesi

HBase, dizinini HDFS'de oluşturur. Oluşturulan dizini görmek için Hadoop bölmesine gidin ve aşağıdaki komutu yazın.

$ ./bin/hadoop fs -ls /hbase

Her şey yolunda giderse, size aşağıdaki çıktıyı verecektir.

Found 7 items
drwxr-xr-x - hbase users 0 2014-06-25 18:58 /hbase/.tmp
drwxr-xr-x - hbase users 0 2014-06-25 21:49 /hbase/WALs
drwxr-xr-x - hbase users 0 2014-06-25 18:48 /hbase/corrupt
drwxr-xr-x - hbase users 0 2014-06-25 18:58 /hbase/data
-rw-r--r-- 3 hbase users 42 2014-06-25 18:41 /hbase/hbase.id
-rw-r--r-- 3 hbase users 7 2014-06-25 18:41 /hbase/hbase.version
drwxr-xr-x - hbase users 0 2014-06-25 21:49 /hbase/oldWALs

Master'ı Başlatma ve Durdurma

“Local-master-backup.sh” dosyasını kullanarak en fazla 10 sunucu başlatabilirsiniz. HBase, master'ın ana klasörünü açın ve başlatmak için aşağıdaki komutu uygulayın.

$ ./bin/local-master-backup.sh 2 4

Bir yedekleme yöneticisini öldürmek için, işlem kimliğine ihtiyacınız vardır ve bu kimlik, “/tmp/hbase-USER-X-master.pid.” yedek yöneticiyi aşağıdaki komutu kullanarak öldürebilirsiniz.

$ cat /tmp/hbase-user-1-master.pid |xargs kill -9

Bölge Sunucularını Başlatma ve Durdurma

Aşağıdaki komutu kullanarak tek bir sistemden birden çok bölge sunucusu çalıştırabilirsiniz.

$ .bin/local-regionservers.sh start 2 3

Bir bölge sunucusunu durdurmak için aşağıdaki komutu kullanın.

$ .bin/local-regionservers.sh stop 3

 

HBaseShell'i Başlatma

HBase'i başarıyla kurduktan sonra, HBase Shell'i başlatabilirsiniz. Aşağıda, HBase kabuğunu başlatmak için izlenecek adımların sırası verilmiştir. Terminali açın ve süper kullanıcı olarak oturum açın.

Hadoop Dosya Sistemini Başlatın

Hadoop home sbin klasörüne göz atın ve aşağıda gösterildiği gibi Hadoop dosya sistemini başlatın.

$cd $HADOOP_HOME/sbin
$start-all.sh

HBase'i başlat

HBase kök dizin kutusu klasörüne göz atın ve HBase'i başlatın.

$cd /usr/local/HBase
$./bin/start-hbase.sh

HBase Master Sunucusunu Başlatın

Bu aynı dizin olacak. Aşağıda gösterildiği gibi başlatın.

$./bin/local-master-backup.sh start 2 (number signifies specific
server.)

Bölge Başlat

Bölge sunucusunu aşağıda gösterildiği gibi başlatın.

$./bin/./local-regionservers.sh start 3

HBase Shell'i başlatın

Aşağıdaki komutu kullanarak HBase kabuğunu başlatabilirsiniz.

$cd bin
$./hbase shell

Bu size aşağıda gösterildiği gibi HBase Kabuk İstemini verecektir.

2014-12-09 14:24:27,526 INFO [main] Configuration.deprecation:
hadoop.native.lib is deprecated. Instead, use io.native.lib.available
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.98.8-hadoop2, r6cfc8d064754251365e070a10a82eb169956d5fe, Fri
Nov 14 18:26:29 PST 2014

hbase(main):001:0>

HBase Web Arayüzü

HBase'in web arayüzüne erişmek için, tarayıcıya aşağıdaki url'yi yazın.

http://localhost:60010

Bu arabirim, şu anda çalışan Bölge sunucularınızı, yedek yöneticilerinizi ve HBase tablolarınızı listeler.

HBase Bölge sunucuları ve Backup Masters

HBase Tabloları

Java Ortamını Ayarlama

Java kitaplıklarını kullanarak HBase ile de iletişim kurabiliriz, ancak Java API kullanarak HBase'e erişmeden önce bu kitaplıklar için sınıf yolu ayarlamanız gerekir.

Sınıf Yolunu Ayarlama

Programlamaya geçmeden önce, sınıf yolunu HBase kitaplıklarına ayarlayın. .bashrcdosya. Açık.bashrc aşağıda gösterildiği gibi herhangi bir editörde.

$ gedit ~/.bashrc

HBase kitaplıkları için sınıf yolunu (HBase'deki lib klasörü) aşağıda gösterildiği gibi ayarlayın.

export CLASSPATH = $CLASSPATH://home/hadoop/hbase/lib/*

Bu, java API kullanarak HBase'ye erişirken "sınıf bulunamadı" istisnasını önlemek içindir.