云计算 - 2 - HDFS文件系统的基本操作

  • 目标
  • 1、使用命令行操作 HDFS 文件系统
  • 2、使用 java-api 操作 hdfs 文件系统
  • 遇到的问题



目标

1、HDFS 文件系统命令行操作,包括加入、修改、更新和删除 HDFS 文件系统中的文件。
2、利用 Java 开发 HDFS 文件系统应用程序,使用 HDFS Java API 接口读写 HDFS 文件系统中的文件。

1、使用命令行操作 HDFS 文件系统

1.1 查看根文件夹 hadoop fs -ls /

hdfs文件 spark 删除 hdfs怎么删除文件_文件系统

1.2 查看容量hadoop fs -df hdfs:/

hdfs文件 spark 删除 hdfs怎么删除文件_云计算_02

1.3 统计文件夹文件夹、文件和字节大小 hadoop fs -count hdfs:/

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_03

1.4 查看根文件夹内容 hadoop fsck - /

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs_04

1.5 集群平衡 hadoop balancer

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_05

1.6 建立新文件、新文件夹

创建新文件夹并查看:hadoop fs -mkdir /XXXX

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs_06


创建新文件:

hdfs文件 spark 删除 hdfs怎么删除文件_云计算_07


查看新文件:

hdfs文件 spark 删除 hdfs怎么删除文件_云计算_08

1.7 查看文件的内存占用 hadoop fs -du -s -h 文件名

hdfs文件 spark 删除 hdfs怎么删除文件_文件系统_09

1.8 删除文件 hadoop fs -rm 文件路径

首先可以看到,test文件是存在的。

hdfs文件 spark 删除 hdfs怎么删除文件_hadoop_10


删除后再查看已不存在。

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs_11

1.9 删除文件夹/文件 hadoop fs -rm -r 文件路径

由下可以看出,创建的test文件夹被成功删除

hdfs文件 spark 删除 hdfs怎么删除文件_文件系统_12

1.10 清空回收站hadoop fs -expunge

hdfs文件 spark 删除 hdfs怎么删除文件_云计算_13

**1.11 从本地拷贝文件至文件系统 **

第一种:hadoop fs -copyFromLocal 文件名 目标路径 第二种:hadoop fs -put 文件名 目标路径

hdfs文件 spark 删除 hdfs怎么删除文件_hadoop_14

1.12 从命令行查看文件,能在命令行看到文件内容 Hadoop fs -cat 目标文件

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_15

1.13 从文件/文件夹系统拷贝到本地

第一种:hadoop fs -copyToLocal 目标文件/文件夹 目标路径(不写路径则拷贝到当前路径下)

第二种:hadoop fs -get 目标文件/文件夹 目标路径(不写路径则拷贝到当前路径下)

hdfs文件 spark 删除 hdfs怎么删除文件_云计算_16

1.14 文件系统内部拷贝 Hadoop fs -ls -cp 目标文件/文件夹 目标路径

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_17

1.15 修改文件权限

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_18

1.16 移动文件/文件夹 hadoop fs -mv 目标文件/文件夹 目标路径

hdfs文件 spark 删除 hdfs怎么删除文件_hadoop_19

1.17 关闭安全模式

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs_20

2、使用 java-api 操作 hdfs 文件系统

2.1 新建一个文件,这里命名为 test222.txt

hdfs文件 spark 删除 hdfs怎么删除文件_文件系统_21


2.2 将文件传入 hadoop 文件系统

hdfs文件 spark 删除 hdfs怎么删除文件_文件系统_22


2.3 搜索并进行复制

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_23


2.4 检测输出结果,符合预期

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_24

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs_25

遇到的问题

1.刚开始进行实验时,发现hadoop启动不了,进入子节点,查看启动日志,发现是因为子节点连接不上NmaeNode,如下图:

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_26

网上查询了很久,最后发现是忘记关闭各个节点的防火墙,再使用systemctl stop firewalld关闭各个节点防火墙后,成功启动。

2.在间隔了一小段时间再做实验时,发现启动hadoop时ssh连接不通,如下图所示:

hdfs文件 spark 删除 hdfs怎么删除文件_hdfs文件 spark 删除_27


后来经查询得知,虚拟机的IP地址是随即分配的,我重新查询了以下IP地址,发现和上一次实验一中设置的IP地址已经不同,故我重新设置了/etc/hosts中各节点的IP地址,随后成功启动Hadoop。