伪分布式Hadoop和Hive的安装及配置

伪分布式Hadoop和Hive的安装及配置,第1张

伪分布式Hadoop和Hive的安装配置 伪分布式Hadoop和Hive的安装及配置

安装JDK

yum list | grep jdk #查看yum源

yum -y install java-1.8.0-openjdk* #安装jdk

java -version #验证是否成功安装,安装路径一般在/usr/lib/jvm



安装Hadoop

下载地址:https://archive.apache.org/dist/hadoop/core/

tar -zxvf  hadoop-2.9.2.tar.gz #解压

mv /usr/local/hadoop-2.9.2 /usr/local/hadoop #重命名



配置JDK和Hadoop的环境变量

vim /etc/profile

# Add JDK 
export JAVA_HOME=/usr/lib/jvm/java
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar

#Add Hadoop
export HADOOP_HOME=.../hadoop #路径为hadoop的解压路径
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

并使环境变量生效source /etc/profile





配置Hadoop

在…/hadoop目录下新建文件夹tmpmkdir tmp,然后进入配置文件目录 cd .../hadoop/ect/hadoop,复制文件cp mapred-site.xml.template mapred-site.xml,然后进行以下修改

#修改Hadoop启动所需的jdk环境目录
vim hadoop-env.sh
#修改内容为
export JAVA_HOME=/usr/lib/jvm/java


vim core-site.xml 
#修改内容如下

  
    
    fs.defaultFS 
    hdfs://VM-20-12-centos:9005
   
   
     
   
     hadoop.tmp.dir
      /..../hadoop/tmp
  


vim hdfs-site.xml 
#修改内容如下

   
              dfs.replication
              1
  
  
          dfs.client.use.datanode.hostname
          true
  
  
          dfs.datanode.use.datanode.hostname
          true
  
  
      dfs.permissions
      false
  



vim mapred-site.xml 
#修改内容如下

        
             
             mapreduce.framework.name
             yarn
      


vim yarn-site.xml 
#修改内容如下

         
             
             yarn.resourcemanager.hostname
             VM-20-12-centos
         
         
             
             yarn.nodemanager.aux-services
             mapreduce_shuffle
         



vim slaves 
#配置主从节点,因为是伪分布式,只需要配置当前主机名
VM-20-12-centos




格式化namenode存储路径

hadoop namenode -format



启动Hadoop

start-all.sh #启动

jps #查看节点,正常除了jps有5个

stop-all.sh #关闭



安装Hive

下载地址:https://archive.apache.org/dist/hive/

tar -zxvf apache-hive-2.3.7-bin.tar.gz  #解压

mv apache-hive-2.1.1-bin hive #修改名称



配置环境变量

vim /etc/profile

export HIVE_HOME=.../hive #路径为hive的解压路径

export PATH=$PATH:$HIVE_HOME/bin

source /etc.profile #使环境变量生效

hive --version #检查是否安装成功



配置hive

cd .../hive/conf

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

vim hive-site.xml 

    
    
        javax.jdo.option.ConnectionUserName #账号
        root
    
    
        javax.jdo.option.ConnectionPassword #密码
        ******
    
   
        javax.jdo.option.ConnectionURL      #IP
        jdbc:mysql://localhost:3306/hive
    
    
        javax.jdo.option.ConnectionDriverName #驱动名称,由com.mysql.jdbc.Driver改为com.mysql.cj.jdbc.Driver
        com.mysql.cj.jdbc.Driver
    





删除原有配置







下载并复制mysql的驱动程序到hive/lib下面

下载地址:https://repo1.maven.org/maven2/mysql/mysql-connector-java/

cp -p mysql-connector-java-8.0.27.jar .../hive/lib



Hive初始化并执行

schematool -dbType mysql -initSchema 初始化

hive #启动hadoop后执行



在过程中可能遇到的问题

问题1:hadoop依赖的jar包和hive依赖的jar包冲突

问题描述:SLF4J: Class path contains multiple SLF4J bindings.

SLF4J: Found binding in [jar:file:/app/Hive/hive/lib/log4j-slf4j-impl-2.6.2.jar!

/org/slf4j/impl/StaticLoggerBinder.class]

/app/Hive/hive/lib/log4j-slf4j-impl-2.6.2.jar

SLF4J: Found binding in [jar:file:/app/hadoop/hadoop/share/hadoop/common/lib/slf

4j-log4j12-1.7.25.jar!

/org/slf4j/impl/StaticLoggerBinder.class]

/app/hadoop/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar

解决方法:删除其中一个jar包



问题2:metastore元数据库初始化失败

问题描述:java.io.IOException: Schema script failed, errorcode 2

解决方法:1、查看hive-site.xml原有旧配置是否已更新或已删除
2、查看Hadoop配置目录下是否也存在hive-site.xml,若有则进行替换



问题3:路径有误

问题描述:java.net.URISyntaxException: Relative path in absolute URI: KaTeX parse error: Expected '}', got 'EOF' at end of input: …a.io.tmpdir%7D/%7Bsystem:user.name%7D

解决方法:

编辑配置hive文件hive-site.xml#如下命令将"${system:Java.io.tmpdir}“字段全部替换成”/hive/tmp"

sed -i 's#${system:Java.io.tmpdir}#/hive/tmp#g' hive-site.xml


问题4:配置文件中驱动名称有误

com.mysql.jdbc.Driver驱动是mysql-connector-java 5中的

com.mysql.cj.jdbc.Driver驱动是mysql-connector-java 6以上版本的

解决方法:根据jdbc 版本进行相应的修改



参考文章
https://blog.csdn.net/weixin_43861175/article/details/90372513
https://blog.csdn.net/mayunyun1987100/article/details/51154056
https://blog.csdn.net/weixin_39839162/article/details/114871504

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5702245.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存