Hbase集群

Hbase集群

Hadoop + zookeeper +hbase   总共三台

Hadoop

10.75.3.15/16/17

Rhel7

Zookeeper

10.75.3.15/16/17

Rhel7

Hbase

10.75.3.15/16/17

Rhel7

 

一安装JDK

         配置JDK环境

修改系统JDK版本/etc/profile

export JAVA_HOME=/opt/java/jdk1.8.0_162

export JAVA_BIN=/opt/java/jdk1.8.0_162/bin

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME JAVA_BIN PATH CLASSPATH

 

二、Zookeeper安装

1、安装三台

配置hosts解析(这里hadoop配置以及配置了) 

解压zookeeper至/app/Hadoop/下

2、修改住配置文件

 

cd /app/hadoop/zookeeper-3.4.6/conf

mv zoo_sample.cfg zoo.cfg

在配置文件中添加         zk

dataDir=/app/hadoop/zookeeper-3.4.6/data          存储数据地址也就是myid存放地址

dataLogDir=/app/hadoop/zookeeper-3.4.6/logs             log日志存放目录

server.1=server1:2888:3888            这里server可以换成ip也行

server.2=server2:2888:3888

server.3=server3:2888:3888                                       

 

echo “1” > /app/hadoop/zookeeper-3.4.6/data/myid              这里myid三台都需要修改但不能相同

解压后吧文件拷贝至server2级server3就行

 

三、安装hadoop

1、三台都需要修改主机名及ssh免密

hostnamectl set-hostsname server1

hostnamectl set-hostsname server2

hostnamectl set-hostsname server3

vim /etc/hosts

10.75.3.15      server1

10.75.3.16      server2

10.75.3.17      server3

配置ssh免密

ssh-keygen        后回车

ssh-copy-id server1:

ssh-copy-id server2:

ssh-copy-id server3:

这里需要手动登陆第一次

如果不想用命令就手工拷贝每台主机的id_rsa.pub内容至authorized_keys文件中

2、安装hadoop

         mkdir /app/Hadoop/

         下载hadoop包至该目录

         tar xvf hadoop-2.5.1.tar.gz

         修改hadoop配置文件

cd /app/hadoop/hadoop/etc/Hadoop

 

配置jdk  vim hadoop-env.sh              

export JAVA_HOME=/opt/java/jdk1.8.0_191

 

配置core  vim core-site.xml        

<configuration>

  <property>

<name>fs.default.name</name>

         <value>hdfs://server1:9000</value>

  </property>

  <property>

<name>hadoop.tmp.dir</name>

<value>/app/hadoop/hadoop/tmp</value>

  </property>

  <property>

<name>io.file.buffer.size</name>

<value>13170</value>

  </property>

</configuration>

第一项指定文件系统为 server 1节点 9000 端口上的 HDFS,第二项指定 hadoop 所有数据的保 存路径(该路径要存在),该项默为/tmp/hadoop-{username},系统重启可能会导致数据丢失。

配置mapred  vim mapred-site.xml    

<configuration>

  <property>

    <name>mapred.job.tracker</name>

    <value>server1:9001</value>

  </property>

  <property>

    <name>mapred.map.java.opts</name>

    <value>-Xmx256m</value>

  </property>

  <property>

    <name>mapred.child.java.opts</name>

    <value>-Xmx256m</value>

  </property>

</configuration>

第一项指定 JobTracker 的服务端口为 node0 的 9001 端口,第二、三项设定 jvm 堆空间,防 止运行 Map-Reduce 作业时出现内存不足,这两项要根据实际的需要和系统空闲的内存容量设定

配置hdfs  vim hdfs-site.xml

<configuration>

  <property>

    <name>dfs.replication</name>

    <value>3</value>

  </property>

  <property>

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

    <value>true</value>

  </property>

  <property>

    <name>dfs.permissions</name>

    <value>false</value>

  </property>

  <property>

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

    <value>4096</value>

  </property>

</configuration>

第一项设定了文件系统备份的个数,通常为 3,第二项允许对文件的 append 操作,是为 HBase 设置的,第三项关闭权限检查,方便以后的远程的 hadoop-eclipse 插件访问 hdfs,第四项设 置 DataNode 同时可供访问的文件数上限,由于 HBase 需要同时操作大量的文件,该项至少 要设置为 4096

Masters vim masters

         server1

 

此文件指定 HDFS 的 SecondaryNameNode 所在的节点,本文中该文件只有一行:

配置slaves

         Server1

Server2

Server3

 

把修改的配置文件拷贝至server2及server3中

[root@server1 hadoop]# scp * server2:/app/hadoop/hadoop/etc/hadoop/

[root@server1 hadoop]# scp * server3:/app/hadoop/hadoop/etc/hadoop/

3、启动hadoop检查端口

         进入sbin下执行

第一次安装需先格式化HDFS后启动hadoop

 

 

 

进入bin下执行

 

执行完成后在进入sbin下启动

 

再次刷新页面

 

Hadoop集群启动出现故障,

进入/app/hadoop/hadoop/etc/hadoop下

检查slaves配置文件是否正常、检查hosts是否正常,一般大多为域名修改导致.

四、安装hbase

1、解压hbase文件并拷贝zoo.cfg至hbase配置文件中

cd /app/hadoop

tar –xf hbase-1.3.1-bin.tar

mv hbase-1.3.1 hbase

cd /app/hadoop/hbase/conf

2、编辑hbase-env.sh

export JAVA_HOME=/opt/java/jdk1.8.0_191 定义jdk

注释46行及47行

export HBASE_MANAGES_ZK=false        定义不使用默认zk

3、编辑regionservers

server1

server2

server3

这里为启用61020端口,也就是后面管理端显示的。

4、配置hbase-site.xml

注意:这里hfdshdfs的端口。

<configuration>

        <property>

                <name>hbase.rootdir</name>

                <value>hdfs://server1:9000/hbase</value>

        </property>

                   <!-- 指定hbase是分布式的 -->

        <property>

                <name>hbase.cluster.distributed</name>

                <value>true</value>

        </property>

                   <!-- 指定zk的地址,多个用“,”分割 -->

        <property>

                <name>hbase.zookeeper.quorum</name>

                <value>server1:2181,server2:2181,server3:2181</value>

        </property>

</configuration>

5、启动hbase

cd /app/hadoop/hbase/bin

./start-hbase.sh

6、检查端口并查看web

 

五、hbase启动方式及停止方式

1、启动方式

先启动hadoop ---- >> zk ---- >> hbase

2、停止方式

先停止hbase ---- >> zk ---- >> hadoop

六、异常处理(HDFS异常)

1、异常问题

hdfsslvae节点启动后服务显示正常,但启动端口没有,检查配置文件都正常时

 

1、stop掉服务查看是否有异常。

2、查看log日志是否有异常

3、根据异常查找问题.

 

datanode的clusterID 和 namenode的 clusterID 不匹配。

 

2、解决办法:

1、 打开 hadoop/tmp/dfs/namenode/name/dir 配置对应目录下的 current 目录下的 VERSION 文件,拷贝clusterID;

2、 打开 hadoop/tmp/dfs/datanode/data/dir 配置对应目录下的 current 目录下的 VERSION 文件,用拷贝的 clusterID 覆盖原有的clusterID;

3、 保存后重新启动 hadoop,datanode 进程就能正常启动了。

 

其中个datanode的clusterID与namenode的clusterID需要一致

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值