HBase Master高可用(HA)
HMaster没有单点问题,HBase中可以启动多个HMaster,通过Zookeeper的Master Election机制保证总有一个Master运行。
所以这里要配置HBase高可用的话,只需要启动两个HMaster,让Zookeeper自己去选择一个Master Acitve。
HBase配置:
在$HBASE_HOME/conf目录下
1.hbase-site.xml
export HBASE_OPTS="$HBASE_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode"
export JAVA_HOME=/usr/java/jdk1.7.0_60
export HBASE_MANAGES_ZK=false
export HADOOP_HOME=/data/hadoop-2.6.0
export HBASE_LOG_DIR=/data/hadoop/hbase/logs
一个分布式运行的Hbase依赖一个zookeeper集群。所有的节点和客户端都必须能够访问zookeeper。默认的情况下Hbase会管理一个zookeep集群。这个集群会随着Hbase的启动而启动。当然,你也可以自己管理一个zookeeper集群,但需要配置Hbase。你需要修改HBASE_MANAGES_ZK 来切换。这个值默认是true的,作用是让Hbase启动的时候同时也启动zookeeper.
让Hbase使用一个现有的不被Hbase托管的Zookeep集群,需要设置 HBASE_MANAGES_ZK 属性为 false
2.hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://appcluster/hbase</value>
<description>The directory shared by RegionServers.</description>
</property> <property>
<name>hbase.master</name>
<value>60000</value><!--这里注意了,只需端口即可,不必再写主机名称了!-->
</property> <property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop001,hadoop002,hadoop003</value>
</property> <property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property> <property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/data/hadoop/zookeeper</value>
</property> <property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property> <property>
<name>hbase.tmp.dir</name>
<value>/data/hadoop/hbase/tmp</value>
</property>
</configuration>
3.regionservers
添加regionserver的hostname
HBase启动:
在hadoop001上输入启动命令
start-hbase.sh
jps可见:
master (因为之前启动了Hadoop HA,所以会看到很多进程)
23703 NameNode
23968 ResourceManager
24132 DFSZKFailoverController
23813 DataNode
24857 HRegionServer
24723 HMaster
23428 QuorumPeerMain
23522 JournalNode
25448 Jps
24070 NodeManager
regionserver
9832 HRegionServer
8923 QuorumPeerMain
9379 NodeManager
10495 Jps
9197 DataNode
9622 ResourceManager
9006 JournalNode
10436 NameNode
9552 DFSZKFailoverController
在某regionserver上启动Hmaster
hbase-daemon.sh start master
jps:
9832 HRegionServer
8923 QuorumPeerMain
9379 NodeManager
10495 Jps
9197 DataNode
9622 ResourceManager
9006 JournalNode
10005 HMaster
10436 NameNode
9552 DFSZKFailoverController
这个时候就可以看到HMaster启动了。
如何区分哪个是Active哪个是standby呢,看log
hbase的log中可以看到
2015-08-07 14:00:14,765 INFO [hadoop002:60000.activeMasterManager] master.ActiveMasterManager: Another master is the active master, hadoop001,60000,1438927191790; waiting to become the next active master
这样就可以判断哪台是Active了
HBase Master高可用(HA)的更多相关文章
- HBase的高可用(HA)
在公司写文档时候查到的一些资料,感觉对自己很有帮助,现在整理如下: 介绍 HBase是一个高可靠性.高性能.列存储.可伸缩.实时读写的分布式数据库系统,基于列的存储模式适合于存储非结构化数据. 适用场 ...
- 使用kubeadm进行单master(single master)和高可用(HA)kubernetes集群部署
kubeadm部署k8s 使用kubeadm进行k8s的部署主要分为以下几个步骤: 环境预装: 主要安装docker.kubeadm等相关工具. 集群部署: 集群部署分为single master(单 ...
- corosync+pacemaker实现高可用(HA)集群
corosync+pacemaker实现高可用(HA)集群(一) 重要概念 在准备部署HA集群前,需要对其涉及的大量的概念有一个初步的了解,这样在实际部署配置时,才不至于不知所云 资源.服务与 ...
- Corosync+Pacemaker+DRBD+MySQL 实现高可用(HA)的MySQL集群
大纲一.前言二.环境准备三.Corosync 安装与配置四.Pacemaker 安装与配置五.DRBD 安装与配置六.MySQL 安装与配置七.crmsh 资源管理 推荐阅读: Linux 高可用(H ...
- K8S集群Master高可用实践
K8S集群Master高可用实践 https://blog.51cto.com/ylw6006/2164981 本文将在前文基础上介绍k8s集群的高可用实践,一般来讲,k8s集群高可用主要包含以 ...
- 浅谈web应用的负载均衡、集群、高可用(HA)解决方案(转)
1.熟悉几个组件 1.1.apache —— 它是Apache软件基金会的一个开放源代码的跨平台的网页服务器,属于老牌的web服务器了,支持基于Ip或者域名的虚拟主机,支持代理服务器,支持安 ...
- hadoop在zookeeper上的高可用HA
(参考文章:https://www.linuxprobe.com/hadoop-high-available.html) 一.技术背景 影响HDFS集群不可用主要包括以下两种情况:一是NameNode ...
- Hadoop 高可用(HA)的自动容灾配置
参考链接 Hadoop 完全分布式安装 ZooKeeper 集群的安装部署 0. 说明 在 Hadoop 完全分布式安装 & ZooKeeper 集群的安装部署的基础之上进行 Hadoop 高 ...
- 【高可用HA】Nginx (1) —— Mac下配置Nginx Http负载均衡(Load Balancer)之101实例
[高可用HA]Nginx (1) -- Mac下配置Nginx Http负载均衡(Load Balancer)之101实例 nginx版本: nginx-1.9.8 参考来源: nginx.org [ ...
随机推荐
- C#关于操作符重载与转换
随便写写 首先,假设我们有一个Person类型 其类型定义如下 class Person { public string Name { get; set; } = "Person" ...
- IDEA 2019注册码
N757JE0KCT-eyJsaWNlbnNlSWQiOiJONzU3SkUwS0NUIiwibGljZW5zZWVOYW1lIjoid3UgYW5qdW4iLCJhc3NpZ25lZU5hbWUiO ...
- oracle数据同步
随着各行业信息化水平的不断提升,各种各样的信息管理系统都被广泛使用,各系统间数据完全独立,形成了大量的信息孤岛.出于管理及决策方面的需求,实现各平台的数据同步是一个很迫切的需求,TreeSoft数据库 ...
- properties配置文件编码问题
properties配置文件编码问题 person.last-name=哈哈 person.age=18 person.bitrh=2019/01/12 person.boss=false perso ...
- CSS选择器深入探讨(细节东西)(转)
细节决定成败,越是注重细节方面的东西,那么你完成的作品就越完美. 1.父子选择器(看作组合比较好理解) 父子选择器可以有多级(但是在实际开发中最后不好超过三层) 如:html中文件片段: <!- ...
- try,except用法
lst = ["皇阿玛", "皇额娘", "容嬷嬷", "紫薇"] # 模拟for循环 it = lst.__iter_ ...
- javaweb jdbc实现简单的数据库基本操作和servlet的作用域以及jsp标签的使用
一,工具类,分页类和连接数据库jdbc package com.direct.util; import java.sql.Connection; import java.sql.DriverManag ...
- YII使用beanstalk队列
转载于:http://blog.csdn.net/yao970953039/article/details/41821387 1.系统centos 我是直接使用yum install beanstal ...
- linux 用户管理 groupadd、groupmod、groupdel、gpasswd
添加用户组groupadd [选项] 组名 /usr/sbin/groupadd执行权限:root一个用户可以属于多个所属组,但有一个缺省组,和用户名同名-g GID:指定组ID 修改用户组 grou ...
- 实现自定义Session
1. 回话状态接口 /// <summary> /// 会话状态策略接口 /// </summary> public partial interface ISessionStr ...