2018-11-11
##单机模式 环境已经配好
ubuntu16.04安装hadoop3.02单机模式
##配置Hadoop伪分布式环境1
cd /usr/local/hadoop/etc/hadoop/
###修改core-site.xml1
2
3
4
5
6
7
8
9
10
11<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
###修改hdfs-site.xml1
2
3
4
5
6
7
8
9
10
11
12
13
14<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
进行NameNode格式化
进入/usr/local/hadoop
###执行./bin/hdfs namenode -format (第一次设置的时候格式化 下次直接启动就好)
启动NameNode 和 DataNode1
./sbin/start-dfs.sh
输入jps,会出现如下进程

##访问localhost:9870(hadoop3.X的webUI已经改到端口 localhost:9870上面,而不是原来的50070,网上大多数的教程都是2.X的,当然不行)
关闭dfs1
./sbin/stop-dfs.sh
##配置Yarn1
cd /usr/local/hadoop/etc/hadoop
###1 配置mapred-site.xml (hadoop2.x 没有 mapred-site.xml 需要自己创建 hadoop3.x 可以直接打开 mapred-site.xml)
配置mapred-site.xml
mv mapred-site.xml.template mapred-site.xml #hadoop2.x 执行此命令 hadoop3.x 不必执行
1 | <configuration> |
###2 配置yarn-site.xml1
2
3
4
5
6<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
##3 启动Yarn
cd /usr/local/hadoop/
1 | ./sbin/start-dfs.sh #启动dfs |
###前面我已经启动过dfs了 所以。。
##访问localhost:8088
###关闭Yarn
1
2
3./sbin/stop-dfs.sh
./sbin/stop-yarn.sh
./sbin/mr-jobhistory-daemon.sh stop historyserver

###集群
####说明 :集群是在伪分布式是的基础上搭建的 只需要改一些配置文件 然后 把配置好的master克隆就行
1 修改 /etc/hostname
sudo vim /etc/hostname
将内容修改为master/slave1/slave2
2 修改 /etc/hosts

3 配置 master 节点可通过 SSH 无密码访问 slave1
####单机模式 已经配过ssh免密码登录 所以把 master 的 authorized_keys拷贝到slave1 的 ./ssh文件下即可
ubuntu 16.04安装hadoop3.02单机模式

###master 尝试无密码登录slave1的ssh
##修改配置文件
1 修改 core-site.xml
cd /usr/local/hadoop/etc/hadoop
1 | <configuration> |

解释下:第一个fs.defaultFS设置master机为namenode hadoop.tmp.dir配置Hadoop的一个临时目录,用来存放每次运行的作业jpb的信息。
2 修改 hdfs-site.xml
1 | <configuration> |

dfs.namenode.name.dir是namenode存储永久性的元数据的目录列表。这个目录会创建在master机上。dfs.namenode.data.dir是datanode存放数据块的目录列表,这个目录在slave11和slave1机都会创建。 dfs.replication 设置文件副本数,这里两个datanode,所以设置副本数为2。
配置mapred-site.xml
1 | <configuration> |

解释下:这里设置的是运行jobtracker的服务器主机名和端口,也就是作业将在master主机的9001端口执行
配置yarn-site.xml
1 | <configuration> |

###从master机器启动hadoop集群服务
进入/usr/local/hadoop
#####执行./bin/hdfs namenode -format 进行格式化操作
####启动 ./sbin/start-all.sh
###slave1 jps查看
####浏览器打开master:9870
####浏览器打开master:8088
###master关闭集群服务
###参考
Hadoop3.0.0在Ubuntu16.04上分布式部署
ubuntu16.04搭建hadoop集群环境
hadoop分布式集群安装