Hadoop HDFS 3.3.0分布式文件服务搭建

详细文档: http://hadoop.apache.org/old/ →Documentation
下载地址:https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

搭建准备:

  1. 设置主机名称: 设置主机名称是为了做免密登录,因为公钥用的是主机名
  • hostnamectl set-hostname xiaoshu01 ;
  • vi /etc/sysconfig/network
  • NETWORKING=YES
  • hostname=xiaoshu
  1. 设置ip映射
  • vi /etc/hosts
  • 192.168.2.152 xiaoshu-2
  • 192.168.2.207 xiaoshu-1
  1. 关闭防火墙和 selinux安全机制
  • systemctl stop firewalld.service | service iptables stop
  • 查看 getenforce ; 关闭 setenforce 0vi /etc/selinux/config SELINUX=disabled
  1. 各节点服务器时间一致
  • 如果不同步就调整
  1. 配置jdk、hadoop环境
  • vi /etc/profile 末尾添加
  • export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
  • export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
  • export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  • export HADOOP_HOME=/opt/hadoop-3.3.0/bin
  • 最好用命令:hdfs 测试一下hadoop环境配置成功没有

  • 设置hdfs java环境
  • vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh
  • export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64/

6.设置 hdfs 普通用户

  • useradd hdfs
  • passwd hdfs 123456
  • chown -R hdfs /opt/hadoop-3.3.0/
  • chown -R hdfs /opt/hadoopdata

7.配置免密登录

  • su hdfs 切换到普通用户
  • ssh-keygen -t rsa // 一路回车
  • ssh-copy-id -i ~/.ssh/id_rsa.pub 主机名(xiaoshu-1)
  • authorized_keys复制到节点服务器 .ssh 目录下,或者 追加authorized_keys内容;
  • ssh 服务主机名称,测试是否免密
  • 免密不成功,在启动时会报错,启动没有密匙权限

模式说明:

  • Pseudo-Distributed Mode -伪分布试 ,namenode,datanode,在同一个服务上
  • Fully-Distributed Mode - 完全分布 ,datanode ,SSN,在其它各节点服务上
  • HA -高可用模式 ,多个 NameNode,主备模式;
  • 如:主备之间增加 journalnoe (>3)台,复制同步NN的editlog ,投票确定最终一致性
  • 如:增加 zkfc角色(与NN同台),通过zookeeper集群协调NN的主从选举和切换事件回调机制

1
2

hdfs配置文件处理:

  • 修改 core-site.xml 核心配置 ,定义namenode入口 ,注:节点服务的 core-sit.xml 同样要配置namenode位置,不然启动不了,同时要注意,各服务器的用户权限记得分配
    1
    在这里插入图片描述
<!-- core-site.xml 也可以配置,添加静态用户,方法web页面操作 -->
<property>
    <name>hadoop.http.staticuser.user</name>
    <value>hdfs</value>
  </property>
  • 修改 hdfs-site.xml
<configuration>
    <!-- 副本数量. -->
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
	<!-- namenode文件元数据存储位置. -->
	<property>
        <name>dfs.namenode.name.dir</name>
        <value>/opt/hadoopdata/full/hdfs/name</value>
    </property>
	<!-- datanode block块存储位置. -->
	<property>
        <name>dfs.datanode.data.dir</name>
        <value>/opt/hadoopdata/full/hdfs/data</value>
    </property>
	<!-- secondary 地址,一个NameNode时 -->
	<property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>xiaoshu-2:9868</value>
    </property>
	<!-- secondary 目录配置 -->
	<property>
        <name>dfs.namenode.checkpoint.dir</name>
        <value>/opt/hadoopdata/full/hdfs/secondary</value>
    </property>
</configuration>
  • 修改workers 配置 datanode启动位置

3
4

  • 格式化 namenode : hdfs namenode -format(不要重复执行)
  • 启动:./sbin/start-dfs.sh ,在 /opt/hadoop-3.3.0/ 目录下
    5- http://ip:9870/ 访问页面 ;注:如果要用页面的文件上传等操作,需要配置本地 hosts 文件,映射主机名称。

1

测试命令:

  • 创建文件夹:hdfs dfs -mkdir /dirname
  • 递归创建目录: hdfs dfs -mkdir -p /user/root
  • 权限赋予: hadoop fs -chmod -R 777 /opt
  • 上传文件:hdfs dfs -put 上传文件 目标目录
  • hdfs dfs -put test.txt /user/root
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值