一、记录理由

  刚开始只是想要学习怎么使用Hive的。想着安装应该很简单,没想到花了整整一天的时间来安装,为了避免下次犯同样的错误,特此记录。

二、安装Hadoop

网上教你怎么安装Hadoop的文章有很多,质量参差不齐,作为一名刚刚入门的菜鸟,我就记录一个完整的菜鸟版吧。

(1)环境准备

  1. Vmware

  2. Ubuntu16.04

(2)  安装jdk和openssh

  请执行以下命令:

    $ sudo apt-get install openjdk-8-jdk

    $ sudo apt-get install openssh-server

    $ sudo /etc/init.d/ssh start

    $ ps -e | grep ssh

    $ ssh-keygen -t dsa -P ''

    $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

    $ ssh localhost

(3)添加Hadoop用户组合用户

$  sudo su

$ addgroup hadoop

$ adduser --ingroup hadoop hadoop

$ password hadoop  //为hadoop账号设置密码

    $  adduser hadoop sudo

    $  su hadoop

    键入hadoop的密码:

(4) 下载Hadoop

执行以上过程的时候,要先去上面的网站上看一看有没有对应的hadoop-2.2.0.tar.gz,没有的话就换成有的版本

      在这个过程中如果有出现permission denieied提示的话,就在命令的最前面加上sudo

(5) 配置环境

    $ sudo vim ~/.bashrc

    在.bashrc这个文件的最后面加上:

 

       export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
    export HADOOP_HOME=/usr/local/hadoop
    export HADOOP_MAPRED_HOME=$HADOOP_HOME
    export HADOOP_COMMON_HOME=$HADOOP_HOME
    export HADOOP_HDFS_HOME=$HADOOP_HOME
    export YARN_HOME=$HADOOP_HOME
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

    保存之后退出.bashrc文件

$ sudo cd /usr/local/hadoop/etc/hadoop

    $ sudo vim hadoop-env.sh

    在hadoop-env.sh文件的最末端加上以下内容

    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/

    export HADOOP_COMMON_LIB_NATIVE_DIR="/usr/local/hadoop/lib/native/"
    export HADOOP_OPTS="$HADOOP_OPTS -Djava.library.path=/usr/local/hadoop/lib/"

    保存之后退出hadoop-env.sh文件

退出terminal再打开

(6)配置Hadoop

    $ su hadoop

    $ cd /usr/local/hadoop/etc/hadoop

    $ sudo vim core-site.xml

<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>

    $ sudo vim yarn-site.xml

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>

    $ sudo mv mapred-site.xml.template mapred-site.xml

    $ sudo vim mapred-site.xml

property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

    $ sudo mkdir -p ~/mydata/hdfs/namenode

    $ sudo mkdir -p ~/mydata/hdfs/datanode

    $ sudo vim hdfs-site.xml

<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hduser/mydata/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/hduser/mydata/hdfs/datanode</value>
</property>

(6) 格式化namenode, 启动服务

  $ sudo cd /usr/local/hadoop/

  $ ./bin/hdfs namenode -format

  $ ./start-dfs.sh && start-yarn.sh

  $ jps

  顺利的话这里要能看到 SecondaryNameNode, NameNode, DataNode, NodeManager, ResourceManager, Jps

(7)测试

  在浏览器上键入: http://localhost:50070/  会出现hadoop页面; 键入:http://localhost:8088也会出现有一个页面

三、安装Hive

在安装了测试了Hadoop之后就可以安装Hive。为了避免篇幅过长,我把如何安装Hive移到下一篇博客。

Ubuntu16.04下安装Hadoop的更多相关文章

  1. Ubuntu16.04下安装数据库oracle客户端

    在Ubuntu16.04下安装oracle数据库客户端,使Django项目连接到远程Oracle数据库. 1.下载oracle客户端安装包: 进入官网http://www.oracle.com/tec ...

  2. Ubuntu16.04下安装redis

    Ubuntu16.04下安装redis 保证网络畅通,选定好下载工作路径,执行以下命令下载redis-3.2.6: sudo wget http://download.redis.io/release ...

  3. docker学习笔记(一)—— ubuntu16.04下安装docker

    docker学习笔记(一)—— ubuntu16.04下安装docker 原创 2018年03月01日 14:53:00 标签: docker / ubuntu 1682 本文开发环境为Ubuntu ...

  4. ubuntu16.04下安装artoolkit5

    目前对AR技术的常见理解就是CV(Computer Vision)+CG(Computer Graphic).CV的方法很多,简单些比如FREAK+ICP(ARToolKit中的NFT),复杂些就是S ...

  5. Ubuntu16.04下安装多版本cuda和cudnn

    Ubuntu16.04下安装多版本cuda和cudnn 原文 https://blog.csdn.net/tunhuzhuang1836/article/details/79545625 前言 因为之 ...

  6. Ubuntu16.04下安装texlive

    Ubuntu 16.04下安装texlive的步骤如下: 1.下载texlive 打开终端输入:sudo apt-get install texlive-full  #下载这一过程会持续10-20分钟 ...

  7. Ubuntu16.04下安装googlechrome flash 插件和安装网易云音乐

    一.ubuntu 16.04 下安装完后发现 flash无法播放没有安装flash插件因为 Adobe Flash 不再支持 linux Google 便开发了PepperFlashPlayer来替代 ...

  8. Ubuntu16.04下安装Hive

    上一篇博客我们已经说过了要如何安装Hadoop,别忘记了我们的目的是安装Hive.所以这篇博客,我就来介绍一下如何安装Hive. 一.环境准备 (1)Vmware (2)  Ubuntu 16.04 ...

  9. ubuntu16.04下安装opencv3.4.1及其扩展模块

    1.源文件下载 opencv-3.4.1.tar.gz(https://github.com/opencv/opencv/releases) opencv_contrib-3.4.1.tar.gz(h ...

随机推荐

  1. C3P0和DBCP的区别

    C3P0和DBCP的区别 C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展.目前使用它的开源项目有Hibernate,Spring等.     ...

  2. JSON 的数据转换格式(DataTable或DataSet) -善良公社项目

    这两天在使用JqueryEasyUI框架绑定数据并实现自动分页时,由于框架的限制需要使用Json数据的来传递与获取数据: JSON的全称是JavaScript Object Notation, 是一种 ...

  3. awk字符串函数及其意义

     awk字符串函数及其意义 awk提供了强大的内置字符串函数,用于实现文本的字符串替换.查找以及分隔等功能. awk字符串函数主要有:gsub.index.length.match.split.sub ...

  4. 【一天一道LeetCode】#32. Longest Valid Parentheses

    一天一道LeetCode系列 (一)题目 Given a string containing just the characters '(' and ')', find the length of t ...

  5. jQuery 瀑布流插件: Wookmark

    原文链接: jQuery Wookmark 在线示例: jQuery Wookmark Demo Wookmark官网: http://www.wookmark.com/jquery-plugin 翻 ...

  6. oracle临时表空间 ORA-01652:无法通过16(在表空间XXX中)扩展 temp 字段

    今天在查数据的时候报错  ORA-01652:无法通过16(在表空间temp1中)扩展 temp 字段 查看表空间使用明细 SELECT b.tablespace,        b.segfile# ...

  7. SpriteBuilder中音频波长超过Timeline结尾的情况

    见如下图: 注意最后一个音频波长延续到Timeline结尾之后.表明这个音频文件播放长度超过Timeline(动画)播放的长度.这是否成为一个问题要视情况而定.而在这里无所谓. 如果节点所拥有的Tim ...

  8. AngularJS进阶(十五)Cookie 'data' possibly not set or overflowed because it was too large

    Cookie 'data' possibly not set or overflowed because it was too large (5287 > 4096 bytes)! 注:请点击此 ...

  9. linux内核算法---hex_to_bin分享

    这是我从内核抠出来的一段代码,用处就是传入一个字符,即可以用printf语句%d以十进制数的格式输出,同时也可以以%p地址的形式输出. 代码如下: #include <stdio.h> # ...

  10. Leetcode_206_Reverse Linked List

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/45739753 Reverse a singly linke ...