HBase安装以及多HMaseter配置完整步骤

合集下载

Hadoop+Zookeeper+HBase部署指南

Hadoop+Zookeeper+HBase部署指南

Hadoop+Zookeeper+HBase安装指南RUC DB-IIR 卞昊穹/bhq2010bianhaoqiong@2012.07.28-Version1集群情况:4个节点,IP分别为:node0: 192.168.181.136(NameNode/JobTracker/SecondaryNameNode/HMaster)node1: 192.168.181.132(DataNode/TaskTracker/HRegionServer/QuorumPeerMain)node2: 192.168.181.133(DataNode/TaskTracker/HRegionServer/QuorumPeerMain)node3: 192.168.181.134(DataNode/TaskTracker/HRegionServer/QuorumPeerMain)软件版本:CentOS Linux 6.2 x86_64(2.6.32)OpenJDK-1.6.0_24Hadoop-1.0.2Zookeeper-3.4.3HBase-0.94.0目录1. hosts和hostname设置 (2)2. SSH设置 (2)3. Hadoop配置安装 (3)4. Zookeeper配置安装 (5)5. HBase配置安装 (6)1. hosts和hostname设置安装分布式的Hadoop和HBase集群需要在每一个节点上都设置网络中的hosts和本机的hostname。

首先将/etc/hosts文件中127.0.0.1这一行的中间一段改为本机的主机名,并在文件末尾添加hosts配置,每行为一个ip地址和对应的主机名,以空格分隔。

以node0为例,修改后的hosts 文件如下:再将/etc/sysconfig/network文件中HOSTNAME=一行中“=”之后内容改为主机名,如:2. SSH设置之后,在node0生成ssh公钥,添加到node1/2/3的~/.ssh/authorized_keys文件中以实现node0无密码登录node1/2/3,参考:/bhq2010/article/details/6845985此处node0是ssh客户端,node1/2/3是ssh服务器端。

HBASE安装及客户端编程配置

HBASE安装及客户端编程配置

HBASE 安装一、安装指南二、常见问题一、安装指南Hadoop+Hbase安装配置实录2010-10-12 22:53生产环境:3台机器:master(192.168.0.61),slave1(192.168.0.62),slave2(192.168.0.63) 注意:hostname设置为master/slave1/slave2操作系统:rhel5.4 x86_64master做为namenonde,将slave1和slave2做为datanode1.在master:(在slave1和slave2上操作和以下相同)vi /etc/hosts192.168.0.61 master192.168.0.62 slave1192.168.0.63 slave22.用root操作3.免密码登录#ssh-keygen -t rsa #建立ssh目录,敲回车到底 ,这一步需要先在每台机器上执行。

在master上#scp ~/.ssh/id_rsa.pub root@slave1:/root/.ssh/id_rsa.pub_m将master 上的密钥传到slave1的/home/hadoop下在slave1上#cat /root/.ssh/id_rsa.pub_m >> ~/.ssh/authorized_keys#chmod 644 ~/.ssh/authorized_keys反复操作第3步,完成master<-->slave1 master<-->slave2的免密码登录这样主节点和从节点之间就可以不用密码直接ssh访问,另外,在启动hadoop 时需要master ssh master,因此,在master的~/.ssh下,也执行下cat id_rsa.pub >> authorized_keys 即可。

4.安装JDK到/usr/local下命名为jdk6然后:编辑三台机器的/etc/profile,增加如下内容export JAVA_HOME=/usr/local/jdk6export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport HADOOP_HOME=/hadoop/hadoopexport HBASE_HOME=/hadoop/hbasePATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HBASE_HOME/bin#vi /root/.bashrc增加export HADOOP_CONF_DIR=/hadoop/hadoop-configexport HBASE_CONF_DIR=/hadoop/hbase-config5、防火墙各机器加入iptables策略:#iptables -I INPUT -s 192.168.0.0/255.255.255.0 -j ACCPET#service iptables save-----------------------------------------hadoop配置:1.下载安装#cd /hadoop#wget/apache-mirror//hadoop/core/hadoop-0.20.2/hadoo p-0.20.2.tar.gz#tar -zxvf hadoop-0.20.2.tar.gz#ln -s hadoop-0.20.2 hadoop由于上述目录中hadoop的配置文件和hadoop的安装目录是放在一起的,这样一旦日后升级hadoop版本的时候所有的配置文件都会被覆盖,因此将配置文件与安装目录分离,一种比较好的方法就是建立一个存放配置文件的目录,/hadoop/hadoop-config/,然后将 /hadoop/hadoop/conf/目录中的core-site.xml,slaves,hadoop-env.sh,masters, hdfs-site.xml,mapred-site.xml,这6个文件拷贝到 /hadoop/hadoop-config/目录中,并指定环境变量$HADOOP_CONF_DIR指向该目录。

hmaster

hmaster
Hmaster
夏明超
HMaster
• HMaster没有单点问题,HBase中可以启动多个 HMaster,通过Zookeeper的Master Election机制保证 总有一个Master运行,HMaster在功能上主要负责 Table和Region的管理工作: • 1. 管理用户对Table的增、删、改、查操作 • 2. 管理HRegionServer的负载均衡,调整Region分 布 • 3. 在Region Split后,负责新Region的分配 • 4. 在HRegionServer停机后,负责失效 HRegionServer 上的Regions迁移 • 5. HLOG的清理和切分,意外停机以后的恢复;
管理region
• Root和meta也放在region中,理论上rootregion也可以split; • User-re • • meta扫描线程为守候线程,默认循环时间为300秒 ,meta扫描线程 的作用是定期清理己经split的region并将它删除,工作过程如下: --> 连接meta server,scan表的info信息,扫描所有region,从region info中读出是否split的信息 -->如果己经split,则先获取splitA和splitB的region info -->如果splitA和splitB的reference都不再指向父region了(从它们 的regionPath可以得出),则将父region删除掉,删掉流程如下: --> 将region的状态置为offline -->将该region从regionsInTransition中删除掉 --> 将该region从regionPlan中删除掉,避免再进行balance之类 的操作 -->将该region的region info从AssignmentManager的regions树中 以及AssignmentManager中存放的每个servers中删掉 -->删除meta表里的该region的目录 -->通知meta region server删除该region

Hadoop2.4、Hbase0.98、Hive集群安装配置手册

Hadoop2.4、Hbase0.98、Hive集群安装配置手册

Hadoop、Zookeeper、Hbase、Hive集群安装配置手册运行环境机器配置虚机CPU E5504*2 (4核心)、内存 4G、硬盘25G进程说明QuorumPeerMain ZooKeeper ensemble member DFSZKFailoverController Hadoop HA进程,维持NameNode高可用 JournalNode Hadoop HA进程,JournalNode存储EditLog,每次写数据操作有大多数(>=N+1)返回成功时即认为该次写成功,保证数据高可用 NameNode Hadoop HDFS进程,名字节点DataNode HadoopHDFS进程, serves blocks NodeManager Hadoop YARN进程,负责 Container 状态的维护,并向 RM 保持心跳。

ResourceManager Hadoop YARN进程,资源管理 JobTracker Hadoop MR1进程,管理哪些程序应该跑在哪些机器上,需要管理所有 job 失败、重启等操作。

TaskTracker Hadoop MR1进程,manages the local Childs RunJar Hive进程HMaster HBase主节点HRegionServer HBase RegionServer, serves regions JobHistoryServer 可以通过该服务查看已经运行完的mapreduce作业记录应用 服务进程 主机/hostname 系统版本mysql mysqld10.12.34.14/ Centos5.810.12.34.15/h15 Centos5.8 HadoopZookeeperHbaseHiveQuorumPeerMainDFSZKFailoverControllerNameNodeNodeManagerRunJarHMasterJournalNodeJobHistoryServerResourceManagerDataNodeHRegionServer10.12.34.16/h16 Centos5.8 HadoopZookeeperHbaseHiveDFSZKFailoverControllerQuorumPeerMainHMasterJournalNodeNameNodeResourceManagerDataNodeHRegionServerNodeManager10.12.34.17/h17 Centos5.8 HadoopZookeeperHbaseHiveNodeManagerDataNodeQuorumPeerMainJournalNodeHRegionServer环境准备1.关闭防火墙15、16、17主机:# service iptables stop2.配置主机名a) 15、16、17主机:# vi /etc/hosts添加如下内容:10.12.34.15 h1510.12.34.16 h1610.12.34.17 h17b) 立即生效15主机:# /bin/hostname h1516主机:# /bin/hostname h1617主机:# /bin/hostname h173. 创建用户15、16、17主机:# useraddhduser密码为hduser# chown -R hduser:hduser /usr/local/4.配置SSH无密码登录a)修改SSH配置文件15、16、17主机:# vi /etc/ssh/sshd_config打开以下注释内容:#RSAAuthentication yes#PubkeyAuthentication yes#AuthorizedKeysFile .ssh/authorized_keysb)重启SSHD服务15、16、17主机:# service sshd restartc)切换用户15、16、17主机:# su hduserd)生成证书公私钥15、16、17主机:$ ssh‐keygen ‐t rsae)拷贝公钥到文件(先把各主机上生成的SSHD公钥拷贝到15上的authorized_keys文件,再把包含所有主机的SSHD公钥文件authorized_keys拷贝到其它主机上)15主机:$cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys16主机:$cat ~/.ssh/id_rsa.pub | ssh hduser@h15 'cat >> ~/.ssh/authorized_keys'17主机:$cat ~/.ssh/id_rsa.pub | ssh hduser@h15 'cat >> ~/.ssh/authorized_keys'15主机:# cat ~/.ssh/authorized_keys | ssh hduser@h16 'cat >> ~/.ssh/authorized_keys'# cat ~/.ssh/authorized_keys | ssh hduser@h17 'cat >> ~/.ssh/authorized_keys'5.Mysqla) Host10.12.34.14:3306b) username、passwordhduser@hduserZookeeper使用hduser用户# su hduser安装(在15主机上)1.下载/apache/zookeeper/2.解压缩$ tar ‐zxvf /zookeeper‐3.4.6.tar.gz ‐C /usr/local/配置(在15主机上)1.将zoo_sample.cfg重命名为zoo.cfg$ mv /usr/local/zookeeper‐3.4.6/conf/zoo_sample.cfg /usr/local/zookeeper‐3.4.6/conf/zoo.cfg2.编辑配置文件$ vi /usr/local/zookeeper‐3.4.6/conf/zoo.cfga)修改数据目录dataDir=/tmp/zookeeper修改为dataDir=/usr/local/zookeeper‐3.4.6/datab)配置server添加如下内容:server.1=h15:2888:3888server.2=h16:2888:3888server.3=h17:2888:3888server.X=A:B:C说明:X:表示这是第几号serverA:该server hostname/所在IP地址B:该server和集群中的leader交换消息时所使用的端口C:配置选举leader时所使用的端口3.创建数据目录$ mkdir /usr/local/zookeeper‐3.4.6/data4.创建、编辑文件$ vi /usr/local/zookeeper‐3.4.6/data/myid添加内容(与zoo.cfg中server号码对应):1在16、17主机上安装、配置1.拷贝目录$ scp ‐r /usr/local/zookeeper‐3.4.6/ hduser@10.12.34.16:/usr/local/$ scp ‐r /usr/local/zookeeper‐3.4.6/ hduser@10.12.34.17:/usr/local/2.修改myida)16主机$ vi /usr/local/zookeeper‐3.4.6/data/myid1 修改为2b)17主机$ vi /usr/local/zookeeper‐3.4.6/data/myid1修改为3启动$ cd /usr/local/zookeeper‐3.4.6/$./bin/zkServer.sh start查看状态:$./bin/zkServer.sh statusHadoop使用hduser用户# su hduser安装(在15主机上)一、安装Hadoop1.下载/apache/hadoop/common/2.解压缩$ tar ‐zxvf /hadoop‐2.4.0.tar.gz ‐C /usr/local/二、 编译本地库,主机必须可以访问internet。

Win10系统安装Hadoop与Hbase

Win10系统安装Hadoop与Hbase

目录1. 前言 (2)2. 准备工作 (2)2.1. 下载Hadoop (2)2.2. 下载hadoop-common (3)2.3. 下载Hbase (3)2.4. 下载JDK (4)3. 环境配置 (4)3.1. 将下载好的3个压缩包分别解压缩 (4)3.2. 覆盖文件 (6)3.3. 安装JDK (7)3.3.1. 配置JAVA环境变量 (8)3.3.2. 测试JDK安装是否成功 (11)4. 配置Hadoop (11)4.1. hadoop-env.cmd (12)4.2. core-site.xml (13)4.3. hdfs-site.xml (14)4.4. 创建mapred-site.xml (15)4.5. yarn-site.xml (18)5. 启动Hadoop (20)5.1. 以管理员身份运行CMD命令提示符 (20)5.2. 切换到hadoop目录 (21)5.3. 运行hadoop-env.cmd脚本 (21)5.4. 格式化HDFS文件系统 (21)5.5. 启动HDFS (22)5.6. 遇到异常 (23)5.6.1. 解决方案 (23)5.7. 停止Hadoop (25)6. 配置Hbase (26)6.1. 编辑hbase-site.xml (26)6.2. 编辑hbase-env.cmd (27)7. 启动Hbase (28)8. Hbase Shell (31)8.1. 用shell连接HBase (31)8.2. 使用shell (31)8.2.1. 创建表 (31)8.2.2. Scan表 (32)8.2.3. Get一行 (33)8.2.4. 删除表 (33)8.2.5. 关闭shell (34)8.2.6. 停止Hbase (34)9. Java API Hbase (35)1.前言工作需要,现在开始做大数据开发了,通过下面的配置步骤,你可以在win10系统中,部署出一套hadoop+hbase,便于单机测试调试开发。

hbase常用命令及使用方法

hbase常用命令及使用方法

hbase常用命令及使用方法一、HBase简介HBase是一个基于Hadoop的分布式列存储系统,可以用来存储海量的结构化数据。

它是一个开源的、高可靠性、高性能、可伸缩的分布式数据库,具有强大的数据处理能力和卓越的扩展性。

二、HBase常用命令1.启动和停止HBase服务启动HBase服务:在终端输入start-hbase.sh命令即可启动HBase 服务。

停止HBase服务:在终端输入stop-hbase.sh命令即可停止HBase 服务。

2.创建表创建表:在HBase shell中使用create命令来创建表,语法如下:create 'table_name', 'column_family'3.删除表删除表:在HBase shell中使用disable和drop命令来删除表,语法如下:disable 'table_name'drop 'table_name'4.添加数据添加数据:在HBase shell中使用put命令来添加数据,语法如下:put 'table_name', 'row_key', 'column_family:column_qualifier','value'5.查询数据查询数据:在HBase shell中使用get命令来查询数据,语法如下:get 'table_name', 'row_key'6.扫描全表扫描全表:在HBase shell中使用scan命令来扫描全表,语法如下:scan 'table_name'7.删除数据删除数据:在HBase shell中使用delete命令来删除数据,语法如下:delete 'table_name', 'row_key', 'column_family:column_qualifier'8.修改表修改表:在HBase shell中使用alter命令来修改表,语法如下:alter 'table_name', {NAME => 'column_family', VERSIONS =>version_num}9.查看表结构查看表结构:在HBase shell中使用describe命令来查看表结构,语法如下:describe 'table_name'10.退出HBase shell退出HBase shell:在HBase shell中输入exit命令即可退出。

hbase基本操作

hbase基本操作

hbase基本操作HBase是一个分布式开源数据库,是Apache Hadoop项目的一部分。

它是一个面向列的NoSQL数据库,可以在非常大的数据集上进行实时读写操作。

HBase有许多不同的用途,包括在大型网站中存储日志数据、高速数据分析、批量处理数据以及许多其他用途。

在本文中,我们将探讨一些基本的HBase操作。

1. 安装和启动HBaseHBase的安装非常简单,您只需要下载并解压HBase软件包即可。

安装完成后,您可以通过以下命令启动HBase:```bin/start-hbase.sh```此命令将启动所有必要的进程以及HBase的主服务器,也称为“RegionServer”。

2. 创建表在HBase中创建表与关系数据库中创建表的过程非常相似。

以下是一个基本的示例:```create 'myTable', 'myColumnFamily'```其中,“myTable”是表名,“myColumnFamily”是列族名。

列族是列的集合。

3. 插入数据注意,HBase使用列族名称和列名来唯一标识列。

在上面的示例中,“myColumnFamily”是列族名称,“column1”是列名,“value1”是列值。

您还可以插入多个列和一行中的多个值。

4. 获取数据此命令将返回表“myTable”中行键为“row1”的所有列。

5. 扫描表扫描表是获取表中所有行的一种简单方法。

以下是一个基本的示例:6. 删除数据要删除HBase表,您可以使用以下命令:此命令将禁用和删除表“myTable”。

总结:HBase是一个非常强大的分布式数据库,可以在大型数据集上进行快速读写操作。

在本文中,我们介绍了一些基本的HBase操作,包括创建表、插入数据、获取数据、扫描表、删除数据和删除表。

这些操作是使用HBase时非常常见的操作。

hbase的安装和基本操作

hbase的安装和基本操作

安装和配置HBase需要按照以下步骤进行:
1. 解压安装包:将HBase安装包解压到指定的目录中。

2. 重命名路径:将解压后的路径重命名为HBase的根目录。

3. 添加环境变量:将HBase的根目录添加到系统的环境变量中,以便在命令行中访问HBase。

4. 配置hbase-env.sh文件:打开HBase根目录下的conf文件夹,找到hbase-env.sh文件,修改其中的配置项,例如HBASE_HEAPSIZE 等。

5. 配置hbase-site.xml文件:打开HBase根目录下的conf文件夹,找到hbase-site.xml文件,修改其中的配置项,例如HBASE_HOME、HBASE_ZOOKEEPER_QUORUM等。

6. 配置regionservers文件:打开HBase根目录下的conf文件夹,找到regionservers文件,添加需要运行的regionserver节点的主机名。

7. 创建hbase.tmp.dir目录:在HBase根目录下创建一个临时目录,用于存储HBase运行时产生的临时文件。

8. 将文件分发到slave节点:将HBase的安装包和配置文件分发到其他slave节点上,以便这些节点可以运行HBase。

9. 修改hbase目录权限:在所有节点上修改HBase目录的权限,确保只有指定的用户可以访问和修改HBase的目录和文件。

完成以上步骤后,您已经成功安装和配置了HBase。

您可以使用HBase 提供的命令行工具或API进行基本操作,例如创建表、插入数据、查询数据等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
scan 'user', {FILTER => org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 2)}
8. 如何配置HMater主备 8.1 修改配置文件
修改/conf/hbase-site.xml文件 将
<name>hbase.master</name>
export JAVA_HOME=/usr/local/jdk export HBASE_CLASSPATH=/home/sof=false #如果使用独立安装的zookeeper这个地方就是false,否则为true
hbase-site.xml
<value>master:60000</value>
修改为
<name>hbase.master.port</name>
<value>60000</value>
只记录端口号即可,然后将此文件复制到其他HBASE节点上
8.2 /conf下添加backup-masters 文件
内容如下:slave2
表示记录从HMaster的主机
3. HBase安装以及多HMaseter配置
1.解压缩hbase-0.94.6.tar.gz tar zxvf hbase-0.94.6.tar.gz 2.配置hbase环境变量/etc/profile export HBASE_HOME=/home/hadoop/hbase export PATH=$PATH:$HBASE_HOME/bin 3.修改hbase/conf/的配置文件: hbase-env.sh
scan 'user',{COLUMNS =>'info:login_name'} scan 'user', {FILTER =>"(PrefixFilter ('e') )"} //rowkey
scan 'user', {FILTER =>"(PrefixFilter ('e') AND (QualifierFilter (>=, 'binary:login_name')))"}
regionservers
slave1 slave2 slave3
4.分发到3个从节点
scp -r ~/hbase soft01@slave1:~/ scp -r ~/hbase soft01@slave2:~/ scp -r ~/hbase soft01@slave3:~/ 5.配置其他三台hbase环境变量/etc/profile export HBASE_HOME=/home/hadoop/hbase export PATH=$PATH:$HBASE_HOME/bin 6.启动hbase: start-hbase.sh 7.命令行以及界面验证hbase安装: hbase shell >list http://master:60010/ >describe '表名' 查看表结构 >scan '表名',[列名称] 查看表数据
<configuration> <property> <name>hbase.master</name> <value>master:60000</value> #hmaster的ip </property> <property> <name>hbase.master.maxclockskew</name> #时间同步允许的时间差 <value>180000</value> </property> <property> <name>hbase.rootdir</name> <value>hdfs://master:9000/hbase</value> #HDFS主的ip </property> <property> <name>hbase.cluster.distributed</name> #是否分布式运行 <value>true</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>slave1,slave2,slave3</value> #zookper的ip地址 </property> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/home/soft01/zookeeper</value> #Zookper路径 </property> </configuration>
>create '表名','列簇名'... >put >get delete ‘scores','Jim','grade'
disable 'user' drop 'user' put 'user','P#test01','info:name' // put 表名 , rowkey ,‘列祖:列’,value get 'user','P#test01','info:name' // get 表名 , rowkey ,‘列祖:列’
然后在配置backup-masters的机器上,启动HBase即可:start-hbase.sh
ps:单独启动master备份服务 hbase-daemon.sh start master --backup
9.添加HBase节点
9.1 复制原子节点到新节点上
92. hbase-daemon.sh start regionserver
相关文档
最新文档