ubuntu安装zookeeper、HBase和openTSDB

ubuntu安装zookeeper、HBase和openTSDB

安装配置ZooKeeper
下载链接 http://archive.apache.org/dist/zookeeper/zookeeper-3.4.8/zookeeper-3.4.8.tar.gz ①将下载的zookeeper压缩包解压到/apps目录下
tar -zxf zookeeper-3.4.8.tar.gz -C /home/apps

②进入zookeeper安装包的conf目录下,复制一份zoo_sample.cfg文件到zoo.cfg文件

cp zoo_sample.cfg zoo.cfg

③配置zoo.cfg

img

④创建dataDir对应的目录

因为上一步配置了dataDir的目录此时并不存在,因此需要创建。

进入/home/hadoop目录,执行命令:

mkdir data

⑤进入data文件夹,新建myid文件并且写入 1

vim myid

⑧将master节点上配置好的zookeeper文件传到slave01和slave02节点的/apps目录下

scp -r zookeeper-3.4.8/ slave01:/home/hadoop/apps
scp -r zookeeper-3.4.8/ slave02:/home/hadoop/apps

⑧像步骤④一样,在slave01和slave02节点分别创建dataDir对应的目录,以及创建并编辑myid文件

区别是,myid文件的内容分别改为“2”和“3”,slave01对应2,slave02对应3

⑨在所有机器上分别配置zookeeper环境变量

vim ~/.bashrc

添加如下两行

#zookeeper
export ZOOKEEPER_HOME=/home/hadoop/apps/zookeeper-3.4.8
export PATH=$PATH:$ZOOKEEPER_HOME/bin

⑩在每台机器上都运行zookeeper,并查看状态

zkServer.sh start
zkServer.sh status

status状态会根据集群启动情况动态选举leader和follower。

jps查看进程,看到所有节点都有QuorumPeerMain进程

img

注意:zookeeper的启动顺序不需要按照myid值的顺序依次启动。

如果觉得每次启动zookeeper集群都有在所有节点上执行start命令比较麻烦,可以参考下面链接进行设置,这样只需要在master节点的相关目录下执行startzk.sh即可启动集群。

https://blog.csdn.net/loopeng1/article/details/79012989

安装配置HBase

HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制。

1、环境配置
下载链接 http://archive.apache.org/dist/hbase/1.2.5/hbase-1.2.5-bin.tar.gz
创建目录,将下载好的压缩包上传并解压

tar -zxvf hbase-1.2.5-bin.tar.gz -C /home/hadoop/apps
vim ~/.bashrc
#hbase
export HBASE_HOME=/home/hadoop/apps/hbase-1.2.5
export PATH=$PATH:$HBASE_HOME/bin
source ~/.bashrc

2、修改hbase-env.sh文件

cd hbase-2.1.1/conf
vim hbase-env.sh 
export JAVA_HOME=/usr/lib/jvm/default-java
export HBASE_LOG_DIR=${HBASE_HOME}/logs 
export HBASE_MANAGES_ZK=false

3、修改hbase-site.xml 文件

vim hbase-site.xml 
<configuration>
<property> 
    <name>hbase.rootdir</name> 
    <value>hdfs://master:9000/hbase</value> 
  </property> 
  <property> 
    <name>hbase.cluster.distributed</name> 
    <value>true</value> 
  </property> 
  <property> 
    <name>hbase.zookeeper.quorum</name> 
    <value>master,slave01,slave02</value> 
  </property> 
  <property> 
    <name>hbase.zookeeper.property.dataDir</name> 
    <value>/home/hadoop/apps/zookeeper-3.4.8/data</value> 
  </property> 
  <property>
    <name>hbase.tmp.dir</name>
    <value>/home/hadoop/apps/hbase-1.2.5/data/tmp</value>
  </property>
  <property> 
    <name>hbase.master</name> 
    <value>hdfs://master:60000</value> 
  </property>
  <property>
    <name>hbase.master.info.port</name>
    <value>16010</value>
  </property>
  <property>
    <name>hbase.regionserver.info.port</name>
    <value>16030</value>
  </property>
</configuration>

4、修改regionservers文件

vim regionservers 
master
slave1
slave2

5、其他两个子节点的配置

把上面配置好的hbase整个文件夹传过去

scp -r zookeeper-3.4.8/ slave02:/home/hadoop/apps
scp -r zookeeper-3.4.8/ slave01:/home/hadoop/apps

别忘在另外两个节点也要配置环境变量并source一下使生效!

在所有节点上都手动创建/home/hadoop/apps/zookeeper-3.4.8/data/tmp目录,也就是上面配置文件中hbase.tmp.dir属性的值,用来保存临时文件的。

注意:测试Hbase之前,zookeeper和hadoop需要提前启动起来

cd hbase/hbase-2.1.1
start-hbase.sh   
 jps

正确结果:主节点上显示:HMaster / 子节点上显示:HRegionServer

在这里插å¥å›¾ç‰‡æè¿°
在主机浏览器上访问:http://219.216.72.113:16010

到此为止,Hbase配置就结束了。

安装配置openTSDB
首先需要安装一些依赖
#gnuplot
sudo apt install gnuplot
#gnuplot-x11
sudo apt install gnuplot-x11
#autoconf
sudo apt install autoconf
#git
sudo apt install git
#make
sudo apt install make

1.下载安装包,如果git速度太慢,直接到github下载zip文件

git clonegit://github.com/OpenTSDB/opentsdb.git

2.执行build

cd ~/apps/opentsdb
./build.sh

3、 初始化数据库

env COMPRESSION=NON EHBASE_HOME=/home/hadoop/apps/hbase-1.2.5 ./src/create_table.sh

这里出现错误

create 'tsdb',
  {NAME => 't', VERSIONS => 1, COMPRESSION => 'NONE', BLOOMFILTER => 'ROW', DATA_BLOCK_ENCODING => 'DIFF', TTL => 'FOREVER'}

ERROR: For input string: "FOREVER"

开始没注意到这个错误,导致后面启动的时候总是出错

Exception in thread "main" java.lang.RuntimeException: Initialization failed
	at net.opentsdb.tools.TSDMain.main(TSDMain.java:237)
Caused by: com.stumbleupon.async.DeferredGroupException: At least one of the Deferreds failed, first exception:
......
Caused by: org.hbase.async.TableNotFoundException: "tsdb"
	at org.hbase.async.HBaseClient$12.call(HBaseClient.java:3032)
	at org.hbase.async.HBaseClient$12.call(HBaseClient.java:3029)
	... 34 more

解决办法

建表语句不被hbase认可(我安装的是hbase-1.2.5版本),那么去掉FOREVER或者修改其值为2147483647

grep -C 3 --color "TSDB_TTL" ./src/create_table.sh

vim create_table.sh

TSDB_TTL=${TSDB_TTL-'FOREVER'} 改成 TSDB_TTL=${TSDB_TTL-'2147483647'}

然后在hbase shell中查看表

hbase shell

hbase(main):001:0> list
TABLE                                                                           
tsdb                                                                            
tsdb-meta                                                                       
tsdb-tree                                                                       
tsdb-uid                                                                        
4 row(s) in 0.0900 seconds

然后在执行后面的语句就不会出错了

4、 创建缓存目录

mkdir cachetsdb

5、 启动OpenTSDB。

cd ./build
./tsdb tsd --port=4242 --staticroot=staticroot --cachedir=/home/hadoop/apps/opentsdb/cachetsdb --zkquorum=master,slave01,slave02
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值