大数据实践(三)--Hadoop集群搭建(Ubuntu)
前置环境
原单机配置前置环境:
hadoop2.7.3
Ubuntu16
VirtualBox
jdk1.8
还需要yarn管理集群
001、整体路线
使用虚拟机搭建三个节点,分别名为master、node2、node3.
由于我的主节点配置高于从节点,所以更多负载在主节点上。
002、前置条件
1、jdk、hadoop都已经加入环境变量。
2、复制两台虚拟机,将所有节点配置好静态ip。
master :192.168.56.102
node2 :192.168.56.103
node3 :192.168.56.104
3、修改主机名称:
在各自节点上修改:
sudo vim /etc/hostname
#master节点
master
#node2节点
node2
#node3节点
node3
4、修改hosts文件,使主机名和ip对应。
所有节点都要修改;
sudo vim /etc/hosts
192.168.56.102 master
192.168.56.103 node2
192.168.56.104 node3
以上修改完毕后建议重启系统。
5、配置ssh远程登陆
把master上的公钥文件,拷贝到node1,node2上;
scp ~/.ssh/authorized_keys hadoop@node2:~/.ssh/
scp ~/.ssh/authorized_keys hadoop@node3:~/.ssh/
其实本步骤基本可以略去,由于都是复制来的虚拟机,基本都有相同的配置。
在master上使用ssh node2、ssh node3测试,如果没问题即可。
003、修改配置文件
在所有节点上都要修改。
1、修改hadoop-env.sh(略去)
2、修改core-site.xml
<property>
<!--指定 namenode 的 hdfs 协议文件系统的通信地址-->
<name>fs.defaultFS</name>
<value>hdfs://192.168.56.102:8020</value>
</property>
<property>
<!--指定 hadoop 集群存储临时文件的目录-->
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/hadoopDir</value>
</property>
3、修改hdfs-site.xml
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/hdfs/namedir</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/hdfs/datadir</value>
</property>
4、修改yarn-site.xml
<property>
<!--配置 NodeManager 上运行的附属服务。需要配置成 mapreduce_shuffle 后才可以在 Yarn 上运行 MapReduce 程序。-->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<!--resourcemanager 的主机名-->
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
5、修改mapred-site.xml
如果没有该文件,cp mapred-site.xml.template mapred-site.xml.
<configuration>
<property>
<!--指定 mapreduce 作业运行在 yarn 上-->
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
6、修改slaves
在slaves文件中,加入以下:
配置所有节点的主机名或 IP 地址,每行一个.
master
node2
node3
004、启动集群
1、初始化namenode
在master上使用该命令即可:
hdfs namenode -format #只使用一次,使用多次可能会造成冲突
2、启动hdfs服务
master启动:
start-dfs.sh
master下启动了以下进程:
2728 DataNode
2920 SecondaryNameNode
2569 NameNode
其他节点只有:
2728 DataNode
3、启动yarn服务
start-yarn.sh
master启动了以下进程:
3220 NodeManager
2728 DataNode
2920 SecondaryNameNode
3090 ResourceManager
2569 NameNode
其他节点只有 :
3220 NodeManager
2728 DataNode
005、web ui界面
1、hadoop ui
在浏览器打开master的50070端口:
2、yarn ui
打开8088端口:
关闭进程的话可以使用:
stop-dfs.sh
stop-yarn.sh
#全部关闭
stop-all.sh