ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:427.32KB ,
资源ID:19861204      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19861204.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(4Hbase安装配置和应用实践Word文件下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

4Hbase安装配置和应用实践Word文件下载.docx

1、10.31.44.200 slaver1 (datanode)10.31.44.201 slaver2 (datanode)第一部分:准备工作(Hadoop、SSH、NTP)1、Hadoop完全分布式的安装:必须可以正常启动 HDFS 系统,确保hdfs能够上传和读写文件。2、SSH无密验证双向互通:这个具体安装,并且达到无密码登录前面已经介绍。但是要达到双向无密码互通我们只需要将每台机器的公钥均写入到同一个授权文件,然后将授权文件复制到每台机器上即可(具体公钥写入授权文件的方法参考Hadoop完全分布式的安装试验)。这样就可以达到双向无密码互通。这样Hadoop的脚本才可以远程操控其他的Ha

2、doop和Hbase进程。3、Ntp时间同步服务器安装配置:集群的时钟要保证基本的一致。稍有不一致是可以容忍的,但是很大的不一致会 造成奇怪的行为。 运行 NTP 或者其他什么东西来同步你的时间.下面对Ntp时间同步服务器NTP安装配置步骤如下:3.1、服务端(master)apt-get install ntp安装后默认启动服务,如果没有启动,启动之。/etc/init.d/ntp startvim /etc/ntp.conf 修改为如下:重启ntp服务/etc/init.d/ntp restart3.2、客户端(slaver1、slaver2)1)使用ntpdate命令,如果不存在这个命令

3、,则先安装apt-get install ntp2) /usr/sbin/ntpdate 10.31.44.117 /即使用ip为10.31.44.117的ntp服务器同步时间3)设置定时同步 vim /etc/crontab系统便会在每天早上1点30分自动将系统时间同步到ntp服务器的时间当然这里crontab的时间是指客户端的时间,同步后等同于ntp服务器的时间另外,可以使用以下命令同步服务器时间ulimit 和 nproc设置(集群均配置)HBase是数据库,会在同一时间使用很多的文件句柄。大多数Ubuntu系统使用的默认值1024是不能满足的,所以你需要修改你的最大文件句柄限制。可以设

4、置到10k. 你还需要修改 hbase 用户的 nproc,如果过低会造成 OutOfMemoryError异常。需要澄清的,这两个设置是针对操作系统的,不是Hbase本身的。有一个常见的错误是Hbase运行的用户,和设置最大值的用户不是一个用户。在Hbase启动的时候,第一行日志会现在ulimit信息,所以你最好检查一下。vim /etc/security/limits.conf 添加如下内容:root - nofile 32768root soft/hard nproc 32000在 /etc/pam.d/common-session 加上这一行:session required pam_

5、limits.so如下:否则在 /etc/security/limits.conf上的配置不会生效.还有注销再登录,这些配置才能生效!root - nofile 32768 root最大能打开的文件数不超过65536root hard nproc16384 root用户最大能开启的进程数不超过16384pam_limits.so模块可以使用在对一般应用程序使用的资源限制方面。如果需要在SSH服务器上对来自不同用户的ssh访问进行限制,就可以调用该模块来实现相关功能。当需要限制用户admin登录到SSH服务器时的最大连接数(防止同一个用户开启过多的登录进程),就可以在/etc/pam.d/ssh

6、d文件中增加一行对pam_limits.so模块的调用第二部分:ZooKeeper集群环境的安装配置Zookeeper是一个分布式开源框架,提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务分布式同步(Distributed Synchronization)、命名服务(Naming Service)、集群维护(Group Maintenance)等,简化分布式应用协调及其管理的难度,提供高性能的分布式服务。ZooKeeper本身可以以单机模式安装运行,不过它的长处在于通过分布式ZooKeeper集群(一个Leader,多个Follower),基于一定的策略来保证ZooKeeper集群

7、的稳定性和可用性,从而实现分布式应用的可靠性。ZooKeeper安装过程以下步骤均在master服务器上操作,除非有特殊说明等完成以后再进行分发至其他服务器。1、解压zookeeper-3.4.5.tar.gz至/root目录下解压:tar -zxf zookeeper-3.4.5.tar.gz更改名字为zookeeper:mv zookeeper-3.4.5 u-zookeeper2、修改zoo.cfg配置文件在Zookeeper集群环境下只要一半以上的机器正常启动了,那么Zookeeper服务将是可用的。因此,集群上部署Zookeeper最好使用奇数台机器,这样如果有5台机器,只要3台正常

8、工作则服务将正常,下面我们将对Zookeeper的配置文件的参数进行设置进入到u-zookeeper的conf目录下将zoo_sample.cfg文件拷贝一份,命名为为:zoo.cfgvim zoo.cfg修改内容如下:dataDir=/root/u-zookeeper/data #这两个目录需要创建dataLogDir=/root/u-zookeeper/logserver.1=192.168.60.198:2888:3888server.2=192.168.60.178:server.3=192.168.60.179:注意上图的配置中master,slave1分别为主机名。在上面的配置文件

9、中server.id=host:port:port中的第一个port是从机器(follower)连接到主机器(leader)的端口号,第二个port是进行leadership选举的端口号。接下来在dataDir所指定的目录下创建一个文件名为myid的文件,文件中的内容只有一行,为本主机对应的id值,也就是上图中server.id中的id。例如:在服务器1中的myid的内容应该写入1,在服务器2中的myid的内容应该写入2。4、配置环境变量vim /etc/profile:/root/u-zookeeper/confvim /etc/environment/root/u-zookeeper/bi

10、n:6、远程复制分发安装文件接下来将上面的安装文件拷贝到集群中的其他机器上对应的目录下:同理拷贝/etc/profile,/etc/environment至slaver1,slaver2中拷贝完成后修改对应的机器上的myid。例如修改slaver1中的myid如下:echo 2 /roor/u-zookeeper/data/myid cat /roor/u-zookeeper/data/myid2例如修改slaver2中的myid如下:3cat /roor/u-zookeeper/data/myid 3以上操作完成后,请所有节点服务器重启。一定要reboot7、启动zookeeper集群在Zo

11、oKeeper集群的每个结点上,执行启动ZooKeeper服务的脚本:zkServer.sh start如下图所示:其中,QuorumPeerMain是zookeeper进程,启动正常。如上依次启动了所有机器上的Zookeeper之后可以通过ZooKeeper的脚本来查看启动状态,包括集群中各个结点的角色(或是Leader,或是Follower),如下所示,是在ZooKeeper集群中的每个结点上查询的结果:通过上面状态查询结果可见,slaver1是集群的Leader,其余的两个结点是Follower另外,可以通过客户端脚本,连接到ZooKeeper集群上。对于客户端来说,ZooKeeper是

12、一个整体(ensemble),连接到ZooKeeper集群实际上感觉在独享整个集群的服务,所以,你可以在任何一个结点上建立到服务集群的连接,例如:退出:quit8、停止zookeeper进程:zkServer.sh stop至此,Zookeeper集群安装完成!第三部分:Hbase的安装设置1、解压hbase-0.96.2-hadoop2-bin.tar.gz.tar,并更名为u-hbasetar -xzvf hbase-0.96.2-hadoop2-bin.tar.gz.taru-hbase目录结构如下:2、配置conf/hbase-env.shvim /root/u-hbase/conf/

13、hbase-env.sh添加内容如下:?Hbase?zookeeper?zookeep?,即Hbase默认自带一个zookeep集群?而在实际的商业项目中通常?更便于优化配置提高集群工作效率,?conf/hbase-env.sh?HBASE_MANAGES_ZK ?true?,?zookeeper.在本实验中,我们采用独立运行zookeeper集群的方式,故将其属性值改为false.3、配置conf/hbase-site.xml配置效果图如下:propertynamehbase.rootdirvaluehdfs:/192.168.60.198:9000/hbase/propertyhbase.

14、master60000hbase.tmp.dirfile:/root/u-hbase/tmphbase.zookeeper.property.dataDir/root/u-zookeeper/datahbase.cluster.distributedtruehbase.zookeeper.quorummaster,slaver1,slaver2hbase.zookeeper.property.clientPort2181 hbase.cluster.distributed ? true ? hbase.rootdir ?HDFS?NameNode?hbase.rootdir:region se

15、rver?URL?schemehbase.cluster.distributedfalse?,true?false,Hbase?Zookeeper?JVM?hbase-site.xml?zookeeper:zoo.cfg?zookeeper,?zookeepr? hbase-site.xml?ensemble servers,? hbase.zookeeper.quorum.在这里列出Zookeeper?。hbase.zookeeper.property.clientPort:ZooKeeper?zoo.conf?hbase.zookeeper.property.dataDir:Zookeep

16、er,?host?需要?4、配置conf/regionservers写入:slaver1、slaver2 HRegionServer,?host (?Hadoop? slaves ?). ?server?.5、分发hbase上面我们配置完毕,?slave?scp -r /root/u-hbase slaver1:/root/scp -r /root/u-hbase slaver2:6、运行和测试在master上执行:1、start-dfs.sh 2、start-yarn.sh3、zkServer.sh start(各个节点均执行)4、start-hbase.sh (先启动zookeeper然后

17、hadoop再然后hbase)使用jps查看进程,在master上:在slaver1、slaver2(slave节点)上60010,60030?查看http:/10.31.44.117:60010/10.31.44.118:60030/rs-status第四部分:Hbase应用实践1、HBase表结构介绍在使用HBase之前,先介绍HBase的表结构,这样有利于实验的实践。HBase以表的形式存储数据。表有行和列组成。列划分为若干个列族/列簇(column family)。Row Keycolumn-family1column-family2column-family3column1colum

18、n2column3key1key2key3如上图所示,key1,key2,key3是三条记录的唯一的row key值,column-family1,column-family2,column-family3是三个列族,每个列族下又包括几列。比如column-family1这个列族下包括两列,名字是column1和column2,t1:abc,t2:gdxdf是由row key1和column-family1-column1唯一确定的一个单元cell。这个cell中有两个数据,abc和gdxdf。两个值的时间戳不一样,分别是t1,t2, hbase会返回最新时间的值给请求者。这些名词的具体含义如

19、下:(1)与nosql数据库们一样,row key是用来检索记录的主键。访问hbase table中的行,只有三种方式:(1.1) 通过单个row key访问(1.2) 通过row key的range(1.3) 全表扫描Row key行键 (Row key)可以是任意字符串(最大长度是 64KB,实际应用中长度一般为 10-100bytes),在hbase内部,row key保存为字节数组。存储时,数据按照Row key的字典序(byte order)排序存储。设计key时,要充分排序存储这个特性,将经常一起读取的行存储放到一起。(位置相关性)注意:字典序对int排序的结果是1,10,100,

20、11,12,13,14,15,16,17,18,19,2,20,21,9,91,92,93,94,95,96,97,98,99。要保持整形的自然序,行键必须用0作左填充。行的一次读写是原子操作 (不论一次读写多少列)。这个设计决策能够使用户很容易的理解程序在对同一个行进行并发更新操作时的行为。(2)列族 column familyhbase表中的每个列,都归属与某个列族。列族是表的chema的一部分(而列不是),必须在使用表之前定义。列名都以列族作为前缀。例如courses:history , courses:math 都属于 courses 这个列族。访问控制、磁盘和内存的使用统计都是在列族

21、层面进行的。实际应用中,列族上的控制权限能帮助我们管理不同类型的应用:我们允许一些应用可以添加新的基本数据、一些应用可以读取基本数据并创建继承的列族、一些应用则只允许浏览数据(甚至可能因为隐私的原因不能浏览所有数据)。(3) 单元CellHBase中通过row和columns确定的为一个存贮单元称为cell。由row key, column( = + ), version 唯一确定的单元。cell中的数据是没有类型的,全部是字节码形式存贮。(4)时间戳 timestamp每个cell都保存着同一份数据的多个版本。版本通过时间戳来索引。时间戳的类型是 64位整型。时间戳可以由hbase(在数据写

22、入时自动 )赋值,此时时间戳是精确到毫秒的当前系统时间。时间戳也可以由客户显式赋值。如果应用程序要避免数据版本冲突,就必须自己生成具有唯一性的时间戳。每个cell中,不同版本的数据按照时间倒序排序,即最新的数据排在最前面。为了避免数据存在过多版本造成的的管理 (包括存贮和索引)负担,hbase提供了两种数据版本回收方式。一是保存数据的最后n个版本,二是保存最近一段时间内的版本(比如最近七天)。用户可以针对每个列族进行设置。2、实例创建一张学生成绩表下面我们要创建以下一张学生成绩表:namegradcoursemathartTom59787Jim48980grad?,course?math?art,?course?computer,physics?(1)?scores,?courese代码如下:hbase(main):001:0 create scores,grade, course可以使?list?HBase?describe?(?)(2)?put scoresTomgrade:5course:math97art87Jim48980

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1