Ubuntu配置HDFS的关键注意事项
sudo apt update && sudo apt upgrade -y),并安装基础工具(如build-essential用于编译、openssh-server用于SSH通信),确保系统环境稳定。sudo apt install openjdk-8-jdk),并通过JAVA_HOME环境变量指定Java路径(添加至~/.bashrc或/etc/profile),避免因Java路径错误导致Hadoop启动失败。core-site.xml、hdfs-site.xml等核心配置文件的XML格式(无多余空格、标签闭合完整)。关键配置包括: core-site.xml:设置fs.defaultFS(HDFS的默认文件系统URI,如hdfs://namenode:9000);hdfs-site.xml:设置dfs.replication(数据块副本数,生产环境建议≥3)、dfs.namenode.name.dir(NameNode元数据存储路径)、dfs.datanode.data.dir(DataNode数据存储路径)。/usr/local/hadoop/hdfs/namenode、/usr/local/hadoop/hdfs/datanode)后,需将目录所有者设置为Hadoop运行用户(如hdfs),避免权限不足导致数据写入失败。ssh-keygen -t rsa),并将公钥复制到所有DataNode(ssh-copy-id datanode1、ssh-copy-id datanode2),确保ssh datanode1无需密码即可登录,避免启动集群时因密码提示中断。hdfs namenode -format命令,初始化元数据目录(如dfs.namenode.name.dir指定的路径)。注意:格式化会清除已有元数据,仅在首次配置或元数据损坏时使用。qjournal协议实现元数据同步。配置dfs.nameservices(集群名称)、dfs.ha.namenodes(NameNode标识)、dfs.namenode.shared.edits.dir(共享编辑日志路径)等参数,确保主备NameNode数据一致。dfs.ha.automatic-failover.enabled(设为true),并结合ZooKeeper集群(ha.zookeeper.quorum)实现自动主备切换,减少人工干预时间。hadoop.ssl.enabled为true),并对HDFS中的敏感数据启用透明加密(如dfs.encrypt.data.transfer),防止数据窃听或篡改。hadoop.security.authentication设为kerberos),并通过RBAC(基于角色的访问控制)或ACL(访问控制列表)限制用户对HDFS资源的访问权限(如dfs.permissions.enabled设为true)。hadoop-*-namenode-*.log、DataNode的hadoop-*-datanode-*.log)存储在$HADOOP_HOME/logs目录下,需定期检查日志中的ERROR或WARN信息,及时排查启动失败、数据块丢失等问题。hdfs dfsadmin -report命令查看DataNode状态(如节点是否存活、数据块副本数是否充足),或通过HDFS Web界面(如http://namenode:50070)监控集群存储容量、数据吞吐量等指标。unattended-upgrades包),修复已知漏洞,提升集群安全性。