共计 6077 个字符,预计需要花费 16 分钟才能阅读完成。
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
下面关于 Hadoop 的文章您也可能喜欢,不妨看看:
Ubuntu14.04 下 Hadoop2.4.1 单机 / 伪分布式安装配置教程 http://www.linuxidc.com/Linux/2015-02/113487.htm
CentOS 安装和配置 Hadoop2.2.0 http://www.linuxidc.com/Linux/2014-01/94685.htm
Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm
Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13
本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-11/125224.htm