HBase 系列(二)安装部署
HBase 系列(二)安装部署
本节以 Hadoop-2.7.6,HBase-1.4.5 为例安装 HBase 环境。HBase 也有三种模式:本地模式、伪分布模式、分布模式。
一、环境准备
(1) HBase 下载
HBase 下载地址:http://archive.apache.org/dist/hbase/
(2) SSH 服务
service sshd status
参考:http://www.cnblogs.com/binarylei/p/9049149.html
(3) 域名系统 DNS
/etc/hosts
(4) 本地环回地址
127.0.0.1 localhost
(5) 时间同步
ntp
(6) 资源限制命令
# 限制用户打开的文件数
soft nofile 10240
hard nofile 10240
# 限制用户打开的进程数
soft noproc 10240
hard noproc 10240
(7) Hadoop 版本选择
本文以 Hadoop-2.7.6,HBase-1.4.5。并且将 $HBASE_HOME/lib 下的有关 hadoop 的 jar 包替换成 $HADOOP_HOME/share/... 的 jar 包。
<!-- hadoop 的 datanode 配置项,设置同时处理文件的上限个数,默认 256,至少是 4096,甚至更大 -->
<property>
<name>dfs.datanode.max.xcievers</name>
<value>4096</value>
</property>
(8) 安装 Zookeeper
最好以 hadoop 用户启动。参考:http://www.cnblogs.com/binarylei/p/8721129.html
二、HBase 运行模式
2.1 本地模式
(1) 解压后添加环境变量
vi /etc/profile.d/start.sh
# hbase
export HBASE_HOME=/home/hadoop/habase
export PATH=$PATH:$HBASE_HOME/bin
(2) 修改 conf/hbase-env.sh
JAVA_HOME=/usr/local/jdk
export HBASE_MANAGES_ZK=false # 不使用自带的 zookeeper
(3) 修改 conf/hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>file:/home/hadoop/hbase/HFiles</value>
</property>
2.2 伪分布模式
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:8030/hbase</value>
</property>
2.3 分布模式
(1) 修改 conf/hbase-site.xml
<configuration>
<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.zookeeper.quorum</name>
<value>192.168.2.110:2181,192.168.2.111:2181,192.168.2.111:2181</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/hbase/data/zookeeper</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/home/hadoop/hbase/data</value>
</property>
<!-- web 页面端口,默认16010 -->
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property>
</configuration>
(2) 修改 conf/regionservers
192.168.140.110
192.168.140.111
(3) 分发
scp -r /home/hadoop/hbase-1.4.5 hadoop@192.168.140.110:`pwd`
ssh root@192.168.140.110 'ln -sv /home/hadoop/hbase-1.4.5 /home/hadoop/hbase'
ssh root@192.168.140.110 'chown -h -R hadoop:hadoop /home/hadoop/hbase'
(4) 启动
bin/start-hbase.sh
(5) HBase 高可用
bin/hbase-daemon.sh start master
bin/hbase-daemons.sh start regionserver
查看 WEB 页面:
HMaster:http://192.168.140.110:60010/master-status
HRegionServer:http://192.168.140.110:16030/master-status
HBase Shell 查看 HBase 状态:
create 't1', {NAME => 'f1', VERSIONS => 5}
describe 't1'
put 't1', 'row1', 'f1:a', '2'
put 't1', 'row2', 'f1:b', '3'
get 't1', 'row1'
scan 't1'
disable 't1'
drop 't1'
三、HBase 和 Hadoop 的 HA 集成
(1) 在 $HBASE_HOME/hbase-env.sh 文件添加 hadoop 配置文件目录到 HBASE_CLASSPATH 环境变量并分发
vi $HBASE_HOME/hbase-env.sh
export HBASE_CLASSPATH=$HBASE_CLASSPATH:$HADOOP_HOME/etc/hadoop
(2) 在 $HBASE_HOME/conf/ 目录下创建到 hadoop 的 hdfs-site.xml 符号连接
$>ln -s $HADOOP_HOME/etc/hadoop/hdfs-site.xml $HBASE_HOME/conf/hdfs-site.xml
(3) 修改 $HBASE_HOME/hbase-site.xml 文件中 hbase.rootdir 的目录值
vi $HBASE_HOME//hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>hdfs://mycluster/hbase</value>
</property>
(4) 将以上步骤分发处理
四、踩过的坑
问题1:ERROR: Can't get master address from ZooKeeper; znode data == null
解决:在 hbase-site.xml 指定一个运行 hbase 的用户有写入文件权限的目录作为 zookeeper 数据目录,如
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/hbase/data/zookeeper</value>
</property>
参考:https://www.cnblogs.com/zlslch/p/6556870.html
每天用心记录一点点。内容也许不重要,但习惯很重要!
HBase 系列(二)安装部署的更多相关文章
- HBase集群安装部署
0x01 软件环境 OS: CentOS6.5 x64 java: jdk1.8.0_111 hadoop: hadoop-2.5.2 hbase: hbase-0.98.24 0x02 集群概况 I ...
- 开源一款强大的文件服务组件(QJ_FileCenter)(系列二 安装说明)
系列文章 1. 开源一款强大的文件服务组件(QJ_FileCenter)(系列一) 2. 开源一款强大的文件服务组件(QJ_FileCenter)(系列二 安装说明) 3. 开源一款强大的文件服务组件 ...
- 二十二. 安装部署Tomcat服务器、使用Tomcat部署虚拟主机、使用Varnish加速Web
web proxy web1 web2 1.安装部署Tomcat服务器 web1 1.1 使用RPM安装JDK环境 ]# yum -y install java-1.8.0-openjdk ]# ...
- Hbase入门(二)——安装与配置
本文讲述如何安装,部署,启停HBase集群,如何通过命令行对Hbase进行基本操作. 并介绍Hbase的配置文件. 在安装前需要将所有先决条件安装完成. 一.先决条件 1.JDK 和Hadoop一样, ...
- Windows Azure入门教学系列 (二):部署第一个Web Role程序
本文是Windows Azure入门教学的第二篇文章. 在第一篇教学中,我们已经创建了第一个Web Role程序.在这篇教学中,我们将学习如何把该Web Role程序部署到云端. 注意:您需要购买Wi ...
- WordPress版微信小程序开发系列(二):安装使用问答
自WordPress版微信小程序发布开源以来,受关注的程度超过我原来的想象.这套程序主要面对的用户是wordpress网站的站长,如果wordpress站想在微信的生态圈得到推广,小程序成为一种重要的 ...
- HBase的详细安装部署
一.部署 1.Zookeeper正常部署,并且启动 2.Hadoop正常部署,并且启动 3.Hbase的解压 解压HBase到指定目录 tar -xvf /HBase.tar.gz -C /airP ...
- Sharepoint 2013 系列篇(安装部署)--上篇
前言 sharepoint的部署是按照物理拓扑图的架构来部署,按照物理拓扑图架构分为一层拓扑图架构,二层拓扑图架构,三层拓扑图架构,多层拓扑图架构. 按照分层的拓扑图部署是按照需求来划分的,一层拓扑图 ...
- Hbase 分布式环境安装部署
Hbase分布式集群搭建--安装步骤 这一步如果没有deploy.sh脚本的可以使用scp命令分别分发到其他节点去 到集群里看看安装好的hbase 使用脚本启动所有节点的zookeeper 启动HDF ...
- Kafka系列二之部署与使用
Kafka部署与使用 写在前面 从上一篇Kafka的架构介绍和安装中,可能,你还一直很蒙,kafka到底该怎么使用呢?接下来,我们就来介绍Kafka的部署与使用.上篇文章中我们说到,Kafka的几个重 ...
随机推荐
- Rails Cookie和session使用
Rails通过cookies方法来操作cookie.这和session的操作有点相似 class CommentsController < ApplicationController def n ...
- MariaDB Galera Cluster的配置测试
参考的https://fykuan.hsnuer.net/blog/2015/01/23/debian-%E4%B8%8A%E5%AE%89%E8%A3%9D-mariadb-galera-clust ...
- java 面向对象 — 继承
继承中的构造方法,先执行父类中的构造方法,然后执行子类中的构造方法 继承中的属性,最后执行的属性 覆盖前面的属性 因为是开辟了 两个内存空间,所以相比较是不同的. 如果想比较两个对象的值是否相同的话, ...
- 介绍一个开源的 C++ 开发框架 openFrameworks 。
作为一个图形图像方向的研究生,我经常都在和 OpenGL .OpenCV 等多种 C++ 库打交道.这些库遵循着不同的规则和用法:另外,为了让自己的程序具有更多的交互能力,编写界面也是一个家常便饭的工 ...
- QT win 安装配置
QT windows 版安装配置 安装包:链接:https://pan.baidu.com/s/1LCj2V3xQ1wB9_7zmE5tV6Q 密码:bn9r 首先安装QT Creator 双击安装文 ...
- [Nlog]使用经验
<?xml version="1.0" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog ...
- java之Jsch实现Linux的文件上传与下载
一.JSch是Java Secure Channel的缩写.JSch是一个SSH2的纯Java实现.它允许你连接到一个SSH服务器,并且可以使用端口转发,X11转发,文件传输等,当然你也可以集成它的功 ...
- zoj-3410-Layton's Escape
/* ZOJ Problem Set - 3410Layton's Escape ----------------------------------------------------------- ...
- 重新设定McAfee Agent的菜单语言
默认安装的McAfee Agent,语言会根据系统中的设置,自动选择了语言. 有时想更换语言,却又不想重装McAfee Agent (以前叫 ePO Agent) 其实可以直接运行下面的命令进行重新设 ...
- Git----远程仓库01
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了 可是用过集中式版本控制系统SVN的童鞋们会站出来说,这些功能在SVN里早就有了,没看出Git ...