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 ...
随机推荐
- C3P0和DBCP的区别
C3P0和DBCP的区别 C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展.目前使用它的开源项目有Hibernate,Spring等. ...
- JSON 的数据转换格式(DataTable或DataSet) -善良公社项目
这两天在使用JqueryEasyUI框架绑定数据并实现自动分页时,由于框架的限制需要使用Json数据的来传递与获取数据: JSON的全称是JavaScript Object Notation, 是一种 ...
- awk字符串函数及其意义
awk字符串函数及其意义 awk提供了强大的内置字符串函数,用于实现文本的字符串替换.查找以及分隔等功能. awk字符串函数主要有:gsub.index.length.match.split.sub ...
- 【一天一道LeetCode】#32. Longest Valid Parentheses
一天一道LeetCode系列 (一)题目 Given a string containing just the characters '(' and ')', find the length of t ...
- jQuery 瀑布流插件: Wookmark
原文链接: jQuery Wookmark 在线示例: jQuery Wookmark Demo Wookmark官网: http://www.wookmark.com/jquery-plugin 翻 ...
- oracle临时表空间 ORA-01652:无法通过16(在表空间XXX中)扩展 temp 字段
今天在查数据的时候报错 ORA-01652:无法通过16(在表空间temp1中)扩展 temp 字段 查看表空间使用明细 SELECT b.tablespace, b.segfile# ...
- SpriteBuilder中音频波长超过Timeline结尾的情况
见如下图: 注意最后一个音频波长延续到Timeline结尾之后.表明这个音频文件播放长度超过Timeline(动画)播放的长度.这是否成为一个问题要视情况而定.而在这里无所谓. 如果节点所拥有的Tim ...
- 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)! 注:请点击此 ...
- linux内核算法---hex_to_bin分享
这是我从内核抠出来的一段代码,用处就是传入一个字符,即可以用printf语句%d以十进制数的格式输出,同时也可以以%p地址的形式输出. 代码如下: #include <stdio.h> # ...
- Leetcode_206_Reverse Linked List
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/45739753 Reverse a singly linke ...