大数据-Hadoop集群的安装与配置

前言

1、此次过程中所以操作都要在root下完成
2、虽然此次安装使用的是hadoop-2.9.1,但是推荐安装hadoop-2.7.3版本
3、hadoop最好只初始化一次,否则很容易出现各类问题
4、建议在hadoop初始化前,克隆一个master和slave,避免悔之不及
5、如在初始化后,hadoop存在初始化多次问题,建议重装


提示:以下是本篇文章正文内容

1. VmWare 15安装 CentOS7

新建虚拟机
master

ip:192.168.119.135
网关:192.168.119.2
子网掩码:255.255.255.0

2. Linux设置

修改主机名称和网络名称:

[root@master ~]# vim /etc/hosts
在最后添入以下两行

192.168.119.135 master
192.168.119.136 slave

在这里插入图片描述

[root@master ~]# vim /etc/sysconfig/network

NETWOEKING=yes
HOSTNAME=master

在这里插入图片描述

关闭防火墙:

关闭:[root@master ~]# systemctl stop firewalld.service
禁止开机启动:[root@master ~]# systemctl disable firewalld.service
查看状态:[root@master ~]# firewall-cmd --state
在这里插入图片描述

关闭selinux

[root@master ~]# vim /etc/selinux/config

关闭前:
在这里插入图片描述

关闭后:
在这里插入图片描述

3. 安装 JDK

JDK-8u261
提取码:h91o

查看
[root@master ~]# rpm -qa|grep jdk
在这里插入图片描述

卸载系统自带的JDK
yum -y remove java java-1.8.0
在这里插入图片描述

将下载好的jdk通过xshell拖动到指定的文件夹中并将其解压
在这里插入图片描述

在root下创建文件夹java:
[root@master usr]# mkdir java

将jdk解压到/usr/java/:
[root@master java]# tar -zxvf jdk-8u261-linux-x64.tar.gz

将压缩包删除:[root@master ~]# rm -rf jdk-8u221-linux-x64.tar.gz

配置环境
[root@master ~]# vim /etc/profile

JAVA_HOME=/usr/java/jdk1.8.0_261
JRE_HOME=/usr/java/jdk1.8.0_261/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
export CLASS_PATH
export PATH

在这里插入图片描述

[root@master ~]# source /etc/profile
[root@master ~]# java -version
在这里插入图片描述

4. 配置Hadoop集群

hadoop-2.7.3
提取码:ag76

hadoop-2.9.1
提取码:27eq

解压

将下载好的hadoop通过xshell拖动到master中
在home下创建文件夹hadoop:[root@master home]# mkdir hadoop
将hadoop解压到/home/hadoop/:[root@master hadoop]# tar -zxvf hadoop-2.9.1.tar.gz

配置环境

[root@master ~]# vim /etc/profile

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

在这里插入图片描述

[root@master ~]# source /etc/profile
[root@master ~]# hadoop version
在这里插入图片描述

修改配置文件

进入home/hadoop/下的hadoop-2.9.1/etc/hadoop/文件夹中
[root@master hadoop]# cd hadoop-2.9.1/etc/hadoop

[root@master hadoop]# vim slaves
删除localhost 添加从节点的名称:
在这里插入图片描述

以下配置在各个文件的<configuration></configuration>中添加

core-site.xml

[root@master hadoop]# vim core-site.xml

    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
    <!-- 指定hadoop运行时产生文件的存储路径 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop/hadoop-2.9.1/tmp</value>
    </property>

hdfs-site.xml

[root@master hadoop]# vim hdfs-site.xml

    <property>
        <name>dfs.namenode.http.address</name>
        <value>master:50070</value>
    </property>
    <!-- 设置secondarynamenode的http通讯地址 -->
    <property>
        <name>dfs.namenode.secondary.http.address</name>
        <value>slave:50090</value>
    </property>
    <!-- 设置hdfs副本数量 -->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.dir</name>
        <value>/home/hadoop/hadoop-2.9.1/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/home/hadoop/hadoop-2.9.1/tmp/dfs/data</value>
    </property>

yarn-site.xml

[root@master hadoop]# vim yarn-site.xml

    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>master:8040</value>
    </property>
    <property>
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>master:8030</value>
    </property>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>master:8025</value>
    </property>
    <property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>master:8088</value>
    </property>
    <property>
        <name>yarn.nodemanager.resource.cpu-vcores</name>
        <value>1</value>
    </property>

mapred-site.xml

[root@Master hadoop]# cp mapred-site.xml.template mapred-site.xml
[root@Master hadoop]# vim mapred-site.xml

    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

配置hadoop-env.sh,指定JAVA_HOME
[root@master hadoop]# vim hadoop-env.sh

修改 export JAVA_HOME=/usr/java/jdk1.8.0_261

配置yarn-env.sh,指定JAVA_HOME
[root@master hadoop]# vim yarn-env.sh

修改 export JAVA_HOME=/usr/java/jdk1.8.0_261

配置mapred-env.sh,指定JAVA_HOME
[root@master hadoop]# vim mapred-env.sh

修改 export JAVA_HOME=/usr/java/jdk1.8.0_261

5. 克隆虚拟机slave

将master克隆为slave
克隆前先关闭master。
在这里插入图片描述

配置slave的静态IP:
在这里插入图片描述

重启网络:[master@master ~]$ systemctl restart network.service

[master@master ~]$ ping www.baidu.com
ping 192.168.119.136 检测master、slave是否能相互两两ping通
在这里插入图片描述

修改主机名称
[root@master ~]# vim /etc/hostname
在这里插入图片描述

[root@master ~]# vim /etc/sysconfig/network
在这里插入图片描述

修改后重启slave

6.SSH免密登录

[root@master ~]# ssh-keygen -t rsa
在这里插入图片描述

分别在slave上执行相同的操作
[root@master ~]# cd /root/.ssh
[root@master .ssh]# cat id_rsa.pub >> authorized_keys
[root@master .ssh]# chmod 644 authorized_keys
[root@master .ssh]# scp authorized_keys slave:/root/.ssh/

slave
[root@slave ~]# cd /root/.ssh
[root@slave .ssh]# cat id_rsa.pub >> authorized_keys
[root@slave .ssh]# chmod 644 authorized_keys
[root@slave .ssh]# scp authorized_keys master:/root/.ssh/

验证
登录[root@master .ssh]# ssh slave
在这里插入图片描述

7. 启动Hadoop集群

在master:进入到home/hadoop/hadoop-2.9.1
格式化结点:[root@master hadoop-2.9.1]# bin/hadoop namenode -format

注意:在没有出错的情况下,节点格式化一次即可
启动hadoop集群:[root@master ~]# cd home/hadoop/hadoop-2.9.1/sbin
[root@master sbin]#start-all.sh
[root@master sbin]# jps

在这里插入图片描述

在这里插入图片描述

8、验证安装可以运行hadoop自带的实例。

在浏览器中:192.168.119.135:50070在这里插入图片描述

(1)执行实例程序计算pi

[root@master ~]# cd /home/hadoop/hadoop-2.9.1/share/hadoop/mapreduce
[root@master mapreduce]# hadoop jar hadoop-mapreduce-examples-2.9.1.jar pi 2 2
在这里插入图片描述

(2)wordcount实例(单词计数)

创建文件wordtest ,内容为hello hadoop bye hadoop。
传到hdfs上。
在hdfs上新建/input目录,将wordtest文件传到hdfs上保存。
[root@master mapreduce]# hadoop dfs -mkdir /input
[root@master mapreduce]# hadoop dfs -put wordtest /input
查看文件
[root@master mapreduce]# hadoop dfs -ls /input
在这里插入图片描述

运行wordcount实例。
[root@master mapreduce]# hadoop jar hadoop-mapreduce-examples-2.9.1.jar wordcount /input /output
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

百里 Jess

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值