HDFS集群环境部署

VMware虚拟机部署

一、https://hadoop.apache.org下载安装
在这里插入图片描述
二、环境分配
在这里插入图片描述
三、上传解压

确认服务器创建固定IP、防火墙关闭、Hadoop用户创建、SSH免密、JDK部署
在这里插入图片描述
在这里插入图片描述

四、修改配置文件
在这里插入图片描述
在这里插入图片描述

hdfssite.xml
①、dfs.datanode.data.dir.perm 700
hdfs文件系统默认权限700,rwx——

②、dfs.namenode.name.dir /data/nn
NameNode数据存储位置node1节点的/data/nn目录
需要node1节点mkdirp /data/nn mkdir data/dn 创建两个文件夹目录

③、dfs.namenode.hosts
NameNode允许哪几个节点的DataNode连接(即允许加入集群
node1/node2/node3这三台服务器授权

④、dfs.blocksize
默认块大小

⑤、dfs.namenode.handler.count
namenode处理并发线程数 100 表示以100个并行处理文件系统管理任务

⑥、dfs.datanode.data.dir
从节点dataNode数据存储目录
/data/dn,即数据存放node1,node2,node3三台机器的/data/dn内
mkdirp /data/dn 需要node2,node3各创建一个文件夹目录
在这里插入图片描述

五、从node1将hadoop安装目录文件夹远程复制node2node3,并且配置环境变量
在这里插入图片描述
在这里插入图片描述

六、授权hadoop用户

为了确保安全hadoop系统不以root用户启动,将以普通的hadoop启动整个hadoop服务
所以需要对文件权限进行授权(前提需要创建好hadoop用户,并配置好了hadoop用户之间免密登录
在这里插入图片描述

七、对整个文件系统执行初始化
在这里插入图片描述
通过jsp命令查看,三台节点的运行程序
在这里插入图片描述
八、浏览器查看

在这里插入图片描述

关闭hadoop系统之后,然后init 0,关闭虚拟机,进行快照操作
在这里插入图片描述

服务器部署

在这里插入图片描述

以上步骤虚拟机一样。

三、云服务通过内网互通
在这里插入图片描述

通过浏览器访问需要公网IP
在这里插入图片描述

四、云服务操作镜像
在这里插入图片描述

在这里插入图片描述

集群部署常见问题
在这里插入图片描述

一、权限拒绝
在这里插入图片描述
需要对hadoop用户授权
在这里插入图片描述

二、command not found
在这里插入图片描述

三、worker文件
在这里插入图片描述

四、未格式化
在这里插入图片描述
排查日志
在这里插入图片描述
在这里插入图片描述

======================================================================================

HDFS的Shell操作

进程启停管理

①、一键启停脚本
在这里插入图片描述

②、独立进程启停(只对所在机器有效)
在这里插入图片描述

文件系统操作命令

协议file:/// 或hdfs://node1:8020/ 可以省略

在这里插入图片描述
在这里插入图片描述

①、创建文件夹

# path 为待创建的目录
# -p选项行为与Linux mkdir -p一致,沿着路径创建父目录
hadoop fs -mkdir -p /michael/bigdata 
hadoop fs -mkdir -p hdfs://node1:8020/michael/bigdata  #带上协议
hdfs fs -mkdir -p /michael/hadoop

# 如果添加协议头(在Linux创建)
hadoop fs -mkdir -p file:///home/hodoop/test

②、查看指定目录下的内容

# path 指定目录路径
# -h 人性化显示文件size  kb
# -R 递归查看指定目录以及子目录
hadoop fs -ls /  # hadoop根目录
hdfs dfs -ls -R /

③、上传文件到HDFS指定目录下

# -f 覆盖目标文件
# -p 保留访问修改时间所有权权限
# localsrc 本地文件系统客户端所在机器
# dst 目标文件系统(HDFS)
hadoop fs -put word.txt /michael
hdfs dfs -put file:///etc/prifile hdfs://node1:8020/michael

④、查看HDFS文件内容

hadoop fs -cat /test.txt

# 对于大文件,可以使用管道符配合more   按下空格进行翻页查看
hdfs dfs -cat /test.txt | more

⑤、下载HDFS文件

# -f 覆盖目标文件
# -p 保留访问修改时间所有权权限
# HDFS->Linux下载
hadoop fs -get /test.txt .    # .表示当前目录

⑥、拷贝HDFS文件

# HDFS->HDFS
hadoop fs -cp /test.txt /home/

# 也可以添加-p强制覆盖,并改名
hadoop fs -cp /test.txt /home/abc.txt

⑦、追加数据到HDFS文件中

echo 1 >> 1.txt
echo 2 >> 2.txt
echo 3 >> 3.txt

hadoop fs -put 1.txt /
hadoop fs -cat /1.txt

# 本地内容追加到hdfs
hadoop fs -appendToFile 2.txt 3.txt /1.txt
hadoop fs -cat /1.txt

⑧、移动

hadoop fs -mv /test.txt /michael

hadoop fs -mv /test.txt /michael/abx.txt #移动之后还可以改名

⑨、删除

hadoop fs -rm -f /home  # 删除home文件夹目录

hadoop fs -rm /michael/test.txt # 删除文件,不需要添加-r

在这里插入图片描述
如果开启回收站之后,删除文件是需要通过指定参数跳过回收站

hadoop fs -rm -r -skipTrash /michael

除了以上通过命令方式查看文件,可以通过浏览器进行查看
在这里插入图片描述
没有权限去操作,只能查看。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

HDFS客户端-Jetbrians产品插件
在这里插入图片描述

①、以DataGrip工具为例安装Big Data Tools插件
在这里插入图片描述

②、配置Window,然后重启DataGrip工具
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

③、配置Big Data Tools插件
在这里插入图片描述

或者

(需要重新打包配置文件等进行替换
在这里插入图片描述

④、配置成功之后,可以操作上传文件
在这里插入图片描述

HDFS客户端-NFS
在这里插入图片描述

①、在node1节点上进行如下操作:

进入cd /export/server/hadoop/etc/hadoop目录下配置如下文件

coresite.xml新增如下两项
在这里插入图片描述

hdfs-site.xml新增如下
在这里插入图片描述

②、将以上node1配置好的节点复制node2和node3中

在这里插入图片描述
在这里插入图片描述
停止系统NFS相关进程需要回退root用户的权限
在这里插入图片描述
在这里插入图片描述

启动集群start -dfs.sh

③、检查NFS是否正常
在这里插入图片描述

④、在Window挂载HDFS文件系统
在这里插入图片描述
在这里插入图片描述

HDFS的存储原理

block
在这里插入图片描述
在这里插入图片描述
副本要放在不同服务器,可以设置配置文件决定副本存储,还可以通过命令临时设置

①、配置文件设置
在这里插入图片描述

②、临时命令设置
在这里插入图片描述

fsck命令
在这里插入图片描述

NameNode元数据

NameNode基于一批edits和一个fsimage文件的配合完成对整个文件系统管理和维护。

①、整个文件系统管理流程
在这里插入图片描述
在这里插入图片描述

②、元数据合并控制参数
在这里插入图片描述
在这里插入图片描述

HDFS数据的读写流程

一、数据写入流程
在这里插入图片描述
在这里插入图片描述

二、数据读取流程

在这里插入图片描述

原文地址:https://blog.csdn.net/usa_washington/article/details/134748119

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_36538.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注