安装单机habase报错,好像是zookeeper 实现ha问题,单机还需要zookeeper 实现ha么

Hadoop2.6+HA+Zookeeper3.4.6+HBase1.0.0集群安装
Hadoop2.6+HA+Zookeeper3.4.6+HBase1.0.0集群安装过程详细记录。安装hadoop2.6+HA1.准备一台CentOS6.4系统2.环境CentOS6.4 共5台机器名 ip地址 安装软件 运行进程master1 192.168.3.141 hadoop、Zookeeper、hbase NN、RM、DFSZKFC、journalNode、HMaster、QuorumPeerMainmaster2 192.168.3.142 hadoop、Zookeeper、hbase NN、RM、DFSZKFC、journalNode、 HRegionServer、QuorumPeerMainslave1 192.168.3.143 hadoop、Zookeeper、hbase DN、NM、journalNode、HRegionServer、QuorumPeerMainslave2 192.168.3.144 hadoop、Zookeeper、hbase DN、NM、journalNode、HRegionServer、QuorumPeerMainslave3 192.168.3.145 hadoop、Zookeeper、hbase DN、NM、journalNode、HRegionServer、QuorumPeerMain3.此时我们先对第一台机器做修改,其他的后期克隆该机器即可4.修改/etc/hosts文件修改/etc/sysconfig/network5.重启机器或者临时修改hostname6.安装JDK将JDK解压编辑/etc/profile 添加jdk路径保存退出修改CentOS里的java优先级此时JDK已经安装完成7.解压hadoop并修改环境变量8.修改配置文件8.1 修改$HADOOP_HOME/etc/hadoop/slaves文件加入所有slave节点的hostname8.2 修改$HADOOP_HOME/etc/hadoop/hadoop-env.sh文件修改JAVA_HOME路径8.3 修改$HADOOP_HOME/etc/hadoop/yarn-env.sh文件修改JAVA_HOME路径8.4 修改HADOOP H OME/etc/hadoop/core&site.xml文件详见附件8.5修改& HADOOP_HOME/etc/hadoop/hdfs-site.xml文件详见附件8.6 修改HADOOP H OME/etc/hadoop/mapred&site.xml文件详见附件8.7修改& HADOOP_HOME/etc/hadoop/yarn-site.xml文件详见附件(yarn.resourcemanager.ha.id的属性值在master2机器中需要更改为rm2)8.8 添加$HADOOP_HOME/etc/hadoop/fairscheduler.xml文件详见附件8.9 创建相关文件夹根据xml配置文件,建立相应的文件夹此时Hadoop+HA配置文件已经配好,就差ssh免密码登录+格式化Hadoop系统。等我们装完所有软件(Zookeeper+hbase),克隆机器后再进行ssh免密码登录及Hadoop格式化。克隆后还需要更改每个节点的/etc/sysconfig/network中的hostname,以及更改master2中$HADOOP_HOME/etc/hadoop/yarn-site.xml文件的yarn.resourcemanager.ha.id属性值为rm2安装Zookeeper3.4.61.解压Zookeeper2.Zookeeper环境变量的配置添加Zookeeper的路径3.更改配置文件将conf/zoo_sample.cfg改成conf/zoo.cfg然后对zoo.cfg进行更改4.在DataDir路径下创建myid文件根据配置文件的dataLogDir路径创建/soft/zookeeper-3.4.6/var/datalog文件夹创建/soft/zookeeper-3.4.6/var文件夹再创建/soft/zookeeper-3.4.6/var/data文件夹再创建/soft/zookeeper-3.4.6/var/data/myid文件向其中输入数字1 (对应zoo.cfg文件server后的数字)其他节点在克隆后应根据zoo.cfg中对应的值进行更改安装Hbase1.0.01.修改本机配置2.修改配置文件conf/hbase-site.xml详见附件(注意hbase.rootdir的值 用ip地址表示)根据conf/hbase-site.xml中hbase.tmp.dir值来创建文件夹3.创建连接4.编辑regionserver文件5.覆盖hbase中lib文件夹下hadoop*.jar文件(由于后期安装hbase出错,我把所有的hadoop下的jar包都导到hbase/lib下了)如果hbase下的lib文件夹中的zookeeper的jar包与Zookeeper中的jar包也不符,那么也需要替换。至此hbase也安装完了,克隆后需要做的是将集群节点的时间进行统一。克隆机器1.此时机器克隆4份。分别更改其ip地址。图形界面更改ip操作详情见附件。2.ssh免密码登录2.1 更改/etc/sysconfig/network文件2.2生成密钥一路回车即可2.3 复制到公共密钥中2.4 将该机器的公共密钥远程复制到想远程登录的机器中在提示中输入yes、密码2.5 配置双向ssh登录。此时master1已经可以通过ssh登录其他机器了,接下来我们配置所有机器相互无密码登录。我们那其中一台机器slave3举例,其他机器(master2 slave1 slave2)都执行此操作,这里我们就不一一写明。把slave3密钥传到其他所有机器上。根据提示,输入yes、密码在每一台机器上(master2 slave1 slave2 slave3),对其他所有机器都执行此操作。然后在其他机器上将密钥追加到公钥文件末尾。此时就可以双向无密钥登录了。我们可以查看/root/.ssh/authorized_keys文件,就能发现每台机器的密钥。3.更改hadoop配置文件更改master2中$HADOOP_HOME/etc/hadoop/yarn-site.xml文件中:Yarn.resourcemanager.ha.id的属性值为rm24.更改Zookeeper文件更改$ZOOKEEPER_HOME/var/data/myid文件相应的值根据$ZOOKEEPER_HOME/conf/zoo.cfg中的id来更改5.同步时间首先我们确立master1为时间服务器,我们通过配置使其他节点自行与master1进行时间同步。5.1对master1时间服务器进行操作:检查时间服务是否安装更改相关配置文件启动服务检查master1是否和自己同步完成5.2其他机器相对于master1进行时间同步当master1的时间服务器启动3-5分钟后,我们对其他节点进行与master1的时间同步。更改/etc/ntp.conf文件配置将master2的/etc/ntp.conf发送到其他的机器中在其他节点将时间服务开启5.3时间服务设置为开机启动分别在master1 master2 slave1 slave2 slave3执行该命令5.4 在时间服务器上开放端口根据ip地址来输入命令第一次部署+启动hadoop+zookeeper+hbase刚刚安装完hadoop需要部署,再启动。以下是第一次所需的执行,以后再启动就不需要在这么做了。1.启动Zookeeper分别在每个机器上运行命令zkServer.sh start或者在$ZOOKEEPER_HOME/bin目录下运行./zkServer.sh start命令。然后可以通过命令jps来查看Zookeeper启动的进程QuorumPeerMain。可通过zkServer.sh status命令来查看Zookeeper状态。正常是机器中只有一个leader,其他的都是follow2.格式化ZooKeeper集群目的是在ZooKeeper集群上建立HA的相应节点。在master1机器上执行命令他会根据$HADOOP_HOME/etc/hadoop/core-site.xml文件中ha.zookeeper.quorum的值来进行初始化。3.启动journalnode进程在master1节点上执行或者在每台机器上执行slave1 slave2 slave3推荐第二种方法,第一种方法master1和master2的journalnode无法启动启动后在所有节点上多出JournalNode进程4.格式化namenode在master1上执行命令会在mydata文件下创建一些文件夹及文件(name或者data以及journal)5.启动namenode在master1上执行命令在master1上多出进程NameNode6.将刚才格式化的namenode信息同步到备用namenode上在master2机器上执行命令7.在master2上启动namenode在master2上多出进程NameNode8.启动所有datanode在master1上执行命令执行后在datanode节点上显示的进程datanode9.启动yarn在master1上执行命令在master1上多出ResourceManager进程,在slave1 slave2 slave3上多出NodeManager进程10.启动ZKFC在master1和master2上启动zkfc11.Hadoop启动成功下图是两个启动后的master节点12.启动hbase在master1上执行命令第n次启动1.对于HA,要先启动ZookeeperzkServer.sh start (每个节点)2.启动hadoopstart-dfs.sh start-yarn.sh (master1节点)3.启动hbasestart-hbase.sh (master1节点)后续待解决问题希望大神能帮我指点一二。。。。问题一:对于HA框架,hbase-site.xml如何根据当前active的master来配置?问题二:服务全部停止后重启,hbase显示无法启动。不知为何。我只能全部清空格式化hadoop。步骤:1.删除hadoop/mydata下的所有文件夹 再新建yarn文件夹2.删除hadoop/log文件夹下的所有文件3.删除zookeeper/var/data下的除了myid的所有文件4.删除Zookeeper/var/datalog下的所有文件夹5.删除hbase下的file:文件6.删除hbase下的logs下的所有文件7.重新格式化hadoop本文要用到的所有附件下载地址:------------------------------------------分割线------------------------------------------FTP地址:用户名:密码:在 2015年\8月\Hadoop2.6+HA+Zookeeper3.4.6+HBase1.0.0集群安装下载方法见 /Linux/40.htm------------------------------------------分割线------------------------------------------Hadoop2.5.2+HA+Zookeeper3.4.6配置过程详解& /Linux/349.htmUbuntu14.04下Hadoop2.4.1单机/伪分布式安装配置教程& /Linux/487.htmCentOS安装和配置Hadoop2.2.0& /Linux/85.htmUbuntu 13.04上搭建Hadoop环境 /Linux/06.htmUbuntu 12.10 +Hadoop 1.2.1版本集群配置 /Linux/00.htmUbuntu上搭建Hadoop环境(单机模式+伪分布模式) /Linux/81.htmUbuntu下Hadoop环境的配置 /Linux/39.htm单机版搭建Hadoop环境图文教程详解 /Linux/27.htm更多Hadoop相关信息见Hadoop 专题页面 /topicnews.aspx?tid=13
更多相关文章
一 安装计划
虚拟机:VMware9.0 /Linux/43.htm
操作系统:CentOS5.8 /Linux/03.htm
Hadoop:Ha ...
Centos6.5集群安装64位hadoop2.2.0: 网络环境,整3台虚拟机或者物理机,配置好相应网络,编辑/etc/hosts, 如: ssh无密码登录,很简单,每台机器都生成公钥,密钥(事先建立一个统一的hadoop用户)
// 生成key, 都不输入 ...
本文主要是以安装和使用Hadoop-0.21.0为例,指出在部署Hadoop的时候容易遇到的问题以及如何解决.1. 硬件环境共有3台机器,均使用的linux系统,Java使用的是jdk1.6.0.IP配置如下:hadoop1:192.168.0.97(NameNode)hadoop2:192.168 ...
ZooKeeper是一个分布式开源框架,提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务——分布式同步(Distributed Synchronization).命名服务(Naming Service).集群维护(Group Maintenance)等,简化分布式应用协调及其管理的难度, ...
1.准备环境
三台64位CentOS,安装在VMware虚拟机下.
1)安装中文输入法:
1.需要root权限,所以要用root登录 ,或su root
2.yum install &@Chinese Support&
2)安装ssh或者vsftp
本教程基于 Hadoop 2.4.1,但应该适用于所有 2.x 版本.我在 Ubuntu 下多次安装过,按照本教程一般都可以配置成功.本教程只是基础的安装配置,更多功能.配置.技巧就需要各位自行探索了.环境系统: Ubuntu 14.04 64bitHadoop版本: hadoop 2.4.1 (s ...
最近由于工作需要,公司需要部署 tomcat 集群,忙活了几天,终于配置了好了,做个笔记以后备用.1. 下载 apache2 源码 http2.4.62. 配置 apache2 ./configure --prefix=/usr/local/apache2 --enable-modules=shar ...
Hadoop集群的安装和配置,主要分为两个部分:一部分是主机环境配置,主要是指Hadoop集群所依赖的操作系统及其相关软件的安装配置,包括操作系统安装.JDK安装配置.主机规划与IP地址映射配置.无密码认证会话配置:另一部分是Hadoop基本配置,主要是指Hadoop集群的各种基本组件的配置,包括H ...
在JavaScript中,property是DOM中的属性,attribute元素用于向元素添加属性及值,本文我们来比较这两个东东然后看看他们有什么相同及不同.property是DOM中的属性,是JavaScript ...
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.本教程我们来配置一下Ubuntu下无密码就可以访问的samba服务器.假设共享目录为/var/wwwrootsudo v ...
为了能在Fedora 8下也可以看电影,就试着将realplayer安装上,听说有其他更好 ...
想使用Python的logging模块记录日志,并使用RotatingFileHandle ...
你知道金士顿吗?你知道金士顿HyperX吗?如果你只知道金士顿,说明你对内存有所了解,如果 ...
1.远程登陆运行./runInstaller后,图形界面出不来. DISPLAY=本机IP ...
AppArmor 是一个类似于selinux 的东东,主要的作用是设置某个可执行程序的访问 ...
PowerDNS Authoritative Server 3.3 发布,该版本改进了不同 ...
如果您偏好 FocusWriter 一样简洁的界面风格,却又不想失去丰富的文件和格式兼容性 ...
Openoffice 开发社区今天发布了一个让人意外及令人兴奋的消息,他们正式对外宣布成立 ...1052人阅读
Zookeeper(1)
ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. All
of these kinds of services are used in some form or another by distributed applications. Each time they are implemented there is a lot of work that goes into fixing the bugs and race conditions that are inevitable. Because of the difficulty of implementing
these kinds of services, applications initially usually skimp on them ,which make them brittle in the presence of change and difficult to manage. Even when done correctly, different implementations of these services lead to management complexity when the applications
are deployed.
Reference Link: &http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html
从官网下载最新的最稳定版本http://www.apache.org/dyn/closer.cgi/zookeeper/
在Linux下载的命令:wget&http://mirrors./apache/zookeeper/zookeeper-3.4.8/zookeeper-3.4.8.tar.gz
计划要安装主从,但先从单机开始,目录要规划好,可以在同一台机上部署三台,目录规划如下:
/usr/local/redis下zoo1,zoo2,zoo3
在zoo1下解压下载的压缩包,并创建data,datalog,logs文件夹。
配置文件cd&/usr/local/redis/zoo1/zookeeper-3.4.8/conf
cp zoo_sample.cfg &zoo.cfg
vi zoo.cfg添加或修改data文件夹目录
dataDir=/usr/local/redis/zoo1/data
dataLogDir=/usr/local/redis/zoo1/datalog
启动zookeeper
在zookeeper-3.4.8下运行命令,启动zookeeper
[root@JfbIpadServer02 /usr/local/redis/zoo1/zookeeper-3.4.8]#bin/zkServer.sh
ZooKeeper JMX enabled by default
Using config: /usr/local/redis/zoo1/zookeeper-3.4.8/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
使用命令客户端连接至zookeeper
[root@JfbIpadServer02 /usr/local/redis/zoo1/zookeeper-3.4.8]#bin/zkCli.sh
-server 127.0.0.1:2181
Connecting to 127.0.0.1:2181
[zk: 127.0.0.1:2181(CONNECTING) 0]
11:53:08,156
[myid:] - INFO &[main-SendThread(127.0.0.1:2181):ClientCnxn$SendThread@1299] - Session establishment complete on server 127.0.0.1/127.0.0.1:2181, sessionid = 0x153c07ff35f0000, negotiated timeout = 30000
WatchedEvent state:SyncConnected type:None path:null
看到这个就已连接上了,回车后出现下面的命令提示行:
[zk: 127.0.0.1:2181(CONNECTED) 0]
可以运行一些命令进行测试查看
[zk: 127.0.0.1:2181(CONNECTED) 0]help
[zk: 127.0.0.1:2181(CONNECTED) 1]ls /
[zookeeper]
[zk: 127.0.0.1:2181(CONNECTED) 2] create /zk_test my_data
Created /zk_test
[zk: 127.0.0.1:2181(CONNECTED) 3] ls / & & & & & & & & &&
[zookeeper, zk_test]
[zk: 127.0.0.1:2181(CONNECTED) 4] get /zk_test
cZxid = 0x2
ctime = Tue Mar 29 11:55:03 CST 2016
mZxid = 0x2
mtime = Tue Mar 29 11:55:03 CST 2016
pZxid = 0x2
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 7
numChildren = 0
[zk: 127.0.0.1:2181(CONNECTED) 5] set /zk_test junk
cZxid = 0x2
ctime = Tue Mar 29 11:55:03 CST 2016
mZxid = 0x3
mtime = Tue Mar 29 11:55:39 CST 2016
pZxid = 0x2
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 4
numChildren = 0
[zk: 127.0.0.1:2181(CONNECTED) 6] get /zk_test
cZxid = 0x2
ctime = Tue Mar 29 11:55:03 CST 2016
mZxid = 0x3
mtime = Tue Mar 29 11:55:39 CST 2016
pZxid = 0x2
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 4
numChildren = 0
[zk: 127.0.0.1:2181(CONNECTED) 7] delete /zk_test
[zk: 127.0.0.1:2181(CONNECTED) 8] get /zk_test
Node does not exist: /zk_test
[zk: 127.0.0.1:2181(CONNECTED) 9] ls /
[zookeeper]
单机zookeeper就安装并启动好了。
Running Replicated ZooKeeper
Running ZooKeeper in standalone mode is convenient for evaluation, some development, and testing. But in production, you should run ZooKeeper in replicated
mode. A replicated group of servers in the same application is called a quorum, and in replicated mode, all servers in the quorum have copies of the same configuration file.
For replicated mode, a minimum of three
servers are required, and it is strongly recommended that you have an odd number of servers. If you only have two servers, then you are in a situation where if one of them fails, there are not enough machines to form a majority quorum. Two servers is inherently&less&stable
than a single server, because there are two single points of failure.
其他两台,按照单机那台先部署。
进入data目录,创建一个myid的文件,里面写入一个数字,比如我这个是zoo1,那么就写一个1,zoo2对应myid文件就写入2,zoo3对应myid文件就写个3。
然后修改配置文件,The required conf/zoo.cfg file
for replicated mode is similar to the one used in standalone mode, but with a few differences. Here is an example:
tickTime=2000
initLimit=5
syncLimit=2
dataDir=/usr/local/redis/zoo1/data & & & #zoo1 zoo2 zoo3分别三台的目录
clientPort=2183 & & & & & & & & & & & & &#83 三台的端口
dataLogDir=/usr/local/redis/zoo1/datalog #zoo1 zoo2 zoo3分别三台的目录
server.1=127.0.0.1:
server.2=127.0.0.1:
server.3=127.0.0.1:
最后几行需要注意的地方就是 server.X 这个数字就是对应 data/myid中的数字。你在3个server的myid文件中分别写入了1,2,3,那么每个server中的zoo.cfg都配server.1,server.2,server.3就OK了。因为在同一台机器上,后面连着的2个端口3个server都不要一样,否则端口冲突,其中第一个端口用来集群成员的信息交换,第二个端口是在leader挂掉时专门用来进行选举leader所用。
进入zookeeper/bin目录中,./zkServer.sh start启动一个server,这时会报大量错误?其实没什么关系,因为现在集群只起了1台server,zookeeper服务器端起来会根据zoo.cfg的服务器列表发起选举leader的请求,因为连不上其他机器而报错,那么当我们起第二个zookeeper实例后,leader将会被选出,从而一致性服务开始可以使用,这是因为3台机器只要有2台可用就可以选出leader并且对外提供服务(2n+1台机器,可以容n台机器挂掉)。
接下来就可以使用了,我们可以先通过 zookeeper自带的客户端交互程序来简单感受下zookeeper到底做一些什么事情。进入zookeeper/bin(3个server中任意一个)下,./zkCli.sh –server 127.0.0.1:2182,我连的是开着2182端口的机器。输入help命令,查看结果:
ls(查看当前节点数据),
ls2(查看当前节点数据并能看到更新次数等数据) ,
create(创建一个节点) ,
get(得到一个节点,包含数据和更新次数等数据),
set(修改节点)
delete(删除一个节点)
通过上述命令实践,我们可以发现,zookeeper使用了一个类似文件系统的树结构,数据可以挂在某个节点上,可以对这个节点进行删改。另外我们还发现,当改动一个节点的时候,集群中活着的机器都会更新到一致的数据。&
通过java代码使用zookeeper&
Zookeeper的使用主要是通过创建其jar包下的Zookeeper实例,并且调用其接口方法进行的,主要的操作就是对znode的增删改操作,监听znode的变化以及处理。
package com.jh.sms.
import org.apache.zookeeper.CreateM
import org.apache.zookeeper.WatchedE
import org.apache.zookeeper.W
import org.apache.zookeeper.ZooDefs.I
import org.apache.zookeeper.ZooK
public class ZookeeperTest {
public static void zooTest()throws Exception{
//创建一个Zookeeper实例,第一个参数为目标服务器地址和端口,第二个参数为Session超时时间,第三个为节点变化时的回调方法
ZooKeeper zk = new ZooKeeper(&192.168.0.149:2181&, 500000,new Watcher() {
// 监控所有被触发的事件
public void process(WatchedEvent event) {
//dosomething
System.out.println(event.getState().name()+& int: &+event.getState().getIntValue());
//创建一个节点root,数据是mydata,不进行ACL权限控制,节点为永久性的(即客户端shutdown了也不会消失)
zk.create(&/root&, &mydata&.getBytes(),Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
//在root下面创建一个childone znode,数据为childone,不进行ACL权限控制,节点为永久性的
zk.create(&/root/childone&,&childone&.getBytes(), Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT);
//取得/root节点下的子节点名称,返回List&String&
zk.getChildren(&/root&,true);
//取得/root/childone节点下的数据,返回byte[]
zk.getData(&/root/childone&, true, null);
//修改节点/root/childone下的数据,第三个参数为版本,如果是-1,那会无视被修改的数据版本,直接改掉
zk.setData(&/root/childone&,&childonemodify&.getBytes(), -1);
//删除/root/childone这个节点,第二个参数为版本,-1的话直接删除,无视版本
zk.delete(&/root/childone&, -1);
//关闭session
zk.close();
public static void main(String[] args)throws Exception {
ZookeeperTest.zooTest();
}运行后,可以在zookeeper集群上看到相应的数据:
[zk: 127.0.0.1:2182(CONNECTED) 1] ls /
[root, zookeeper, zk_test]
[zk: 127.0.0.1:2182(CONNECTED) 2] get /root
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:9386次
排名:千里之外
原创:31篇
转载:11篇
(4)(11)(1)(9)(2)(3)(12)查看: 42347|回复: 10
hbase单机及集群安装配置,整合到hadoop
主题帖子积分
本帖最后由 pig2 于
16:30 编辑
问题导读:
1.配置的是谁的目录conf/hbase-site.xml,如何配置hbase.rootdir
2.如何启动hbase?
3.如何进入hbase shell?
4.ssh如何达到互通?
5.不安装NTP会发生什么情况?
6.conf/hbase-env.sh文件的作用是什么?
7.hbase.cluster.distributed的作用是什么?
8.hbase.zookeeper.property.clientPort的作用是什么?
9.hbase.zookeeper.property.dataDir配置的什么?
10.hbase安装后,需要替换hadoop的那些包?
11.hadoop与hbase版本是如何对应的?
1.&&快速单机安装
1.1下载解压最新版本
选择一个 Apache 下载镜像:,下载 HBase Releases. 点击 stable目录,然后下载后缀为 .tar.gz 的文件; 例如 hbase-0.90.4.tar.gz.
后面需要安装集群,整合到hadoop,所以注意选择与hadoop对应的版本:
选择 Hadoop 版本对HBase部署很关键。下表显示不同HBase支持的Hadoop版本信息。基于HBase版本,应该选择合适的Hadoop版本。
下面在给列出官网信息:
下面面符号的含义:
S =支持并且测试,
X = 不支持,
NT =应该可以,但是没有测试.
& && &HBase-0.92.x& && && && &HBase-0.94.x& && && && &HBase-0.96.0& && && &&&HBase-0.98.0& &&&Hadoop-0.20.205&&&&S&&&&X&&&&X &&&&& && && && & X&&&&Hadoop-0.22.x&&&&S&&&&X&&&&X&&&&& && && && &&&X&&&&Hadoop-1.0.0-1.0.2&&&&S&&&&S&&&&X&&&&& && && && &&&X&&&&Hadoop-1.0.3+&&&&S&&&&S&&&&S&&&&& && && && && &X&&&&Hadoop-1.1.x&&&&NT&&&&S&&&&S&&&&& && && && && & X&&&&Hadoop-0.23.x&&&&X&&&&S&&&&NT&&&&& && && && && & X&&&&Hadoop-2.0.x-alpha&&&&X&&&&NT&&&&X&&&&& && && && && &&&X&&&&Hadoop-2.1.0-beta&&&&X&&&&NT&&&&S&&&&& && && && && && &X&&&&Hadoop-2.2.0&&&&X&&&&NT&&&&S&&&&& && && && && && &S&&&&Hadoop-2.x&&&&X&&&&NT&&&&S&&&&& && && && && && &S&&
由于 HBase 依赖 Hadoop,它配套发布了一个Hadoop jar 文件在它的 lib 下。该套装jar仅用于独立模式。在分布式模式下,Hadoop版本必须和HBase下的版本一致。用你运行的分布式Hadoop版本jar文件替换HBase lib目录下的Hadoop jar文件,以避免版本不匹配问题。确认替换了集群中所有HBase下的jar文件。Hadoop版本不匹配问题有不同表现,但看起来都像挂掉了。
$ tar xfz hbase-0.90.4.tar.gz
$ cd hbase-0.90.4
现在你已经可以启动Hbase了。但是你可能需要先编辑 conf/hbase-site.xml 去配置hbase.rootdir,来选择Hbase将数据写到哪个目录 .
单机配置,只需要如下配置hbase-site.xml:
&?xml version=&1.0&?&&&
&?xml-stylesheet type=&text/xsl& href=&configuration.xsl&?&&&
&configuration&&&
&&&property&&&
& & &name&hbase.rootdir&/name&&&
& & &value&file:///DIRECTORY/hbase&/value&&&
&&&/property&&&
&/configuration&&&复制代码
将 DIRECTORY 替换成你期望写文件的目录. 默认 hbase.rootdir 是指向 /tmp/hbase-${user.name} ,也就说你会在重启后丢失数据(重启的时候操作系统会清理/tmp目录)
1.2. 启动 HBase
现在启动Hbase:
$ ./bin/start-hbase.sh
starting Master, logging to logs/hbase-user-master-example.org.out
现在你运行的是单机模式的Hbaes。所以的服务都运行在一个JVM上,包括Hbase和Zookeeper。Hbase的日志放在logs目录,当你启动出问题的时候,可以检查这个日志。
1.3. Hbase Shell 练习
用shell连接你的Hbase
$ ./bin/hbase shell
HBase S enter 'help&RETURN&' for list of supported commands.
Type &exit&RETURN&& to leave the HBase Shell
Version: 0.90.0, r1001068, Fri Sep 24 13:55:42 PDT 2010
hbase(main):001:0&
输入 help 然后 &RETURN& 可以看到一列shell命令。这里的帮助很详细,要注意的是表名,行和列需要加引号。
创建一个名为 test 的表,这个表只有一个column family 为 cf。可以列出所有的表来检查创建情况,然后插入些值。
hbase(main):003:0& create 'test', 'cf'
0 row(s) in 1.2200 seconds
hbase(main):003:0& list 'table'
1 row(s) in 0.0550 seconds
hbase(main):004:0& put 'test', 'row1', 'cf:a', 'value1'
0 row(s) in 0.0560 seconds
hbase(main):005:0& put 'test', 'row2', 'cf:b', 'value2'
0 row(s) in 0.0370 seconds
hbase(main):006:0& put 'test', 'row3', 'cf:c', 'value3'
0 row(s) in 0.0450 seconds
以上我们分别插入了3行。第一个行key为row1, 列为 cf:a, 值是 value1。Hbase中的列是由 column family前缀和列的名字组成的,以冒号间隔。例如这一行的列名就是a.
检查插入情况.
Scan这个表,操作如下
hbase(main):007:0& scan 'test'
ROW& && &&&COLUMN+CELL
row1& && & column=cf:a, timestamp=8, value=value1
row2& && & column=cf:b, timestamp=0, value=value2
row3& && & column=cf:c, timestamp=5, value=value3
3 row(s) in 0.0590 seconds
Get一行,操作如下
hbase(main):008:0& get 'test', 'row1'
COLUMN& && &CELL
cf:a& && &&&timestamp=8, value=value1
1 row(s) in 0.0400 seconds
disable 再 drop 这张表,可以清除你刚刚的操作
hbase(main):012:0& disable 'test'
0 row(s) in 1.0930 seconds
hbase(main):013:0& drop 'test'
0 row(s) in 0.0770 seconds
关闭shell
hbase(main):014:0& exit
1.4. 停止 HBase
运行停止脚本来停止HBase.
$ ./bin/stop-hbase.sh
stopping hbase...............
2.&&Hbase集群安装前注意
1)&&Java:(hadoop已经安装了),
2)&&Hadoop 0.20.x / Hadoop-2.x 已经正确安装(& & hadoop安装参考),并且可以启动 HDFS 系统,并且需要确保hdfs能够上传和读写文件。例如:
我们上传hbase的所有xml配置文件
put命令.png (5.7 KB, 下载次数: 9)
15:43 上传
上传文件:
上传文件.png (25.19 KB, 下载次数: 3)
15:47 上传
上面说明,hdfs运行正常。
3)&&ssh 必须安装ssh , sshd 也必须运行,这样Hadoop的脚本才可以远程操控其他的Hadoop和Hbase进程。ssh之间必须都打通,不用密码都可以登录。ssh打通可以参考:、
4)&&NTP:集群的时钟要保证基本的一致。稍有不一致是可以容忍的,但是很大的不一致会 造成奇怪的行为。 运行 NTP 或者其他什么东西来同步你的时间.
如果你查询的时候或者是遇到奇怪的故障,可以检查一下系统时间是否正确!
设置集群各个节点时钟:date -s “ 14:00:00”
ubuntu可以参考
5)&&ulimit 和 nproc:
HBase是数据库,会在同一时间使用很多的文件句柄。大多数linux系统使用的默认值1024是不能满足的,会导致FAQ:异常。还可能会发生这样的异常
&&&& 03:04:37,542 INFO org.apache.hadoop.hdfs.DFSClient: ExceptionincreateBlockOutputStream java.io.EOFException
& &&& 03:04:37,542 INFO org.apache.hadoop.hdfs.DFSClient:Abandoning block blk_-1901
所以你需要修改你的最大文件句柄限制。可以设置到10k. 你还需要修改 hbase 用户的 nproc,如果过低会造成 OutOfMemoryError异常。
需要澄清的,这两个设置是针对操作系统的,不是Hbase本身的。有一个常见的错误是Hbase运行的用户,和设置最大值的用户不是一个用户。在Hbase启动的时候,第一行日志会现在ulimit信息,所以你最好检查一下。
6)在Ubuntu上设置ulimit
可以先查看当前用户 ulimit:
设置ulimit:
如果你使用的是Ubuntu,你可以这样设置:
在文件 /etc/security/limits.conf 添加一行,如:
hadoop&&-& && & nofile 32768复制代码
可以把 hadoop 替换成你运行Hbase和Hadoop的用户。如果你用两个用户,你就需要配两个。还有配nproc hard 和 softlimits. 在文件 /etc/security/limits.conf 添加一行下面内容:
hadoop soft/hard nproc 32000复制代码在 /etc/pam.d/common-session 加上这一行:session required&&pam_limits.so复制代码否则在 /etc/security/limits.conf上的配置不会生效.
还有注销再登录,这些配置才能生效!
--------------------------------------------------------------------------------------------------------------
下面为什么对上面设置,做一下说明:
一、在 /etc/pam.d/common-session 加上这一行:
session required pam_limit.so复制代码
那么这一行的作用是什么?
pam_limits.so模块可以使用在对一般应用程序使用的资源限制方面。如果需要在SSH服务器上对来自不同用户的ssh访问进行限制,就可以调用该模块来实现相关功能。当需要限制用户admin登录到SSH服务器时的最大连接数(防止同一个用户开启过多的登录进程),就可以在/etc/pam.d/sshd文件中增加一行对pam_limits.so模块的调用:
session& & required& && &&&pam_limit.so
二、在文件 /etc/security/limits.conf 添加如下两行一行,
hadoop - nofile 32768
hadoop hard nproc 16384复制代码他们的含义分别为:
hadoop&&-& && & nofile 32768
这个的含义是什么?
hadoop最大能打开的文件数不超过65536
hadoop& && && &&&hard& & nproc& &16384
这个的含义是什么?
hadoop用户最大能开启的进程数不超过16384
--------------------------------------------------------------------------------------------------------------
3.&&分布式模式配置
在进行下面配置之前需要注意的问题:
第一:首先需要建立,下面配置文件中的目录:下面配置文件需要建立的的文件:
1.hbase临时目录,这里对应的是下面配置。
这里在说一下,这个临时目录的选择,系统默认目录,容易被系统删除,所以我们需要更改默认目录。但是我们更改目录需要注意的一个问题,就是用户权限,很多人在安装的时候随便选择了一个目录,结果不能访问,所以你的hbase起来之后,过会就挂掉了。
一、新建文件,并注意权限问题
hbase临时目录
&property&
&name&hbase.tmp.dir&/name&
&value&file:/usr/hbase/tmp&/value&
&/property&复制代码zookeeper目录:
&property&
&name&hbase.zookeeper.property.dataDir&/name&
&value&file:/usr/hbase/zookeeper&/value&
&/property&复制代码上面文件建立后,我们看到下面效果
newfile.png (14.59 KB, 下载次数: 3)
16:12 上传
同时看一下这两个文件夹的权限与hadoop、hbase,都属于用户及用户组aboutyun:aboutyun
quanxian.png (93.86 KB, 下载次数: 5)
16:15 上传
二、每个节点都必须创建文件夹,否则也会出现regionserver自动挂机。
上面说了注意的问题,下面开始配置
3.1配置conf/hbase-env.sh
export JAVA_HOME=/usr/jdk1.7
# Tell HBase whether it should manage it'sown instance of Zookeeper or not.复制代码
hbaseenv.png (14.47 KB, 下载次数: 9)
15:51 上传
不管是什么模式,你都需要编辑 conf/hbase-env.sh来告知Hbase java的安装路径.在这个文件里你还可以设置Hbase的运行环境,诸如 heapsize和其他 JVM有关的选项, 还有Log文件地址,等等. 设置 JAVA_HOME指向 java安装的路径.
一个分布式运行的Hbase依赖一个zookeeper集群。所有的节点和客户端都必须能够访问zookeeper。默认的情况下Hbase会管理一个zookeep集群。这个集群会随着Hbase的启动而启动。当然,你也可以自己管理一个zookeeper集群,但需要配置Hbase。你需要修改conf/hbase-env.sh里面的HBASE_MANAGES_ZK 来切换。这个值默认是true的,作用是让Hbase启动的时候同时也启动zookeeper.
让Hbase使用一个现有的不被Hbase托管的Zookeep集群,需要设置 conf/hbase-env.sh文件中的HBASE_MANAGES_ZK 属性为 false,这里使用的是系统自带的,所以为true
,
# Tell HBase whether it should manage it's own instanceof Zookeeper or not.
exportHBASE_MANAGES_ZK=true复制代码
zookeeper.png (6.05 KB, 下载次数: 9)
15:53 上传
3.2 配置conf/hbase-site.xml
&configuration&
&property&
&name&hbase.rootdir&/name&
&value&hdfs://master:8020/hbase&/value&
&/property&
&property&
&name&hbase.tmp.dir&/name&
&value&file:/usr/hbase/tmp&/value&
&/property&
&property&
&name&hbase.master&/name&
&value&hdfs://master:60000&/value&
&/property&
&property&
&name&hbase.zookeeper.property.dataDir&/name&
&value&file:/usr/hbase/zookeeper&/value&
&/property&复制代码
要想运行完全分布式模式,加一个属性 hbase.cluster.distributed 设置为 true 然后把 hbase.rootdir 设置为HDFS的NameNode的位置。 例如,你的namenode运行在node1,端口是8020 你期望的目录是 /hbase,使用如下的配置:hdfs://master:<font color="#ff/hbase.注释:
这个端口的确认:比如在
hadoop1.X中使用的hdfs://master:<font color="#ff/
hadoop2.X中使用的hdfs://master:<font color="#ff/这个端口是由core-site.xml来决定 &property&
& && && && && & &name&fs.defaultFS&/name&
& && && && && & &value&hdfs://master:8020&/value&
& && & &/property&复制代码
hbase.rootdir:这个目录是region server的共享目录,用来持久化Hbase。URL需要是'完全正确'的,还要包含文件系统的scheme。例如,要表示hdfs中的'/hbase'目录,namenode 运行在node1的49002端口。则需要设置为hdfs://master:49002/hbase。默认情况下Hbase是写到/tmp的。不改这个配置,数据会在重启的时候丢失。默认: file:///tmp/hbase-${user.name}/hbase
hbase.cluster.distributed :Hbase的运行模式。false是单机模式,true是分布式模式。若为false,Hbase和Zookeeper会运行在同一个JVM里面。
默认: false
在hbase-site.xml配置zookeeper:
当Hbase管理zookeeper的时候,你可以通过修改zoo.cfg来配置zookeeper,
一个更加简单的方法是在 conf/hbase-site.xml里面修改zookeeper的配置。Zookeeer的配置是作为property写在 hbase-site.xml里面的。
对于zookeepr的配置,你至少要在 hbase-site.xml中列出zookeepr的ensemble servers,具体的字段是 hbase.zookeeper.quorum. 该这个字段的默认值是 localhost,这个值对于分布式应用显然是不可以的. (远程连接无法使用)。
hbase.zookeeper.property.clientPort:ZooKeeper的zoo.conf中的配置。 客户端连接的端口。
hbase.zookeeper.quorum:Zookeeper集群的地址列表,用逗号分割。例如:&,,&.默认是localhost,是给伪分布式用的。要修改才能在完全分布式的情况下使用。如果在hbase-env.sh设置了HBASE_MANAGES_ZK,这些ZooKeeper节点就会和Hbase一起启动。
默认: localhost
运行一个zookeeper也是可以的,但是在生产环境中,你最好部署3,5,7个节点。部署的越多,可靠性就越高,当然只能部署奇数个,偶数个是不可以的。你需要给每个zookeeper 1G左右的内存,如果可能的话,最好有独立的磁盘。 (独立磁盘可以确保zookeeper是高性能的。).如果你的集群负载很重,不要把Zookeeper和RegionServer运行在同一台机器上面。就像DataNodes 和 TaskTrackers一样
hbase.zookeeper.property.dataDir:ZooKeeper的zoo.conf中的配置。 快照的存储位置
把ZooKeeper保存数据的目录地址改掉。默认值是 /tmp ,这里在重启的时候会被操作系统删掉,可以把它修改到 /home/hadoop/zookeeper (这个路径hadoop用户拥有操作权限)
对于独立的Zookeeper,要指明Zookeeper的host和端口。可以在 hbase-site.xml中设置, 也可以在Hbase的CLASSPATH下面加一个zoo.cfg配置文件。 HBase 会优先加载 zoo.cfg 里面的配置,把hbase-site.xml里面的覆盖掉.
3.3 配置conf/regionservers
regionserver.png (3.6 KB, 下载次数: 6)
16:01 上传
完全分布式模式的还需要修改conf/regionservers. 在这里列出了你希望运行的全部 HRegionServer,一行写一个host (就像Hadoop里面的 slaves 一样). 列在这里的server会随着集群的启动而启动,集群的停止而停止.
3.4 替换hadoop的jar包
hbase基本的配置完了。
查看hbase的lib目录下。
ls lib |grep hadoop
hadoop-annotations-2.1.0-beta.jar
hadoop-auth-2.1.0-beta.jar
hadoop-client-2.1.0-beta.jar
hadoop-common-2.1.0-beta.jar
hadoop-hdfs-2.1.0-beta.jar
hadoop-hdfs-2.1.0-beta-tests.jar
hadoop-mapreduce-client-app-2.1.0-beta.jar
hadoop-mapreduce-client-common-2.1.0-beta.jar
hadoop-mapreduce-client-core-2.1.0-beta.jar
hadoop-mapreduce-client-jobclient-2.1.0-beta.jar
hadoop-mapreduce-client-jobclient-2.1.0-beta-tests.jar
hadoop-mapreduce-client-shuffle-2.1.0-beta.jar
hadoop-yarn-api-2.1.0-beta.jar
hadoop-yarn-client-2.1.0-beta.jar
hadoop-yarn-common-2.1.0-beta.jar
hadoop-yarn-server-common-2.1.0-beta.jar
hadoop-yarn-server-nodemanager-2.1.0-beta.jar
看到它是基于hadoop2.1.0的,所以我们需要用我们的hadoop2.2.0下的jar包来替换2.1的,保证版本的一致性,hadoop下的jar包都是在$HADOOP_HOME/share/hadoop下的.
我们先cd 到 /home/hadoop/hbase-0.96.0-hadoop2/lib下运行命令: rm -rf hadoop*.jar删掉所有的hadoop相关的jar包,然后运行:
find /home/hadoop/hadoop-2.2.0/share/hadoop -name &hadoop*jar& | xargs -i cp {} /home/hadoop/hbase-0.96.0-hadoop2/lib/
拷贝所有hadoop2.2.0下的jar包hbase下进行hadoop版本的统一
注意的问题:
由于包之间的重复,后面使用还会产生问题,如下:
所以我们还需要运行下面命令:
(对于新手总想直接复制命令就像万事大吉,这里面需要注意的问题:
路径,如果hbase位于usr下面,是没有问题的。但是如果更换了路径,注意红字部分你需要修改。
/usr/hbase/lib rm slf4j-log4j12-1.6.4.jar
4.&&运行和确认安装
4.1当Hbase托管ZooKeeper的时候
当Hbase托管ZooKeeper的时候Zookeeper集群的启动是Hbase启动脚本的一部分
首先确认你的HDFS是运行着的。你可以运行HADOOP_HOME中的 bin/start-hdfs.sh 来启动HDFS.你可以通过put命令来测试放一个文件,然后有get命令来读这个文件。通常情况下Hbase是不会运行mapreduce的。所以比不需要检查这些。
用如下命令启动Hbase:
bin/start-hbase.sh
这个脚本在HBASE_HOME目录里面。
你现在已经启动Hbase了。Hbase把log记在 logs 子目录里面. 当Hbase启动出问题的时候,可以看看Log.
Hbase也有一个界面,上面会列出重要的属性。默认是在Master的60010端口上H (HBase RegionServers 会默认绑定 60020端口,在端口60030上有一个展示信息的界面 ).如果Master运行在 node1,端口是默认的话,你可以用浏览器在 http://node:60010看到主界面. .
一旦Hbase启动,可以看到如何建表,插入数据,scan你的表,还有disable这个表,最后把它删掉。
可以在Hbase Shell停止Hbase
$./bin/stop-hbase.sh
stoppinghbase...............
停止操作需要一些时间,你的集群越大,停的时间可能会越长。如果你正在运行一个分布式的操作,要确认在Hbase彻底停止之前,Hadoop不能停.
4.2独立的zookeeper启动(如果另外安装,可以选此)
除了启动habse,
执行:bin/start-hbase.sh启动habse
你需要自己去运行zookeeper:
${HBASE_HOME}/bin/hbase-daemons.sh {start,stop} zookeeper
你可以用这条命令启动ZooKeeper而不启动Hbase. HBASE_MANAGES_ZK 的值是 false, 如果你想在Hbase重启的时候不重启ZooKeeper,你可以这样。
可以使用jps查看进程:在master上:
master.png (13.12 KB, 下载次数: 8)
16:28 上传
在slave1,slave2(slave节点)上
slave1.png (11.52 KB, 下载次数: 3)
16:28 上传
slave2.png (11.63 KB, 下载次数: 3)
16:28 上传
通过浏览器查看60010端口:
hbase.png (28.69 KB, 下载次数: 8)
16:29 上传
6.&&安装中出现的问题
1 )用./start-hbase.sh启动HBase后,执行hbase shell
# bin/hbase shell
HBase S enter 'help&RETURN&' for list of supported commands.
Version: 0.20.6, rUnknown, Thu Oct 28 19:02:04 CST 2010复制代码
接着创建表时候出现如下情况:
hbase(main):001:0& create 'test',''c复制代码
NativeException: org.apache.hadoop.hbase.MasterNotRunningException: null
jps下,发现主节点上HMaster没有启动,查理HBase log(logs/hbase-hadoop-master-ubuntu.log)里有下面异常:
FATAL org.apache.hadoop.hbase.master.HMaster: Unhandled exception. Starting shutdown.
java.io.IOException: Call to node1/10.64.56.76:49002 failed on local exception: java.io.EOFException
从hadoop_home/下面cp一个hadoop/hadoop-core-0.20.203.0.jar到hbase_home/lib下。
因为Hbase建立在Hadoop之上,所以他用到了hadoop.jar,这个Jar在 lib 里面。这个jar是hbase自己打了branch-0.20-append 补丁的hadoop.jar. Hadoop使用的hadoop.jar和Hbase使用的 必须 一致。所以你需要将 Hbaselib 目录下的hadoop.jar替换成Hadoop里面的那个,防止版本冲突。比方说CDH的版本没有HDFS-724而branch-0.20-append里面有,这个HDFS-724补丁修改了RPC协议。如果不替换,就会有版本冲突,继而造成严重的出错,Hadoop会看起来挂了。
再用./start-hbase.sh启动HBase后,jps下,发现主节点上HMaster还是没有启动,在HBase log里有下面异常:
FATAL org.apache.hadoop.hbase.master.HMaster: Unhandled exception. Starting shutdown.
java.lang.NoClassDefFoundError: org/apache/commons/configuration/Configuration
在NoClassDefFoundError,缺少 org/apache/commons/configuration/Configuration
果断给他加一个commons-configuration包,
从hadoop_home/lib下面cp一个hadoop/lib/commons-configuration-1.6.jar到hbase_home/lib下。
(集群上所有机子的hbase配置都需要一样)
创建表报错:
ERROR: java.io.IOException: Table Namespace Manager not ready yet, try again later
at org.apache.hadoop.hbase.master.HMaster.getNamespaceDescriptor(HMaster.java:3101)
at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:1738)
at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:1777)
at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:38221)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2146)
at org.apache.hadoop.hbase.ipc.RpcServer$Handler.run(RpcServer.java:1851)
1) 查看集群的所有机器上,
HRegionServer和HQuorumPeer进程是否都启动?
2)查看集群的所有机器的logs是不是有错误消息;
tail -f hbase-hadoop-regionserver-XXX..log
2&&注意事项:
1)、先启动hadoop后,再开启hbase
2)、去掉hadoop的安全模式:hadoop dfsadmin -safemode leave
3)、把/etc/hosts里的ubuntu的IP改为服务器当前的IP
4)&&、确认hbase的hbase-site.xml中
& && && && && && &&name&hbase.rootdir&/name&
& && && && & & & &value&hdfs://node:49002/hbase&/value&
& && && &与hadoop的core-site.xml中
& && && && && && & &name&fs.default.name&/name&
& && && && &&&& & &value&hdfs://node:49002/hbase&/value&
& && & 红字部分保持一致
& && &&value&hdfs://localhost:8020/hbase&/value&
& &&&否则报错:java.lang.RuntimeException: HMaster Aborted
6)、重新执行./start-hbase.sh之前,先kill掉当前的hbase和zookeeper进程
7)、hosts注意顺序:
192.168.1.214 master
192.168.1.205 node1
192.168.1.207 node2
192.168.1.209 node3
192.168.1.205 T205.joy.cc
PS:遇到问题时,先查看logs,很有帮助。
HBase 官方文档,全面介绍hbase安装配置:
本帖被以下淘专辑推荐:
& |主题: 47, 订阅: 11
欢迎加入about云群 、 ,云计算爱好者群,关注
主题帖子积分
楼主我想问下我按照帖子上做的完全分布,但是另外两个从节点的HRegionServer为什么总是自动down掉呢
主题帖子积分
楼主我想问下我按照帖子上做的完全分布,但是另外两个从节点的HRegionServer为什么总是自动down掉呢{:soso_ ...
NTP是否安装,看看时间同步了吗
欢迎加入about云群 、 ,云计算爱好者群,关注
主题帖子积分
NTP是否安装,看看时间同步了吗
恩谢谢了!~果然是时间同步的问题现在解决了!~3q
主题帖子积分
中级会员, 积分 434, 距离下一级还需 566 积分
中级会员, 积分 434, 距离下一级还需 566 积分
赞一个,自己也去试试
主题帖子积分
中级会员, 积分 309, 距离下一级还需 691 积分
中级会员, 积分 309, 距离下一级还需 691 积分
飘过,学习学习!
主题帖子积分
高级会员, 积分 1638, 距离下一级还需 3362 积分
高级会员, 积分 1638, 距离下一级还需 3362 积分
主题帖子积分
楼主,请问下,在启动完全分布式的Hbase集群时(zookeeper是单独安装的),就是要在每台机器上要运行 ./bin/zkServer.sh start 命令吗?然后只需要在master上运行 ./bin/start-hbase.sh 吧?谢谢!
主题帖子积分
中级会员, 积分 376, 距离下一级还需 624 积分
中级会员, 积分 376, 距离下一级还需 624 积分
主题帖子积分
注册会员, 积分 95, 距离下一级还需 105 积分
注册会员, 积分 95, 距离下一级还需 105 积分
很不错学习了,楼主加油
经常参与各类话题的讨论,发帖内容较有主见
经常帮助其他会员答疑
活跃且尽责职守的版主
为论坛做出突出贡献的会员
积极上进,爱好学习
站长推荐 /6
about云|新出视频,openstack零基础入门,解决你ping不通外网难题
云计算hadoop视频大全(新增 yarn、flume|storm、hadoop一套视频
视频资料大优惠
大数据零基础由入门到实战
阶段1:hadoop零基础入门基础篇
阶段2:hadoop2入门
阶段3:大数据非hadoop系列课程
阶段4:项目实战篇
阶段5:大数据高级系列应用课程
阶段6:工作实用系列教程
等待验证会员请验证邮箱
新手获取积分方法
Powered by}

我要回帖

更多关于 zookeeper ha 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信