在 CentOS 上创建用于 HDFS(Hadoop) 的用户,通常只是建一个普通系统用户,并做一些权限和目录规划。下面按常见做法说明。
一般 Hadoop 官方和运维习惯使用 hdfs 用户运行 HDFS 服务。
useradd -m hdfs
passwd hdfs
如果是集群环境,通常 不需要密码登录,用 SSH 免密更常见。
HDFS 需要本地磁盘目录(NameNode / DataNode)。
mkdir -p /data/hdfs/namenode
mkdir -p /data/hdfs/datanode
chown -R hdfs:hdfs /data/hdfs
chmod 700 /data/hdfs/namenode
chmod 700 /data/hdfs/datanode
在 hadoop-env.sh 中指定:
export HDFS_NAMENODE_USER=hdfs
export HDFS_DATANODE_USER=hdfs
export HDFS_SECONDARYNAMENODE_USER=hdfs
在 core-site.xml 和 hdfs-site.xml 中:
<property>
<name>dfs.namenode.name.dir</name>
<value>/data/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/data/hdfs/datanode</value>
</property>
在 NameNode 上:
su - hdfs
ssh-keygen -t rsa
ssh-copy-id hdfs@datanode1
ssh-copy-id hdfs@datanode2
su - hdfs
start-dfs.sh
Permission denied
✅ 检查目录属主是否为 hdfs
hdfs dfsadmin -safemode leave
hdfs,但这是行业惯例如果你告诉我:
我可以给你更精确的步骤。