0


hadoop全分布式搭建(三台虚拟机,一个主节点,两个从节点)

根据尚硅谷哔哩哔哩视频搭建:bilibili.com/video/BV1Qp4y1n7EN/

安装虚拟机教程可参考:VMware虚拟机 安装 Centos7(linux)(新手超详细教程)_vmware安装centos7教程-CSDN博客

**集群配置如下: **

一、先配置一台虚拟机hadoop101

1‘安装完修改ip

以下内容都在root用户下进行

vim /etc/sysconfig/network-scripts/ifcfg-ens33

注意: 网络配置不使用虚拟机设置修改就要与安装时一致,ip可以修改

vim /etc/sysconfig/network-scripts/ifcfg-ens33
内容如下:
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="922b4573-63d9-44ae-ac4a-411515a8f4e4"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.100.10

GATEWAY=与配置的时网卡中的一致
DNS1=与配置的时网卡中的一致

注意:本教程安装,将hadoop的相关配置全部配置完毕后再克隆虚拟机,没有使用视频中的分发脚本。

2.修改主机名

vim /etc/hostname

内容如下:

hadoop101

3.测试网络是否通畅

​ping www.baidu.com

4.创建目录

cd /opt

mkdir software

mkdir module

5.卸载系统自带的jdk

查找是否有jdk:

rpm -qa | grep -i java

删除jdk:

rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps

检查是否删除干净:

rpm -qa | grep -i java

6.安装jdk

将jdk的包拖入虚拟机

出现的信息即为压缩包所在地址,如果没有出现可能在桌面/home目录下,或者上传不成功。上传不成功再次上传即可。

解压到module目录下和视频中一样:

tar -zxvf /tmp/VMwareDnD/w7eciW/jdk-8u281-linux-x64.tar.gz -C /opt/module

删除压缩包:

rm -rf /tmp/VMwareDnD/w7eciW/jdk-8u281-linux-x64.tar.gz

进入/opt/module/jdk1.8.0_281

cd /opt/module/jdk1.8.0_281/
ll 

进入/etc/profile.d/,配置环境变量

cd /etc/profile.d/
vim my_env.sh

内容如下:

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_281
export PATH=$PATH:$JAVA_HOME/bin

加载环境变量

source /etc/profile

查看java信息

java

7.安装Hadoop

将hadoop的包拖入虚拟机

解压到module目录下:

tar -zxvf /tmp/VMwareDnD/w7eciW/hadoop-3.2.4.tar.gz /opt/module/

进入/opt/module/hadoop-3.2.4/目录,配置环境变量

cd /opt/module/hadoop-3.2.4/

sudo vim /etc/profile.d/my_env.sh

加入以下内容:

#HADOOP_HOME

export HADOOP_HOME=/opt/module/hadoop-3.2.4

export PATH=$PATH:$HADOOP_HOME/bin

export PATH=$PATH:$HADOOP_HOME/sbin

加载环境变量

source /etc/profile

查看hadoop信息

hadoop

8.提前设置hadoop之间ip映射

vim /etc/hosts
192.168.100.10 hadoop101
192.168.100.11 hadoop102
192.168.100.12 hadoop103

9.Hadoop配置文件修改

** 首先进入$HADOOP_HOME/etc/hadoop**

cd $HADOOP_HOME/etc/hadoop

根据集群规划,配置文件:

core-site.xml:

vim core-site.xml

加入以下内容:

<configuration>

    <!-- 指定 NameNode 的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop101:8020</value>
    </property>

    <!-- 指定 Hadoop 数据的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop-3.2.4/data</value>
    </property>
    
    <!-- 配置 HDFS 网页登录使用的静态用户为 root-->
    <property>
        <name>hadoop.http.staticuser.user</name>
        <value>root</value>
    </property>
</configuration>

注意:不同的hadoop版本目录不同需要修改

hdfs-site.xml:

vim hdfs-site.xml

加入内容如下:

<configuration>

    <!-- nn(NameNode) web 端访问地址-->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>hadoop101:9870</value>
    </property>
    
    <!-- 2nn(SecondaryNameNode) web 端访问地址-->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>hadoop103:9868</value>
    </property>
    
</configuration>

yarn-site.xml:

vim yarn-site.xml

加入内容如下:

<configuration>
 
    <!-- 指定 MR 走 shuffle -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
 
    <!-- 指定 ResourceManager 的地址-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop102</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>
 
</configuration>

mapred-site.xml:

vim mapred-site.xml

加入以下内容:

<configuration>

        <!-- 指定 MapReduce 程序运行在 Yarn 上 -->

    <property>

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

        <value>yarn</value>

</property>

</configuration>

10.群起集群

配置workers

vim /opt/module/hadoop-3.2.4/etc/hadoop/workers

内容如下:

hadoop101
hadoop102
Hadoop103

注:该文件中添加内容结尾不允许有空格,文件中不允许有空行,删除local等信息

二、克隆两台虚拟机

1.分别修改三台虚拟机的ip和主机名

修改ip:只用改IPADDR与下面一致

vim /etc/sysconfig/network-scripts/ifcfg-ens33

修改主机名:

vim /etc/hostname

重启虚拟机它才会更新

reboot

重启后,输入如下内容查看ens33下的inet是否与修改的ip一致

ifconfig

查看网络是否连接

ping www.baidu.com

查看hostname

hostname

2.设置免密登录

在hadoop101中:

获取公钥

ssh-keygen -t rsa

按三次空格

分发公钥

ssh-copy-id hadoop103

ssh-copy-id hadoop104

ssh-copy-id hadoop102

第一次访问要输入yes,输入每个虚拟机的root密码

在hadoop102和hadoop103中重复以上步骤

三、启动集群

在hadoop101(主节点)上格式化

cd /opt/module/hadoop-3.2.4

hdfs namenode -format

查看目录下是否有data和logs文件夹

ll

配置hadoop环境变量,定义hadoop组件以root用户运行

cd $HADOOP_HOME/etc/hadoop
vim hadoop-env.sh

在第一行加入一下内容:

export HDFS_NAMENODE_USER=root

export HDFS_DATANODE_USER=root

export HDFS_SECONDARYNAMENODE_USER=root

在hadoop103中

配置hadoop环境变量,定义hadoop组件以root用户运行

cd $HADOOP_HOME/etc/hadoop

vim hadoop-env.sh

在第一行加入一下内容:

export YARN_RESOURCEMANAGER_USER=root

export YARN_NODEMANAGER_USER=root

启动集群

在hadoop101上执行:

cd $HADOOP_HOME/

sbin/start-dfs.sh

在hadoop102上执行:

cd $HADOOP_HOME/

sbin/start-yarn.sh

关闭防火墙

在hadoop101,102,103上执行:

systemctl stop firewalld.service

在windowns系统的浏览器中输入hadoop101的IP:9870,可以看到文件管理

在windowns系统的浏览器中输入hadoop102的IP:8088,可以看到资源管理


本文转载自: https://blog.csdn.net/2301_76697053/article/details/142905217
版权归原作者 new60ll 所有, 如有侵权,请联系我们删除。

“hadoop全分布式搭建(三台虚拟机,一个主节点,两个从节点)”的评论:

还没有评论