温馨提示×

centos hdfs如何开启服务

小樊
45
2026-10-20 23:12:57
栏目: 智能运维

在 CentOS 上开启 HDFS 服务,通常是指在已安装好 Hadoop 的集群或单机环境中启动 HDFS。下面按常见场景说明。


一、前提条件

  1. 已安装 JDK(推荐 JDK 8)
  2. 已安装 Hadoop(如 /opt/hadoop)
  3. 已配置:
    • JAVA_HOME
    • HADOOP_HOME
    • core-site.xml
    • hdfs-site.xml
  4. 已配置 SSH 免密(集群模式必须)

二、单机 / 伪分布式启动 HDFS

1. 格式化 NameNode(仅第一次)

hdfs namenode -format

2. 启动 HDFS

start-dfs.sh

3. 查看进程

jps

应看到:

  • NameNode
  • DataNode
  • SecondaryNameNode(伪分布式)

三、集群模式启动 HDFS

1. 在 NameNode 节点执行

start-dfs.sh

该命令会:

  • 启动本机 NameNode
  • 通过 SSH 启动 slaves 中的 DataNode

2. 检查服务

jps

四、单独启动 / 停止 HDFS 组件

# 启动 NameNode
hadoop-daemon.sh start namenode

# 启动 DataNode
hadoop-daemon.sh start datanode

# 停止 HDFS
stop-dfs.sh

五、Web 界面验证

  • NameNode UI:
http://<namenode-ip>:50070

六、设置开机自启(CentOS 7+)

可创建 systemd 服务(示例):

vi /etc/systemd/system/hdfs.service
[Unit]
Description=HDFS Service
After=network.target

[Service]
Type=forking
ExecStart=/opt/hadoop/sbin/start-dfs.sh
ExecStop=/opt/hadoop/sbin/stop-dfs.sh
User=hadoop

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable hdfs
systemctl start hdfs

七、常见问题

  • Permission denied (publickey) → 配置 SSH 免密
  • JAVA_HOME not set → 检查 hadoop-env.sh
  • 端口被占用 → 检查 50070 / 9000

如果你能提供:

  • CentOS 版本
  • Hadoop 版本
  • 单机还是集群

我可以给你更精确的启动命令。

0 踩