首页 > 其他分享 >一、Hbase的安装

一、Hbase的安装

时间:2022-11-29 14:06:36浏览次数:65  
标签:hdfs ntp zookeeper hadoop master Hbase 安装 hbase

一、Hbase配置

一、Hbase的安装_zookeeper

这个是我从网上找的一个版本,网上说配置成功。

先决条件:

(1)hadoop的版本与hbase的版本要对应,主要是hadoop目录下的hadoop-core-1.0.4.jar的版本与hbase的lib目录下的hadoop-core-1.0.4.jar一致。

做法:将hadoop中lib下的hadoop-core-1.0.2.jar(commons-configuration-1.6.jar包)(此包我未移动,但是最后也成功啦)移动到hbase-0.90.5中的lib下面,而hbase-0.90.5中lib目录下的对应的hadoop-core.jar包文件删除掉即可。

(2)配置apache hadoop append,默认这个属性是false,需要设置为true

修改(hadoop/conf/hdfs-site.xml),并重启HDFS(或者重启Hadoop也行)

<property>

  <name>dfs.support.append</name>

  <value>true</value>

</property>

(3)Linux时间同步配置使用 Network Time Protocol (NTP) 服务器


1. 假如公司网络里有一个时间服务器: 10.85.10.80, 此时只需要在每个结点上修改NTP 服务配置文件,让每个结点和时间服务器进行同步即可。 


# vi /etc/ntp.conf

Server 10.85.10.80 prefer

Driftfile /var/lib/ntp/drift

Broadcastdelay 0.008


修改完后在重启一下 ntp 服务

#/etc/init.d/ntpd restart



2. 如果没有时间服务,则可以用RAC 2个结点中一个做为服务器。另一个与此服务器同步即可。 

加入用node1 做服务器, 其IP 为: 10.85.10.119, 修改配置文件


#vi /etc/ntp.conf

Server 127.127.1.0  -- 本地时钟

Fudge 127.127.1.0 stratum 11

Broadcastdelay 0.008


Node2 与node1 同步。 


修改node2的ntp 配置文件


# vi /etc/ntp.conf

Server 10.85.10.119 prefer

Driftfile /var/lib/ntp/drift

Broadcastdelay 0.008


修改完后在重启一下 ntp 服务

#/etc/init.d/ntpd restart


或者在node2是使用crontab 与服务器同步时间

*/15 * * * * ntpdate 10.85.10.119 

 

1.配置全局hbase-env.sh

配置hbase/conf/hbase-env.sh


​​JAVA_HOME=/usr/java/jdk1.6.0_21 #这个是我的java路径
export HBASE_MANAGES_ZK=true #hbase要用zookeeper来进行管理​​

2、配置hbase-site.xml


​​<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.master</name> ​​
​​<value>hdfs://master:60000</value> ​​
​​</property> ​​


​​<property> ​​
​​<name>hbase.zookeeper.quorum</name> ​​
​​<value> master,slave1,slave2</value> ​​
​​<description>Comma separated list of servers in the ZooKeeper Quorum. For example, "host1.mydomain.com,host2.mydomain.com,host3.mydomain.com". By default this is set to localhost for local and pseudo-distributed modes of operation. For a fully-distributed setup, this should be set to a full list of ZooKeeper quorum servers. If HBASE_MANAGES_ZK is set in hbase-env.sh this is the list of servers which we will start/stop ZooKeeper on. </description> ​​
​​</property> ​​
​​<property> ​​
​​<name>hbase.zookeeper.property.dataDir</name> ​​
​​<value>/data/work/zookeeper</value> ​​
​​<description>Property from ZooKeeper's config zoo.cfg. The directory where the snapshot is stored. </description> ​​
​​</property>​​


​​<property>​​
​​<name>hbase.zookeeper.property.clientPort</name>​​
​​<value>2181</value>​​
​​</property>​​
​​<property>​​
​​ <name>zookeeper.session.timeout</name>​​
​​ <value>1200000</value>​​
​​</property>​​
​​<property>​​
​​ <name>hbase.zookeeper.property.tickTime</name>​​
​​ <value>6000</value>​​
​​</property>​​

说明:

(1)hbase.rootdir设置hbase在hdfs上的目录,主机名为hdfs的namenode节点所在的主机。尤其注意:<value>hdfs://master:9000/hbase</value>的值“hdfs://master:9000”与hadoop/conf/hdfs-site.xml中设定的值要完全一样,hdfs://master:9000/hbasehbase的目录名为hbase,目录名可以自定义。
(2)hbase.cluster.distributed设置为true,表明是完全分布式的hbase集群 
(3)hbase.master设置hbase的master主机名和端口 
(4)hbase.zookeeper.quorum设置zookeeper的主机,建议使用单数。<value> master,slave1,slave2</value>指明在master,slave1,slave2这三台主机上运行zookeeper
(5)设定hbase.zookeeper.property.clientPort,把zookeeper.session.timeout的值调大,设定hbase.zookeeper.property.tickTime的值,从而使zookeeper运行更加稳定。
(6)hbase中使用主机名,而不是IP地址标识主机。因此需要修改hosts文件,建立各主机名与IP地址的对应关系。

[使用root权限]  vi /etc/hosts ,指明主机名称与IP地址的对应关系,因为我的实验环境包含了三个结点:master,slave1,slave2,所以我需要添加的内容如下:

192.168.100.128 master

192.168.100.156 slave1

192.168.100.159 slave2

3.修改hadoop的目录下的conf/hdfs-site.xml

<property> 

<name>dfs.datanode.max.xcievers</name> 

<value>4096</value> 

</property>

 

4.修改hbase/conf/regionservers 

将所有的datanode添加到这个文件,类似与hadoop中slaves文件。因为我想在“master,slave1,slave2”这三个结点上运行HRegionServer,所以,我的hbase/conf/regionservers 的内容为:

master

slave1

slave2

5.拷贝hbase到所有的节点,也就是说,步骤1-4在所有hbase结点上的配置是相同的。

6. 启动Hbase之前,确保hadoop已经正常启动并运行。

可以使用jps命令查看master上是否存在NameNode服务,slave上是否存在DataNode服务。

然后启动hbase 

$ ./bin/start-hbase.sh

注意事项:防火墙会阻挡访问hbase和zookeeper的网络连接,zookeeper若被防火墙阻挡,就会死掉,导致Hbase死掉。因此,需要配置iptables,允许相关端口的数据包通过,或者在测试阶段,直接先将iptables防火墙停掉:/sbin/service iptables stop  【停止iptables需要root权限】比较方便。

7 检查Hbase是否正常启动。

(1)在master上运行jps,会看到HMaster、HRegionServer和HQuorumPeer。

[user@master ~]$ jps

26023 HRegionServer

26615 Jps

15276 DataNode

15140 NameNode

25724 HQuorumPeer

15596 TaskTracker

25835 HMaster

15441 JobTracker


(2)在slave上运行jps,会看到HRegionServer和HQuorumPeer。

[user@slave2 ~]$ jps

10735 DataNode

13226 HQuorumPeer

10854 TaskTracker

13383 HRegionServer

19594 Jps

(3)其它方式:hbase自带的web界面

​​http://master:60010/​​

​当我们在浏览主页的时候提示:You are currently running the HMaster without HDFS append support enabled. This may result in data loss. Please see the ​​HBase wiki​​ for details.

查看了hdfs-default.xml中,看到如下说明,Hadoop-0.20.2版本有bug不能支持HDFS 追加功能,因此只能作罢。 如果你用的是其他版本可能就不会有!
<property>
  <name>dfs.support.append</name>
  <value>false</value>
  <description>Does HDFS allow appends to files?   是否允许HDFS追加文件呢
               This is currently set to false because there are bugs in the   当前设置为false因为有bug
               "append code" and is not supported in any production cluster. 所以不支持任何集群
  </description>
</property>

 

二、Hbase的安装命令

hbase中删除操作

1.删除一个regionServer

在需要删除的RegionServer上执行以下命令:$ ./bin/hbase-daemon.sh stop regionserver  RegionServer将会关掉所有的region,然后此节点将会在Zookeeper消失。Master注意到了此RegionServer 掉了,它将会重新分配掉的这些Region。在停掉一个节点的时候,注意要关闭Load Balancer,因为Load Balancer可能要和Master的恢复机制争夺停掉的RegionServer。



作者:少帅




标签:hdfs,ntp,zookeeper,hadoop,master,Hbase,安装,hbase
From: https://blog.51cto.com/u_15683012/5894904

相关文章

  • 四、Hbase
    一、什么情况下使用Hbase例子:这里OrderBy无时不刻的处理,我们要看到刚才的足迹,不能使用缓存技巧。根据时间戳来查询,显然很快,应为Hbase就是以时间戳来存的。将最近的数据放......
  • 源码、二进制安装MySQL5.7.39
    源码、二进制安装MySQL5.7.391.源码安装源码安装包下载链接https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.39.tar.gz1.1安装依赖包yum-yinstallw......
  • 下载kali以及安装
    一、kali下载下载地址:https://www.kali.org/get-kali/#kali-virtual-machines二、kali安装1、打开VMware,打开文件,选择刚刚下载并解压的文件2.启动虚拟机用户名和密......
  • tcpdum离线安装(alios8版)
    一、下载rpm包链接:https://pan.baidu.com/s/11eTaFi5fGNtSI_RfPrQtcQ提取码:tl8q二、执行安装命令rpm-ivhtcpdump-4.9.3-3.el8.x86_64.rpm ......
  • Sqoop的介绍和安装
    sqoop下载地址:https://share.weiyun.com/woVbfnfS或者 https://archive.apache.org/dist/sqoop/1.99.7/Sqoop简介 sqoop是apache旗下一款“Hadoop和关系数据库服......
  • docker离线安装手册
    docker下载链接:https://download.docker.com/linux/static/stable/x86_64/ 解压:tarxfdocker-20.10.9.tgz 拷贝命令到指定目录:cp-a*/usr/bin/ 编写docker......
  • linux 下安装以及配置postgresql
    1、准备好资源 下载 PostgreSQL官网下载地址  ​​https://www.postgresql.org/ftp/source/v12.2/​​​  我这里下载的是 ​​postgresql-12.2.tar.gz​​ 压缩包......
  • vue3-vite下tailwindcss安装与配置
    初始化TailwindCSS安装Tailwind以及其它依赖项:npminstall-Dtailwindcss@latestpostcss@latestautoprefixer@latest一、创建您的配置文件接下来,生成您的 t......
  • 用服务器安装电脑教程 远程连接
    教程方法;准备1.服务器一台注:购买时可选一下要用的系统2.RD客户端APP这以在某个平台买的服务器为例子!服务器出售地址www.zywln.cnRD客户端APP下载https://wwt.lan......
  • ETL工具---Kettle介绍、安装
    数据归集是把在多数据源的数据汇聚、整理、清洗、转换后,加载到一个新的数据源,为数据使用者提供统一数据视图的数据集成方式。数据归集数据归集是共享或者合并来自于两个或者......