1. hadoop 集群的常用命令

Hadoop集群的常用命令主要分为**HDFS文件操作**、**YARN资源管理**、**集群管理**和**维护工具**四大类。以下是常用命令及说明:


一、HDFS 文件操作命令

  1. **查看目录/文件列表**

```bash

hdfs dfs -ls <HDFS路径> # 例如:hdfs dfs -ls /user

```

  1. **上传文件到HDFS**

```bash

hdfs dfs -put <本地路径> <HDFS路径> # 等价于 -copyFromLocal

hdfs dfs -copyFromLocal <本地路径> <HDFS路径>

```

  1. **从HDFS下载文件**

```bash

hdfs dfs -get <HDFS路径> <本地路径> # 等价于 -copyToLocal

hdfs dfs -copyToLocal <HDFS路径> <本地路径>

```

  1. **创建目录**

```bash

hdfs dfs -mkdir -p <HDFS路径> # -p 自动创建父目录

```

  1. **删除文件/目录**

```bash

hdfs dfs -rm <HDFS文件路径> # 删除文件

hdfs dfs -rm -r <HDFS目录路径> # 递归删除目录

```

  1. **查看文件内容**

```bash

hdfs dfs -cat <HDFS文件路径> # 查看全部内容

hdfs dfs -tail <HDFS文件路径> # 查看末尾内容

```

  1. **文件操作**

```bash

hdfs dfs -cp <源路径> <目标路径> # 复制

hdfs dfs -mv <源路径> <目标路径> # 移动

hdfs dfs -touchz <HDFS文件路径> # 创建空文件

```

  1. **查看空间使用**

```bash

hdfs dfs -du -h <HDFS路径> # 显示文件/目录大小(人类可读)

hdfs dfs -df -h # 查看HDFS总空间

```

  1. **权限管理**

```bash

hdfs dfs -chmod <权限> <HDFS路径> # 修改权限(如 755)

hdfs dfs -chown <用户:组> <HDFS路径> # 修改所有者

```


二、YARN 资源管理命令

  1. **提交MapReduce作业**

```bash

hadoop jar <jar包路径> <主类名> 参数

```

  1. **查看运行中的任务**

```bash

yarn application -list # 列出所有应用

```

  1. **终止任务**

```bash

yarn application -kill <ApplicationID> # 根据ID终止任务

```

  1. **查看节点状态**

```bash

yarn node -list # 显示集群节点信息

```

  1. **查看任务日志**

```bash

yarn logs -applicationId <ApplicationID> # 查看指定任务的日志

```


三、集群管理命令

  1. **启动/停止HDFS和YARN**

```bash

start-dfs.sh # 启动HDFS

start-yarn.sh # 启动YARN

stop-dfs.sh # 停止HDFS

stop-yarn.sh # 停止YARN

```

  1. **检查HDFS健康状态**

```bash

hdfs dfsadmin -report # 显示DataNode状态

hdfs fsck / # 检查文件系统完整性

```

  1. **进入/退出安全模式**

```bash

hdfs dfsadmin -safemode enter # 进入安全模式(只读)

hdfs dfsadmin -safemode leave # 退出安全模式

```

  1. **数据平衡**

```bash

hdfs balancer # 启动数据均衡(调整DataNode负载)

```


四、维护与工具命令

  1. **跨集群复制数据(DistCp)**

```bash

hadoop distcp <源集群路径> <目标集群路径> # 大规模数据迁移

```

  1. **合并小文件**

```bash

hdfs dfs -getmerge <HDFS目录> <本地文件> # 合并下载到本地

```

  1. **创建HAR归档文件**

```bash

hadoop archive -archiveName <名称>.har -p <输入路径> <输出路径>

```

  1. **格式化NameNode(谨慎!)**

```bash

hdfs namenode -format # 初始化集群时使用,会清空数据!

```


注意事项

  • **权限问题**:部分命令需要管理员权限(如`dfsadmin`)。

  • **版本差异**:不同Hadoop版本命令可能略有不同。

  • **安全模式**:在安全模式下无法写入数据,需通过`dfsadmin`退出。

相关推荐
wuqingshun3141596 分钟前
什么是责任链模式,一般用在什么场景?
java·责任链模式
江畔柳前堤14 分钟前
GO01-Go 语言与主流编程语言深度对比
开发语言·人工智能·后端·微服务·云原生·golang·go
:-)1 小时前
算法-归并排序
java·开发语言·数据结构·算法·排序算法
wuqingshun3141591 小时前
说一下消息队列的模型有哪些?
java
智圣新创011 小时前
重构沉浸式育人链路:智圣新创智慧学生社区平台建设的行业全域参考
大数据·人工智能·重构
GIS阵地2 小时前
QgsRasterDataProvider 完整详解(QGIS 3.40.13 C++)
开发语言·c++·qt·开源软件·qgis
fīɡЙtīиɡ ℡2 小时前
布隆过滤器
java
yaoxin5211232 小时前
462. Java 反射 - 获取声明类与封闭类
java·开发语言·python
阿里嘎多学长3 小时前
2026-07-14 GitHub 热点项目精选
开发语言·程序员·github·代码托管
中微极客3 小时前
解锁LLM开发全栈能力:Python + LangChain + RAG 工程实战指南
人工智能·python·langchain