centos安装单机Hadoop、Hive

1、从华为云申请一个ECS

2、配置yum源为华为镜像源,配置方式参考http://cmc-cd-mirror.rnd.huawei.com/mirror,在操作系统类中找到CentOS,点击“我要使用”,参考弹出的help信息配置ECS的yum源。

3、使用java -version检查java是否安装,若没有,则参考https://segmentfault.com/a/1190000015389941安装java,并参考以下脚本配置以下两个环境变量:

#具体的目录取值,请以具体情况为准
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el7_6.x86_64
export PATH=$PATH:$JAVA_HOME/bin

使用java -version检查java是否安装成功。

4、安装hadoop,从官网下载hadoop压缩包,此处使用hadoop-2.7.7.tar.gz版本,解压后并配置环境变量

#解压hadoop到当前目录
tar xzf hadoop-2.7.7.tar.gz
#配置环境变量
export HADOOP_HOME=/home/hadoop-2.7.7
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

使用hadoop version检查hadoop是否安装成功

5、配置

默认即为独立(本地)模式,无需修改配置,若要使用“伪分布式”或者“全分布式”,请参考《Hadoop权威指南》附录A中A.3的配置。

测试:可以使用Hadoop自带的wordCount测试Hadoop的可用性

具体请参考《Hive权威指南》2.2.4 测试Hadoop 章节,我所使用的2.7.7版本,examples.jar包是hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar,其他命令一样,注意结果输出目录需要是一个不存在的目录。

6、安装Hive

从官网下载apache-hive-2.3.5-bin.tar.gz,并解压到当前目录,然后添加环境变量

#解压hive到当前目录
tar xzf apache-hive-2.3.5-bin.tar.gz
#配置环境变量
export HIVE_HOME=/home/apache-hive-2.3.5-bin
export PATH=$PATH:$HIVE_HOME/bin

修改Hive配置文件

单机版(仅有一个用户访问)的hive可以不用安装MySql,在修改hive默认配置时,需要在conf/hive-site.xml中修改,hive-site.xml通过hive-default.xml.template复制生成

cp hive-default.xml.template hive-site.xml

(1)启动hive,报错

Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D

修改:将hive-site.xml配置文件中的${system:java.io.tmpdir}改为自定义路径

(2)再次启动hive,执行 SHOW TABLES; 报错:

hive> show tables;
FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

修改:将hive-site.xml配置文件中的hive.metastore.schema.verification属性改为false

  <property>

    <name>hive.metastore.schema.verification</name>

    <value>false</value>
  </property>

(3)再次启动hive

执行 SHOW TABLES; 报错

FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

修改:将hive-site.xml配置文件中的datanucleus.schema.autoCreateAll属性改为true。

(4)再次启动hive

执行 SHOW TABLES; 报错

修改:将配置文件中${system:user.name}删除

(5)再次启动hive

 

7、说明:

  • 以上修改环境变量只是临时生效,若要永久生效,则需要把export语句写入到/etc/profile中。
  • 若启动过程中遇到其他错误,谷歌搜索错误码基本能找到答案。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值