CentOS7虚拟机实现Hadoop3.0分布式集群安装

1、虚拟机环境配置

1.1 虚拟机参数

主节点hadoop100: RAM 4G ,CPU 4 ,ROM 64G
从节点hadoop101: RAM 2G ,CPU 1 ,ROM 64G
从节点hadoop102: RAM 2G ,CPU 1 ,ROM 64G
在这里插入图片描述

  • 下面先配置hadoop100,如果没有说明,默认是在hadoop100虚拟机上操作

1.2 静态IP配置

  • 关闭网络管理器

    systemctl stop NetworkManager
    systemctl disable NetworkManager
    
  • 修改网络配置,设置静态IP

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

    在这里插入图片描述

  • 重启网络

    service network restart
    
  • 查看IP是否设置成功

    ifconfig
    
  • hadoop101、 hadoop102的静态IP配置与以上操作相同,IP分别设为192.168.68.101、192.168.68.102

1.3 主机名设置

  • 编辑网络配置文件

    vim /etc/sysconfig/network
    

    增加以下内容:

    NETWORKING=yes
    HOSTNAME=hadoop100
    
  • 永久设置主机名

    hostnamectl set-hostname hadoop100
    
  • 重启

    reboot
    
  • 查看主机名是否生效

    hostname
    
  • hadoop101、 hadoop102的主机名配置与以上操作相同,主机名分别设为hadoop101、 hadoop102

1.4 hosts文件配置

  • 配置 IP 和 hostname 的映射关系

    vim /etc/hosts
    

    增加以下内容:

    192.168.68.100 hadoop100
    192.168.68.101 hadoop101
    192.168.68.102 hadoop102
    
  • hadoop101、 hadoop102的hosts文件配置与以上操作相同

1.5 关闭防火墙

  • 三台虚拟机都需要关闭
    systemctl stop firewalld.service
    systemctl disable firewalld.service
    

1.6 ssh免密码登陆

  • hadoop100虚拟机生成公钥,一路按回车就行

    ssh-keygen -t rsa
    

    在这里插入图片描述

  • 向本机复制公钥

    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    
  • 登录hadoop100验证

    ssh hadoop100
    

    第一次验证的时候会提示输入 yes 或 no, 输入了 yes 之后按回车可以进入就表示免密码登陆配置成功。
    在这里插入图片描述

  • 把公钥复制到另外两台虚拟机(需要输入对应的密码)

    ssh-copy-id -i hadoop101
    ssh-copy-id -i hadoop102
    
  • 在 hadoop100 机器上使用 ssh 命令确认集群免密码登陆是否设置成功, 如果可以免密码登陆进去就说明是没有问题的

    ssh hadoop101
    exit
    ssh hadoop102
    exit
    

1.7 jdk 安装

  • 创建存放目录

    mkdir -p /data/soft/
    cd /data/soft/
    
  • hadoop101、 hadoop102同样需要创建/data/soft/目录

  • 提前下载好jdk安装包,上传安装包到该目录下(本安装从Windows主机使用xshell操作)

    rz
    
  • 解压,重命名

    tar -zxvf jdk-8u261-linux-x64.tar.gz
    mv  jdk1.8.0_261/ jdk1.8
    
  • 配置环境变量

    vim /etc/profile
    

    在文件末尾增加以下内容:

    export JAVA_HOME=/data/soft/jdk1.8
    export HADOOP_HOME=/data/soft/hadoop-3.2.1
    export PATH=.:$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
    
  • 刷新环境变量配置

    source /etc/profile
    
  • 检查jdk是否安装成功

    java -version
    

    在这里插入图片描述

  • 复制hadoop100的jdk以及环境变量配置到另外两台虚拟机

    scp -rq /data/soft/jdk1.8/ hadoop101:/data/soft/
    scp -rq /etc/profile hadoop101:/etc/
    
    scp -rq /data/soft/jdk1.8/ hadoop102:/data/soft/
    scp -rq /etc/profile hadoop102:/etc/
    
  • 分别切换到hadoop101、hadoop102,执行以下操作

    source /etc/profile
    java -version
    

2、Hadoop安装

首先在 hadoop100 节点上安装,再复制到另外两台虚拟机。

2.1 Hadoop安装包

  • 将下载好的Hadoop安装包,上传到目录,解压
    cd /data/soft
    tar -zxvf hadoop-3.2.1.tar.gz
    

2.2 修改 hadoop 相关配置文件

  • 进入配置文件所在目录

    cd hadoop-3.2.1/etc/hadoop/
    
  • 修改 hadoop-env.sh 文件,增加环境变量信息

    vim hadoop-env.sh
    

    在文件最后增加以下内容:

    export JAVA_HOME=/data/soft/jdk1.8
    export HADOOP_LOG_DIR=/data/hadoop_repo/logs/hadoop
    
  • 修改 core-site.xml 文件, 注意 fs.defaultFS 属性中的主机名需要和你配置的主机名保持一致

    vim core-site.xml
    

    增加以下内容:(注意文件中已经有“configuration”标签)

    	<configuration>
    		<property>
    			<name>fs.defaultFS</name>
    			<value>hdfs://hadoop100:9000</value>
    		</property>
    		<property>
    			<name>hadoop.tmp.dir</name>
    			<value>/data/hadoop_repo</value>
    		</property>
    	</configuration>
    

    在这里插入图片描述

  • 修改 hdfs-site.xml 文件, 把 hdfs 中文件副本的数量设置为2

    vim 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>
    
  • 修改 mapred-site.xml, 设置 mapreduce 使用的资源调度框架

    vim mapred-site.xml
    
    <configuration>
    	<property>
    		<name>mapreduce.framework.name</name>
    		<value>yarn</value>
    	</property>
    </configuration>
    
  • 修改 yarn-site.xml, 设置 yarn 上支持运行的服务和环境变量白名单

    vim 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,CL
    		ASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    	</property>
    	<property>
    		<name>yarn.resourcemanager.hostname</name>
    		<value>hadoop100</value>
    	</property>
    </configuration>
    
  • 修改 workers 文件, 增加所有从节点的主机名, 一个一行

    vim workers
    

    先删掉workers 文件原有的localhost,增加以下内容:

    hadoop101
    hadoop102
    
  • 修改启动脚本

    cd /data/soft/hadoop-3.2.1/sbin
    
  • 在start-dfs.sh,stop-dfs.sh增加以下内容:

    HDFS_DATANODE_USER=root
    HDFS_DATANODE_SECURE_USER=hdfs
    HDFS_NAMENODE_USER=root
    HDFS_SECONDARYNAMENODE_USER=root
    

    在这里插入图片描述

  • 在start-yarn.sh,stop-yarn.sh增加以下内容:

    YARN_RESOURCEMANAGER_USER=root
    HADOOP_SECURE_DN_USER=yarn
    YARN_NODEMANAGER_USER=root
    

2.3 复制已配置的Hadoop到从节点

  • 把 hadoop100 节点上修改好配置的安装包拷贝到其他两个从节点

    cd /data/soft/
    scp -rq hadoop-3.2.1 hadoop101:/data/soft/
    scp -rq hadoop-3.2.1 hadoop102:/data/soft/
    

2.4 格式化namenode

  • 如果多次格式化,需要先删除虚拟机的/data/hadoop_repo目录(core-site.xml 文件中设置的目录),再格式化才能成功。

    cd /data/soft/hadoop-3.2.1
    bin/hdfs namenode -format
    

    成功界面:在这里插入图片描述

2.5 启动集群

  • 在 hadoop100 节点上执行

    sbin/start-all.sh
    

2.6 验证集群

  • 分别在三台虚拟机上运行命令:

    jps
    

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 还可以通过 webui 界面来验证集群服务是否正常,在这三台虚拟机中任意的浏览器访问:
    hdfs webui 界面: http://192.168.68.100:9870
    yarn webui 界面: http://192.168.68.100:8088
    在这里插入图片描述
    在这里插入图片描述
    至此, hadoop 分布式集群安装成功~

3、参考文章

本文主要依照了慕课网徐老师的快速入门Hadoop3.0大数据处理所提供的安装文档。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值