Hadoop集群环境搭建

一、主要内容

Hadoop集群搭建主要分为以下几个步骤:

1.安装虚拟软件VMware Worksation
2.配置虚拟机
3.集群虚拟机
4.搭建Hadoop2.10.0分布式集群
*注 链接包含所需环境搭建所有文件 下载安装包 密码:ifih

二、详细步骤

1.安装虚拟软件VMware Worksation,安装程序在上方安装包中。
安装完成
2.配置虚拟机
(1)下载安装包中的Linux操作系统CentOS-7-x86_64-DVD-1908。
(2)在VMware中新建虚拟机centos01(注意选择 将虚拟磁盘存储为多个文件).
新建虚拟机
(3)安装操作系统CentOS(注意:在【软件选择】中选择【 GNOME桌面】,并创建新管理员用户hadoop);
GNOME桌面
创建新管理用户
(4)启动虚拟机,安装VMware Tools,并配置共享文件(方便主机和虚拟机之间复制文件)
安装VMware Tools参考此链接
https://jingyan.baidu.com/article/066074d6a53e8483c21cb0a5.html
如果在安装过程中出现问题,参考以下
https://www.cnblogs.com/TM0831/p/11788018.html
配置共享文件,在VMware Workstation上方选择虚拟机—管理—设置—选项—共享文件夹,选择右边的总是启用,然后添加共享文件的文件夹路径(路径不要出现中文)即可。
配置共享文件
(5)关闭防火墙

集群通常在内网搭建,如果开启防火墙,集群通信会受到防火墙的干扰,需要关闭所有节点的防火墙。

  • 查看防火墙的状态
sudo firewwall-cmd --state
  • 关闭防火墙
 sudo systemctl stop firewalld.service
  • 禁止防火墙开机自启
 sudo systemctl disable firewalld.service

或者直接按win键搜索防火墙然后手动关闭即可。
(6)设置固定IP

  • 在VMware中的菜单栏【编辑】-【虚拟网络编辑器】,在窗口中将外部网络设置为【NAT模式】,并修改子网IP、网关IP(子网IP:192.168.170.0,网关IP:192.168.170.2)。
    修改子网
    修改网关
  • 执行如下命令,修改ifcfg-ens33
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33 

修改如下:

BOOTPROTO=static
DEFROUTE=yes 
.... 
IPADDR=192.168.170.133 
NETMASK=255.255.255.0
GATEWAY=192.168.170.2 
DNS=192.168.170.2 

修改ifcfg-ens33

  • 重启网络服务
 sudo service network restart

在这里插入图片描述

  • 测试本地访问

在Windows中命令行窗口测试如下命令

ping 192.168.170.133

测试本地访问
(7)修改主机名

  • 执行如下命令,查看主机名
 hostname
  • 执行如下命令,修改主机名
sudo vi /etc/hostname
  • 重启系统,确认配置成功
reboot

(8)新建资源目录

  • 在/opt创建softwares和modules两个目录
sudo mkdir /opt/softwares
sudo mkdir /opt/modules
  • 修改目录权限
sudo chown -R hadoop:hadoop /opt/*
  • 进入/opt,查看目录权限
ll

新建目录
(9)安装JDK

  • 卸载系统自带JDK
    i.查看系统已安装的JDK
rpm -qa|grep java

ii.卸载系统自带的JDK

sudo rpm -e --nodeps (安装包命令)  

卸载系统自带JDK

注意:需要卸载全部安装包

  • 安装JDK
    i.将下载好的JDK拷贝至 /opt/softwares目录,然后解压下载好的jdk至 /opt/modules;
tar -zxf jdk-8u241-linux-x64.tar.gz -C /opt/modules/

解压JDK
ii.配置JDK环境变量

修改文件/etc/profile

sudo vi /etc/profile

在文件末尾增加如下几行

export JAVA_HOME=/opt/modules/(jdk目录)
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

配置JDK环境变量
iii.刷新profile

source /etc/profile

iv.测试安装是否成功

java -version

完成安装
3.集群环境配置
(1)完整克隆虚拟机,分别命名为centos02、centos03,分别修改centos02、centos03的IP和主机名;

  • 将CentOS01关机,在VMware中选中CentOS01,点击右键,在弹出的右键菜单中选择【管理】-【克隆】,弹出向导窗口

  • 依次选择【虚拟机中的当前状态】、【创建完整克隆】,设置虚拟机名称为【CentOS02】,并选择虚拟机目录,完成虚拟机的克隆。

  • 分别修改CentOS02、CentOS03的主机名和IP 修改IP配置时,注意删除 删除Linux物理地址绑定的文件

 sudo rm -rf /etc/udev/rules.d/70-persistent-net.rules

修改2的IP
修改3的IP

(2)配置主机IP映射;

  • 每个节点均修改host文件
 sudo vi /etc/hosts

在文件末尾追加以下几行:

192.168.170.133 centos01
192.168.170.134 centos02
192.168.170.135 centos03

修改hosts文件

  • 使用ping命令进行测试
 ping centos01

ping测试

  • 修改Window系统的主机IP映射

在文件C:\Windows\System32\drivers\etc\hosts末尾加入如下几行:

192.168.170.133 centos01
192.168.170.134 centos02
192.168.170.135 centos03

修改主机IP映射
(3)配置SSH无密钥登陆

  • 分别在各节点执行如下命令:
cd ~/.ssh/ (如没有该目录,先执行一次ssh localhost)
ssh-keygen -t rsa
  • 分别在各节点执行如下命令,将公钥信息复制并追加到对方节点的authorized_keys中
ssh-copy-id centos01
ssh-copy-id centos02
ssh-copy-id centos03
  • 分别在各节点上执行如下命令
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
  • 在各节点上测试无密钥登录
ssh centos02

无密钥登陆

4.搭建Hadoop 2.x分布式集群

  • 在节点centos01上下载并解压hadoop安装文件
    安装
  • 在节点centos01上配置系统环境变量
    修改/etc/profile文件
sudo vi /etc/profile
在文件末尾加入如下几行:
export HADOOP_HOME=/opt/modules/hadoop-2.x.x
export PATH=${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH

刷新profile文件

source /etc/profile

系统环境变量

  • 在节点centos01上配置Hadoop环境变量
    进入安装目录下的etc/hadoop,修改以下配置文件
    hadoop-env.sh
    mapred-env.sh
    yarn-env.sh
    在上述文件中加入JAVA_HOME环境变量
export JAVA_HOME=/opt/modules/jdk1.8.0_241
  • 配置HDFS,在节点centos01分别修改core-site.xml、hdfs-site.xml、slaves文件

修改配置文件core-site.xml,插入如下内容:

<configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://centos01:9000</value>
        </property>
<property>
                <name>hadoop.tmp.dir</name>
                <value>file:/opt/modules/hadoop-2.10.0/tmp</value>
        </property>
</configuration>

修改配置文件hdfs-site.xml,插入如下内容:

<configuration>
        <property>
                <name>dfs.replication</name>
                <value>2</value>
        </property>
        <property>
                <name>dfs.permission.enabled</name>
                <value>false</value>
        </property>
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>file:/opt/modules/hadoop-2.10.0/tmp/dfs/name</value>
        </property>
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>file:/opt/modules/hadoop-2.10.0/tmp/dfs/data</value>
        </property>
</configuration>

(3)修改slaves文件

centos01
centos02
centos03
  • 配置YARN,在节点centos01上分别修改mapred-site、yarn-site文件

复制mapred-site.xml.template文件并重命名为mapred-site.xml

cp mapred-site.xml.template mapred-site.xml

在文件mapred-site.xml插入如下内容

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

修改yarn-site.xml 插入如下内容:

<configuration>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <property>
                <name>yarn.resourcemanager.address</name>
                <value>centos01:8032</value>
        </property>
</configuration>
  • 复制安装文件到其他各节点

切换到安装目录:

cd  /opt/modules
  • 复制hadoop到其他节点
scp -r hadoop-2.10.0/ hadoop@centos02:/opt/modules/
scp -r hadoop-2.10.0/ hadoop@centos03:/opt/modules/

复制

  • 格式化NameNode

在centos01节点执行如下操作

hdfs namenode -format

注:若在此处出现hdfs找不到命令问题,可参考https://blog.csdn.net/qiangzi_lg/article/details/80528924

  • 启动Hadoop,查看各节点进程
jps

进程
注:出现六个进程环境搭建即为成功

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

一角灯辉

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

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

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

打赏作者

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

抵扣说明:

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

余额充值