当前位置:   article > 正文

HDFS的搭建

HDFS的搭建

HDFS的搭建

系统:centos7.6
前提:四台kvm虚拟机
简述:四台虚拟机分别扮演不同角色,第一台为NameNode master机,第二台为Secondary NameNode ,第三,四台为DataNode Slaver。四台为统一网段192.168.4.0/24
以下ip都是例子具体看自己主机ip,ip a 或ifconfig


环境配置

1.启动四台虚拟机以第一台为例

virsh start node-1
  • 1

2.修改四台主机名以第一台为例

hostnamectl set-hostname node-1.tedu.cn
  • 1

3.通过ssh在宿主机连接四台虚拟机,ssh+ip

ssh 192.168.4.200
  • 1

ctrl+shift+T开启3个终端连接另外三台


4.检测四台是否能互相ping通,每台主机ip不同按自己情况来ping

ping 192.168.5.140
...
...
...
  • 1
  • 2
  • 3
  • 4

5.修改hosts文件将ip与主机名绑定,以第一台为例,四台都需要修改

vi /etc/hosts
  • 1

在末尾添加每台的ip+hostname
在这里插入图片描述


6.我们将node-1设为master节点,所以要将ssh连接配置为免密登录,布置ssh信任关系

ssh-keygen
  • 1

连续按回车三次
在这里插入图片描述

将生成的密钥分给4个节点

ssh-copy-id node-1
ssh-copy-id node-2
ssh-copy-id node-3
ssh-copy-id node-4
  • 1
  • 2
  • 3
  • 4

第一个提示输入yes第二个输入虚拟机密码
测试信任关系是否连接

ssh node-2
  • 1

输入exit登出
在这里插入图片描述
注意看主机名变化


7.在每台虚拟机上关闭防火墙,清除iptables规则链,设置seliunx为disabled

iptables -F
iptables -X
iptables -Z
systemctl stop firewalld
systemctl disable firewalld
  • 1
  • 2
  • 3
  • 4
  • 5

8.在每个节点上安装java-1.8.0-openjdk-devel

yum install -y java-1.8.0-openjdk-deve
  • 1

9.测试每台机子的jdk版本号和jps,每台的jps不同

java -version
jps
  • 1
  • 2

10.如果windows上有Hadoop包可以用xftp5传送到宿主机/opt下,如果没有可以直接在宿主机下载

wget http://archive.apache.org/dist/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz
  • 1

在宿主机利用scp发送Hadoop到node-1节点

scp /opt/hadoop-2.7.6.tar.gz root@192.168.4.200:/root/
  • 1

安装Hadoop

11.在node-1上安装Hadoop
解压文件

tar -xf hadoop-2.7.6.tar.gz
mv hadoop-2.7.6 /usr/local/hadoop
  • 1
  • 2

先修改Hadoop环境变量文件
(1)查看java-openjdk安装位置

rpm -ql java-1.8.0-openjdk
  • 1

一般为/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-0.el7_8.x86_64/jre
(2)修改环境变量文件

cd /etc/hadoop
vi hadoop-env.sh
  • 1
  • 2

在这里插入图片描述
启动Hadoop

cd /usr/local/hadoop
./bin/hadoop
  • 1
  • 2

搭建HDFS

12.在node-1节点上修改slaves文件,添加DateNode节点node-3,node-4

cd etc/hadoop/
vi slaves
  • 1
  • 2

将原来的localhost删除添加node-3,node-4两行
在这里插入图片描述


13.修改Hadoop的核心配置文件core-site.xml

vi core-site.xml
  • 1

在 中添加

    <property>
    #配置NameNode在哪台机以及端口号,客户端可以通过此地址访问HDFS
        <name>fs.defaultFS</name>
        <value>hdfs://node-1:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name> #临时目录其他目录以这为基本目录
        <value>/var/hadoop</value> #Hadoop的数据目录,需要创建
    </property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在这里插入图片描述
创建数据目录

mkdir /var/hadoop
ssh node-2 mkdir /var/hadoop
ssh node-3 mkdir /var/hadoop
ssh node-4 mkdir /var/hadoop
  • 1
  • 2
  • 3
  • 4

修改hdfs-site.xml配置文件
在 中添加

    <property>
        <name>dfs.namenode.http-address</name>
        <value>node-1:50070</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>node-2:50090</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

在这里插入图片描述


14.在每个节点安装rsync同步包

 yum install -y rsync
  • 1

在node-1主节点操作,将node-1上的/usr/local/hadoop/数据同步到其他节点上

 rsync -aSH --delete /usr/local/hadoop/ 192.168.4.194:/usr/local/hadoop/ -e "ssh" &
 rsync -aSH --delete /usr/local/hadoop/ 192.168.4.187:/usr/local/hadoop/ -e "ssh" &
 rsync -aSH --delete /usr/local/hadoop/ 192.168.4.140:/usr/local/hadoop/ -e "ssh" &
  • 1
  • 2
  • 3

在其他节点检测数据是否同步

ls /usr/local/hadoop
  • 1

15.格式化,在node-1上操作

cd /usr/local/hadoop/
./bin/hadoop namenode -format
./sbin/start-dfs.sh
  • 1
  • 2
  • 3

在这里插入图片描述


16.在每个节点上验证角色

jps
  • 1

会显示所分配的角色
第一台为NameNode master机,第二台为Secondary NameNode ,第三,四台为DataNode

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/738273
推荐阅读
相关标签
  

闽ICP备14008679号