经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 大数据/云/AI » Hadoop » 查看文章
基于ubuntu16.04伪分布式安装hadoop2.9.1以及hive2.3.1
来源:cnblogs  作者:与我同醉  时间:2019/3/13 8:51:51  对本文有异议

一、安装ubuntu操作系统

参考:https://www.cnblogs.com/Alier/p/6337151.html

二、下载hadoop以及hive

hadoop:https://hadoop.apache.org/releases.html

hive:http://hive.apache.org/downloads.html

三、hadoop安装

1.准备工作

  1. 1 sudo useradd -m hadoop -s /bin/bash #创建hadoop用户
  2. 2 sudo passwd hadoop #为hadoop用户设置密码,之后需要连续输入两次密码
  3. 3 sudo adduser hadoop sudo #为hadoop用户增加管理员权限
  4. 4 su - hadoop #切换当前用户为用户hadoop
  5. 5 sudo apt-get update

2.安装ssh并设置免密登陆

  1. 1 sudo apt-get install openssh-server #安装SSH server
  2. 2 ssh localhost #登陆SSH,第一次登陆输入yes
  3. 3 exit #退出登录的ssh localhost
  4. 4 cd ~/.ssh/ #如果没法进入该目录,执行一次ssh localhost
  5. 5 ssh-keygen -t rsa  
  6. 6 cat ./id_rsa.pub >> ./authorized_keys #加入授权
  7. 7 ssh localhost #此时不需输入密码
  1. hadoop@ge-hadoop:~$ ssh localhost
  2. Welcome to Ubuntu 16.04.2 LTS (GNU/Linux 4.8.0-36-generic x86_64)
  3. * Documentation: https://help.ubuntu.com
  4. * Management: https://landscape.canonical.com
  5. * Support: https://ubuntu.com/advantage
  6.  
  7. 312 个可升级软件包。
  8. 14 个安全更新。
  9. Last login: Mon Mar 11 21:37:12 2019 from 127.0.0.1
  10. hadoop@ge-hadoop:~$

如上面显示。

3.安装配置java环境

由于撰写本文时作者已经配置完成,故无法展示

附参考链接:https://www.linuxidc.com/Linux/2015-01/112030.htm

重点为配置java环境,如下:

  1. sudo gedit ~/.bashrc #在此文件中配置加入
  2. export JAVA_HOME=/usr/java/jdk1.8.0_201#为你java安装路径
  3. sudo gedit /ect/profile #在此文件配置中加入
  4. export JAVA_HOME=/usr/java/jdk1.8.0_201
  5. export JRE_HOME=${JAVA_HOME}/jre
  6. export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
  7. export PATH=${JAVA_HOME}/bin:$PATH

JAVA_HOME为你安装java路径

配置完两个文件需要输入,配置立即生效

 1 source ~/.bashrc 2 source /etc/profile 

在终端输入

  1. hadoop@ge-hadoop:~$ java -version
  2. java version "1.8.0_201"
  3. Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
  4. Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

表明安装配置成功。

4.hadoop安装与配置

将hadoop安装包配置解压到/usr/local目录下:

  1. tar -zxvf hadoop-2.9.1.tar.gz -C /usr/local
    cd /usr/local
    sudo mv hadoop-2.9.1 hadoop
    sudo chown hadoop ./hadoop #修改文件所属用户

添加hadoop环境变量

  1. sudo gedit /etc/profile #添加以下行
  2. export HADOOP_HOME=/usr/local/hadoop
  3. export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH

source /etc/prifile 立即生效

查看hadoop版本号

  1. hadoop@ge-hadoop:~$ hadoop version
  2. Hadoop 2.9.1
  3. Subversion https://github.com/apache/hadoop.git -r e30710aea4e6e55e69372929106cf119af06fd0e
  4. Compiled by root on 2018-04-16T09:33Z
  5. Compiled with protoc 2.5.0
  6. From source with checksum 7d6d2b655115c6cc336d662cc2b919bd
  7. This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-2.9.1.jar

显示安装成功

5.配置伪分布式

主要修改hadoop配置文件

  1. cd /usr/local/hadoop/etc/hadoop #配置文件目录
  2. sudo vim hadoop-env.sh #在该文件下添加
  3. export JAVA_HOME=/usr/java/jdk1.8.0_201

sudo vim hdfs-site.xml

修改该文件为

  1. <configuration>
  2. <property>
  3. <name>dfs.replication</name>
  4. <value>1</value>
  5. </property>
  6. <property>
  7. <name>dfs.namenode.name.dir</name>
  8. <value>file:/usr/local/hadoop/tmp/dfs/name</value>
  9. </property>
  10. <property>
  11. <name>dfs.datanode.data.dir</name>
  12. <value>file:/usr/local/hadoop/tmp/dfs/data</value>
  13. </property>
  14. <property>
  15. <name>dfs.secondary.http.address</name>
  16. <value>127.0.0.1:50090</value>
  17. </property>
  18. </configuration>  

接下来修改core-site.xml

  1. <configuration>
  2. <property>
  3. <name>hadoop.tmp.dir</name>
  4. <value>file:/usr/local/hadoop/tmp</value>
  5. <description>Abase for other temporary directories.</description>
  6. </property>
  7. <property>
  8. <name>fs.defaultFS</name>
  9. <value>hdfs://localhost:9000</value>
  10. </property>
  11. </configuration>

最后执行NAMEnode初始化

  1. ./bin/hdfs namenode -format #此段代码执行多次容易报错

 1 ./sbin/start-dfs.sh #启动服务

2 jps #查看服务状态 

  1. hadoop@ge-hadoop:/usr/local/hadoop$ jps
  2. 5632 ResourceManager
  3. 5457 SecondaryNameNode
  4. 6066 Jps
  5. 5238 DataNode
  6. 5113 NameNode
  7. 5756 NodeManager
  8. hadoop@ge-hadoop:/usr/local/hadoop$

成功启动后,可以访问 Web 界面 http://localhost:50070 查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。 

四、hive安装与配置

1.准备工作

安装mysql

下载mysql-connector-java:https://dev.mysql.com/downloads/connector/j/  #最好下载与mysql配套的,不然连接时候容易报错

2.配置mysql

  1. mysql -u root -p; #咦root权限登陆mysql
  2. create database hive;
  3. use hive;
  4. create table user(Host char(20),User char(10),Password char(20));
  5. insert into user(Host,User,Password) values("localhost","hive","hive"); #建立hive用户密码为hive
  6. FLUSH PRIVILEGES;
  7. GRANT ALL PRIVILEGES ON *.* TO 'hive'@'localhost' IDENTIFIED BY 'hive';
  8. FLUSH PRIVILEGES;

3.hive安装配置

  1. tar zxvf apache-hive-2.3.4-bin.tar.gz /usr/local/
  2. sudo mv apache-hive-2.3.4-bin.tar.gz hive

sudo vim /etc/profile
保存后记得要source /etc/profile 使其更改生效

  1. export HIVE_HOME=/usr/local/hive
  2. export PATH=$PATH:$HIVE_HOME/bin

修改hive/conf下的几个模板

  1. cp hive-env.sh.template hive-env.sh
  2. cp hive-default.xml.template hive-site.xml

更改hive-env.sh文件,指定hadoop的安装路

  1. HADOOP_HOME=/usr/local/hadoop

 更改hive-site.xml文件,指定数据库的相关信息

 

  1. <property>
  2. <name>javax.jdo.option.ConnectionURL</name>
  3. <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
  4. <description>JDBC connect string for a JDBC metastore</description>
  5. </property>
  6.  
  7. <property>
  8. <name>javax.jdo.option.ConnectionDriverName</name>
  9. <value>com.mysql.jdbc.Driver</value>
  10. <description>Driver class name for a JDBC metastore</description>
  11. </property>
  12.  
  13. <property>
  14. <name>javax.jdo.option.ConnectionUserName</name>
  15. <value>hive</value>
  16. <description>username to use against metastore database</description>
  17. </property>
  18.  
  19. <property>
  20. <name>javax.jdo.option.ConnectionPassword</name>
  21. <value>hive</value>
  22. <description>password to use against metastore database</description>
  23. </property>

此处建议在配置文件中找到对应行修改value值,不然容易报错

修改hive/bin下的hive-config.sh文件

  1. export JAVA_HOME=/usr/java/jdk1.8.0_201
  2. export HADOOP_HOME=/usr/local/hadoop
  3. export HIVE_HOME=/usr/local/hive

解压mysql-connector-java-5.1.47.tar.gz

tar -zxvf mysql-connector-java-5.1.47.tar.gz /usr/local

将文件中mysql-connector-java-5.1.47.jar 包copy到hive/lib目录下

初始化hive数据库

schematool -dbType mysql -initSchema

打开hive

  1. hadoop@ge-hadoop:/usr/local/hive$ bin/hive
  2. Logging initialized using configuration in jar:file:/usr/local/hive/lib/hive-common-2.3.4.jar!/hive-log4j2.properties Async: true
  3. Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. spark, tez) or using Hive 1.X releases.
  4. hive>

完成,当然安装郭恒中会出行很多很多报错的地方,又问题欢迎留言

原文链接:http://www.cnblogs.com/gsytech/p/10519575.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号