1、thrift 的作用:
在ubuntu下安装了hbase后,如果想用其他语言连接调用hbase,需要用到Thrift这一中间件。
2、thrift的安装:
2.1、获取thrift的方式有两种:
第一种下载源代码发行包:thrift.apache.org/download
笔者使用的是thrift-0.8.0.tar.gz
将压缩包解压后放到/home/hadoop/目录下:
tar xvf thrift-0.8.0.tar.gz
mv thrift-0.8.0/ /home/hadoop/
cd /home/hadoop/
第二种是下载git上源代码
git clone https://git-wip-us.apache.org/repos/asf/thrift.git thrift
cd thrift
2.2、通过thrift-0.8.0.tar.gz发行包安装thrift
安装前需要安装依赖包:
进入terminal:输入
sudo apt-get install libboost-dev libboost-test-dev libboost-program-options-dev libboost-system-dev libboost-filesystem-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev
根据想要使用的语言,安装对应的软件包:
Ruby
ruby-full ruby-dev ruby-rspec rake rubygems libdaemons-ruby libgemplugin-ruby mongrel
Python
python-all python-all-dev python-all-dbg
Perl
libbit-vector-perl libclass-accessor-class-perl
Php, install
php5-dev php5-cli phpunit
C_glib
libglib2.0-dev
Erlang
erlang-base erlang-eunit erlang-dev
Csharp
mono-gmcs mono-devel libmono-system-web2.0-cil nunit nunit-console
Haskell
ghc6 cabal-install libghc6-binary-dev libghc6-network-dev libghc6-http-dev
Thrift Compiler for Windows
mingw32 mingw32-binutils mingw32-runtime nsis
譬如笔者就使用PHP与hbase进行通信,所以
再terminal输入:
sudo apt-get install php5-dev php5-cli phpunit
安装后生成配置脚本:
进入thrift目录:
cd /home/hadoop/thrift-0.8.0
./configure
部分日志输出:
thrift 0.8.0
Building code generators ..... :
Building C++ Library ......... : yes
Building C (GLib) Library .... : no
Building Java Library ........ : yes
Building C# Library .......... : no
Building Python Library ...... : yes
Building Ruby Library ........ : no
Building Haskell Library ..... : no
Building Perl Library ........ : no
Building PHP Library ......... : yes
Building Erlang Library ...... : no
Building Go Library .......... : no
Building TZlibTransport ...... : yes
Building TNonblockingServer .. : yes
Using javac .................. : javac
Using java ................... : java
Using ant .................... : /usr/bin/ant
Using Python ................. : /usr/bin/python
Using php-config ............. : /usr/bin/php-config
If something is missing that you think should be present,
please skim the output of configure to find the missing
component. Details are present in config.log.
thrift需要本地编译与安装
#编译thrift
make
sudo make install
(笔者在编译和安装thrift过程中,出现了php编译安装的错误和警告,但貌似不影响使用,所以笔者就没有深究,知道原因的小伙伴可以告知笔者。)
2.3、通过git源码安装thrift
//进入thrift目录
cd /home/hadoop/thrift
<pre><code>// 产生配置脚本
./bootstrap.sh
// 生成配置信息
./configure
// 编译Thrift
make
// 安装Thrift
sudo make install</code>
2.4、查看thrift版本
thrift -version
//输出
//Thrift version 0.8.0
安装成功
2.5、启动thrift//进入hbase目录
cd /home/hadoop/hbase-0.98
//启动thrift
bin/hbase-daemon.sh start thrift
8907 SecondaryNameNode
9519 HRegionServer
9288 HQuorumPeer
30061 Jps
9355 HMaster
8716 DataNode
8554 NameNode
29985 ThriftServer
//关闭thrift
<pre name="code" class="plain">bin/hbase-daemon.sh stop thrift
ThriftServer 成功启动~~