集群搭建的步骤有很多,并不是一成不变的标准顺序,我写的只是仅供大家的一个参考,希望能帮到大家,如果有不对的地方也希望大家留言指教。

首先要创建一个虚拟机然后将虚拟机打开

1.修改虚拟机IP地址和配置NAT模式,根据下面的命令和图片中红色框内容进行设置

IPADDR是本台虚拟机的IP地址

vi /etc/sysconfig/network-scripts/ifcfg-eth0

hadoop 静态ip地址的网卡 hadoop配置ip地址_xml


2.修改本机的IPV4

打开网络右键打开属性

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop_02


点击更改适配器设置

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_03


双击打开IPv4进行设置

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_04


按照下图进行设置,设置完毕确认即可

hadoop 静态ip地址的网卡 hadoop配置ip地址_xml_05


点击你的虚拟机右键打开设置

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_06


点击网络适配器点击高级

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_07

将vi /etc/sysconfig/network-scripts/ifcfg-eth0 中的HWADDR改为下面的mac地址

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_08

3.连接Xshell

4.查看防火墙状态

service iptables status

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop_09


发现有防火墙开启,然后需要将防火墙关闭

service iptables stop

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop_10


然后再查看一下防火墙状态

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_11


在通过 chkconfig iptables off 命令将防火墙永久关闭

5.然后进入home目录

cd /home

再home目录下创建一个soft文件夹

mkdir soft

在进入soft目录

cd soft/

再soft目录下创建两个文件夹用于存放jdk和hadoop

mkdir JDK mkdir hadoop

6.连接winSCP将hadoop和jdk安装包传入新建的JDK和hadoop文件夹内

7.查看已安装的jdk

rpm -qa | grep jdk

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop 静态ip地址的网卡_12


将已安装的jdk卸载了

rpm -e --nodeps jdk版本号

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_13


8.解压jdk

进入 cd /home/soft/JDK jdk的压缩包存放目录

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_14


通过 tar -zvxf jdk-8u191-linux-x64.tar.gz 解压jdk

解压完毕后与通过ll查看 蓝色字体的 jdk1.8.0_191就是jdk解压后的目录

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop 静态ip地址的网卡_15


通过 mv jdk1.8.0_191/ jdk 将解压包名称修改为jdk 方便后边写路径

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_16


9.配置环境变量 ,在最下面配置环境变量,如果安装路径与我的不同记得修改记得修改环境变量的JAVA_HOME路径

vi /etc/profile

export JAVA_HOME=/home/soft/JDK/jdk
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_17


写入后, 刷新profile使环境变量生效

source /etc/profile

查看jdk版本是否安装成功

java -version10.然后进入hadoop压缩包存放地址解压hadoop

tar -zvxf hadoop-2.8.5.tar.gz

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_18


配置hadoop环境变量

export HADOOP_HOME=/home/soft/hadoop/hadoop-2.8.5
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop_19


再刷新profile使环境变量生效

source /etc/profile

11.接下来需要修改hadoop的配置文件,需要进入hadoop配置文件的存放地址

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop_20


修改hadoop-env.sh

vi hadoop-env.sh

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_21


配置配置core-site.xml

vi core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:8020</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/soft/tmp</value>
</property>
</configuration>

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_22

配置hdfs-site.xml
vi hdfs-site.xml

<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.block.size</name>
<value>134217728</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///home/soft/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///home/soft/data</value>
</property>
<property>
        <name>fs.checkpoint.dir</name>
        <value>file:///home/soft/cname</value>
</property>
<property>
        <name>fs.checkpoint.edits.dir</name>
        <value>file:///home/soft/cname</value>
</property>
<property>
   <name>dfs.http.address</name>
   <value>hadoop1:50070</value>
</property>
<property>
   <name>dfs.secondary.http.address</name>
   <value>hadoop2:50090</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_23


hadoop 静态ip地址的网卡 hadoop配置ip地址_xml_24

配置yarn-site.xml
vi yarn-site.xml

<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop1</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>hadoop1:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoop1:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoop1:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoop1:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoop1:8088</value>
</property>
</configuration>

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_25

配置slaves

三个虚拟机的主机名

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop_26

创建一个名为mapred-site.xml的文件
touch mapred-site.xml
将mapred-site.xml.template的内容写入mapred-site.xml文件内
cat mapred-site.xml.template >> mapred-site.xml
然后再配置mapred-site.xml
vi mapred-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<final>true</final>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop1:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop1:19888</value>
</property>
</configuration>

hadoop 静态ip地址的网卡 hadoop配置ip地址_xml_27

克隆两台虚拟机

先将虚拟机关闭,右键虚拟机管理里面的克隆虚拟机

hadoop 静态ip地址的网卡 hadoop配置ip地址_xml_28

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_29


hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_30


hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop_31

打开克隆后的hadoop2虚拟机

hadoop 静态ip地址的网卡 hadoop配置ip地址_xml_32


删除 Auto eth1

hadoop 静态ip地址的网卡 hadoop配置ip地址_xml_33


修改ip地址和HWADDR vi /etc/sysconfig/network-scripts/ifcfg-eth0

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop 静态ip地址的网卡_34


修改主机名 vi /etc/sysconfig/network 修改完后需要重启虚拟机

hadoop 静态ip地址的网卡 hadoop配置ip地址_xml_35

然后打开第三台hadoop3虚拟机进行以上和hadoop2一样的操作

接下来对三台主机都进行主机映射配置
vi /etc/hosts

hadoop 静态ip地址的网卡 hadoop配置ip地址_hadoop 静态ip地址的网卡_36

然后就是最后一步设置免密登陆就完成了
连接上三台虚拟机的XShell

  1. 首先进入root底下的.ssh目录
    cd /root/.ssh cd /root/.ssh
  2. 然后生成一个密钥(需要在三台虚拟机中都执行此命令,生成密钥)
    ssh-keygen -t rsa(三次回车)
  3. 然后创建authorized_keys文件
    touch authorized_keys
  4. 将id_rsa.pub的内容写入authorized_keys文件
    cat id_rsa.pub >> authorized_keys
  5. 将authorized_keys传到hadoop2的/root/.ssh下
    scp authorized_keys hadoop2:/root/.ssh/

hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_37


6.然后在hadoop2下将将id_rsa.pub的内容写入authorized_keys文件

cat id_rsa.pub >> authorized_keys

7.再将authorized_keys文件传到hadoop3的/root/.ssh下

scp authorized_keys hadoop3:/root/.ssh/

8.然后在hadoop3下将将id_rsa.pub的内容写入authorized_keys文件

cat id_rsa.pub >> authorized_keys

9.再将authorized_keys文件传到hadoop1和hadoop2的/root/.ssh下覆盖之前的authorized_keys文件

scp authorized_keys hadoop1:/root/.ssh/

scp authorized_keys hadoop2:/root/.ssh/

10.在虚拟机上用ssh hadoop1或者ssh hadoop2或者ssh hadoop3进行测试,如果不需要输入密码则免密设置成功

接下来就可以进行格式化然后启动集群
格式化 hdfs namenode -format (只有第一次启动才会格式化)
启动 start-all.sh

网页验证:
http:192.168.80.100:50070
http:192.168.80.100:8088

在虚拟机上分别运行一下jps

hadoop 静态ip地址的网卡 hadoop配置ip地址_集群搭建_38


hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_39


hadoop 静态ip地址的网卡 hadoop配置ip地址_JAVA_40