Hadoop1.x与2.x安装笔记
Hadoop1.x与2.x安装笔记
Email: chujiaqiang229@163.com
2015-05-09
Hadoop 1.x 安装
Hadoop1.x 集群规划
|
No |
名称 |
内容 |
备注 |
|
1 |
用户 |
grid |
|
|
2 |
用户组 |
hadoop |
有权限运行hadoop,并可以使用jdk |
|
3 |
服务器 |
Hadoop11: 192.168.1.211 Hadoop12: 192.168.1.212 Hadoop13: 192.168.1.213 |
|
|
4 |
系统 |
Cent OS 7 |
|
|
5 |
JDK版本 |
jdk-7u79-linux-x64.gz |
|
|
6 |
Hadoop版本 |
hadoop-1.2.1-bin.tar.gz |
|
|
文件传输工具 |
WinSCP |
创建用户及所属组
grid,用来运行Hadoop (可选)
su
groupadd grid
useradd –m –s /bin/bash –g grid grid
机器及网络配置
配置IP
修改主机名:
su
vi /etc/hostname
将三台机器的名子改为: hadoop11, hadoop 12, hadooop 13
配置host文件
切换到root帐户下,使用vi在修改文件/etc/hosts,添加三台机器的IP,及名称。然后使用ping命令检查各台机器之间的是否可以通过机器名连通

关闭防火墙
systemctl stop firewalld.service
禁止防火墙自启动
systemctl disable firewalld.service
配置SSH无密码登录
在三台机器上分别执行
ssh-keygen -t rsa
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
然后在需要输入信息的时候,直接回车。直至命令完成

使用ssh登录机器。检查SSH无密码是否配置正确

将三台的机器的id_rsa.pub内容合并,然后将内容写到authorized_keys,然后使用SCP将authorized_keys拷贝到其它两台机器上。
scp id_rsa.pub hadoop11:~/.ssh/h12_id_rsa.pub
scp id_rsa.pub hadoop11:~/.ssh/h13_id_rsa.pub
安装JDK
准备JKD
将准备好的JKD安装包使用Winscep拷贝到Hadoop11上
在root用户解压安装
su
cp jdk-7u79-linux-x64.gz hadoop-1.2.1-bin.tar.gz /usr/local
tar -zxvf jdk-7u79-linux-x64.gz
为用户赋权限
在三台机器上执行以下命令
cd /usr/local
chown –R grid:hadop jdk-7u79-linux-x64
安装Hadoop
准备hadop安装包
使用winscp将hadop安装包hadoop-1.2.1-bin.tar.gz拷贝到hadoop11机器上
在root用户下解压hadoop
su
cd /usr/local
tar –zxvf hadoop-1.2.1-bin.tar.gz
为用户赋权限
chown –R grid:hadoop hadoop-1.2.1
修改配置文件
修改hadoop-env.sh
修改masters,slaves文件

修改core-site.xml,hdfs-site.xml,mapred-site.xml
core-site.xml

hdfs-site.xml

mapred-site.xml

将配置好的hadoop复制到其它各节点
scp -r jdk1.7.0_79 hadoop12:/usr/local
scp -r hadoop-1.2.1 hadoop12:/usr/local/
scp -r jdk1.7.0_79 hadoop13:/usr/local
scp -r hadoop-1.2.1 hadoop13:/usr/local/
在hadoop12,hadoop13上设置权限:
su
chown -R grid:grid hadoop-1.2.1 jdk1.7.0_79

格式化hadoop
bin/hadoop namenode -format

启动进程
在hadoop安装目录下运行
bin/start-all.sh

检查进程
使用工具jps on hadoop11

jps on hadoop12, hadoop13

在Hadoop 1.x上运行wordcount
Hadoop一切准备就细后,我们来运行hadoop自带的例子wordcount来检查下hadoop是否能正常工作。
准备要分析的文件
cd /usr/local/hadoop-1.2.1/
mkdir input
echo "hello word" >test1.txt
echo "hello hadoop" >test2.txt
将文件放到hdfs文件系统中
bin/hadoop fs -put /usr/local/hadoop-1.2.1/input in
检查文件创建是否成功
bin/hadoop fs -lsr in

运行程序
bin/hadoop jar hadoop-examples-1.2.1.jar wordcount in out

查看结果:
bin/hadoop fs -cat /user/grid/out/part-r-00000

作业问题二:Hadoop 2.x 安装
Hadoop2.x 集群规划
|
No |
名称 |
内容 |
备注 |
|
1 |
用户 |
grid |
|
|
2 |
用户组 |
hadoop |
有权限运行hadoop,并可以使用jdk |
|
3 |
服务器 |
Hadoop21: 192.168.1.221 Hadoop22: 192.168.1.222 Hadoop23: 192.168.1.223 |
|
|
4 |
系统 |
Cent OS 7 |
|
|
5 |
JDK版本 |
jdk-7u79-linux-x64.gz |
|
|
6 |
Hadoop版本 |
hadoop-2.5.2.tar.gz |
|
|
文件传输工具 |
WinSCP |
x安装的前期准备工作与hadoop 1.x类似,具体步骤可以参考1.x的安装文件。下面主要介绍hadoop 2.x的安装.
安装Hadoop
准备Hadoop安装包
将文件hadoop-2.5.2.tar.gz拷贝到/home/grid
在root用户下解压hadoop
su
cp hadoop-2.5.2.tar.gz /usr/local
tar -zxvf hadoop-2.5.2.tar.gz
为用户赋权限
chown -R grid:hadoop hadoop-2.5.2
exit
修改配置文件:
hadoop2.x 需要修改如下目录下的七个配置文件
/usr/local/hadoop-2.5.2/etc/hadoop
- yarn-env.sh
- hadoop-env.sh
- slaves
- core-site.xml
- hdfs-site.xml
- mapred-site.xml (从mapred-site.xml.template复制得到)
- yarn-site.xml
yarn-env.sh

hadoop-env.sh

slaves

1.4.4 core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop21:9000</value>
<description>change your own hostname</description>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop-2.5.2/tmp</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hdfs://hadoop21:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop-2.5.2/name</value>
</property>
<property>>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop-2.5.2/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
mapred-site.xml
从mapred-site.xml.template复制得到
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop21:10020</value>
</property>
<property>>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop21:19888</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<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>
<property>
<name>yarn.resourcemanager.address</name>
<value>hadoop21:8022</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoop21:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoop21:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoop21:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoop21:8088</value>
</property>
</configuration>
复制配置好的Hadoop到其它节点
scp -r hadoop-2.5.2 hadoop22:/usr/local
scp -r hadoop-2.5.2 hadoop23:/usr/local
在hadoop22,hadoop23上执行命令设置权限
chown -R grid:hadoop hadoop-2.5.2 jdk1.7.0_79
格式化Hadop
bin/hdfs namenode -format

启动Hadoop
sbin/start-dfs.sh
sbin/start-yarn.sh
检查进程
/usr/local/jdk1.7.0_79/bin/jps
hadoop21:

hadoop22

hadoop23

使用Hadoop 2.x 运行示例
准备文件
mkdir input
cd input
echo "hello word" >test1.txt
echo "hello hadoop" >test2.txt
将文件放到hdfs文件系统中
bin/hadoop fs -put /usr/local/hadoop-2.5.2/input /in

运行程序
bin/hadoop jar /usr/local/hadoop-2.5.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.2.jar wordcount /in/* /out

查看结果:
bin/hadoop fs -ls -R /out
bin/hadoop fs -cat /out/part-r-00000

Hadoop1.x与2.x安装笔记的更多相关文章
- Hadoop1.1.2伪分布式安装笔记
一.设置Linux的静态IP 修改桌面图标修改,或者修改配置文件修改 1.先执行ifconfig,得到网络设备的名称eth0 2.编辑/etc/sysconfig/network-scripts/if ...
- MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记
MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记 说明 以root账户登录Linux操作系统,注意:本文中的所有命令行前面的 #> 表示命令行提示符 ...
- 基于Ubuntu14.04系统的nvidia tesla K40驱动和cuda 7.5安装笔记
基于Ubuntu14.04系统的nvidia tesla K40驱动和cuda 7.5安装笔记 飞翔的蜘蛛人 注1:本人新手,文章中不准确的地方,欢迎批评指正 注2:知识储备应达到Linux入门级水平 ...
- sublime 安装笔记
sublime 安装笔记 下载地址 安装package control 根据版本复制相应的代码到console,运行 按要求重启几次后再按crtl+shift+p打开命令窗口 输入pcip即可开始安装 ...
- docker在ubuntu14.04下的安装笔记
本文主要是参考官网教程进行ubuntu14.04的安装. 下面是我的安装笔记. 笔记原件完整下载: 链接: https://pan.baidu.com/s/1dEPQ8mP 密码: gq2p
- ArchLinux 安装笔记:续 --zz
续前话 在虚拟机里调试了几天,终于鼓起勇气往实体机安装了,到桌面环境为止的安装过程可以看我的前一篇文章<ArchLinux 安装笔记>.桌面环境我使用的是 GNOME,虽然用了很长一段时间 ...
- PHP7安装笔记
PHP7安装笔记 时间 -- :: 喵了个咪 原文 http://www.hdj.me/php7-install-note 主题 PHP # 安装mcrypt yum install -y php-m ...
- Hadoop2.2.0 安装笔记
在Youtube上找到靠谱的教程:http://www.youtube.com/watch?v=WN2tJk_oL6E 同时把作者的教程下载下来放在百度云盘上了:http://pan.baidu.co ...
- python 库安装笔记
python 库安装笔记 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-2-22 友情提示 安装python库的过程中 ...
随机推荐
- VirtualBox 使用
安装: # pacman -S virtualbox 配置: 使用时加载vboxdrv模块:#modprobe vboxdrv (或者设置开机加载:1.建立文件“/etc/modules-load.d ...
- 转 UITabBarController简单介绍
文顶顶 iOS开发UI篇—UITabBarController简单介绍 iOS开发UI篇—UITabBarController简单介绍 一.简单介绍 UITabBarController和UINavi ...
- OC基础笔记目录
OC基础(1) Objective-C简介 OC和C对比 第一个OC程序 面向对象思想 OC基础(2) 类与对象 类的设计 第一个OC类 对象方法的声明和实现 类方法的声明和实现 OC基础(3) 对象 ...
- 《Code Complete》ch.7 高质量的子程序
WHAT? 子程序(routines)是为实现一个特定目的而编写的可被调用的方法或过程.在C++中是函数(function),在Java中是方法(method),在VB中是函数过程(function ...
- (转)Struts2返回JSON对象的方法总结
转自:http://kingxss.iteye.com/blog/1622455 如果是作为客户端的HTTP+JSON接口工程,没有JSP等view视图的情况下,使用Jersery框架开发绝对是第一选 ...
- 消除PyCharm中满屏的波浪线
PyCharm使用了较为严格的PEP8的检查规则,如果代码命名不规范,甚至多出的空格都会被波浪线标识出来,导致整个编辑器里铺满了波浪线,右边的滚动条也全是黄色或灰色的标记线,很是影响编辑. 在网上看了 ...
- mysql的一些心得
1.unsigned修饰整型 ,既为非负数,用此类型可以增加数据长度! 类型 大小 范围(有符号) ...
- extern “C”调用测试与验证-2016.01.06
1 调用情形说明 在上一篇关于extern “c”原理以及用法中,详细的说明了为什么需要extern “c”以及如何使用它解决c与c++混合编程时遇到的问题.接下来,使用示例验证方式验证c与c++函数 ...
- vs2012 快捷键修改
打开:工具-->选项 搜索:剪切行 移除原有的 Crtl+L 命令 改为:Ctrl+D
- zedboard上移植OPENCV库
zedboard上移植OPENCV库 之前做了很多移植OPENCV库的工作,但是需要包含的各种库,需要交叉编译,X264 ,JPGE ,FFMPGE等等 注意:在<嵌入式系统软硬件协同设计实战指 ...