Linux环境下Hadoop与HBase安装教程

需积分: 9 3 下载量 131 浏览量 更新于2024-09-11 收藏 49KB DOCX 举报
"Hadoop和HBase的安装步骤文档" 在本文档中,我们将详细探讨如何在Linux环境下安装Hadoop和HBase,以及相关的组件如ZooKeeper和Hive。首先,我们要明确这里的Hadoop指的是Hadoop Common,它包含了分布式文件系统(DFS)和MapReduce的核心功能。由于Hadoop在Windows系统上的兼容性不佳,推荐使用Linux,特别是CentOS 6.x进行安装。 安装前的准备工作至关重要。你需要确保系统已经安装了SSH和JDK 1.6,因为Hadoop依赖于JDK的编译工具。可以通过`yum install rsync`命令安装rsync。SSH通常预装在系统中,但如果你的环境中没有,也需要进行安装。 JDK 1.6的安装步骤如下: 1. 在`/usr/java`目录下创建一个新目录,并切换至该目录。 2. 给JDK的下载文件添加执行权限:`chmod a+x jdk-6u27-linux-i586.bin` 3. 运行安装文件:`./jdk-6u27-linux-i586.bin` 4. 设置环境变量。在`/etc/profile`文件中添加以下行: ``` export JAVA_HOME=/usr/java/jdk1.6.0_27 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin ``` 5. 保存并应用环境变量更改,可以使用`source /etc/profile`或重启系统。 在开始Hadoop的安装之前,确保所有参与集群的机器(例如,192.168.0.141、142和143)之间的主机名和IP地址能够正确解析。可以使用`ping`命令进行测试。如果解析有问题,需要编辑`/etc/hosts`文件,为每台机器添加IP地址和对应的主机名。对于NameNode机器,需要包含集群中所有机器的IP和主机名信息;对于DataNode机器,只需添加自身IP和NameNode的IP。 接下来是Hadoop的安装: 1. 下载Hadoop二进制包并解压到指定目录,例如`/usr/local/hadoop`。 2. 配置Hadoop的配置文件,如`hdfs-site.xml`(定义DFS参数)、`mapred-site.xml`(定义MapReduce参数)和`core-site.xml`(基础配置)。 3. 修改`etc/hadoop/slaves`文件,列出所有DataNode机器的主机名。 4. 初始化HDFS文件系统:`hadoop namenode -format`。 5. 启动Hadoop服务,包括DataNode、NameNode、SecondaryNameNode和ResourceManager。 接着安装ZooKeeper,它是Hadoop生态系统中的协调服务: 1. 下载ZooKeeper,解压并移动到合适的位置,如`/usr/local/zookeeper`。 2. 配置`conf/zoo.cfg`,包括数据存储路径等。 3. 修改`myid`文件,为每个节点分配唯一的ID。 4. 启动ZooKeeper服务器。 HBase的安装随后进行: 1. 下载HBase,解压到适当目录,如`/usr/local/hbase`。 2. 配置`conf/hbase-site.xml`,设定HBase与Hadoop的相关连接信息。 3. 修改`conf/hbase-env.sh`,设置HBase使用的JDK路径和其他环境变量。 4. 初始化HBase:`hbase(main):001:0> create 'test', 'cf'` 5. 启动HBase服务,包括Master和RegionServer。 最后,Hive是一个基于Hadoop的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供SQL查询功能: 1. 安装Hive,解压并配置。 2. 配置`conf/hive-site.xml`,设置Hive与Hadoop、Metastore等相关参数。 3. 创建metastore数据库,用于存储元数据。 4. 初始化Hive Metastore服务。 5. 启动Hive服务。 完成这些步骤后,你将拥有一个基本运行的Hadoop、ZooKeeper、HBase和Hive集群。记得在操作过程中检查日志文件,确保所有服务都正常启动并运行。在实际环境中,还需要考虑高可用性、安全性以及其他优化设置。

23/07/23 16:19:48 ERROR AsyncProcess: Failed to get region location org.apache.hadoop.hbase.DoNotRetryIOException: java.lang.NoClassDefFoundError: Could not initialize class org.apache.hadoop.hbase.util.ByteStringer at org.apache.hadoop.hbase.client.RpcRetryingCaller.translateException(RpcRetryingCaller.java:241) at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:214) at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas$RetryingRPC.call(ScannerCallableWithReplicas.java:364) at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas$RetryingRPC.call(ScannerCallableWithReplicas.java:338) at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:137) at org.apache.hadoop.hbase.client.ResultBoundedCompletionService$QueueingFuture.run(ResultBoundedCompletionService.java:65) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.apache.hadoop.hbase.util.ByteStringer at org.apache.hadoop.hbase.protobuf.RequestConverter.buildRegionSpecifier(RequestConverter.java:1041) at org.apache.hadoop.hbase.protobuf.RequestConverter.buildScanRequest(RequestConverter.java:492) at org.apache.hadoop.hbase.client.ClientSmallReversedScanner$SmallReversedScannerCallable.call(ClientSmallReversedScanner.java:291) at org.apache.hadoop.hbase.client.ClientSmallReversedScanner$SmallReversedScannerCallable.call(ClientSmallReversedScanner.java:276) at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:212) ... 7 more

2023-07-24 上传

org.apache.hadoop.hbase.DoNotRetryIOException: Unable to load configured region split policy 'org.apache.phoenix.schema.MetaDataSplitPolicy' for table 'SYSTEM.CATALOG' Set hbase.table.sanity.checks to false at conf or table descriptor if you want to bypass sanity checks at org.apache.hadoop.hbase.util.TableDescriptorChecker.warnOrThrowExceptionForFailure(TableDescriptorChecker.java:296) at org.apache.hadoop.hbase.util.TableDescriptorChecker.sanityCheck(TableDescriptorChecker.java:109) at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:2025) at org.apache.hadoop.hbase.master.MasterRpcServices.createTable(MasterRpcServices.java:657) at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java) at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:413) at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:133) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:338) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:318) org.apache.hadoop.hbase.DoNotRetryIOException: Unable to load configured region split policy 'org.apache.phoenix.schema.MetaDataSplitPolicy' for table 'SYSTEM.CATALOG' Set hbase.table.sanity.checks to false at conf or table descriptor if you want to bypass sanity checks at org.apache.hadoop.hbase.util.TableDescriptorChecker.warnOrThrowExceptionForFailure(TableDescriptorChecker.java:296) at org.apache.hadoop.hbase.util.TableDescriptorChecker.sanityCheck(TableDescriptorChecker.java:109) at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:2025) at org.apache.hadoop.hbase.master.MasterRpcServices.createTable(MasterRpcServices.java:657) at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java) at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:413) at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:133) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:338) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:318)

2023-07-14 上传