Ubuntu16.04下安装Hadoop
一、记录理由
刚开始只是想要学习怎么使用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的更多相关文章
- Ubuntu16.04下安装数据库oracle客户端
在Ubuntu16.04下安装oracle数据库客户端,使Django项目连接到远程Oracle数据库. 1.下载oracle客户端安装包: 进入官网http://www.oracle.com/tec ...
- Ubuntu16.04下安装redis
Ubuntu16.04下安装redis 保证网络畅通,选定好下载工作路径,执行以下命令下载redis-3.2.6: sudo wget http://download.redis.io/release ...
- docker学习笔记(一)—— ubuntu16.04下安装docker
docker学习笔记(一)—— ubuntu16.04下安装docker 原创 2018年03月01日 14:53:00 标签: docker / ubuntu 1682 本文开发环境为Ubuntu ...
- ubuntu16.04下安装artoolkit5
目前对AR技术的常见理解就是CV(Computer Vision)+CG(Computer Graphic).CV的方法很多,简单些比如FREAK+ICP(ARToolKit中的NFT),复杂些就是S ...
- Ubuntu16.04下安装多版本cuda和cudnn
Ubuntu16.04下安装多版本cuda和cudnn 原文 https://blog.csdn.net/tunhuzhuang1836/article/details/79545625 前言 因为之 ...
- Ubuntu16.04下安装texlive
Ubuntu 16.04下安装texlive的步骤如下: 1.下载texlive 打开终端输入:sudo apt-get install texlive-full #下载这一过程会持续10-20分钟 ...
- Ubuntu16.04下安装googlechrome flash 插件和安装网易云音乐
一.ubuntu 16.04 下安装完后发现 flash无法播放没有安装flash插件因为 Adobe Flash 不再支持 linux Google 便开发了PepperFlashPlayer来替代 ...
- Ubuntu16.04下安装Hive
上一篇博客我们已经说过了要如何安装Hadoop,别忘记了我们的目的是安装Hive.所以这篇博客,我就来介绍一下如何安装Hive. 一.环境准备 (1)Vmware (2) Ubuntu 16.04 ...
- 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 ...
随机推荐
- Android进阶(八)Can't create handler inside thread that has not called Looper.prepare()
Error:Can't create handler inside thread that has not called Looper.prepare() 原代码: //利用Handler消息传递机制 ...
- Linux IPC实践(10) --Posix共享内存
1. 创建/获取一个共享内存 #include <sys/mman.h> #include <sys/stat.h> /* For mode constants */ #inc ...
- (四十七)Quartz2D引擎初步
Quartz2D是跨平台的,同时支持iOS与Mac. 支持圆型裁剪,可以实现圆形头像等功能,也支持手势解锁.折线图等的制作. 对于复杂的UI界面,还可以通过Quartz2D将控件内部的结构画出来,可用 ...
- 《java入门第一季》之类String类小案例
案例一: /* * 需求:把数组中的数据按照指定个格式拼接成一个字符串 * 举例: * int[] arr = {1,2,3}; * 输出结果: * "[1, 2, 3]" * 分 ...
- Aidl跨进程通信机制-android学习之旅(87)
Aidl简介 AIDL (Android Interface Definition Language) 是一种IDL 语言,用于生成可以在Android设备上两个进程之间进行进程间通信的代码. 如果在 ...
- ORM对象关系映射之使用GreenDAO进行CRUD操作
在Android中,我们都知道使用的数据库是SQLite,而使用这种原生的数据库非常繁琐,它对表的管理和进行CRUD操作都需要我们写sql语句,在进行多表关联的操作上,更是需要写一堆sql,而且维护起 ...
- Oracle EBS 重新编译无效对象 invalid object
1. 查看数据库中的无效对象 check oracle object SQL> select count(*) from dba_objects where status= ...
- Gradle 1.12用户指南翻译——第二十八章. Jetty 插件
其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...
- ERP-非财务人员的财务培训教(一.二)------财务基础知识
二.基本财务管理知识 第一节 财务管理基础知识(一) 财务与会计的关系 会计的基础知识 (一) 财务与会计的关系 财务与会计的内涵 1.会计 会计工作主要是解决三个环节的问题: 会计凭证 会计账簿 会 ...
- WinCE上BINFS实现详解
网上不少介绍三星24x0系列的BINFS启动方式实现,有些内容上描述的不是非常全面 下面就WinCE6上的BINFS实现,从基本原理到修改BSP,再到如何烧录启动做一个较全面的讲解 一 BINFS到底 ...