Hadoop 在ubuntu系统上的搭建[图解]
前言
本文介绍如何在Ubuntu Kylin操作系统上搭建Hadoop平台。
配置
1. 操作系统: Ubuntu Kylin 14.04
2. 编程语言: JDK 1.8
3. 通信协议: SSH
2. 云计算项目版本: Hadoop 1.2.1
第一步:安装最新版本的JDK (若已经安装过请忽略这一步)
1. 去官网下载JDK1.8并解压 (当前安装包为:jdk-8u25-linux-x64.gz)
2. 将解压后的安装包复制到 /usr/lib/jvm 目录下 (jvm目录需要自行创建)
3. 以管理员方式打开 /etc/profile 文件并在文件底部添加以下代码:
#set Java Environment export JAVA_HOME=/usr/lib/jvm/jdk1..0_25 export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH" export PATH="$JAVA_HOME/bin:$PATH"
4. 执行以下命令使配置文件立即生效:
source /etc/profile
5. 执行以下命令验证JDK是否安装成功:
1 java -version
若显示以下信息表示安装完成:

第二步:配置SSH免密码登陆
1. 执行以下命令安装SSH:
1 sudo app-get install ssh
2. 检查用户目录下是不是有个名为.ssh的隐藏文件夹,没有的话就自己创建一个。
3. 执行以下命令配置SSH无密码登陆 (这几行代码的功能请参考SSH使用文档):
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
4. 执行以下命令验证SSH是否安装配置成功:
ssh localhost
出现提示输入yes,若终端显示以下信息,表示SSH配置成功:

第三步:安装并运行Hadoop
说明:Hadoop有三种运行方式 - 单机模式,伪分布式和完全分布式。其中,前两者主要用于程序的测试和调试,这里要讲的是伪分布式的配置,配置完全分布式的方法将在以后讲解。
1. 下载并解压最新版本的Hadoop到当前目录下 (当前安装包为:hadoop-1.2.1.tar.gz)
2. 进入conf子目录中,修改如下配置文件:
a. hadoop-env.sh (设置JAVA路径)
在末尾添加:
export JAVA_HOME=/usr/lib/jvm/jdk1..0_25
b. core-site.xml (配置HDFS地址及端口号)
配置为:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
c. hdfs-site.xml (修改备份方式,单机版本需要将其改为1)
配置为:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.replication</name>
<value></value>
</property>
</configuration>
d. mapred-site.xml (设置JobTracker地址及端口)
配置为:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:</value>
</property>
</configuration>
3. 进入Hadoop文件夹执行以下命令以格式化Hadoop文件系统HDFS:
bin/hadoop namenode -format
4. 执行以下命令以启动所有Hadoop进程:
bin/start-all.sh
5. 验证Hadoop是否安装成功
a. 打开浏览器,输入网址 http://localhost:50030 以查看MapReduce的Web页面:

b. 打开浏览器,输入网址 http://localhost:50070 以查看HDFS的Web页面:

如果显示正常,那么Hadoop环境便搭建好了。
小结
1. 伪分布式的架构,机制和真实分布式其实是一样的,不过伪分布式中,Master和Slave都是一台机器。
2. 关于真实分布式环境的搭建,将在以后介绍。到时会在虚拟机上组建一个虚拟网络,跑真·分布式程序。
Hadoop 在ubuntu系统上的搭建[图解]的更多相关文章
- [Hadoop] 在Ubuntu系统上一步步搭建Hadoop(单机模式)
1 Hadoop的三种创建模式 单机模式操作是Hadoop的默认操作模式,当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,会保守地选择最小配置,即单机模式.该模式主要用于开发调试M ...
- 第二篇:Hadoop 在Ubuntu Kylin系统上的搭建[图解]
前言 本文介绍如何在Ubuntu Kylin操作系统上搭建Hadoop平台. 配置 1. 操作系统: Ubuntu Kylin 14.04 2. 编程语言: JDK 1.8 3. 通信协议: SSH ...
- 在Ubuntu系统上搭建Hadoop 2.x(2.6.2)
官方的中文版的Hadoop快速入门教程已经是很老的版本了,新版的Hadoop目录结构发生了变化,因此一些配置文件的位置也略微调整了,例如新版的hadoop中找不到快速入门中提到的conf目录,另外,网 ...
- 如何在一个ubuntu系统上搭建SVN版本控制工具
有话说,由于公司项目部署需要,将Windows工程迁移到Linux,通过调查确定使用Ubuntu的Linux操作系统.那么如何快速搭建和Windows一样快捷方便的开发环境就很重要了.本文讲述如何在一 ...
- 64位的Ubuntu系统上使用汇编nasm和C语言
64位的Ubuntu系统上使用汇编nasm和C语言 $ nasm -f elf foo.asm -o foo.o$ gcc -c bar.c -o bar.o$ ld -s foo.o bar.o ...
- 在64位Ubuntu系统上安装32位程序包
在64位Ubuntu系统上安装32位的程序包 $sudo apt-get install package_name:i386 例如: $sudo apt-get install openjdk-7-j ...
- 孤荷凌寒自学python第六十一天在Fedora28版的linux系统上找搭建本地Mongodb数据服务
孤荷凌寒自学python第六十一天在Fedora28版的linux系统上找搭建本地Mongodb数据服务 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第七天.成功在本地搭建 ...
- Nginx: ubuntu系统上查找nginx.conf配置文件的路径
问题描述:在ubuntu系统上,找到nginx.conf文件的位置. 解决方法:在终端窗口中,输入命令:nginx -t 回显中就可以看到nginx.conf文件的路径了. 参考:https://bl ...
- Nginx: ubuntu系统上如何判断是否安装了Nginx?
问题描述:ubuntu系统上,如何查看是否安装了Nginx? 解决方法:输入命令行:ps -ef | grep nginx master process后面就是Nginx的安装目录. 延伸:1. 如何 ...
随机推荐
- iOS --- 通过openURL实现APP之间跳转并传递数据
在IOS中,实现一个应用启动另外一个应用,使用UIApplication的openURL:方法就可实现,这里以test跳到test02为例.(需要先创建这两个工程) 注册自定义URL协议(在test中 ...
- C#多线程学习之(五)使用定时器进行多线程的自动管理
本文实例讲述了C#多线程学习之使用定时器进行多线程的自动管理.分享给大家供大家参考.具体分析如下: Timer类:设置一个定时器,定时执行用户指定的函数. 定时器启动后,系统将自动建立一个新的线程,执 ...
- android程序打包成APK
1.下载ant(从官网上下载没有bin目录,可以直接在百度上搜APACHE-ANT-1.9.4-BIN.ZIP) 2.解压到C盘根目录(也可以是其他盘) 3.修改环境变量 ANT_HOME C: ...
- 解决JavaScript中使用$.ajax方式提交数组参数
一般的,可能有些人在一个参数有多个值的情况下,可能以某个字符分隔的形式传递,比如页面上有多个checkbox: $.ajax{ url:"xxxx", data:{ p: &quo ...
- HDU 3377 插头dp
题目大意: 从左上角走到右下角,每个点之多经过一次,取到所有路径上经过点的权值,求最大的权值之和,这里走到右下角就算停止了 这里有个思路是转化成熟悉的回路问题 在上方和右方最外围定义一圈权值为0 , ...
- 分布式一致性原理—CAP
背景 随着分布式事务的出现,传统的单机事务模型(ACID)已经无法胜任,尤其是对于一个高访问量.高并发的互联网分布式系统来说. 如果我们要求严格一致性,很可能就需要牺牲掉系统的可用性,反之亦然.但两者 ...
- ODI中查看变更及对象查找
ODI中可以查看每个对象的修改时间.修改人,当ETL作业失败之后,可以根据这些信息了解到是否有人修改过相关的对象. 另外,在ODI的菜单项中,也可以查看按修改时间.人员等搜索指定的对象,如查找最近7天 ...
- 有关PHP的字符串知识
字符串是由一系列字符组成,在PHP中,字符和字节一样,也就是说,一共有256种不同字符的可能性. 字符串型可以用三种方法定义:单引号形式.双引号形式和Heredoc结构形式. 1.每条指令可要记得使用 ...
- 理解NSTextContainer
Apple的Doc对这个类的描述是这样的: The NSTextContainer class defines a region where text is laid out. An NSLayout ...
- hdu 1069
//Accepted 264 KB 0 ms //每种block只有三种方法,且每种放法至多放一次 //规定三条边的顺序后 //把所有的block按x递增排序,x相同则按y递增排序 //然后dp // ...