温馨提示×

centos怎么运维hdfs

小樊
33
2026-10-12 06:17:30
栏目: 智能运维

在 CentOS 上运维 HDFS(Hadoop Distributed File System),通常包括安装部署、日常监控、故障处理、性能优化、安全管理等方面。下面从运维角度系统讲一下。


一、环境准备(CentOS)

1. 系统要求

  • CentOS 7 / 8(生产常用 7)
  • JDK 8(Hadoop 2.x/3.x 推荐)
  • 关闭防火墙或放行端口(50070 / 9870 / 8020 等)
  • 配置主机名和 /etc/hosts
  • 配置 SSH 免密登录(NameNode → DataNode)
# 示例
ssh-keygen
ssh-copy-id datanode1

二、HDFS 安装与部署

1. 下载解压

wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -zxvf hadoop-3.3.6.tar.gz -C /opt/

2. 核心配置文件

  • core-site.xml
  • hdfs-site.xml
  • workers(或 slaves)

示例(简化):

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://namenode:8020</value>
  </property>
</configuration>
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>3</value>
  </property>
</configuration>

三、HDFS 日常运维命令

1. 启动 / 停止

start-dfs.sh
stop-dfs.sh

或单独启动:

hdfs --daemon start namenode
hdfs --daemon start datanode

2. 常用 HDFS 命令

hdfs dfs -ls /
hdfs dfs -put file.txt /test/
hdfs dfs -get /test/file.txt ./
hdfs dfs -rm /test/file.txt
hdfs dfs -du -h /

3. 查看集群状态

hdfs dfsadmin -report

Web UI:

  • Hadoop 3.x:http://namenode:9870
  • Hadoop 2.x:http://namenode:50070

四、NameNode 运维重点

1. NameNode 安全模式

hdfs dfsadmin -safemode get
hdfs dfsadmin -safemode leave

2. 元数据备份

  • dfs.namenode.name.dir 指定目录
  • 定期备份 fsimage 和 edits
hdfs dfsadmin -fetchImage /backup/

3. NameNode HA(推荐生产)

  • 使用 ZKFC + ZooKeeper
  • 避免单点故障

五、DataNode 运维

1. 节点掉线处理

hdfs dfsadmin -report
  • 检查网络
  • 检查磁盘
  • 查看 datanode 日志
tail -f $HADOOP_HOME/logs/hadoop-*-datanode-*.log

2. 磁盘故障

  • 下线节点
  • 换盘后重新上线
hdfs dfsadmin -refreshNodes

六、监控与告警(非常重要)

1. 基础监控

  • NameNode / DataNode 进程
  • 磁盘使用率
  • 网络 IO
  • JVM 内存

2. 常用工具

  • Prometheus + Grafana
  • Ambari / Cloudera Manager(企业级)
  • Zabbix

七、常见故障与排查

问题 排查方向
NameNode 起不来 检查 fsimage、edits、权限
DataNode 不注册 hosts、防火墙、clusterID
块丢失 hdfs fsck /
写入慢 磁盘、网络、副本数
安全模式卡住 检查块完整性

八、性能优化建议

  • 合理设置副本数(通常 3)
  • 调整块大小(默认 128MB / 256MB)
  • DataNode 多磁盘挂载
  • 避免小文件过多(用 HAR / HBase)

九、安全运维(企业必做)

  • 开启 Kerberos
  • 配置 ACL / Ranger
  • 定期审计日志
  • 控制 hdfs dfsadmin 权限

十、运维 checklist(日常)

✅ NameNode / DataNode 进程正常
✅ dfsadmin -report 无异常
✅ 磁盘 < 85%
✅ 无缺失块
✅ 日志无 ERROR
✅ 元数据已备份


如果你愿意,我可以:

  • 给你一套 CentOS + HDFS 生产部署脚本
  • 帮你 排查某个具体 HDFS 故障
  • 讲 HDFS + YARN 完整运维方案

你现在是 学习 / 测试 / 生产环境?

0 踩