HDFS伪分布式环境搭建

HDFS伪分布式环境搭建

首先,先介绍一下关于HDFS集群搭建的三种模式
1、 伪分布式
在一台服务器上,启动多个进程,分别表示各个角色。
2、 完全分布式
在多台服务器上,每台服务器启动不同角色的进程,使用多台服务 器组成HDFS集群
共启动4台linux系统,各个节点如下:
Node01:namenode;
Node02:secondarynamenode datanode;
Node03:datanode;
Node04:datanode;
注意:默认的block副本数+自己本身<=datanode节点数。
3、高可用完全分布式(介绍比较麻烦这里不在介绍,会在后面的文章中进行介绍)。

伪分布式环境搭建

首先呢就是要先安装好虚拟机及linux系统,安装过程这里不在详细,不会的可百度搜索安装
创建一个node01用户:

配置网络环境:

#切换到root用户	
su
#进入到配置文件的位置
cd /etc/sysconfig/network-scripts
#修改ifcfg-th0信息,运行下行命令点击 i 进行修改,修改完成后按esc+:wq保存退出,具体修改如下图所示
vi ifcfg-eth0
#修改完成后重启服务
service network restart
#####配置文件信息
IPADDR=192.168.42.128
PREFIX=24
GATEWAY=192.168.42.2
DNS1=8.8.8.8

在这里插入图片描述

添加网络映射

#添加网络映射
vim /etc/hosts
#添加上面定义的ip和用户名,并将主机名修改一致,具体修改结果如下图所示
192.168.23.128 node01

在这里插入图片描述

配置免密登录

#产生本机的密钥文件和私钥文件
ssh-keygen -t rsa
#将私钥文件放入要进入的机器中,这里仍为node01
ssh-copy-id -i ~/.ssh/id_rsa.pub root@node01
#接着执行ssh node01 测试ssh是否可用,即进入不需要输入密码,exit 可以退出ssh。
ssh node01

配置JDK

安装jdk在这里就不说明了,网上找到linux压缩包,用tar -zxvf 命令解压到想安装的位置即可,配置环境变量时需要与解压路径一直

#先删除系统自带的1.7版本的JDK
yum remove *openjdk*
#进入用户环境变量配置
vim ~/.bashrc
# 接着需要配置JAVA环境变量.
# 在文件最后添加(注:环境变量要与JDK存放位置对应)
export JAVA_HOME=/opt/software/jdk/jdk1.8.0_151
export PATH=$JAVA_HOME/bin:$PATH
# 接下来需要使用source命令是环境变量生效.
source ~/.bashrc
#验证是否生效
java -version.

安装Hadoop

同上,在网上下在hadoop,(在此以hadoop-2.8.2为例)

# 将hadoop解压到/usr/local(位置可以自定义)
sudo tar -zxvf hadoop-2.8.2.tar.gz -C /usr/local
# 将文件夹重命名为hadoop(可选,方便后续添加环境变量)
sudo mv hadoop-2.8.2 hadoop 
#cd /usr/local/hadoop 文件夹下输入
./bin/hadoop version 

配置hadoop的环境变量

#修改用户环境变量
vim ~/.bashrc
# 在文件最后添加:
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
# 保存推出 :wq
# 使用source命令,是环境变量生效.
source ~/.bashrc

修改core-site.xml配置文件

默认情况下,Hadoop将数据保存在/tmp下,当重启系统时,/tmp中的内容将被自动清空,所以我们需要制定自己的一个Hadoop的目录,用来存放数据。另外需要配置Hadoop所使用的默认文件系统,以及Namenode进程所在的主机。

#进入到/usr/local/hadoop/etc/hadoop 文件夹下的
cd /usr/local/hadoop/etc/hadoop
#修改core-site.xml配置文件,配置信息结果如下面所示
vim core-site.xml
######配合文件信息
<configuration>
<property>
    <!-- 指定hadoop运行时产生文件的存储路径 -->
    <name>hadoop.tmp.dir</name
    <value>/var/abc/Hadoop/local </value>
</property>
<property>
    <!-- hdfs namenode的通信地址 -->
    <name>fs.defaultFS</name>
    <value>hdfs://node01:9000</value>
</property>
</configuration>

修改hdfs-site.xml配置文件

该文件指定与HDFS相关的配置信息。需要修改HDFS默认的块的副本属性,因为HDFS默认情况下每个数据块保存3个副本,而在伪分布式模式下运行时,由于只有一个数据节点,所以需要将副本个数改为1;否则Hadoop程序会报错。

#修改hdfs-site.xml配置文件,修改结果如下图所示
vim hdfs-site.xml
######配置文件信息
<configuration>
<property>
    <!-- 指定HDFS存储数据的副本数目,默认情况下是3份-->
    <name>dfs.replication</name>
    <value>1</value>
</property>
<property>
    <!-- name node 存放 name table 的目录 -->
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<!-- data node 存放数据 block 的目录 -->
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>

修改slaves配置文件

修改为 node01

vim slaves

关闭防火墙

sudo service iptables stop      # 关闭防火墙服务。
sudo chkconfig iptables off     # 禁止防火墙开机自启。

启动Hadoop

#格式化NameNode(创建目录以及文件)
hdfs namenode -format
#启动HDFS
start-dfs.sh

命令执行完成后输入jps命令若有5个进程:
namenode、secondarynamenode、datanode、resourcemanager、nodemanager,则表示启动成功。
可以通过web访问http://node01:50070 查看NameNode和DataNode信息。
hadoop伪分布式即安装成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值