(需先安裝apache及php)

安裝需要使用到的套件:

sudo apt-get install libboost-dev libevent-dev python-dev automake pkg-config libtool flex bison g++

編譯與安裝thrift:

wget http://ftp.tc.edu.tw/pub/Apache//thrift/0.7.0/thrift-0.7.0.tar.gz
tar -xvf thrift-0.7.0.tar.gz
mv thrift-0.7.0 thrift
cd thrift
./configure #測試系統是否可以安裝Thrift
make #編譯
sudo make install #安裝

產生出可以存取hbase的php

cp -r  /home/johnson4932/hbase/src/main/resources/org/apache/hadoop/hbase/thrift/ ./hbase_thrift_src
cd hbase_thrift_src
thrift --gen php Hbase.thrift

以上若動作都確實完成,可以看到已經產生出一個資料夾: gen-php/Hbase/ 並且包含兩個php檔案,此兩個php檔可以幫助你存取hbase,不過此 php 檔還是需要其他檔案當函式庫

使用 jps 檢查hadoop 與 hbase 是否正常運作中

$ jps

正常狀況下會出現這些process:

26582 HQuorumPeer
26658 HMaster
16222 TaskTracker
16138 JobTracker
15952 NameNode
16047 DataNode

啟動 hbase 的 thrift daemon

/home/johnson4932/hbase/bin/hbase-daemon.sh start thrift

複製 thrift 的php 專案到apache:

cd /var/www
sudo mkdir hbase
cd hbase
sudo mkdir thrift
sudo cp -r /home/johnson4932/thrift/lib/php/src/* /var/www/hbase/thrift
sudo mkdir /var/www/hbase/thrift/packages
sudo cp -r /home/johnson4932/thrift/hbase_thrift_src/gen-php/* /var/www/hbase/thrift/packages/
sudo cp /home/johnson4932/hbase/src/examples/thrift/DemoClient.php /var/www/hbase/DemoClient.php

編輯 DemoClient.php

sudo vim /var/www/hbase/DemoClient.php

修改以下兩段

$GLOBALS['THRIFT_ROOT'] = '/var/www/hbase/thrift';
$socket = new TSocket( '你的IP', 9090 );

成功的話打開瀏覽器連http://localhost/hbase/DemoClient.php就可以看到內容了

Categories: HadoopLinux

1 Comment

Comments are closed.