Hadoop全分布式配置

Hadoop全分布式配置

所需文件:
jdk-8u65-linux-x64.tar.gz
hadoop-2.6.0.tar.gz

节点类型

IP地址

主机名

 

Namenode

192.168.29.6

master

Namenode/ SenddaryNameNode/ ResourceManager/Jps

 

DataNode

192.168.29.7

slave1

DateNode/NodeManager/Jps

 

DataNode

192.168.29.8

slave2

DateNode/NodeManager/Jps

 

 

1.关闭防火墙

三台虚拟机的用户要一致

把三台虚拟机的防火墙关闭:sudo service iptables stop

2.三台虚拟机的JDK

2.1在Hadoop用户的根目录,Jdk解压,(hadoop用户操作)

tar -zxvf jdk-8u65-linux-x64.tar.gz –C app/

解压完成后,在hadoop用户的app目录有一个jdk1.8.0_65目录

2.2配置环境变量,需要修改/etc/profile文件(root用户操作

切到root用户,输入su命令

vi /etc/profile

进去编辑器后,输入i,进入vi编辑器的插入模式,在profile文件最后添加

JAVA_HOME=/home/hadoop/app/jdk1.8.0_65

export PATH=$PATH:$JAVA_HOME/bin

 

编辑完成后,按下esc退出插入模式输入:,这时在左下角有一个冒号的标识

q   退出不保存

wq  保存退出

q!   强制退出

1. 把修改的环境变量生效(hadoop用户操作

执行source /etc/profile

3.配置三台机器的hosts文件

vi /etc/hosts

内容:

192.168.29.6 master

192.168.29.7 slave1

192.168.29.8 slave2

可以修改masterhosts文件,然后复制到另外了两个机器上

scp /etc/hosts slave1:/etc/hosts

scp /etc/hosts slave2:/etc/hosts

4.配置三台机器的主机名和IP地址

4.1 克隆slave1slave2

配置IP

  Address    Netmask    Gateway

Master: 192.168.29.6  255.255.255.0192.168.29.2

Slave1: 192.168.29.7255.255.255.0 192.168.29.2

Slave2: 192.168.29.8255.255.255.0 192.168.29.2

5.配置SSH互信

1. 生成公钥和私钥

在命令行执行ssh-keygen,然后回车,然后会提示输入内容,什么都不用写,一路回车

hadoop用户根目录下,有一个.ssh目录

id_rsa 私钥

id_rsa.pub 公钥

known_hosts 通过SSH链接到本主机,都会在这里有记录

2. 把公钥给信任的主机(本机)

在命令行输入ssh-copy-id 主机名称

ssh-copy-id master

ssh-copy-id slave1

ssh-copy-id slave2

复制的过程中需要输入信任主机的密码

3. 验证,在命令行输入:ssh 信任主机名称

ssh master

ssh slave1

ssh slave2

如果没有提示输入密码,则配置成功

masterslave1互相配置互信

masterslave2互相配置互信

6.在主节点配置Hadoop

1. 在hadoop用户的根目录,解压hadoop用户操作

tar -zxvf hadoop-2.6.0.tar.gz –C ./app

解压完成在hadoop用户的app目录下有一个hadoop-2.6.0目录

2. 修改配置文件(hadoop用户操作

vi hadoop-2.6.0/etc/hadoop/hadoop-env.sh 修改

export JAVA_HOME=/home/hadoop/app/jdk1.8.0_65

3. 修改配置文件,添加(hadoop用户操作

vi hadoop-2.6.0/etc/hadoop/core-site.xml

<property>

  <name>fs.defaultFS</name>

  <value>hdfs://master:9000</value>

 </property>

 <property>

   <name>io.file.buffer.size</name>

   <value>131072</value>

 </property>

 <property>

   <name>hadoop.tmp.dir</name>

   <value>/home/hadoop/appdata/hadoop/tmp</value>

   <description>Abasefor other temporary directories.</description>

 </property>

 

4. 修改配置文件vi hadoop-2.6.0/etc/hadoop/hdfs-site.xml,添加hadoop用户操作

<property>

   <name>dfs.namenode.secondary.http-address</name>

   <value>master:9001</value>

 </property>

 <property>

   <name>dfs.namenode.name.dir</name>

   <value>/home/hadoop/appdata/hadoop/dfs/name</value>

 </property>

 <property>

   <name>dfs.datanode.data.dir</name>

   <value>/home/hadoop/appdata/hadoop/dfs/data</value>

 </property>

 <property>

   <name>dfs.replication</name>

   <value>2</value>

 </property>

 

5. 修改修改配置文件vi etc/hadoop/mapred-site.xml hadoop用户操作

这个文件没有,需要复制一份 (cd hadoop-2.6.0/)目录下

cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml

添加

<property>

   <name>mapreduce.framework.name</name>

   <value>yarn</value>

 </property>

 <property>

   <name>mapreduce.jobhistory.address</name>

   <value>master:10020</value>

 </property>

 <property>

   <name>mapreduce.jobhistory.webapp.address</name>

   <value>master:19888</value>

</property>

 

6. 修改配置文件vi etc/hadoop/yarn-site.xml,添加(hadoop用户操作

<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>master:8032</value>

 </property>

 <property>

   <name>yarn.resourcemanager.scheduler.address</name>

   <value>master:8030</value>

 </property>

 <property>

   <name>yarn.resourcemanager.resource-tracker.address</name>

   <value>master:8035</value>

 </property>

 <property>

   <name>yarn.resourcemanager.admin.address</name>

   <value>master:8033</value>

 </property>

 <property>

   <name>yarn.resourcemanager.webapp.address</name>

   <value>master:8088</value>

 </property>

7. 修改配置文件vi etc/hadoop/slaves,添加(hadoop用户操作)

slave1

slave2

 

7.把Hadoop复制到其他两个节点

scp –r app/hadoop-2.6.0 slave1:~/app/

scp –r app/hadoop-2.6.0 slave2:~/app/

8.集群格式化及启动

bin/hdfs namenode –format

格式化只能操作一次并且在主节点格式化,如果需要再次格式化,需要把appdata/hadoop目录清空

启动hadoop

sbin/start-all.sh

在master、slave1slave2分别:jps

master出现JpsNamenodeSenddaryNameNodeResourceManager

slave1slave2出现DateNode/NodeManager/Jps

则配置成功

 

9.测试

9.1把一个文件放入HDFS,如果没有报错,则成功

hadoop解压目录输入一下命令

查看文件夹:bin/hadoop fs -ls /

创建目录:bin/hadoop fs -mkdir /input

创建文件:vi input.txt   输入任意内容

将本地文件放入hdfsbin/hadoop fs -put input.txt /input

查看hdfs内文件内容::bin/hadoop fs -cat /input/input.txt

删除目录:bin/hadoop fs -rm -r /input

 

9.2 master虚拟机下打开master:50070

http://192.168.29.6:50070

10.关闭Hadoop

sbin/stop-all.sh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值