• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

大数据技术栈-Hadoop3.3.4-完全分布式集群搭建部署-centos7完全详细-小白注释版虚拟机安装+平台部署

武飞扬头像
Hao.715
帮助1

目录

环境条件:

1、安装虚拟机(已安装好虚拟机的可跳转至  二、安装JDK与Hadoop)

(1)直接新建一台虚拟机

(2)首次启用虚拟机,进行安装

一、集群前置环境搭建(三台机器分别设置hostname、网卡(ip)配置、ssh免密登录)

1、查看一下本机与虚拟机的网卡和ip信息

(1)首先,查看本机的网卡配置,使用cmd查看ipconfg,找到VMware的虚拟网卡,查看ip

(2)查看虚拟机的网卡配置和网络信息

(3)修改Hostname

2、配置静态ip网卡

编辑

编辑

3、配置ssh免密登录

(1)修改hosts文件

(2)配置ssh

4、hadoop集群规划

二、安装jdk与hadoop

1、检查jdk是否安装

2、安装jdk,配置环境

3、准备Hadoop3.3.4安装包

(1)获取安装包

(2)解压安装包 

(3)检查 hadoop-3.3.4/etc/hadoop 路径下的文件 

4、配置Hadoop3.3.4环境变量

5.修改Hadoop配置文件内容

(1)修改hadoop-env.sh 添加JAVA_HOME

 (2)修改 core-site.xml 添加配置信息:

(3)修改yarn-site.xml

 (4)修改mapred-site.xml

 (5)修改hdfs-site.xml

 (6)修改workers

6.同步hadoop至slave1与slave2

三、初始化

1.初始化namenode

2.启动Hadoop

 (1)第一种启动方式

(2)第二种启动方式

(3) 检查启动状态

(4)关闭Hadoop


环境条件:

设备类型 软件类别 名称、版本号
PC机(建议内存8GB以上) 操作系统 Window10
软件 VMware Workstation 17 Player
虚拟机 Linux 操作系统 CentOS 7
镜像文件与安装包

CentOS-7-x86_64-DVD-2009.iso

Hadoop3.3.4.tar.gz
jdk-8u191-linux-x64.tar.gz
其他(看个人喜好选用) 工具 Xshell 7
Xftp 7

1、安装虚拟机(已安装好虚拟机的可跳转至  二、安装JDK与Hadoop

默认VMware已经安装好,打开VMware安装第一台虚拟机

(1)直接新建一台虚拟机

学新通

选中 已经下载好的镜像文件 CentOS7-x86_64-DVD-2009.iso 

学新通

修改机器名称、本机用户与密码,root用户也使用此密码

学新通

命名虚拟机名称,并设置本虚拟机的位置(建议选择储存空间大的位置,新建文件夹存放) 

 学新通

学新通

 设置大小,默认为20GB,不用修改

选择 将虚拟磁盘存储为单个文件  然后下一步

 学新通

检查虚拟机硬件配置,进行  自定义硬件 进行修改

 学新通

内存设置为 2GB(最少2GB)

处理器数量设置为 2个

将网络适配器选择为自定义 选用 VMnet8 

学新通

 至此,虚拟机基本设置完成,点击完成即可。

(2)首次启用虚拟机,进行安装

直接启动

学新通

首次启用需等待系统自动下载

学新通

然后就进入系统了

注:本次安装过程使用了简易安装,不使用的话是需要自行选择需要安装的插件和软件

可以点击用户名进行普通登录,或选择 Not listed? 使用root用户登录

学新通

至此,虚拟机的安装就算结束了···

一、集群前置环境搭建(三台机器分别设置hostname、网卡(ip)配置、ssh免密登录

1、查看一下本机与虚拟机的网卡和ip信息

(1)首先,查看本机的网卡配置,使用cmd查看ipconfg,找到VMware的虚拟网卡,查看ip

win R 打开 cmd

学新通

cmd中使用 ipconfig 进行查看

学新通  

学新通

找到 VMnet8 这个虚拟网卡,所有集群的IP需配置在此网段内。例如:192.168.13.20

记住192.168.13.1和255.255.255.0

(2)查看虚拟机的网卡配置和网络信息

使用 ifconfig ip a 进行查看 两者选一个即可(能看到虚拟机现在的ip和网卡名称即可

ifconfig

通常出现的第一个此虚拟机使用的虚拟网卡,名称为ens33 对这个网卡的配置文件进行修改 

学新通

ip a

此命令的内容与 ifconfig 大致相同 

学新通

(3)修改Hostname

 方法一:使用 vim/etc/hostname 编辑即可

 vim/etc/hostname

修改后使用 reboot 重启虚拟机生效

使用命令 hostname 查看

hostname

 方法二:使用 hostnamectl 命令

hostnamectl set-hostname 新名称

修改后使用reboot重启虚拟机

使用hostname查看

hostname

2、配置静态ip网卡

网卡路径 /etc/sysconfig/network-scripts/ifcfg-ens33

使用vim对网卡配置文件进行编辑 

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

学新通

  1.  
    #网卡配置文件内容
  2.  
    TYPE=Ethernet
  3.  
    PROXY_METHOD=none
  4.  
    BROWSER_ONLY=no
  5.  
    BOOTPROTO="static"
  6.  
    DEFROUTE=yes
  7.  
    IPV4_FAILURE_FATAL=no
  8.  
    IPV6INIT=yes
  9.  
    IPV6_AUTOCONF=yes
  10.  
    IPV6_DEFROUTE=yes
  11.  
    IPV6_FAILURE_FATAL=no
  12.  
    IPV6_ADDR_GEN_MODE=stable-privacy
  13.  
    NAME=ens33
  14.  
    UUID=f605a46e-401e-46bf-98f7-1d9270d29270
  15.  
    DEVICE=ens33
  16.  
    ONBOOT=yes
  17.  
    IPADDR=192.168.13.30
  18.  
    NETMASK=255.255.255.0
  19.  
    DNS1=8.8.8.8
  20.  
    DNS2=114.114.114.114
  21.  
    DNS3=192.168.13.1
  22.  
    PREFIX=24
  23.  
    GATEWAY=192.168.13.2
学新通

 使用ping命令测试网络是否联通

ping -c 4 百度.com

学新通

显示以上内容,说明测试成功。按照以上全部步骤继续创建 slave1 和 slave2 两台虚拟机 

3、配置ssh免密登录

三台虚拟机都配置好网络后,再进行本步骤!

(1)修改hosts文件

vim /etc/hosts

  1.  
    #IP地址 hostname名称
  2.  
    192.168.13.30 master
  3.  
    192.168.13.31 slave1
  4.  
    192.168.13.32 slave2

 三台机器同步进行修改(建议使用xshell同时三台进行操作)

后续操作均使用Xshell工具进行,与虚拟机终端进行操作的结果相同

2)配置ssh

创建.ssh文件夹(三台机器都需要执行) 

mkdir .ssh

ll 查看是否创建成功(ls命令是看不见的)

ll -a

生成密钥(三台机器都需要执行) 

ssh-keygen -t rsa

回车执行

学新通

即为成功 

ssh-copy-id 复制到其他主机

  1.  
    ssh-copy-id master
  2.  
    ssh-copy-id slave1
  3.  
    ssh-copy-id slave2

每台机器都运行以上三条命令一遍

使用ssh进行测试(无需密码直接切换到其他主机)
  1.  
    # master 免密登录至slave1节点
  2.  
    ssh slave1

4、hadoop集群规划

机器 ip地址 节点分配
master 192.168.13.30 NameNode、DataNode、NodeManager
slave1 192.168.13.31 ResourceManager、DataNode、NodeManager
slave2 192.168.13.32 SecondaryNameNode、DataNode、NodeManager

二、安装jdk与hadoop

1、检查jdk是否安装

使用 java-version 查看Jdk的版本

java -version

学新通

这里我用的是jdk1.8.0_191

使用新版jdk,在 /etc/profile 修改jdk环境变量至新版的路径即可 

安装包:虚拟机联网后可直接通过浏览器进行下载 若在PC机 则需通过工具上传至虚拟机中 (使用xshell或xftp)

2、安装jdk,配置环境

在/opt目录下创建两个文件夹

mkdir -p software     //存放安装包

mkdir -p module       //存放解压后的文件

准备好安装包后,使用tar命令解压

  1.  
    mkdir -p /opt/software
  2.  
    mkdir -p /opt/module
  3.  
    ls /opt

tar -zvxf /目标文件路径  -C /安装路径 

tar -zvxf /opt/software/jdk-8u191-linux-x64.tar.gz -C /opt/module

解压好后通过mv命令改名

mv /opt/module/解压后文件 /opt/module/改名

配置环境 /etc/profile

vim /etc/profile

将以下内容写入profile中 (路径需与安装的一致

  1.  
    #Profile中对jdk的配置内容
  2.  
    export JAVA_HOME=/opt/module/jdk1.8.0_191
  3.  
    export PATH=$JAVA_HOME/bin:$PATH
  4.  
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$HAVA_HOME/lib/tools.jar

 修改后使用source命令

source /etc/profile

 使用命令查看jdk版本,与安装包相符说明配置成功

java -version

3、准备Hadoop3.3.4安装包

(1)获取安装包

获取方式一:若虚拟机是图形化界面,即可使用火狐浏览器直接 apache.org 进行访问,再Download中下载Hadoop对应版本

获取方式二: 通过各种工具软件从PC机将下载好的安装包上传至虚拟机内。

(2)解压安装包 

使用tar命令解压安装包(我的安装包统一放在/opt/software目录下,解压在/opt/module目录)

  1.  
    #使用tar命令解压
  2.  
    tar -zvxf /opt/software/hadoop-3.3.4.tar -C /opt/module/
  3.  
     
  4.  
    #ls 查看解压是否成功
  5.  
    ls /opt/module

(3)检查 hadoop-3.3.4/etc/hadoop 路径下的文件 

ls /opt/module/hadoop-3.3.4/etc/hadoop

学新通  

 后续要对这几个文件进行配置

4、配置Hadoop3.3.4环境变量

使用vim对 /etc/profile 进行编辑,将以下内容写入

  1.  
    #在profile中对Hadoop的配置内容
  2.  
    export HADOOP_HOME=安装路径
  3.  
    export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
  4.  
    export HDFS_NAMENODE_USER=root
  5.  
    export HDFS_DATANODE_USER=root
  6.  
    export HDFS_SECONDARYNAMENODE_USER=root
  7.  
    export YARN_RESOURCEMANAGER_USER=root
  8.  
    export YARN_NODEMANAGER_USER=root

记得 source /etc/profile

5.修改Hadoop配置文件内容

(1)修改hadoop-env.sh 添加JAVA_HOME

  1.  
    #进入hadoop的配置文件目录
  2.  
    cd /opt/module/hadoop-3.3.4/etc/hadoop
  3.  
     
  4.  
    #vi修改 hadoop-env.sh
  5.  
    vi hadoop-env.sh
  6.  
     
  7.  
    #添加JAVA_HOME
  8.  
    在38行插入 JAVA_HOME=/opt/module/jdk1.8.0_191

 (2)修改 core-site.xml 添加配置信息:

vim core-site.xml

在<configuration></configuration>之间插入以下内容

  1.  
    <!--HDFS临时目录-->
  2.  
    <property>
  3.  
    <name>hadoop.tmp.dir</name>
  4.  
    <value>/opt/module/hadoop-3.3.4/tmp</value>
  5.  
    </property>
  6.  
    <!--HDFS的默认地址、端口(访问地址)-->
  7.  
    <property>
  8.  
    <name>fs.defaultFS</name>
  9.  
    <value>hdfs://master:9000</value>
  10.  
    </property>

(3)修改yarn-site.xml

vim yarn-site.xml
  1.  
    <!--集群Master-->
  2.  
    <property>
  3.  
    <name>yarn.resourcemanager.hostname</name>
  4.  
    <value>master</value>
  5.  
    </property>
  6.  
    <!--NodeManager上运行的附属服务-->
  7.  
    <property>
  8.  
    <name>yarn.nodemanager.aux-services</name>
  9.  
    <value>mapreduce_shuffle</value>
  10.  
    </property>
  11.  
    <!--容器可能会覆盖的环境变量-->
  12.  
    <property>
  13.  
    <name>yarn.nodemanager.envwhitelist</name>
  14.  
    <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,PATH,LANG,TZ</value>
  15.  
    </property>
  16.  
    <!--关闭内存检测,在虚拟机环境中不做配置会报错-->
  17.  
    <property>
  18.  
    <name>yarn.nodemanager.vmem-check-enable</name>
  19.  
    <value>false</value>
  20.  
    </property>
学新通

 (4)修改mapred-site.xml

vim mapred-site.xml
  1.  
    <!--local本地运行,Classic表示经典mapreduce框架,yarn表示新的框架-->
  2.  
    <property>
  3.  
    <name>mapreduce.framework.name</name>
  4.  
    <value>yarn</value>
  5.  
    </property>
  6.  
    <!--如果map和reduce任务访问本地库(压缩等),则必须保留原始值,此值为空时,设置执行环境的命令将取决于操作系统-->
  7.  
    <property>
  8.  
    <name>mapreduce.admin.user.env</name>
  9.  
    <value>HADOOP_MAPRED_HOME=/opt/module/hadoop-3.3.4</value>
  10.  
    </property>
  11.  
    <!--可设置AM【AppMaster】端的环境变量-->
  12.  
    <property>
  13.  
    <name>yarn.app.mapreduce.am.env</name>
  14.  
    <value>HADOOP_MAPRED_HOME=/opt/module/hadoop-3.3.4</value>
  15.  
    </property>
学新通

 (5)修改hdfs-site.xml

vim hdfs-site.xml
  1.  
    <!--hdfs web的地址-->
  2.  
    <property>
  3.  
    <name>dfs.namenode.http-address</name>
  4.  
    <value>master:50070</value>
  5.  
    </property>
  6.  
    <!--副本数-->
  7.  
    <property>
  8.  
    <name>dfs.replication</name>
  9.  
    <value>3</value>
  10.  
    </property>
  11.  
    <!--是否启用hdfs权限,当值为false时,代表关闭-->
  12.  
    <property>
  13.  
    <name>dfs.permissions.enabled</name>
  14.  
    <value>false</value>
  15.  
    </property>
  16.  
    <!--一块大小,默认128M-->
  17.  
    <property>
  18.  
    <name>dfs.blocksize</name>
  19.  
    <value>13217728</value>
  20.  
    </property>
学新通

 (6)修改workers

vim workers

写入以下内容

  1.  
    master
  2.  
    slave1
  3.  
    slave2

配置文件完成~~

6.同步hadoop至slave1与slave2

使用scp命令

  1.  
    scp -r /opt/module/hadoop-3.3.4 slave1:/opt/module/
  2.  
    scp -r /opt/module/hadoop-3.3.4 slave2:/opt/module/

三、初始化

1.初始化namenode

使用hdfs命令在master上进行(其余俩台服务器不用,注意:该命令只能使用一次!!

hdfs namenode -format

2.启动Hadoop

 (1)第一种启动方式

1)启动hdfs

start-hdfs.sh

若显示不存在则使用

$HADOOP_HOME/bin start-hdfs.sh

 2)启动yarn

start-yarn.sh
$HADOOP_HOME/bin start-yarn.sh

(2)第二种启动方式

start-all全部启动

start-all.sh

 或使用

$HADOOP_HOME/bin start-all.sh

(3) 检查启动状态

使用jps命令

jps

学新通 

浏览HDFS文件

hadoop fs ls /

访问hdfs

master:50070

(4)关闭Hadoop

stop-all.sh 

各种问题欢迎大家留言!

——————————————

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhficeig
系列文章
更多 icon
同类精品
更多 icon
继续加载