乐趣区

关于hadoop:Hadoop集群的部署二

在上一篇文章中,介绍了 Hadoop 集群的伪散布 的部署,在读这篇前,倡议先读上篇文章:Hadoop 集群的部署(一)

这篇文章中咱们将介绍 Hadoop 集群分布式 的部署。

分布式集群的部署

虚拟机筹备

分布式的集群,当然须要多个虚拟机的筹备。这是应用 3 台虚拟机,其中一个为 主节点 ,另外两个为 从节点。其中,上篇文章中曾经配置好的虚拟机当做主节点。

ip 和主机名

两个从节点的 ip 别离为:192.168.19.11192.168.19.12

两个从节点的主机名别离为:hadoop101hadoop102

配置过程参见上一篇文章。

留神:这里在配置 hosts 文件的时候,不仅要配置本人的 ip 和主机名,还要设置另外两台的 ip 和主机名。即每台机器都要有如下的配置。

防火墙的敞开

防火墙都进行敞开。

ssh 免明码登录

这一步在配置的时候有点不同。

伪散布 时只有一台机器,所以只用实现本人登录本人就能够了。

然而在 集群 中设置免明码登录的时候,至多要实现 主节点 免明码登录其余所有节点。

留神:这里之前要看本人的三台机器的 ip 是否属于 同一网段。如果不是,可能会呈现连贯不上的状况。

主节点 的机器上,应用命令:

ssh-copy-id -i hadoop101
ssh-copy-id -i hadoop102

这一步的时候还是须要输出对应从节点机器的明码的,而后再用 ssh 连贯的时候就能够实现免密登录了。

拷贝 jdk

将主节点上咱们之前上传好的 jdk 拷贝到另外两天从节点上:

scp -rq /opt/jdk1.8/ hadoop101:/opt/

而后还须要将 环境变量 的配置文件拷贝过来:

scp -rq /etc/profile hadoop101:/etc/

而后咱们到 hadoop101 机器下来确认一下:

接着再拷贝另一个从节点的。

hadoop 装置

因为咱们这里从 伪分布式 换成 分布式,所以首先须要对之前的一些配置文件做些批改。

hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>hadoop100:50090</value>
    </property>
</configuration>

留神:这里有两个从节点了,所以咱们的备份数量改为 2。而后设定 secondaryNameNode 的这个过程也是在主节点上启动。

yarn-site.xml:

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop100</value>
    </property>
</configuration>

留神:这里多个一个属性,用来指定 resourcemanager 在主节点的机器上启动

workers:

因为当初是集群的构造,咱们须要通知机器那些是从节点。

vim etc/hadoop/workers

默认是将本机作为从节点的,咱们要将 hadoop101hadoop102两台机器作为从节点。

删掉之前的,将两台机器的主机名加上:

hadoop101
hadoop102

拷贝 hadoop 目录到另外两台机器上:

scp -rq /opt/hadoop-3.2.1/ hadoop101:/opt

从新格式化

因为咱们这里相当是装置了一个新的集群,在首次启动集群前,须要对集群进行格式化。前面在启动就不须要了。

删除文件:

删除 /data/hadoop_repo/ 文件夹。

格式化:

cd /opt/hadoop-3.2.1
bin/hdfs namenode -fotmat

启动集群

启动:

sbin/start-all.sh

查看过程:

主节点上 3 个过程,从节点上 2 个过程。启动胜利。

总结

伪分布式 分布式,整体的部署原理是基本一致的,然而在一些小的细节上有稍微的差别。解决好这些差别,能力配置胜利。


参考:

https://www.imooc.com/video/20729

退出移动版