设为首页 收藏本站
查看: 1558|回复: 0

[经验分享] hbase 集群部署

[复制链接]

尚未签到

发表于 2019-1-9 07:41:58 | 显示全部楼层 |阅读模式
Hhase 集群部署

使用的软件
hadoop-2.7.4
hbase-1.2.6
jdk-8u144
zookeeper-3.4.10
Hbase 自带的有zookeeper,在这里使用自己部署的zookeeper  
zookeeper 集群部署

安装jdk
下载zookeeper 程序
修改zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataLogDir=/zookeeper/logs
dataDir=/zookeeper/data
clientPort=2181
server.1= 10.39.6.178:2888:3888
server.2= 10.39.6.179:2888:3888
server.3= 10.39.6.180:2888:3888
添加myid,这里的myid 对应的server.n 一一对应。
这里的server.1 所以node 1节点myid=1  
echo "1" /zookeeper/data/myid
创建所需要的目录
添加环境变量
vi /etc/profile
export ZOOKEEPER_HOME=/application/zookeeper-3.4.10
export PATH=$PATH:$ZOOKEEPER_HOME/bin  
  启动

将node 1 的配置全部打包拷贝到其他节点上,启动zookeeper 就行了
启动有错误可以使用zkServer.sh start-foreground 来追踪错误
  角色

zkServer.sh status 会显示zookeeper 状态
Mode: leader
这里的Mode: leader 和follower
一个集群中只有leader
leader 领导者,用于负责进行投票的发起决议,更新系统状态
follower 跟随者 用于接受客户端请求并想客户端返回结果,在选主过程中参与投票
  配置参数详解

tickTime 这个时间是作为zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是说每个tickTime 时间就会发送一个心跳。
initLimit 这个配置项是用来配置zookeeper接受客户端初始化连接时最长能忍受多少个心跳时间间隔数。
当已经超过10个心跳的时间(tickTime) 长度后zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败,总的时间长度就是10*2000=20秒
syncLimit 这个配置项标识leader 与follower 之间发送消息,请求和应答时间长度,最长不能超过多少个tickTime 的长度,总的时间长度是5*2000=10秒
dataDir 保存数据目录
clientPort 端口,这个端口是客户端连接zookeeper服务器端口,zookeeper 会监听这个端口接受客户端访问请求
server.n=B:C:D 的n是一个数字,表示这个是第几号服务器,B是这个服务器的IP地址,C第一个端口用来集群成员的信息交换,表示这个服务器与集群中的leader 服务器交换信息的端口,D是leader 挂掉时专门用来进行选举leader 所用的端口
  连接zookeeper集群
zkCli.sh  -server 10.39.6.178:2181

Hadoop 安装
  下载地址 [http://apache.fayea.com/hadoop/common/stable/hadoop-2.7.4.tar.gz]()

hbase01 到hbase02   hbase03 需要使用ssh无密钥登录。
hadoop 配置文件


配置文件
配置对象
主要内容




core-site.xml
集群全局参数
用户定义系统级别的参数,如HDFS URL Hadoop临时目录


hdfs-site.xml
HDFS 参数
如名称节点和数据节点存放位置,文件副本的个数,文件读取权限


mapred-site.xml
Mapreduce参数
包括JobHistry Server 和应用程序参数两部分,如reduce 任务的默认个数,任务所能够使用内存的默认上下限


yarn-site.xml
集群资源管理系统参数
包括ResourceManager,NodeManager 的通信端口,web 监控端口等

集群配置
vi /application/hadoop-2.7.4/etc/hadoop/hadoop-env.sh

export  JAVA_HOME="/usr/java/jdk1.8.0_144"
(rpm 安装的jdk 存储位置)
vi /application/hadoop-2.7.4/etc/hadoop/core-site.xml

  

fs.defaultFS
hdfs://hbase01:9000
The name of the default file system


hadoop.tmp.dir
/zookeeper/hadoopdata/tmp
A base for other temporary directories


hadoop.native.lib
true
Should native hadoop libraries, if present, be used.


vi /application/hadoop-2.7.4/etc/hadoop/hdfs-site.xml



dfs.replication
3


dfs.namenode.name.dir
/zookeeper/hadoopdata/dfs/name


dfs.datanode.data.dir
/zookeeper/hadoopdata/dfs/data


vi /application/hadoop-2.7.4/etc/hadoop/mapred-site.xml

   

mapreduce.framework.name
yarn

     
vi /application/hadoop-2.7.4/etc/hadoop/yarn-site.xml

   

yarn.resourcemanager.hostname
hbase01


yarn.nodemanager.aux-services
mapreduce_shuffle


vi /application/hadoop-2.7.4/etc/hadoop/slaves

     hbase02
hbase03
将所有的配置COPY 到hbase02 hbase03

格式化HDFS存储

1. 在namenode 上执行
进入到hadoop 目录
./bin/hadoop namenode -format   
2. 在datanode
./bin/hadoop datanode -format
启动Hadoop

  1. 启动HDFS
./sbin/start-dfs.sh
./sbin/stop-dfs.sh
2. 启动Yarn
./sbin/start-yarn.sh
./sbin/stop-yarn.sh
3.启动MapReduce JobHistory Server
./sbin/mr-jobhistory-daemon.sh  start historyserver   
jps 查看进程
jps
12016 ResourceManager
11616 NameNode
11828 SecondaryNameNode
12317 JobHistoryServer
31453 Jps
web 访问端口

  NameNode    50070
ResourceManager 8088
MapReduce JobHistory Server 19888
Hbase 安装

hbase 配置文件修改
vi conf/hbase-env.sh  
export JAVA_HOME=/usr/java/jdk1.8.0_144
export HBASE_MANAGES_ZK=false      
vi conf/hbase-site.xml


hbase.cluster.distributed
true


hbase.rootdir
hdfs://hbase01:9000/hbase


hbase.zookeeper.quorum
hbase01,hbase02,hbase03


hbase.zookeeper.property.dataDir
/zookeeper/data


vi conf/regionservers
hbase02
hbase03
将上述配置同步到其他节点
hbase 启动

  ./bin/start-hbase.sh
查看Hbase 的状态
jps
12016 ResourceManager
11616 NameNode
12546 HMaster
10403 QuorumPeerMain
11828 SecondaryNameNode
21225 Jps
12317 JobHistoryServer
进入hbase shell,使用命令查看hbase 状态

./bin/hbase shell
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/application/hbase-1.2.6/lib/slf4j-l
HBase Shell; enter 'help' for list of supported commands.
Type "exit" to leave the HBase Shell
Version 1.2.6, rUnknown, Mon May 29 02:25:32 CDT 2017
hbase(main):001:0> status
1 active master, 0 backup masters, 2 servers, 0 dead, 1.0000 average load
hbase(main):002:0>
Hbase web ui 端口为16010



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-660929-1-1.html 上篇帖子: 为什么不应该使用ZooKeeper做服务发现 下篇帖子: zookeeper3.3.3源码分析(一)工作原理概述
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表